16/04/2024 LORA GPS Transmitter/Receivers
Raspberry Pi 4 Model B - 8 GB RAM PID: 4564
SBC (single board computer)
sudo apt-get update (update list of available packages)
sudo apt-get upgrade (update all software)
sudo apt autoremove (remove packages/software that isn’t required)
Adafruit LoRa Radio Bonnet with OLED - RFM95W @ 915MHz - RadioFruit PID: 4074
Adafruit Feather 32u4 RFM95 LoRa Radio- 868 or 915 MHz - RadioFruit PID: 3078
SDR (software defined radio)
SX1276 LoRa® based module
TFT FeatherWing - 2.4" 320x240 Touchscreen for all Feathers PID: 3315
GPS
Adafruit Ultimate GPS Breakout - 66 channel w/10 Hz updates - Version 3 PID: 746
Firmware version AXN_2.51_3339_17112000,0004,16165,1.0*56
NMEA (National Marine Electronics Association) to decimal degrees
DDMM.MMMM
(D)DD+(MM.MMMM/60)
+4708.9380N
47+(08.9380/60) = 47.1490
-9331.1494W
-93+(-31.1494/60) = 93.5192 //be careful of the negative sign
+47.1490N -93.5192W
LoRa Math
A byte = 8 bits
LoRaWAN protocol adds at least 13 bytes to the application payload
Note that all the combinations of spreading factors and bandwidth are not orthogonal
Spreading Factor (SF): Determines how much the signal is spread out in time. Higher SF means more spreading, which increases robustness but lowers data rate.
Modulation: Refers to how digital data is encoded onto the signal. In LoRa, it's done through a technique called chirp spread spectrum (CSS), where the signal's frequency changes over time.
chirps represent the frequency variation over time, and chips represent the basic unit of time used for encoding digital data
Data Rate (DR) = BW / (2^SF)
- DR is the data rate in bits per second (bps)
- BW is the bandwidth in Hertz (Hz) LoRa has three bandwidths (125kHz (125,000 Hz), 250kHz (250,000 Hz), & 500kHz (500,000 Hz))
- SF is the spreading factor, which is a unitless value typically ranging from 7 to 12
Chirp rate = BW*(Symbol rate)
Chirp rate = BW* BW / (2^SF)
symbol length in bits=2^sf
Number of symbols = (payload size in bytes*8)/(symbol length in bits)
In LoRa modulation, each chip is 1 bit
\[Maximum Payload Size = \frac{Symbol Rate * Bandwidth}{2^{sf}} - Overhead\]
End of blog. Thank you for reading!
Back to Homepage