diff --git a/Default-configuration.md b/Default-configuration.md index 71ced10..2be1ad0 100644 --- a/Default-configuration.md +++ b/Default-configuration.md @@ -12,26 +12,26 @@ Legend: ### CC1101 * Begin method: - * Carrier frequency: 868.0 MHz - * Bit rate: 4.8 kbps + * Carrier frequency: 434.0 MHz + * Bit rate: 48.0 kbps * Frequency deviation: 48.0 kHz (single-sideband) - * Receiver bandwidth: 325.0 kHz - * Output power: 0 dBm - * Preamble length: 4 bytes + * Receiver bandwidth: 125.0 kHz + * Output power: 10 dBm + * Preamble length: 16 bits * Other: - * Data shaping B-T product: 0 (plain 2-FSK, no Gaussian filter applied) - * Encoding: whitening (x^9 + x^5 + 1 polynomial) * Packet length mode: variable, maximum of CC1101_MAX_PACKET_LENGTH bytes (length byte included in packet) - * Sync word: 0xD3 0x91, 0 error bits, carrier sense above threshold not required + * Sync word: 0x12 0xAD, 0 error bits, carrier sense above threshold not required + * Data shaping B-T product: 0 (plain 2-FSK, no Gaussian filter applied) + * Encoding: NRZ (non-return to zero - no encoding) * Inaccessible: - Equivalent to: ```c++ -CC1101::begin(868.0, 4.8, 48.0, 325.0, 0, 4); -CC1101::setDataShaping(0); -CC1101::setEncoding(2); +CC1101::begin(434.0, 48.0, 48.0, 125.0, 10, 16); CC1101::variablePacketLengthMode(CC1101_MAX_PACKET_LENGTH); -CC1101::setSyncWord(0xD3, 0x91, 0, false); +CC1101::setSyncWord(0x12, 0xAD, 0, false); +CC1101::setDataShaping(RADIOLIB_SHAPING_NONE); +CC1101::setEncoding(RADIOLIB_ENCODING_NRZ); ``` ### nRF24 @@ -63,10 +63,11 @@ nRF24::setAutoAck(true); * Bit rate: 48.0 kbps * Frequency deviation: 50.0 kHz (single-sideband) * Receiver bandwidth: 125.0 kHz - * Output power: 13 dBm + * Output power: 10 dBm + * Preamble length: 16 bits * Other: * Packet length mode: variable, maximum of RF69_MAX_PACKET_LENGTH bytes (length byte included in packet) - * Sync word: 0x2D 0x01 + * Sync word: 0x12 0xAD * Data shaping B-T product: 0 (plain 2-FSK, no Gaussian filter applied) * Encoding: NRZ (non-return to zero - no encoding) * CRC: enabled @@ -78,12 +79,12 @@ nRF24::setAutoAck(true); Equivalent to (assuming RF69): ```c++ -RF69::begin(434.0, 48.0, 50.0, 125.0, 13); +RF69::begin(434.0, 48.0, 50.0, 125.0, 10, 16); RF69::variablePacketLengthMode(RF69_MAX_PACKET_LENGTH); -uint8_t syncWord[] = {0x2D, 0x01}; +uint8_t syncWord[] = {0x12, 0xAD}; RF69::setSyncWord(syncWord, 2); -RF69::setDataShaping(0); -RF69::setEncoding(0); +RF69::setDataShaping(RADIOLIB_SHAPING_NONE); +RF69::setEncoding(RADIOLIB_ENCODING_NRZ); RF69::setCrcFiltering(true); RF69::disableAddressFiltering(); RF69::disableAES(); @@ -96,8 +97,9 @@ RF69::disableAES(); * Frequency deviation: 50.0 kHz (single-sideband) * Receiver bandwidth: 181.1 kHz * Output power: 10 dBm + * Preamble length: 16 bits * Other: - * Sync word: 0x2D 0x01 + * Sync word: 0x12 0xAD * Data shaping B-T product: 0 (plain 2-FSK, no Gaussian filter applied) * Encoding: NRZ (non-return to zero - no encoding) * Inaccessible: @@ -106,11 +108,11 @@ RF69::disableAES(); Equivalent to (assuming Si4432): ```c++ -Si4432::begin(434.0, 48.0, 50.0, 181.1, 10); -uint8_t syncWord[] = {0x2D, 0x01}; +Si4432::begin(434.0, 48.0, 50.0, 181.1, 10, 16); +uint8_t syncWord[] = {0x12, 0xAD}; Si443x::setSyncWord(syncWord, 2); -Si443x::setDataShaping(0); -Si443x::setEncoding(0); +Si443x::setDataShaping(RADIOLIB_SHAPING_NONE); +Si443x::setEncoding(RADIOLIB_ENCODING_NRZ); ``` ### SX126x - LoRa modem @@ -120,7 +122,7 @@ Si443x::setEncoding(0); * Spreading factor: 9 * Coding rate: 4/7 * Sync word: SX126X_SYNC_WORD_PRIVATE (0x12) - * Output power: 14 dBm + * Output power: 10 dBm * Over-current protection: 60.0 mA * Preamble length: 8 symbols * TCXO reference voltage: 1.6 V (SX126x module with TCXO) @@ -134,7 +136,7 @@ Si443x::setEncoding(0); Equivalent to: ```c++ -SX126x::begin(434.0, 125.0, 9, 7, SX126X_SYNC_WORD_PRIVATE, 14, 60.0, 1.6, false); +SX126x::begin(434.0, 125.0, 9, 7, SX126X_SYNC_WORD_PRIVATE, 10, 60.0, 8, 1.6, false); SX126x::setDio2AsRfSwitch(true); SX126x::explicitHeader(); SX126x::setCRC(2); @@ -146,27 +148,29 @@ SX126x::setCRC(2); * Bit rate: 48.0 kbps * Frequency deviation: 50.0 kHz (single-sideband) * Receiver bandwidth: 156.2 kHz - * Output power: 14 dBm - * Over-current protection: 60.0 mA + * Output power: 10 dBm * Preamble length: 16 bits - * Data shaping B-T product: 0.5 (GFSK) * TCXO reference voltage: 1.6 V (SX126x module with TCXO) * LDO regulator mode: disabled (SX126x module with DC-DC power supply) * Other: - * DIO2 as RF switch control: enabled - * Sync word: 0x2D 0x01 * Packet length mode: variable, maximum of SX126X_MAX_PACKET_LENGTH bytes (length byte included in packet) - * Encoding: whitening (x^9 + x^5 + 1 polynomial with bit order reverse, initial LFSR state 0x01FF) + * Sync word: 0x12 0xAD + * Data shaping B-T product: 0 (plain 2-FSK, no Gaussian filter applied) + * Encoding: NRZ (non-return to zero - no encoding) + * Over-current protection: 60.0 mA + * DIO2 as RF switch control: enabled * Inaccessible: - Equivalent to (assuming SX1268): ```c++ -SX1268::beginFSK(434.0, 48.0, 156.2, 14, 60.0, 16, 0.5, false); -SX126x::setDio2AsRfSwitch(true); -uint8_t syncWord[] = {0x2D, 0x01}; -SX126x::setSyncWord(syncWord, 2); +SX1268::beginFSK(434.0, 48.0, 156.2, 10, 16, 1.6, false); SX126x::variablePacketLengthMode(SX126X_MAX_PACKET_LENGTH); -SX126x::setWhitening(true, 0x01FF); +uint8_t syncWord[] = {0x12, 0xAD}; +SX126x::setSyncWord(syncWord, 2); +SX126x::setDataShaping(RADIOLIB_SHAPING_NONE); +SX126x::setEncoding(RADIOLIB_ENCODING_NRZ); +SX126x::setCurrentLimit(60.0); +SX126x::setDio2AsRfSwitch(true); ``` ### SX127x/RFM9x - LoRa modem @@ -196,15 +200,15 @@ SX1278::begin(434.0, 125.0, 9, 7, SX127X_SYNC_WORD, 17, 100, 8, 0); * Bit rate: 48.0 kbps * Frequency deviation: 50.0 kHz (single-sideband) * Receiver bandwidth: 125.0 kHz - * Output power: 13 dBm - * Over-current protection: 100 mA * Preamble length: 16 bits + * Output power: 10 dBm * OOK modulation: disabled * Other: - * Data shaping B-T product: 0.5 (GFSK) - * Sync word: 0x2D 0x01 * Packet length mode: variable, maximum of SX127X_MAX_PACKET_LENGTH bytes (length byte included in packet) - * Encoding: whitening (x^9 + x^5 + 1 polynomial with bit order reverse, initial LFSR state 0x01FF) + * Sync word: 0x12 0xAD + * Data shaping B-T product: 0 (plain 2-FSK, no Gaussian filter applied) + * Encoding: NRZ (non-return to zero - no encoding) + * Over-current protection: 60 mA * Address filtering: disabled * RSSI measurement configuration: 2^(1 + 2) samples, offset 0 dBm * Inaccessible: @@ -214,12 +218,13 @@ SX1278::begin(434.0, 125.0, 9, 7, SX127X_SYNC_WORD, 17, 100, 8, 0); Equivalent to (assuming SX1278): ```c++ -SX1278::beginFSK(434.0, 48.0, 125.0, 13, 100, 16, false); -SX1278::setDataShaping(0.5); -uint8_t syncWord[] = {0x2D, 0x01}; -SX127x::setSyncWord(syncWord, 2); +SX1278::beginFSK(434.0, 48.0, 125.0, 10, 16, false); SX127x::variablePacketLengthMode(SX127X_MAX_PACKET_LENGTH); -SX127x::setEncoding(2); +uint8_t syncWord[] = {0x12, 0xAD}; +SX127x::setSyncWord(syncWord, 2); +SX1278::setDataShaping(RADIOLIB_SHAPING_NONE); +SX127x::setCurrentLimit(60); +SX127x::setEncoding(RADIOLIB_ENCODING_NRZ); SX127x::disableAddressFiltering(); SX127x::setRSSIConfig(2, 0); ``` @@ -253,21 +258,23 @@ SX128x::setCRC(2); * Frequency deviation: 400 kHz (single-sideband) * Output power: 10 dBm * Preamble length: 16 bits - * Data shaping B-T product: 0.5 (GFSK) * Other: + * Sync word: 0x12 0xAD + * Data shaping B-T product: 0.5 (GFSK) + * Encoding: NRZ (non-return to zero - no encoding) * CRC: enabled, 2 bytes, initial 0x1D0F, polynomial 0x1021 - * Sync word: 0x2D 0x01 - * Encoding: whitening * Inaccessible: + * Packet length mode: variable, maximum of SX128X_MAX_PACKET_LENGTH bytes (length byte included in packet) * LDO regulator mode: disabled (SX128x module with DC-DC power supply) Equivalent to: ```c++ -SX128x::beginFSK(2400.0, 800, 400, 10, 16, 0.5); -SX128x::setCRC(2, 0x1D0F, 0x1021); -uint8_t syncWord[] = {0x2D, 0x01}; +SX128x::beginGFSK(2400.0, 800, 400, 10, 16); +uint8_t syncWord[] = {0x12, 0xAD}; SX128x::setSyncWord(syncWord, 2); -SX128x::setEncoding(2); +SX128x::setDataShaping(RADIOLIB_SHAPING_0_5); +SX128x::setEncoding(RADIOLIB_ENCODING_NRZ); +SX128x::setCRC(2, 0x1D0F, 0x1021); ``` ### SX128x - BLE modem