diff --git a/radio/src/pulses/pxx.h b/radio/src/pulses/pxx.h index 02296bbe5..31e7e16fc 100644 --- a/radio/src/pulses/pxx.h +++ b/radio/src/pulses/pxx.h @@ -150,6 +150,17 @@ class StandardPxxTransport: public BitTransport, public PxxCrcMixin { addByteWithoutCrc(byte); }; + void addRawByteWithoutCrc(uint8_t byte) + { + for (uint8_t i = 0; i < 8; i++) { + if (byte & 0x80) + BitTransport::addPart(1); + else + BitTransport::addPart(0); + byte <<= 1; + } + } + void addByteWithoutCrc(uint8_t byte) { for (uint8_t i = 0; i < 8; i++) { @@ -187,6 +198,11 @@ class UartPxxTransport: public DataBuffer, public PxxCrcMixin { addWithByteStuffing(byte); } + void addRawByteWithoutCrc(uint8_t byte) + { + addByteWithoutCrc(byte); + } + void addByteWithoutCrc(uint8_t byte) { *ptr++ = byte; diff --git a/radio/src/pulses/pxx1.h b/radio/src/pulses/pxx1.h index 444202d26..d7d958b45 100644 --- a/radio/src/pulses/pxx1.h +++ b/radio/src/pulses/pxx1.h @@ -33,7 +33,7 @@ class Pxx1Pulses: public PxxPulses void addHead() { // send 7E, do not CRC - PxxTransport::addByteWithoutCrc(0x7E); + PxxTransport::addRawByteWithoutCrc(0x7E); } void addCrc()