diff --git a/_r_f69_8h_source.html b/_r_f69_8h_source.html index bca5a075..da70b5f4 100644 --- a/_r_f69_8h_source.html +++ b/_r_f69_8h_source.html @@ -488,7 +488,7 @@ $(document).ready(function(){initNavTree('_r_f69_8h_source.html',''); initResiza
400 // RF69_REG_FIFO_THRESH
401 #define RADIOLIB_RF69_TX_START_CONDITION_FIFO_LEVEL 0b00000000 // 7 7 packet transmission start condition: FifoLevel
402 #define RADIOLIB_RF69_TX_START_CONDITION_FIFO_NOT_EMPTY 0b10000000 // 7 7 FifoNotEmpty (default)
-
403 #define RADIOLIB_RF69_FIFO_THRESHOLD 0b00001111 // 6 0 default threshold to trigger FifoLevel interrupt
+
403 #define RADIOLIB_RF69_FIFO_THRESH 0x1F // 6 0 default threshold to trigger FifoLevel interrupt
404 
405 // RF69_REG_PACKET_CONFIG_2
406 #define RADIOLIB_RF69_INTER_PACKET_RX_DELAY 0b00000000 // 7 4 delay between FIFO empty and start of new RSSI phase
@@ -570,187 +570,205 @@ $(document).ready(function(){initNavTree('_r_f69_8h_source.html',''); initResiza
587 
591  void clearDio1Action();
592 
-
605  int16_t startTransmit(uint8_t* data, size_t len, uint8_t addr = 0) override;
-
606 
-
612  int16_t startReceive();
-
613 
-
624  int16_t readData(uint8_t* data, size_t len) override;
-
625 
-
626  // configuration methods
-
627 
-
635  int16_t setFrequency(float freq);
-
636 
-
644  int16_t setBitRate(float br);
-
645 
-
653  int16_t setRxBandwidth(float rxBw);
-
654 
-
662  int16_t setFrequencyDeviation(float freqDev) override;
+
598  void setFifoEmptyAction(void (*func)(void));
+
599 
+
603  void clearFifoEmptyAction();
+
604 
+
610  void setFifoFullAction(void (*func)(void));
+
611 
+
615  void clearFifoFullAction();
+
616 
+
628  bool fifoAdd(uint8_t* data, int totalLen, volatile int* remLen);
+
629 
+
641  bool fifoGet(volatile uint8_t* data, int totalLen, volatile int* rcvLen);
+
642 
+
655  int16_t startTransmit(uint8_t* data, size_t len, uint8_t addr = 0) override;
+
656 
+
662  int16_t startReceive();
663 
-
673  int16_t setOutputPower(int8_t power, bool highPower = false);
-
674 
-
684  int16_t setSyncWord(uint8_t* syncWord, size_t len, uint8_t maxErrBits = 0);
-
685 
-
693  int16_t setPreambleLength(uint8_t preambleLen);
-
694 
-
702  int16_t setNodeAddress(uint8_t nodeAddr);
-
703 
-
711  int16_t setBroadcastAddress(uint8_t broadAddr);
-
712 
-
718  int16_t disableAddressFiltering();
-
719 
-
720  // measurement methods
-
721 
-
727  void setAmbientTemperature(int16_t tempAmbient);
-
728 
-
734  int16_t getTemperature();
+
674  int16_t readData(uint8_t* data, size_t len) override;
+
675 
+
676  // configuration methods
+
677 
+
685  int16_t setFrequency(float freq);
+
686 
+
694  int16_t setBitRate(float br);
+
695 
+
703  int16_t setRxBandwidth(float rxBw);
+
704 
+
712  int16_t setFrequencyDeviation(float freqDev) override;
+
713 
+
723  int16_t setOutputPower(int8_t power, bool highPower = false);
+
724 
+
734  int16_t setSyncWord(uint8_t* syncWord, size_t len, uint8_t maxErrBits = 0);
735 
-
743  size_t getPacketLength(bool update = true) override;
+
743  int16_t setPreambleLength(uint8_t preambleLen);
744 
-
753  int16_t setOOK(bool enableOOK);
-
754 
-
762  int16_t setOokThresholdType(uint8_t type);
-
763 
-
771  int16_t setOokFixedThreshold(uint8_t value);
-
772 
-
780  int16_t setOokPeakThresholdDecrement(uint8_t value);
-
781 
-
789  int16_t fixedPacketLengthMode(uint8_t len = RADIOLIB_RF69_MAX_PACKET_LENGTH);
-
790 
-
798  int16_t variablePacketLengthMode(uint8_t maxLen = RADIOLIB_RF69_MAX_PACKET_LENGTH);
-
799 
-
807  int16_t enableSyncWordFiltering(uint8_t maxErrBits = 0);
-
808 
-
814  int16_t disableSyncWordFiltering();
-
815 
-
821  int16_t enableContinuousModeBitSync();
+
752  int16_t setNodeAddress(uint8_t nodeAddr);
+
753 
+
761  int16_t setBroadcastAddress(uint8_t broadAddr);
+
762 
+
768  int16_t disableAddressFiltering();
+
769 
+
770  // measurement methods
+
771 
+
777  void setAmbientTemperature(int16_t tempAmbient);
+
778 
+
784  int16_t getTemperature();
+
785 
+
793  size_t getPacketLength(bool update = true) override;
+
794 
+
803  int16_t setOOK(bool enableOOK);
+
804 
+
812  int16_t setOokThresholdType(uint8_t type);
+
813 
+
821  int16_t setOokFixedThreshold(uint8_t value);
822 
-
828  int16_t disableContinuousModeBitSync();
-
829 
-
837  int16_t setCrcFiltering(bool crcOn = true);
-
838 
-
846  int16_t setPromiscuousMode(bool promiscuous = true);
-
847 
-
856  int16_t setDataShaping(uint8_t sh) override;
-
857 
-
866  int16_t setEncoding(uint8_t encoding) override;
-
867 
-
875  int16_t setLnaTestBoost(bool value);
-
876 
-
882  float getRSSI();
-
883 
-
892  void setRfSwitchPins(RADIOLIB_PIN_TYPE rxEn, RADIOLIB_PIN_TYPE txEn);
-
893 
-
899  uint8_t randomByte();
-
900 
-
906  int16_t getChipVersion();
+
830  int16_t setOokPeakThresholdDecrement(uint8_t value);
+
831 
+
839  int16_t fixedPacketLengthMode(uint8_t len = RADIOLIB_RF69_MAX_PACKET_LENGTH);
+
840 
+
848  int16_t variablePacketLengthMode(uint8_t maxLen = RADIOLIB_RF69_MAX_PACKET_LENGTH);
+
849 
+
857  int16_t enableSyncWordFiltering(uint8_t maxErrBits = 0);
+
858 
+
864  int16_t disableSyncWordFiltering();
+
865 
+
871  int16_t enableContinuousModeBitSync();
+
872 
+
878  int16_t disableContinuousModeBitSync();
+
879 
+
887  int16_t setCrcFiltering(bool crcOn = true);
+
888 
+
896  int16_t setPromiscuousMode(bool promiscuous = true);
+
897 
+
906  int16_t setDataShaping(uint8_t sh) override;
907 
-
913  void setDirectAction(void (*func)(void));
-
914 
-
920  void readBit(RADIOLIB_PIN_TYPE pin);
-
921 
-
922 #if !defined(RADIOLIB_GODMODE) && !defined(RADIOLIB_LOW_LEVEL)
-
923  protected:
-
924 #endif
-
925  Module* _mod;
+
916  int16_t setEncoding(uint8_t encoding) override;
+
917 
+
925  int16_t setLnaTestBoost(bool value);
926 
-
927 #if !defined(RADIOLIB_GODMODE)
-
928  protected:
-
929 #endif
-
930 
-
931  float _freq = 0;
-
932  float _br = 0;
-
933  float _rxBw = 0;
-
934  bool _ook = false;
-
935  int16_t _tempOffset = 0;
-
936  int8_t _power = 0;
-
937 
-
938  size_t _packetLength = 0;
-
939  bool _packetLengthQueried = false;
-
940  uint8_t _packetLengthConfig = RADIOLIB_RF69_PACKET_FORMAT_VARIABLE;
-
941 
-
942  bool _promiscuous = false;
+
932  float getRSSI();
+
933 
+
942  void setRfSwitchPins(RADIOLIB_PIN_TYPE rxEn, RADIOLIB_PIN_TYPE txEn);
943 
-
944  uint8_t _syncWordLength = 2;
-
945 
-
946  bool _bitSync = true;
-
947 
-
948  int16_t config();
-
949  int16_t directMode();
-
950  int16_t setPacketMode(uint8_t mode, uint8_t len);
-
951 
-
952 #if !defined(RADIOLIB_GODMODE)
-
953  private:
-
954 #endif
-
955  int16_t setMode(uint8_t mode);
-
956  void clearIRQFlags();
-
957  void clearFIFO(size_t count);
-
958 };
-
959 
-
960 #endif
-
961 
-
962 #endif
+
949  uint8_t randomByte();
+
950 
+
956  int16_t getChipVersion();
+
957 
+
963  void setDirectAction(void (*func)(void));
+
964 
+
970  void readBit(RADIOLIB_PIN_TYPE pin);
+
971 
+
972 #if !defined(RADIOLIB_GODMODE) && !defined(RADIOLIB_LOW_LEVEL)
+
973  protected:
+
974 #endif
+
975  Module* _mod;
+
976 
+
977 #if !defined(RADIOLIB_GODMODE)
+
978  protected:
+
979 #endif
+
980 
+
981  float _freq = 0;
+
982  float _br = 0;
+
983  float _rxBw = 0;
+
984  bool _ook = false;
+
985  int16_t _tempOffset = 0;
+
986  int8_t _power = 0;
+
987 
+
988  size_t _packetLength = 0;
+
989  bool _packetLengthQueried = false;
+
990  uint8_t _packetLengthConfig = RADIOLIB_RF69_PACKET_FORMAT_VARIABLE;
+
991 
+
992  bool _promiscuous = false;
+
993 
+
994  uint8_t _syncWordLength = 2;
+
995 
+
996  bool _bitSync = true;
+
997 
+
998  int16_t config();
+
999  int16_t directMode();
+
1000  int16_t setPacketMode(uint8_t mode, uint8_t len);
+
1001 
+
1002 #if !defined(RADIOLIB_GODMODE)
+
1003  private:
+
1004 #endif
+
1005  int16_t setMode(uint8_t mode);
+
1006  void clearIRQFlags();
+
1007  void clearFIFO(size_t count);
+
1008 };
+
1009 
+
1010 #endif
+
1011 
+
1012 #endif
-
RF69::setCrcFiltering
int16_t setCrcFiltering(bool crcOn=true)
Enable CRC filtering and generation.
Definition: RF69.cpp:694
+
RF69::setCrcFiltering
int16_t setCrcFiltering(bool crcOn=true)
Enable CRC filtering and generation.
Definition: RF69.cpp:791
RF69::setDio0Action
void setDio0Action(void(*func)(void))
Sets interrupt service routine to call when DIO0 activates.
Definition: RF69.cpp:277
RF69::clearDio1Action
void clearDio1Action()
Clears interrupt service routine to call when DIO1 activates.
Definition: RF69.cpp:293
PhysicalLayer::transmit
int16_t transmit(__FlashStringHelper *fstr, uint8_t addr=0)
Arduino Flash String transmit method.
Definition: PhysicalLayer.cpp:10
-
RF69::setBroadcastAddress
int16_t setBroadcastAddress(uint8_t broadAddr)
Sets broadcast address. Calling this method will also enable address filtering for node and broadcast...
Definition: RF69.cpp:595
+
RF69::setBroadcastAddress
int16_t setBroadcastAddress(uint8_t broadAddr)
Sets broadcast address. Calling this method will also enable address filtering for node and broadcast...
Definition: RF69.cpp:692
RF69::receiveDirect
int16_t receiveDirect() override
Starts direct mode reception.
Definition: RF69.cpp:204
-
RF69::setRfSwitchPins
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: RF69.cpp:778
-
RF69::setOokFixedThreshold
int16_t setOokFixedThreshold(uint8_t value)
Fixed threshold for the Data Slicer in OOK mode or floor threshold for the Data Slicer in OOK when Pe...
Definition: RF69.cpp:411
-
RF69::readData
int16_t readData(uint8_t *data, size_t len) override
Reads data received after calling startReceive method.
Definition: RF69.cpp:348
-
RF69::setPromiscuousMode
int16_t setPromiscuousMode(bool promiscuous=true)
Set modem in "sniff" mode: no packet filtering (e.g., no preamble, sync word, address,...
Definition: RF69.cpp:702
+
RF69::setRfSwitchPins
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: RF69.cpp:875
+
RF69::setOokFixedThreshold
int16_t setOokFixedThreshold(uint8_t value)
Fixed threshold for the Data Slicer in OOK mode or floor threshold for the Data Slicer in OOK when Pe...
Definition: RF69.cpp:508
+
RF69::readData
int16_t readData(uint8_t *data, size_t len) override
Reads data received after calling startReceive method.
Definition: RF69.cpp:445
+
RF69::setPromiscuousMode
int16_t setPromiscuousMode(bool promiscuous=true)
Set modem in "sniff" mode: no packet filtering (e.g., no preamble, sync word, address,...
Definition: RF69.cpp:799
RF69::receive
int16_t receive(uint8_t *data, size_t len) override
Blocking binary receive method. Overloads for string-based transmissions are implemented in PhysicalL...
Definition: RF69.cpp:143
RF69::clearDio0Action
void clearDio0Action()
Clears interrupt service routine to call when DIO0 activates.
Definition: RF69.cpp:281
-
RF69::getPacketLength
size_t getPacketLength(bool update=true) override
Query modem for the packet length of received payload.
Definition: RF69.cpp:638
+
RF69::clearFifoEmptyAction
void clearFifoEmptyAction()
Clears interrupt service routine to call when FIFO is empty.
Definition: RF69.cpp:311
+
RF69::getPacketLength
size_t getPacketLength(bool update=true) override
Query modem for the packet length of received payload.
Definition: RF69.cpp:735
RF69
Control class for RF69 module. Also serves as base class for SX1231.
Definition: RF69.h:440
RF69::setDio1Action
void setDio1Action(void(*func)(void))
Sets interrupt service routine to call when DIO1 activates.
Definition: RF69.cpp:285
RF69::startReceive
int16_t startReceive()
Interrupt-driven receive method. GDO0 will be activated when full packet is received.
Definition: RF69.cpp:249
-
RF69::setFrequency
int16_t setFrequency(float freq)
Sets carrier frequency. Allowed values are in bands 290.0 to 340.0 MHz, 431.0 to 510....
Definition: RF69.cpp:419
-
RF69::setNodeAddress
int16_t setNodeAddress(uint8_t nodeAddr)
Sets node address. Calling this method will also enable address filtering for node address only.
Definition: RF69.cpp:586
+
RF69::setFrequency
int16_t setFrequency(float freq)
Sets carrier frequency. Allowed values are in bands 290.0 to 340.0 MHz, 431.0 to 510....
Definition: RF69.cpp:516
+
RF69::setNodeAddress
int16_t setNodeAddress(uint8_t nodeAddr)
Sets node address. Calling this method will also enable address filtering for node address only.
Definition: RF69.cpp:683
RF69::enableAES
int16_t enableAES()
Enables AES encryption.
Definition: RF69.cpp:241
-
RF69::setPreambleLength
int16_t setPreambleLength(uint8_t preambleLen)
Sets preamble length.
Definition: RF69.cpp:575
-
RF69::disableContinuousModeBitSync
int16_t disableContinuousModeBitSync()
Disable Bit synchronization in continuous mode.
Definition: RF69.cpp:685
+
RF69::setPreambleLength
int16_t setPreambleLength(uint8_t preambleLen)
Sets preamble length.
Definition: RF69.cpp:672
+
RF69::disableContinuousModeBitSync
int16_t disableContinuousModeBitSync()
Disable Bit synchronization in continuous mode.
Definition: RF69.cpp:782
RF69::begin
int16_t begin(float freq=434.0, float br=4.8, float freqDev=5.0, float rxBw=125.0, int8_t power=10, uint8_t preambleLen=16)
Initialization method.
Definition: RF69.cpp:12
RF69::reset
void reset()
Reset method. Will reset the chip to the default state using RST pin.
Definition: RF69.cpp:106
-
RF69::variablePacketLengthMode
int16_t variablePacketLengthMode(uint8_t maxLen=RADIOLIB_RF69_MAX_PACKET_LENGTH)
Set modem in variable packet length mode.
Definition: RF69.cpp:655
+
RF69::variablePacketLengthMode
int16_t variablePacketLengthMode(uint8_t maxLen=RADIOLIB_RF69_MAX_PACKET_LENGTH)
Set modem in variable packet length mode.
Definition: RF69.cpp:752
+
RF69::fifoAdd
bool fifoAdd(uint8_t *data, int totalLen, volatile int *remLen)
Set interrupt service routine function to call when FIFO is empty.
Definition: RF69.cpp:329
RF69::transmit
int16_t transmit(uint8_t *data, size_t len, uint8_t addr=0) override
Blocking binary transmit method. Overloads for string-based transmissions are implemented in Physical...
Definition: RF69.cpp:114
-
RF69::setRxBandwidth
int16_t setRxBandwidth(float rxBw)
Sets receiver bandwidth. Allowed values are 2.6, 3.1, 3.9, 5.2, 6.3, 7.8, 10.4, 12....
Definition: RF69.cpp:462
+
RF69::setRxBandwidth
int16_t setRxBandwidth(float rxBw)
Sets receiver bandwidth. Allowed values are 2.6, 3.1, 3.9, 5.2, 6.3, 7.8, 10.4, 12....
Definition: RF69.cpp:559
PhysicalLayer::readData
int16_t readData(String &str, size_t len=0)
Reads data that was received after calling startReceive method.
Definition: PhysicalLayer.cpp:59
-
RF69::setBitRate
int16_t setBitRate(float br)
Sets bit rate. Allowed values range from 1.2 to 300.0 kbps.
Definition: RF69.cpp:441
+
RF69::setBitRate
int16_t setBitRate(float br)
Sets bit rate. Allowed values range from 1.2 to 300.0 kbps.
Definition: RF69.cpp:538
RF69::disableAES
int16_t disableAES()
Disables AES encryption.
Definition: RF69.cpp:245
RF69::RF69
RF69(Module *module)
Default constructor.
Definition: RF69.cpp:4
-
RF69::setOokPeakThresholdDecrement
int16_t setOokPeakThresholdDecrement(uint8_t value)
Period of decrement of the RSSI threshold in the OOK demodulator.
Definition: RF69.cpp:415
-
RF69::setDataShaping
int16_t setDataShaping(uint8_t sh) override
Sets Gaussian filter bandwidth-time product that will be used for data shaping. Allowed values are RA...
Definition: RF69.cpp:728
-
RF69::enableContinuousModeBitSync
int16_t enableContinuousModeBitSync()
Enable Bit synchronization in continuous mode.
Definition: RF69.cpp:676
-
RF69::randomByte
uint8_t randomByte()
Get one truly random byte from RSSI noise.
Definition: RF69.cpp:782
-
RF69::setOOK
int16_t setOOK(bool enableOOK)
Enables/disables OOK modulation instead of FSK. Note: This function calls setRxBandwidth again,...
Definition: RF69.cpp:385
+
RF69::setOokPeakThresholdDecrement
int16_t setOokPeakThresholdDecrement(uint8_t value)
Period of decrement of the RSSI threshold in the OOK demodulator.
Definition: RF69.cpp:512
+
RF69::setDataShaping
int16_t setDataShaping(uint8_t sh) override
Sets Gaussian filter bandwidth-time product that will be used for data shaping. Allowed values are RA...
Definition: RF69.cpp:825
+
RF69::enableContinuousModeBitSync
int16_t enableContinuousModeBitSync()
Enable Bit synchronization in continuous mode.
Definition: RF69.cpp:773
+
RF69::randomByte
uint8_t randomByte()
Get one truly random byte from RSSI noise.
Definition: RF69.cpp:879
+
RF69::setOOK
int16_t setOOK(bool enableOOK)
Enables/disables OOK modulation instead of FSK. Note: This function calls setRxBandwidth again,...
Definition: RF69.cpp:482
+
RF69::setFifoFullAction
void setFifoFullAction(void(*func)(void))
Set interrupt service routine function to call when FIFO is full.
Definition: RF69.cpp:315
RF69::standby
int16_t standby() override
Sets the module to standby mode.
Definition: RF69.cpp:175
-
RF69::setLnaTestBoost
int16_t setLnaTestBoost(bool value)
Enable/disable LNA Boost mode (disabled by default).
Definition: RF69.cpp:766
-
RF69::getTemperature
int16_t getTemperature()
Measures temperature.
Definition: RF69.cpp:621
-
RF69::setFrequencyDeviation
int16_t setFrequencyDeviation(float freqDev) override
Sets frequency deviation.
Definition: RF69.cpp:490
-
RF69::disableAddressFiltering
int16_t disableAddressFiltering()
Disables address filtering. Calling this method will also erase previously set addresses.
Definition: RF69.cpp:604
-
RF69::setSyncWord
int16_t setSyncWord(uint8_t *syncWord, size_t len, uint8_t maxErrBits=0)
Sets sync word. Up to 8 bytes can be set as sync word.
Definition: RF69.cpp:552
-
RF69::readBit
void readBit(RADIOLIB_PIN_TYPE pin)
Function to read and process data bit in direct reception mode.
Definition: RF69.cpp:805
-
RF69::disableSyncWordFiltering
int16_t disableSyncWordFiltering()
Disable preamble and sync word filtering and generation.
Definition: RF69.cpp:664
-
RF69::getRSSI
float getRSSI()
Gets RSSI (Recorded Signal Strength Indicator) of the last received packet.
Definition: RF69.cpp:774
-
RF69::fixedPacketLengthMode
int16_t fixedPacketLengthMode(uint8_t len=RADIOLIB_RF69_MAX_PACKET_LENGTH)
Set modem in fixed packet length mode.
Definition: RF69.cpp:651
+
RF69::clearFifoFullAction
void clearFifoFullAction()
Clears interrupt service routine to call when FIFO is full.
Definition: RF69.cpp:324
+
RF69::setLnaTestBoost
int16_t setLnaTestBoost(bool value)
Enable/disable LNA Boost mode (disabled by default).
Definition: RF69.cpp:863
+
RF69::getTemperature
int16_t getTemperature()
Measures temperature.
Definition: RF69.cpp:718
+
RF69::setFrequencyDeviation
int16_t setFrequencyDeviation(float freqDev) override
Sets frequency deviation.
Definition: RF69.cpp:587
+
RF69::disableAddressFiltering
int16_t disableAddressFiltering()
Disables address filtering. Calling this method will also erase previously set addresses.
Definition: RF69.cpp:701
+
RF69::setSyncWord
int16_t setSyncWord(uint8_t *syncWord, size_t len, uint8_t maxErrBits=0)
Sets sync word. Up to 8 bytes can be set as sync word.
Definition: RF69.cpp:649
+
RF69::readBit
void readBit(RADIOLIB_PIN_TYPE pin)
Function to read and process data bit in direct reception mode.
Definition: RF69.cpp:902
+
RF69::setFifoEmptyAction
void setFifoEmptyAction(void(*func)(void))
Set interrupt service routine function to call when FIFO is empty.
Definition: RF69.cpp:300
+
RF69::disableSyncWordFiltering
int16_t disableSyncWordFiltering()
Disable preamble and sync word filtering and generation.
Definition: RF69.cpp:761
+
RF69::getRSSI
float getRSSI()
Gets RSSI (Recorded Signal Strength Indicator) of the last received packet.
Definition: RF69.cpp:871
+
RF69::fixedPacketLengthMode
int16_t fixedPacketLengthMode(uint8_t len=RADIOLIB_RF69_MAX_PACKET_LENGTH)
Set modem in fixed packet length mode.
Definition: RF69.cpp:748
PhysicalLayer
Provides common interface for protocols that run on LoRa/FSK modules, such as RTTY or LoRaWAN....
Definition: PhysicalLayer.h:14
PhysicalLayer::receive
int16_t receive(String &str, size_t len=0)
Arduino String receive method.
Definition: PhysicalLayer.cpp:100
-
RF69::setEncoding
int16_t setEncoding(uint8_t encoding) override
Sets transmission encoding. Allowed values are RADIOLIB_ENCODING_NRZ, RADIOLIB_ENCODING_MANCHESTER an...
Definition: RF69.cpp:748
+
RF69::setEncoding
int16_t setEncoding(uint8_t encoding) override
Sets transmission encoding. Allowed values are RADIOLIB_ENCODING_NRZ, RADIOLIB_ENCODING_MANCHESTER an...
Definition: RF69.cpp:845
RF69::setAESKey
void setAESKey(uint8_t *key)
Sets AES key.
Definition: RF69.cpp:237
-
RF69::setDirectAction
void setDirectAction(void(*func)(void))
Set interrupt service routine function to call when data bit is receveid in direct mode.
Definition: RF69.cpp:801
+
RF69::setDirectAction
void setDirectAction(void(*func)(void))
Set interrupt service routine function to call when data bit is receveid in direct mode.
Definition: RF69.cpp:898
Module
Implements all common low-level methods to control the wireless module. Every module class contains o...
Definition: Module.h:16
RF69::transmitDirect
int16_t transmitDirect(uint32_t frf=0) override
Starts direct mode transmission.
Definition: RF69.cpp:183
-
RF69::setOutputPower
int16_t setOutputPower(int8_t power, bool highPower=false)
Sets output power. Allowed values range from -18 to 13 dBm for low power modules (RF69C/CW) or -2 to ...
Definition: RF69.cpp:514
+
RF69::setOutputPower
int16_t setOutputPower(int8_t power, bool highPower=false)
Sets output power. Allowed values range from -18 to 13 dBm for low power modules (RF69C/CW) or -2 to ...
Definition: RF69.cpp:611
+
RF69::fifoGet
bool fifoGet(volatile uint8_t *data, int totalLen, volatile int *rcvLen)
Set interrupt service routine function to call when FIFO is sufficently full to read.
Definition: RF69.cpp:359
RF69::packetMode
int16_t packetMode()
Stops direct mode. It is required to call this method to switch from direct transmissions to packet-b...
Definition: RF69.cpp:233
-
RF69::setAmbientTemperature
void setAmbientTemperature(int16_t tempAmbient)
Sets ambient temperature. Required to correct values from on-board temperature sensor.
Definition: RF69.cpp:617
-
RF69::setOokThresholdType
int16_t setOokThresholdType(uint8_t type)
Selects the type of threshold in the OOK data slicer.
Definition: RF69.cpp:404
+
RF69::setAmbientTemperature
void setAmbientTemperature(int16_t tempAmbient)
Sets ambient temperature. Required to correct values from on-board temperature sensor.
Definition: RF69.cpp:714
+
RF69::setOokThresholdType
int16_t setOokThresholdType(uint8_t type)
Selects the type of threshold in the OOK data slicer.
Definition: RF69.cpp:501
RF69::sleep
int16_t sleep()
Sets the module to sleep mode.
Definition: RF69.cpp:167
-
RF69::getChipVersion
int16_t getChipVersion()
Read version SPI register. Should return RF69_CHIP_VERSION (0x24) if SX127x is connected and working.
Definition: RF69.cpp:809
-
RF69::enableSyncWordFiltering
int16_t enableSyncWordFiltering(uint8_t maxErrBits=0)
Enable sync word filtering and generation.
Definition: RF69.cpp:659
-
RF69::startTransmit
int16_t startTransmit(uint8_t *data, size_t len, uint8_t addr=0) override
Interrupt-driven binary transmit method. Overloads for string-based transmissions are implemented in ...
Definition: RF69.cpp:300
+
RF69::getChipVersion
int16_t getChipVersion()
Read version SPI register. Should return RF69_CHIP_VERSION (0x24) if SX127x is connected and working.
Definition: RF69.cpp:906
+
RF69::enableSyncWordFiltering
int16_t enableSyncWordFiltering(uint8_t maxErrBits=0)
Enable sync word filtering and generation.
Definition: RF69.cpp:756
+
RF69::startTransmit
int16_t startTransmit(uint8_t *data, size_t len, uint8_t addr=0) override
Interrupt-driven binary transmit method. Overloads for string-based transmissions are implemented in ...
Definition: RF69.cpp:387
PhysicalLayer::startTransmit
int16_t startTransmit(String &str, uint8_t addr=0)
Interrupt-driven Arduino String transmit method. Unlike the standard transmit method,...
Definition: PhysicalLayer.cpp:51
@@ -452,7 +452,7 @@ class FSK4Client<

Get one truly random byte from RSSI noise. Must be implemented in module class.

Returns
TRNG byte.
-

Implemented in SX127x, SX126x, CC1101, RF69, SX128x, Si443x, and nRF24.

+

Implemented in SX127x, RF69, SX126x, CC1101, SX128x, Si443x, and nRF24.

@@ -508,7 +508,7 @@ class FSK4Client< -

Implemented in SX127x, SX126x, CC1101, RF69, SX128x, Si443x, and nRF24.

+

Implemented in SX127x, RF69, SX126x, CC1101, SX128x, Si443x, and nRF24.

@@ -747,7 +747,7 @@ class FSK4Client<
Returns
Status Codes
-

Implemented in CC1101, RF69, Si443x, SX126x, SX128x, nRF24, SX1278, and SX1272.

+

Implemented in RF69, CC1101, Si443x, SX126x, SX128x, nRF24, SX1278, and SX1272.

@@ -783,7 +783,7 @@ class FSK4Client< -

Implemented in SX127x, SX126x, CC1101, RF69, SX128x, Si443x, and nRF24.

+

Implemented in SX127x, RF69, SX126x, CC1101, SX128x, Si443x, and nRF24.

@@ -858,7 +858,7 @@ class FSK4Client<
Returns
Status Codes
-

Implemented in SX127x, CC1101, SX126x, RF69, SX128x, Si443x, and nRF24.

+

Implemented in SX127x, RF69, CC1101, SX126x, SX128x, Si443x, and nRF24.

@@ -895,7 +895,7 @@ class FSK4Client<
Returns
Status Codes
-

Implemented in SX127x, Si443x, CC1101, SX126x, RF69, SX128x, and nRF24.

+

Implemented in SX127x, Si443x, CC1101, RF69, SX126x, SX128x, and nRF24.

diff --git a/class_r_f69-members.html b/class_r_f69-members.html index 4a86cf8d..69e2bd39 100644 --- a/class_r_f69-members.html +++ b/class_r_f69-members.html @@ -93,6 +93,8 @@ $(document).ready(function(){initNavTree('class_r_f69.html',''); initResizable() begin(float freq=434.0, float br=4.8, float freqDev=5.0, float rxBw=125.0, int8_t power=10, uint8_t preambleLen=16)RF69 clearDio0Action()RF69 clearDio1Action()RF69 + clearFifoEmptyAction()RF69 + clearFifoFullAction()RF69 disableAddressFiltering()RF69 disableAES()RF69 disableContinuousModeBitSync()RF69 @@ -100,6 +102,8 @@ $(document).ready(function(){initNavTree('class_r_f69.html',''); initResizable() enableAES()RF69 enableContinuousModeBitSync()RF69 enableSyncWordFiltering(uint8_t maxErrBits=0)RF69 + fifoAdd(uint8_t *data, int totalLen, volatile int *remLen)RF69 + fifoGet(volatile uint8_t *data, int totalLen, volatile int *rcvLen)RF69 fixedPacketLengthMode(uint8_t len=RADIOLIB_RF69_MAX_PACKET_LENGTH)RF69 getChipVersion()RF69 getFreqStep() constPhysicalLayer @@ -136,6 +140,8 @@ $(document).ready(function(){initNavTree('class_r_f69.html',''); initResizable() setDirectAction(void(*func)(void))RF69virtual setDirectSyncWord(uint32_t syncWord, uint8_t len)PhysicalLayer setEncoding(uint8_t encoding) overrideRF69virtual + setFifoEmptyAction(void(*func)(void))RF69 + setFifoFullAction(void(*func)(void))RF69 setFrequency(float freq)RF69 setFrequencyDeviation(float freqDev) overrideRF69virtual setLnaTestBoost(bool value)RF69 diff --git a/class_r_f69.html b/class_r_f69.html index 334b2b93..bf91bbb1 100644 --- a/class_r_f69.html +++ b/class_r_f69.html @@ -165,6 +165,26 @@ void clearDio1Action ()  Clears interrupt service routine to call when DIO1 activates.
  +void setFifoEmptyAction (void(*func)(void)) + Set interrupt service routine function to call when FIFO is empty. More...
+  + +void clearFifoEmptyAction () + Clears interrupt service routine to call when FIFO is empty.
+  +void setFifoFullAction (void(*func)(void)) + Set interrupt service routine function to call when FIFO is full. More...
+  + +void clearFifoFullAction () + Clears interrupt service routine to call when FIFO is full.
+  +bool fifoAdd (uint8_t *data, int totalLen, volatile int *remLen) + Set interrupt service routine function to call when FIFO is empty. More...
+  +bool fifoGet (volatile uint8_t *data, int totalLen, volatile int *rcvLen) + Set interrupt service routine function to call when FIFO is sufficently full to read. More...
+  int16_t startTransmit (uint8_t *data, size_t len, uint8_t addr=0) override  Interrupt-driven binary transmit method. Overloads for string-based transmissions are implemented in PhysicalLayer. More...
  @@ -597,6 +617,96 @@ void 
Returns
Status Codes
+ + + +

◆ fifoAdd()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool RF69::fifoAdd (uint8_t * data,
int totalLen,
volatile int * remLen 
)
+
+ +

Set interrupt service routine function to call when FIFO is empty.

+
Parameters
+ + + + +
dataPointer to the transmission buffer.
totalLenTotal number of bytes to transmit.
remLenPointer to a counter holding the number of bytes that have been transmitted so far.
+
+
+
Returns
True when a complete packet is sent, false if more data is needed.
+ +
+
+ +

◆ fifoGet()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool RF69::fifoGet (volatile uint8_t * data,
int totalLen,
volatile int * rcvLen 
)
+
+ +

Set interrupt service routine function to call when FIFO is sufficently full to read.

+
Parameters
+ + + + +
dataPointer to a buffer that stores the receive data.
totalLenTotal number of bytes to receive.
rcvLenPointer to a counter holding the number of bytes that have been received so far.
+
+
+
Returns
True when a complete packet is received, false if more data is needed.
+
@@ -1304,6 +1414,58 @@ void PhysicalLayer.

+ + + +

◆ setFifoEmptyAction()

+ +
+
+ + + + + + + + +
void RF69::setFifoEmptyAction (void(*)(void) func)
+
+ +

Set interrupt service routine function to call when FIFO is empty.

+
Parameters
+ + +
funcPointer to interrupt service routine.
+
+
+ +
+
+ +

◆ setFifoFullAction()

+ +
+
+ + + + + + + + +
void RF69::setFifoFullAction (void(*)(void) func)
+
+ +

Set interrupt service routine function to call when FIFO is full.

+
Parameters
+ + +
funcPointer to interrupt service routine.
+
+
+
diff --git a/class_r_f69.js b/class_r_f69.js index f9c5c5d1..ceb04d76 100644 --- a/class_r_f69.js +++ b/class_r_f69.js @@ -4,6 +4,8 @@ var class_r_f69 = [ "begin", "class_r_f69.html#a35944b24d27a1ac98c1034cfcdb816cd", null ], [ "clearDio0Action", "class_r_f69.html#a9721d2a3ed9fa8dd878575d71d5a4942", null ], [ "clearDio1Action", "class_r_f69.html#ade1f9a7a603d712c480ed5e9a8d1bf51", null ], + [ "clearFifoEmptyAction", "class_r_f69.html#a0d7b67499462777f7909860405ca6b62", null ], + [ "clearFifoFullAction", "class_r_f69.html#ae9accbe3e66f24d5158891a96fb582f3", null ], [ "disableAddressFiltering", "class_r_f69.html#a5996fc1751e7542baafa0d6c0a6c78ee", null ], [ "disableAES", "class_r_f69.html#a15fafb6c24a8b5721623be447628bbaa", null ], [ "disableContinuousModeBitSync", "class_r_f69.html#a97d3570f4f898dde47e3daf8043e7bad", null ], @@ -11,6 +13,8 @@ var class_r_f69 = [ "enableAES", "class_r_f69.html#a1fd4609f419d8b0213ee39b05dd40b69", null ], [ "enableContinuousModeBitSync", "class_r_f69.html#a7e2201b5bc389a68765400b70439f3f0", null ], [ "enableSyncWordFiltering", "class_r_f69.html#a643a711bcb4b7771a7ab1f457e61a417", null ], + [ "fifoAdd", "class_r_f69.html#a13ed34d82f3e08131b496196ba05a66d", null ], + [ "fifoGet", "class_r_f69.html#aa6886410230c654400c76ec7710d623c", null ], [ "fixedPacketLengthMode", "class_r_f69.html#a0de2a07f264839cda945faebf7319e0e", null ], [ "getChipVersion", "class_r_f69.html#a0c30202b2d52eb32f43066bc0f938638", null ], [ "getMod", "class_r_f69.html#afd3a98c6ff75e1036c9ba6d5423851df", null ], @@ -38,6 +42,8 @@ var class_r_f69 = [ "setDio1Action", "class_r_f69.html#aa72ad2ac5238bd87886684064b7494cf", null ], [ "setDirectAction", "class_r_f69.html#a7fd34332bec08828080b1b4a0f8c6e28", null ], [ "setEncoding", "class_r_f69.html#aae828ce8dda16da4e54d2f18b1fb8af2", null ], + [ "setFifoEmptyAction", "class_r_f69.html#a788023a0de9d6b43cb4079d12ca90b8d", null ], + [ "setFifoFullAction", "class_r_f69.html#a1a6ecb5fcc42c49bc3d9032e9c5db07b", null ], [ "setFrequency", "class_r_f69.html#ab467f0fc318e651d0cdfbc0399d4c34b", null ], [ "setFrequencyDeviation", "class_r_f69.html#adb9fbfedf95f34ac537815870b98a9be", null ], [ "setLnaTestBoost", "class_r_f69.html#aa14dbfd82cd75b9759d4d78bdb05c194", null ], diff --git a/class_s_x1231-members.html b/class_s_x1231-members.html index 109e5d6d..ffaf06cd 100644 --- a/class_s_x1231-members.html +++ b/class_s_x1231-members.html @@ -93,6 +93,8 @@ $(document).ready(function(){initNavTree('class_s_x1231.html',''); initResizable begin(float freq=434.0, float br=4.8, float freqDev=5.0, float rxBw=125.0, int8_t power=10, uint8_t preambleLen=16)SX1231 clearDio0Action()RF69 clearDio1Action()RF69 + clearFifoEmptyAction()RF69 + clearFifoFullAction()RF69 disableAddressFiltering()RF69 disableAES()RF69 disableContinuousModeBitSync()RF69 @@ -100,6 +102,8 @@ $(document).ready(function(){initNavTree('class_s_x1231.html',''); initResizable enableAES()RF69 enableContinuousModeBitSync()RF69 enableSyncWordFiltering(uint8_t maxErrBits=0)RF69 + fifoAdd(uint8_t *data, int totalLen, volatile int *remLen)RF69 + fifoGet(volatile uint8_t *data, int totalLen, volatile int *rcvLen)RF69 fixedPacketLengthMode(uint8_t len=RADIOLIB_RF69_MAX_PACKET_LENGTH)RF69 getChipVersion()RF69 getFreqStep() constPhysicalLayer @@ -136,6 +140,8 @@ $(document).ready(function(){initNavTree('class_s_x1231.html',''); initResizable setDirectAction(void(*func)(void))RF69virtual setDirectSyncWord(uint32_t syncWord, uint8_t len)PhysicalLayer setEncoding(uint8_t encoding) overrideRF69virtual + setFifoEmptyAction(void(*func)(void))RF69 + setFifoFullAction(void(*func)(void))RF69 setFrequency(float freq)RF69 setFrequencyDeviation(float freqDev) overrideRF69virtual setLnaTestBoost(bool value)RF69 diff --git a/class_s_x1231.html b/class_s_x1231.html index de9da140..1d2dfbad 100644 --- a/class_s_x1231.html +++ b/class_s_x1231.html @@ -172,6 +172,26 @@ void clearDio1Action ()  Clears interrupt service routine to call when DIO1 activates.
  +void setFifoEmptyAction (void(*func)(void)) + Set interrupt service routine function to call when FIFO is empty. More...
+  + +void clearFifoEmptyAction () + Clears interrupt service routine to call when FIFO is empty.
+  +void setFifoFullAction (void(*func)(void)) + Set interrupt service routine function to call when FIFO is full. More...
+  + +void clearFifoFullAction () + Clears interrupt service routine to call when FIFO is full.
+  +bool fifoAdd (uint8_t *data, int totalLen, volatile int *remLen) + Set interrupt service routine function to call when FIFO is empty. More...
+  +bool fifoGet (volatile uint8_t *data, int totalLen, volatile int *rcvLen) + Set interrupt service routine function to call when FIFO is sufficently full to read. More...
+  int16_t startTransmit (uint8_t *data, size_t len, uint8_t addr=0) override  Interrupt-driven binary transmit method. Overloads for string-based transmissions are implemented in PhysicalLayer. More...
  diff --git a/functions_c.html b/functions_c.html index b833cf16..cab8286b 100644 --- a/functions_c.html +++ b/functions_c.html @@ -102,10 +102,12 @@ $(document).ready(function(){initNavTree('functions_c.html',''); initResizable() : SX127x
  • clearFifoEmptyAction() -: SX127x +: RF69 +, SX127x
  • clearFifoFullAction() -: SX127x +: RF69 +, SX127x
  • clearGdo0Action() : CC1101 diff --git a/functions_f.html b/functions_f.html index cb2eee6a..31a82209 100644 --- a/functions_f.html +++ b/functions_f.html @@ -86,10 +86,12 @@ $(document).ready(function(){initNavTree('functions_f.html',''); initResizable()

    - f -

    diff --git a/functions_func_c.html b/functions_func_c.html index f02c9caa..7c65b814 100644 --- a/functions_func_c.html +++ b/functions_func_c.html @@ -102,10 +102,12 @@ $(document).ready(function(){initNavTree('functions_func_c.html',''); initResiza : SX127x
  • clearFifoEmptyAction() -: SX127x +: RF69 +, SX127x
  • clearFifoFullAction() -: SX127x +: RF69 +, SX127x
  • clearGdo0Action() : CC1101 diff --git a/functions_func_f.html b/functions_func_f.html index 0a526fce..f2799ae2 100644 --- a/functions_func_f.html +++ b/functions_func_f.html @@ -86,10 +86,12 @@ $(document).ready(function(){initNavTree('functions_func_f.html',''); initResiza

    - f -