16 #ifndef __IBOARD_RF24_H__
17 #define __IBOARD_RF24_H__
19 #include <RF24_config.h>
26 typedef enum { RF24_PA_MIN = 0,RF24_PA_LOW, RF24_PA_HIGH, RF24_PA_MAX, RF24_PA_ERROR }
rf24_pa_dbm_e ;
58 bool ack_payload_available;
59 bool dynamic_payloads_enabled;
60 uint8_t ack_payload_length;
61 uint64_t pipe0_reading_address;
98 unsigned char SPI_RW(
unsigned char byte);
108 uint8_t
read_register(uint8_t reg, uint8_t* buf, uint8_t len);
126 uint8_t
write_register(uint8_t reg,
const uint8_t* buf, uint8_t len);
250 iBoardRF24(uint8_t _cepin, uint8_t _cspin, uint8_t _mosi_pin, uint8_t _miso_pin, uint8_t _sck_pin, uint8_t _irq_pin);
293 bool write(
const void* buf, uint8_t len );
312 uint8_t
readPipe(
void* buf, uint8_t* pipe );
328 bool read(
void* buf, uint8_t len );
392 void setRetries(uint8_t delay, uint8_t count);
481 void setAutoAck( uint8_t pipe,
bool enable ) ;
597 void startWrite(
const void* buf, uint8_t len );
640 void whatHappened(
bool& tx_ok,
bool& tx_fail,
bool& rx_ready);
Definition: iBoardRF24.h:47
iBoardRF24(uint8_t _cepin, uint8_t _cspin, uint8_t _mosi_pin, uint8_t _miso_pin, uint8_t _sck_pin, uint8_t _irq_pin)
Definition: iBoardRF24.cpp:251
void setChannel(uint8_t channel)
Definition: iBoardRF24.cpp:260
void printDetails(void)
Definition: iBoardRF24.cpp:319
void startWrite(const void *buf, uint8_t len)
Definition: iBoardRF24.cpp:521
uint8_t read_payload(void *buf, uint8_t len)
Definition: iBoardRF24.cpp:132
void setCRCLength(rf24_crclength_e length)
Definition: iBoardRF24.cpp:974
void stopListening(void)
Definition: iBoardRF24.cpp:432
bool setDataRate(rf24_datarate_e speed)
Definition: iBoardRF24.cpp:900
uint8_t flush_tx(void)
Definition: iBoardRF24.cpp:168
uint8_t get_status(void)
Definition: iBoardRF24.cpp:181
void csn(int mode)
Definition: iBoardRF24.cpp:18
uint8_t readPipe(void *buf, uint8_t *pipe)
Definition: iBoardRF24.cpp:577
bool available(void)
Definition: iBoardRF24.cpp:552
void enableAckPayload(void)
Definition: iBoardRF24.cpp:737
void print_address_register(const char *name, uint8_t reg, uint8_t qty=1)
Definition: iBoardRF24.cpp:230
void openReadingPipe(uint8_t number, uint64_t address)
Definition: iBoardRF24.cpp:674
rf24_datarate_e getDataRate(void)
Definition: iBoardRF24.cpp:947
rf24_crclength_e getCRCLength(void)
Definition: iBoardRF24.cpp:997
uint8_t write_payload(const void *buf, uint8_t len)
Definition: iBoardRF24.cpp:108
void whatHappened(bool &tx_ok, bool &tx_fail, bool &rx_ready)
Definition: iBoardRF24.cpp:633
void print_byte_register(const char *name, uint8_t reg, uint8_t qty=1)
Definition: iBoardRF24.cpp:219
uint8_t getDynamicPayloadSize(void)
Definition: iBoardRF24.cpp:538
bool testCarrier(void)
Definition: iBoardRF24.cpp:825
rf24_pa_dbm_e getPALevel(void)
Definition: iBoardRF24.cpp:872
bool write(const void *buf, uint8_t len)
Definition: iBoardRF24.cpp:455
unsigned char SPI_RW(unsigned char byte)
Definition: iBoardRF24.cpp:30
uint8_t flush_rx(void)
Definition: iBoardRF24.cpp:155
bool isPVariant(void)
Definition: iBoardRF24.cpp:789
void openWritingPipe(uint64_t address)
Definition: iBoardRF24.cpp:647
void powerUp(void)
Definition: iBoardRF24.cpp:448
bool testRPD(void)
Definition: iBoardRF24.cpp:832
void disableCRC(void)
Definition: iBoardRF24.cpp:1015
void setRetries(uint8_t delay, uint8_t count)
Definition: iBoardRF24.cpp:1022
void setPayloadSize(uint8_t size)
Definition: iBoardRF24.cpp:271
void enableDynamicPayloads(void)
Definition: iBoardRF24.cpp:711
bool read(void *buf, uint8_t len)
Definition: iBoardRF24.cpp:620
void print_observe_tx(uint8_t value)
Definition: iBoardRF24.cpp:208
void startListening(void)
Definition: iBoardRF24.cpp:410
void ce(int level)
Definition: iBoardRF24.cpp:25
void setPALevel(rf24_pa_dbm_e level)
Definition: iBoardRF24.cpp:839
void begin(void)
Definition: iBoardRF24.cpp:343
uint8_t read_register(uint8_t reg, uint8_t *buf, uint8_t len)
Definition: iBoardRF24.cpp:50
void setAutoAck(bool enable)
Definition: iBoardRF24.cpp:796
void print_status(uint8_t status)
Definition: iBoardRF24.cpp:194
uint8_t write_register(uint8_t reg, const uint8_t *buf, uint8_t len)
Definition: iBoardRF24.cpp:78
bool isAckPayloadAvailable(void)
Definition: iBoardRF24.cpp:780
void powerDown(void)
Definition: iBoardRF24.cpp:441
void toggle_features(void)
Definition: iBoardRF24.cpp:701
uint8_t getPayloadSize(void)
Definition: iBoardRF24.cpp:279
void writeAckPayload(uint8_t pipe, const void *buf, uint8_t len)
Definition: iBoardRF24.cpp:764
rf24_pa_dbm_e
Definition: iBoardRF24.h:26
rf24_datarate_e
Definition: iBoardRF24.h:33
rf24_crclength_e
Definition: iBoardRF24.h:40