parent
873b228d59
commit
de2358e3c8
|
|
@ -15,3 +15,6 @@
|
|||
|
||||
# Caching ESP32 Builds
|
||||
buildCache
|
||||
examples/dshot300/debug.cfg
|
||||
examples/dshot300/esp32.svd
|
||||
examples/dshot300/debug_custom.json
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ The checksum is calculated over the throttle value and the telemetry bit, so the
|
|||
crc = (value ^ (value >> 4) ^ (value >> 8)) & 0x0F;
|
||||
|
||||
### Bidirectional DSHOT
|
||||
Biderictional DSHOT is also known as inverted DSHOT, because the signal level is inverted, so 1 is low and a 0 is high. This is done in order to let the ESC know, that we are operating in bidirectional mode and that it should be sending back eRPM telemetry packages.
|
||||
Bidirictional DSHOT is also known as inverted DSHOT, because the signal level is inverted, so 1 is low and a 0 is high. This is done in order to let the ESC know, that we are operating in bidirectional mode and that it should be sending back eRPM telemetry packages.
|
||||
|
||||
#### Calculating the Bidirectional CRC
|
||||
The calculation of the checksum is basically the same, just before the last step the values are inverted:
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
name=DShotRMT
|
||||
version=0.2.1
|
||||
version=0.2.2
|
||||
author=derdoktor667
|
||||
maintainer=derdoktor667
|
||||
sentence=DShotRMT Library supporting all DShot Types and speeds. Tested with BlHeli_S.
|
||||
paragraph=This library can control a BlHeli_S by using encoded DShot commands like Betaflight.
|
||||
paragraph=This library can control a BlHeli_S by using encoded DShot commands.
|
||||
category=Device Control
|
||||
url=https://github.com/derdoktor667/DShotRMT
|
||||
architectures=esp32
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
#define _DSHOTRMT_h
|
||||
|
||||
#if defined(ARDUINO) && ARDUINO >= 100
|
||||
#include "arduino.h"
|
||||
#include <Arduino.h>
|
||||
#else
|
||||
#include "WProgram.h"
|
||||
#endif
|
||||
|
|
@ -18,6 +18,9 @@
|
|||
// ...utilizing the RMT Module library for generating the DShot signal
|
||||
#include <driver/rmt.h>
|
||||
|
||||
// ...unify versioning
|
||||
constexpr auto DSHOT_LIB_VERSION = "0.2.2";
|
||||
|
||||
constexpr auto DSHOT_CLK_DIVIDER = 8; // ...slow down RMT clock to 0.1 microseconds / 100 nanoseconds per cycle
|
||||
constexpr auto DSHOT_PACKET_LENGTH = 17; // ...last pack is the pause
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue