|
arduino-audio-tools
|
NRF24L01 Audio Configuration optimized for low-latency audio streaming. Uses the RF24 library from TMRh20: https://github.com/nRF24/RF24. More...
#include <NRF24Stream.h>
Public Member Functions | |
| NRF24Config () | |
| virtual void | clear () |
| void | copyFrom (AudioInfo info) |
| Same as set. | |
| bool | equals (AudioInfo alt) |
| Returns true if alt values are the same like the current values. | |
| bool | equalsExSampleRate (AudioInfo alt) |
| Checks if only the sample rate is different. | |
| virtual void | logInfo (const char *source="") |
| operator bool () | |
| Returns true if all components are defined (no component is 0) | |
| bool | operator!= (AudioInfo alt) |
| Returns true if alt values are the different from the current values. | |
| bool | operator== (AudioInfo alt) |
| Returns true if alt values are the same like the current values. | |
| void | set (AudioInfo info) |
| Copies the values from info. | |
| void | setAudioInfo (AudioInfo info) |
| Same as set. | |
Public Attributes | |
| uint64_t | address = 0xF0F0F0F0E1LL |
| Pipe address for communication (5 bytes). TX and RX must match. | |
| bool | auto_ack = false |
| Enable auto-acknowledgment. Disable for lowest latency. | |
| uint8_t | bits_per_sample = DEFAULT_BITS_PER_SAMPLE |
| Number of bits per sample (int16_t = 16 bits) | |
| uint8_t | channel = 124 |
| RF channel (0-125). Higher channels (100+) are less crowded. | |
| uint16_t | channels = DEFAULT_CHANNELS |
| Number of channels: 2=stereo, 1=mono. | |
| rf24_crclength_e | crc_length = RF24_CRC_DISABLED |
| CRC length: RF24_CRC_DISABLED, RF24_CRC_8, RF24_CRC_16. | |
| rf24_datarate_e | data_rate = RF24_2MBPS |
| Data rate: RF24_250KBPS, RF24_1MBPS, RF24_2MBPS. | |
| int | max_begin_retry = 10 |
| Number of retries for begin() initialization. | |
| RxTxMode | mode = TX_MODE |
| RX or TX mode. | |
| rf24_pa_dbm_e | pa_level = RF24_PA_MAX |
| PA level: RF24_PA_MIN, RF24_PA_LOW, RF24_PA_HIGH, RF24_PA_MAX. | |
| uint8_t | payload_size = 32 |
| Payload size in bytes (1-32) | |
| int | pin_ce = 9 |
| CE pin number. | |
| int | pin_csn = 10 |
| CSN pin number. | |
| sample_rate_t | sample_rate = DEFAULT_SAMPLE_RATE |
| Sample Rate: e.g 44100. | |
| bool | use_write_fast = true |
| Use writeFast() instead of write() for TX. Lower latency. | |
NRF24L01 Audio Configuration optimized for low-latency audio streaming. Uses the RF24 library from TMRh20: https://github.com/nRF24/RF24.
Default settings: 2Mbps, no ACK, no CRC, channel 124 (less crowded upper band), max PA level. With these defaults, mono 16-bit 32kHz audio achieves ~6.5ms latency.
|
inline |
|
inlinevirtualinherited |
|
inlineinherited |
Same as set.
|
inlineinherited |
Returns true if alt values are the same like the current values.
|
inlineinherited |
Checks if only the sample rate is different.
|
inlinevirtualinherited |
Reimplemented in I2SConfigESP32, I2SConfigESP32V1, I2SConfigStd, and I2SConfigZephyr.
|
inlineinherited |
Returns true if all components are defined (no component is 0)
|
inlineinherited |
Returns true if alt values are the different from the current values.
|
inlineinherited |
Returns true if alt values are the same like the current values.
|
inlineinherited |
Copies the values from info.
|
inlineinherited |
Same as set.
| uint64_t address = 0xF0F0F0F0E1LL |
Pipe address for communication (5 bytes). TX and RX must match.
| bool auto_ack = false |
Enable auto-acknowledgment. Disable for lowest latency.
|
inherited |
Number of bits per sample (int16_t = 16 bits)
| uint8_t channel = 124 |
RF channel (0-125). Higher channels (100+) are less crowded.
|
inherited |
Number of channels: 2=stereo, 1=mono.
| rf24_crclength_e crc_length = RF24_CRC_DISABLED |
CRC length: RF24_CRC_DISABLED, RF24_CRC_8, RF24_CRC_16.
| rf24_datarate_e data_rate = RF24_2MBPS |
Data rate: RF24_250KBPS, RF24_1MBPS, RF24_2MBPS.
| int max_begin_retry = 10 |
Number of retries for begin() initialization.
| rf24_pa_dbm_e pa_level = RF24_PA_MAX |
PA level: RF24_PA_MIN, RF24_PA_LOW, RF24_PA_HIGH, RF24_PA_MAX.
| uint8_t payload_size = 32 |
Payload size in bytes (1-32)
| int pin_ce = 9 |
CE pin number.
| int pin_csn = 10 |
CSN pin number.
|
inherited |
Sample Rate: e.g 44100.
| bool use_write_fast = true |
Use writeFast() instead of write() for TX. Lower latency.