mirror of
https://github.com/Genaker/LoraSA.git
synced 2026-05-07 05:45:00 +02:00
113 lines
4.0 KiB
Markdown
113 lines
4.0 KiB
Markdown
# Lora SA(Spectrum Analyzer)
|
|
RF Spectrum Analyzer using Lora Radio
|
|
|
|

|
|
|
|
RadioLib SX126x Spectrum Scan
|
|
|
|
Perform a spectrum power scan using SX126x.
|
|
The output is in the form of scan lines; each line has 33 power bins.
|
|
The first power bin corresponds to -11 dBm, the second to -15 dBm, and so on.
|
|
The higher number of samples in a bin corresponds to more power received
|
|
at that level.
|
|
|
|
N in Bin / dBm
|
|
1 -11
|
|
2 -15
|
|
3 -19
|
|
4 -23
|
|
5 -27
|
|
6 -31
|
|
7 -35
|
|
8 -39
|
|
9 -43
|
|
10 -47
|
|
11 -51
|
|
12 -55
|
|
13 -59
|
|
14 -63
|
|
15 -67
|
|
16 -71
|
|
17 -75
|
|
18 -79
|
|
19 -83
|
|
20 -87
|
|
21 -91
|
|
22 -95
|
|
23 -99
|
|
24 -103
|
|
25 -107
|
|
26 -111
|
|
27 -115
|
|
28 -119
|
|
29 -123
|
|
30 -127
|
|
31 -131
|
|
32 -135
|
|
33 -139
|
|
|
|
Example:
|
|
step-13 Frequancy:816.25
|
|
Power Bins: 0000,0000,0000,0000,0000,0000,0000,0000,0000,0000, 0000,0000,0000,0000,0000,0000,0000,0000,0000,0400, 0000,0000,0000,0000,0000,0000,0006,001B,000E,0005, 0006,0002,0000,
|
|
|
|
The spectrum analyzer performs power measurements in the configured bandwidth.
|
|
|
|
The X axis represents frequency in MHZ and Y axis display actual received power.
|
|
In this example above, the frequency span goes from 850 MHz to 950 MHz (that is a 100MHz range), and
|
|
the visual amplitude goes from -11 dBm to -110(-139) according to the datasheet(High sensitivity: down to -148dBm) dBm.
|
|
|
|
To show the results in a plot, run the Python script
|
|
RadioLib/extras/SX126x_Spectrum_Scan/SpectrumScan.py
|
|
|
|
# VSCode Platform.IO development env installation
|
|
1. Install VSCode
|
|
2. install Platfor.IO extension
|
|

|
|
3. Connect ESP32 to USB. Install USB drivers for Windows
|
|
4. Clone this Git Repo or download zip of the sources
|
|

|
|
```
|
|
git clone https://github.com/Genaker/LoraSA.git
|
|
```
|
|
NOTE: in you case name will be Just LoraSA. I have LoraSA2 because I already have LoraSA folder
|
|
6. Open the Project with the VS code Platform.IO
|
|

|
|

|
|
|
|
7. Select Proper Environment
|
|

|
|
8. Select ESP32 USB Device to program
|
|

|
|
Note: It is theoretically possible to program via WiFi and BTH.
|
|
9. Programm your ESP32
|
|

|
|
|
|
10. Wait until you are done with the compilation and upload.
|
|
Usually takes 1 minute. The first run is slower. It needs to compile all libraries.
|
|

|
|
You will have the UCOG SA logo and spectrum analyzing scanning screen when done.
|
|

|
|
|
|
# Hardware
|
|
Heltec ESP32 Lora V3:
|
|
https://www.amazon.com/Heltec-Development-863-870MHz-ESP32-S3FN8-902-928MHz/dp/B0D1H1FN9Y/
|
|
https://heltec.org/project/wifi-lora-32-v3/
|
|
https://www.aliexpress.us/item/3256807037422978.html
|
|
|
|
Battery with Wire JT connector :
|
|
https://www.amazon.com/EEMB-2000mAh-Battery-Rechargeable-Connector/dp/B08214DJLJ
|
|
|
|
# 3D printed case
|
|

|
|
https://www.printables.com/model/118750-heltec-lora-32-case-for-meshtastic
|
|
https://www.thingiverse.com/thing:3125854
|
|
https://thangs.com/designer/Snake0017/3d-model/Heltec%20LoRa%2032%20Desktop%20%26%20Vehicle%20Enclosure-40844
|
|
or buy :
|
|
https://www.amazon.com/DIYmalls-ESP32-OLED-WiFi-Type-C/dp/B0BR3MQ9BG
|
|
|
|
https://www.thingiverse.com/thing:6522462
|
|
|
|
# Heltec ESP32 Lora v3 Pin Map
|
|

|
|
We are using pin 41 as a Buzzer trigger. Connect buzzer + leg with pin 41 and - leg with the ground (GND). You can change the buzzer pin in the code.
|