diff --git a/_c_c1101_8h_source.html b/_c_c1101_8h_source.html
index a346a363..8ee3e696 100644
--- a/_c_c1101_8h_source.html
+++ b/_c_c1101_8h_source.html
@@ -546,188 +546,189 @@ $(document).ready(function(){initNavTree('_c_c1101_8h_source.html',''); initResi
459 #define CC1101_VERSION_CURRENT 0x14
460 #define CC1101_VERSION_LEGACY 0x04
-
-
- 463 #define CC1101_MARC_STATE_SLEEP 0x00 // 4 0 main radio control state: sleep
- 464 #define CC1101_MARC_STATE_IDLE 0x01 // 4 0 idle
- 465 #define CC1101_MARC_STATE_XOFF 0x02 // 4 0 XOFF
- 466 #define CC1101_MARC_STATE_VCOON_MC 0x03 // 4 0 VCOON_MC
- 467 #define CC1101_MARC_STATE_REGON_MC 0x04 // 4 0 REGON_MC
- 468 #define CC1101_MARC_STATE_MANCAL 0x05 // 4 0 MANCAL
- 469 #define CC1101_MARC_STATE_VCOON 0x06 // 4 0 VCOON
- 470 #define CC1101_MARC_STATE_REGON 0x07 // 4 0 REGON
- 471 #define CC1101_MARC_STATE_STARTCAL 0x08 // 4 0 STARTCAL
- 472 #define CC1101_MARC_STATE_BWBOOST 0x09 // 4 0 BWBOOST
- 473 #define CC1101_MARC_STATE_FS_LOCK 0x0A // 4 0 FS_LOCK
- 474 #define CC1101_MARC_STATE_IFADCON 0x0B // 4 0 IFADCON
- 475 #define CC1101_MARC_STATE_ENDCAL 0x0C // 4 0 ENDCAL
- 476 #define CC1101_MARC_STATE_RX 0x0D // 4 0 RX
- 477 #define CC1101_MARC_STATE_RX_END 0x0E // 4 0 RX_END
- 478 #define CC1101_MARC_STATE_RX_RST 0x0F // 4 0 RX_RST
- 479 #define CC1101_MARC_STATE_TXRX_SWITCH 0x10 // 4 0 TXRX_SWITCH
- 480 #define CC1101_MARC_STATE_RXFIFO_OVERFLOW 0x11 // 4 0 RXFIFO_OVERFLOW
- 481 #define CC1101_MARC_STATE_FSTXON 0x12 // 4 0 FSTXON
- 482 #define CC1101_MARC_STATE_TX 0x13 // 4 0 TX
- 483 #define CC1101_MARC_STATE_TX_END 0x14 // 4 0 TX_END
- 484 #define CC1101_MARC_STATE_RXTX_SWITCH 0x15 // 4 0 RXTX_SWITCH
- 485 #define CC1101_MARC_STATE_TXFIFO_UNDERFLOW 0x16 // 4 0 TXFIFO_UNDERFLOW
-
-
- 488 #define CC1101_WORTIME_MSB 0x00 // 7 0 WOR timer value
- 489 #define CC1101_WORTIME_LSB 0x00 // 7 0
-
-
- 492 #define CC1101_CRC_OK 0b10000000 // 7 7 CRC check passed
- 493 #define CC1101_CRC_ERROR 0b00000000 // 7 7 CRC check failed
- 494 #define CC1101_CS 0b01000000 // 6 6 carrier sense
- 495 #define CC1101_PQT_REACHED 0b00100000 // 5 5 preamble quality reached
- 496 #define CC1101_CCA 0b00010000 // 4 4 channel clear
- 497 #define CC1101_SFD 0b00001000 // 3 3 start of frame delimiter - sync word received
- 498 #define CC1101_GDO2_ACTIVE 0b00000100 // 2 2 GDO2 is active/asserted
- 499 #define CC1101_GDO0_ACTIVE 0b00000001 // 0 0 GDO0 is active/asserted
-
-
-
-
-
-
-
-
-
-
-
-
-
- 540 int16_t
begin(
float freq = 434.0,
float br = 48.0,
float freqDev = 48.0,
float rxBw = 135.0, int8_t power = 10, uint8_t preambleLength = 16);
-
- 554 int16_t
transmit(uint8_t* data,
size_t len, uint8_t addr = 0)
override;
-
- 566 int16_t
receive(uint8_t* data,
size_t len)
override;
-
-
-
-
-
-
-
-
-
-
-
- 605 void setGdo0Action(
void (*func)(
void), RADIOLIB_INTERRUPT_STATUS dir = RISING);
-
-
-
- 619 void setGdo2Action(
void (*func)(
void), RADIOLIB_INTERRUPT_STATUS dir = FALLING);
-
-
-
- 638 int16_t
startTransmit(uint8_t* data,
size_t len, uint8_t addr = 0)
override;
-
-
-
- 656 int16_t
readData(uint8_t* data,
size_t len)
override;
-
-
-
-
-
-
-
-
-
-
-
-
-
- 718 int16_t
setSyncWord(uint8_t syncH, uint8_t syncL, uint8_t maxErrBits = 0,
bool requireCarrierSense =
false);
-
- 733 int16_t
setSyncWord(uint8_t* syncWord, uint8_t len, uint8_t maxErrBits = 0,
bool requireCarrierSense =
false);
-
-
-
- 753 int16_t
setNodeAddress(uint8_t nodeAddr, uint8_t numBroadcastAddrs = 0);
-
-
-
- 769 int16_t
setOOK(
bool enableOOK);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 912 void readBit(RADIOLIB_PIN_TYPE pin);
-
- 914 #if !defined(RADIOLIB_GODMODE) && !defined(RADIOLIB_LOW_LEVEL)
-
-
-
-
-
- 920 int16_t SPIgetRegValue(uint8_t reg, uint8_t msb = 7, uint8_t lsb = 0);
- 921 int16_t SPIsetRegValue(uint8_t reg, uint8_t value, uint8_t msb = 7, uint8_t lsb = 0, uint8_t checkInterval = 2);
- 922 void SPIreadRegisterBurst(uint8_t reg, uint8_t numBytes, uint8_t* inBytes);
- 923 uint8_t SPIreadRegister(uint8_t reg);
- 924 void SPIwriteRegisterBurst(uint8_t reg, uint8_t* data,
size_t len);
- 925 void SPIwriteRegister(uint8_t reg, uint8_t data);
-
- 927 void SPIsendCommand(uint8_t cmd);
-
- 929 #if !defined(RADIOLIB_GODMODE)
-
-
-
-
-
- 935 uint8_t _rawRSSI = 0;
-
- 937 uint8_t _modulation = CC1101_MOD_FORMAT_2_FSK;
-
- 939 size_t _packetLength = 0;
- 940 bool _packetLengthQueried =
false;
- 941 uint8_t _packetLengthConfig = CC1101_LENGTH_CONFIG_VARIABLE;
-
- 943 bool _promiscuous =
false;
-
-
- 946 uint8_t _syncWordLength = 2;
-
-
-
- 950 int16_t directMode();
- 951 static void getExpMant(
float target, uint16_t mantOffset, uint8_t divExp, uint8_t expMax, uint8_t& exp, uint8_t& mant);
- 952 int16_t setPacketMode(uint8_t mode, uint8_t len);
-
-
-
+ 461 #define CC1101_VERSION_CLONE 0x17
+
+
+ 464 #define CC1101_MARC_STATE_SLEEP 0x00 // 4 0 main radio control state: sleep
+ 465 #define CC1101_MARC_STATE_IDLE 0x01 // 4 0 idle
+ 466 #define CC1101_MARC_STATE_XOFF 0x02 // 4 0 XOFF
+ 467 #define CC1101_MARC_STATE_VCOON_MC 0x03 // 4 0 VCOON_MC
+ 468 #define CC1101_MARC_STATE_REGON_MC 0x04 // 4 0 REGON_MC
+ 469 #define CC1101_MARC_STATE_MANCAL 0x05 // 4 0 MANCAL
+ 470 #define CC1101_MARC_STATE_VCOON 0x06 // 4 0 VCOON
+ 471 #define CC1101_MARC_STATE_REGON 0x07 // 4 0 REGON
+ 472 #define CC1101_MARC_STATE_STARTCAL 0x08 // 4 0 STARTCAL
+ 473 #define CC1101_MARC_STATE_BWBOOST 0x09 // 4 0 BWBOOST
+ 474 #define CC1101_MARC_STATE_FS_LOCK 0x0A // 4 0 FS_LOCK
+ 475 #define CC1101_MARC_STATE_IFADCON 0x0B // 4 0 IFADCON
+ 476 #define CC1101_MARC_STATE_ENDCAL 0x0C // 4 0 ENDCAL
+ 477 #define CC1101_MARC_STATE_RX 0x0D // 4 0 RX
+ 478 #define CC1101_MARC_STATE_RX_END 0x0E // 4 0 RX_END
+ 479 #define CC1101_MARC_STATE_RX_RST 0x0F // 4 0 RX_RST
+ 480 #define CC1101_MARC_STATE_TXRX_SWITCH 0x10 // 4 0 TXRX_SWITCH
+ 481 #define CC1101_MARC_STATE_RXFIFO_OVERFLOW 0x11 // 4 0 RXFIFO_OVERFLOW
+ 482 #define CC1101_MARC_STATE_FSTXON 0x12 // 4 0 FSTXON
+ 483 #define CC1101_MARC_STATE_TX 0x13 // 4 0 TX
+ 484 #define CC1101_MARC_STATE_TX_END 0x14 // 4 0 TX_END
+ 485 #define CC1101_MARC_STATE_RXTX_SWITCH 0x15 // 4 0 RXTX_SWITCH
+ 486 #define CC1101_MARC_STATE_TXFIFO_UNDERFLOW 0x16 // 4 0 TXFIFO_UNDERFLOW
+
+
+ 489 #define CC1101_WORTIME_MSB 0x00 // 7 0 WOR timer value
+ 490 #define CC1101_WORTIME_LSB 0x00 // 7 0
+
+
+ 493 #define CC1101_CRC_OK 0b10000000 // 7 7 CRC check passed
+ 494 #define CC1101_CRC_ERROR 0b00000000 // 7 7 CRC check failed
+ 495 #define CC1101_CS 0b01000000 // 6 6 carrier sense
+ 496 #define CC1101_PQT_REACHED 0b00100000 // 5 5 preamble quality reached
+ 497 #define CC1101_CCA 0b00010000 // 4 4 channel clear
+ 498 #define CC1101_SFD 0b00001000 // 3 3 start of frame delimiter - sync word received
+ 499 #define CC1101_GDO2_ACTIVE 0b00000100 // 2 2 GDO2 is active/asserted
+ 500 #define CC1101_GDO0_ACTIVE 0b00000001 // 0 0 GDO0 is active/asserted
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 541 int16_t
begin(
float freq = 434.0,
float br = 48.0,
float freqDev = 48.0,
float rxBw = 135.0, int8_t power = 10, uint8_t preambleLength = 16);
+
+ 555 int16_t
transmit(uint8_t* data,
size_t len, uint8_t addr = 0)
override;
+
+ 567 int16_t
receive(uint8_t* data,
size_t len)
override;
+
+
+
+
+
+
+
+
+
+
+
+ 606 void setGdo0Action(
void (*func)(
void), RADIOLIB_INTERRUPT_STATUS dir = RISING);
+
+
+
+ 620 void setGdo2Action(
void (*func)(
void), RADIOLIB_INTERRUPT_STATUS dir = FALLING);
+
+
+
+ 639 int16_t
startTransmit(uint8_t* data,
size_t len, uint8_t addr = 0)
override;
+
+
+
+ 657 int16_t
readData(uint8_t* data,
size_t len)
override;
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 719 int16_t
setSyncWord(uint8_t syncH, uint8_t syncL, uint8_t maxErrBits = 0,
bool requireCarrierSense =
false);
+
+ 734 int16_t
setSyncWord(uint8_t* syncWord, uint8_t len, uint8_t maxErrBits = 0,
bool requireCarrierSense =
false);
+
+
+
+ 754 int16_t
setNodeAddress(uint8_t nodeAddr, uint8_t numBroadcastAddrs = 0);
+
+
+
+ 770 int16_t
setOOK(
bool enableOOK);
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 913 void readBit(RADIOLIB_PIN_TYPE pin);
+
+ 915 #if !defined(RADIOLIB_GODMODE) && !defined(RADIOLIB_LOW_LEVEL)
+
+
+
+
+
+ 921 int16_t SPIgetRegValue(uint8_t reg, uint8_t msb = 7, uint8_t lsb = 0);
+ 922 int16_t SPIsetRegValue(uint8_t reg, uint8_t value, uint8_t msb = 7, uint8_t lsb = 0, uint8_t checkInterval = 2);
+ 923 void SPIreadRegisterBurst(uint8_t reg, uint8_t numBytes, uint8_t* inBytes);
+ 924 uint8_t SPIreadRegister(uint8_t reg);
+ 925 void SPIwriteRegisterBurst(uint8_t reg, uint8_t* data,
size_t len);
+ 926 void SPIwriteRegister(uint8_t reg, uint8_t data);
+
+ 928 void SPIsendCommand(uint8_t cmd);
+
+ 930 #if !defined(RADIOLIB_GODMODE)
+
+
+
+
+
+ 936 uint8_t _rawRSSI = 0;
+
+ 938 uint8_t _modulation = CC1101_MOD_FORMAT_2_FSK;
+
+ 940 size_t _packetLength = 0;
+ 941 bool _packetLengthQueried =
false;
+ 942 uint8_t _packetLengthConfig = CC1101_LENGTH_CONFIG_VARIABLE;
+
+ 944 bool _promiscuous =
false;
+
+
+ 947 uint8_t _syncWordLength = 2;
+
+
+
+ 951 int16_t directMode();
+ 952 static void getExpMant(
float target, uint16_t mantOffset, uint8_t divExp, uint8_t expMax, uint8_t& exp, uint8_t& mant);
+ 953 int16_t setPacketMode(uint8_t mode, uint8_t len);
+
+
+
int16_t transmit(__FlashStringHelper *fstr, uint8_t addr=0)
Arduino Flash String transmit method.
Definition: PhysicalLayer.cpp:10
@@ -772,7 +773,7 @@ $(document).ready(function(){initNavTree('_c_c1101_8h_source.html',''); initResi
int16_t receiveDirect() override
Starts direct mode reception.
Definition: CC1101.cpp:206
int16_t enableSyncWordFiltering(uint8_t maxErrBits=0, bool requireCarrierSense=false)
Enable sync word filtering and generation.
Definition: CC1101.cpp:743
void setGdo0Action(void(*func)(void), RADIOLIB_INTERRUPT_STATUS dir=RISING)
Sets interrupt service routine to call when GDO0 activates.
Definition: CC1101.cpp:226
-Control class for CC1101 module.
Definition: CC1101.h:506
+Control class for CC1101 module.
Definition: CC1101.h:507
void setRfSwitchPins(RADIOLIB_PIN_TYPE rxEn, RADIOLIB_PIN_TYPE txEn)
Some modules contain external RF switch controlled by two pins. This function gives RadioLib control ...
Definition: CC1101.cpp:845
int16_t setPromiscuousMode(bool promiscuous=true)
Set modem in "sniff" mode: no packet filtering (e.g., no preamble, sync word, address,...
Definition: CC1101.cpp:770
int16_t setCrcFiltering(bool crcOn=true)
Enable CRC filtering and generation.
Definition: CC1101.cpp:760