LoRa
Why LoRa?
Gray coding, data whitening, interleaving, forward error correcting is all done in the transceiver chip.
- CSS (Chirp Spread Spectrum) :
- Resilience to interference
- Performance at low power
- Resistance to multi-path fading
- Resistance to Doppler effect
- Easy to decode, so can also easily be done on lower power simple devices.
- Gray coding : adds error tolerance
- Data whitening : induces randomness
- removing DC-bias in data
- long bit runs become less likely
- Whitening tends to distribute the data evenly across the radio channel’s frequency bandwidth, allowing the transmitter to run at a higher power without violating FCC regulations.
- Helps receiver synchronization
- Interleaving : Shuffling bits in a frame : reduces the impact of burst errors
- Forward Error Correction : Hamming codes
- 433MHz : less Free Space Path Loss (FSPL) than 868MHz.
- Actually as we're on earth and not in free space, we should use the MPPL instead which takes into account the Fresnel zone due to the reflections of the earth. The losses then increase with the 4th power of the distance.
- maximum effective bit-rate : 37.5kbps
- 256 byte FIFO, shared for RX & TX
- Critical parameters:
- spreading factor (SF):
- Each step up in SF means doubling of air time (i.e. bitrate/2). There's always one symbol per chirp. So increasing SF means lowering the chirp rate.
- Each step up in SF means an extra bit per symbol (e.g. SF7 = 7bit per symbol)
- Each step up in SF correlates to about 2.5dB extra link budget
- TTN uses Adaptive Data Rate (ADR) to use bandwidth and power more efficiently.
- modulation bandwidth
- higher bandwidth has the disadvantage of higher noise floor
- error coding rate
- spreading factor (SF):
Why not LoRa?
The maximum effective bit rate according to the SX1276 datasheet is 37.5kbps, which is done at 500kHz BW, SF6.
Where is that legally possible (ETSI EN 300 220-2 V3.2.1 (2018-06), Annex B)?
- Band H : 433,050 MHz to 434,790 MHz, but with following limitations: ERP = 10mW, duty cycle = 10%. That leaves you 3.75kbps at 10mW.
All other bands are either too narrow, have even more stringent limits on duty cycle or have stricter power limitations.
Air time calculation : The fastest possible is SF7 with 250kHz bandwidth and a packet size of 120bytes. Aside from the thought that such a large frame size might not be a good idea, this results to 100ms air time per packet, which is corresponds to the maximum duty cycle of 10%. So we could send 120bytes/s = 960bits/s. We could also send two 50ms air-time packets per second, but these would contain only 50 bytes each.
LoRa module
Modules with integrated MCU
- Seeed LORA-E5
- RAK Wireless RAK3172 (comparable to LORA-E5), RAK4260, RAK4270
Low power, low cost modules
- Ai-Thinker Ra-02 (LCSC C90039)
- NiceRF LORA1278-C1
- RFM96/RFM98 Seeed 109990165
- RFM96W-433S2 : no longer available as module (except AliExpress etc.)
- RFM98W-433S2
- Difference with RFM96W-433S2 unclear
High power modules
NiceRF
- NiceRF LORA1268F30-433
- 33dBm
- works on 3V3 (max. 28dBm), needs 6VDC for 33dBm
- min. TX-pwr = 10dBm on 3V3.
- no coax-connector
- 38x20mm
- 5mA RX
- 2µA sleep
- LoRa RX-sensitivity (BW=62.5 KHz, SF = 12 CR=4/5) = -139dBm
-
NiceRF LORA1278F30-433- 30dBm
- 13mA RX
- 10µA sleep
- LoRa RX-sensitivity (BW=125 KHz, SF = 12 CR=4/5) = -139dBm
EByte
- E19-433M30S
- 3V3 to 5V
- 25x37mm
- 20mA RX
- 3µA sleep
- has u.fl-connector
- max. TX-power 29.5dBm
- LoRa RX-sensitivity figures unrealistic
- E22-400M30S
- 2V5 to 5V5
- 24x38.5mm
- 14mA RX
- 3µA sleep
- has u.fl-connector
- max. TX-power 21.5dBm
- LoRa RX-sensitivity figures unrealistic
HopeRF
- RFM98PW
- 5V to 6V
- 18x35mm
- 15mA RX
- 5µA sleep
- no coax connector
- max. TX-pwr=30dBm
- LoRa RX-sensitivity (SF12, BW=125kHz) = -136dBm
- Seeedstudio RFM98
- 2mm pitch, not breadboard friendly
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.