kopia lustrzana https://github.com/sh123/esp32_loraprs
Updated Software, environment and sketch configuration (markdown)
rodzic
9d5efdb19d
commit
8fa51b74cc
|
@ -1,7 +1,12 @@
|
||||||
|
# Arduino development environment setup
|
||||||
- **NB! select next partition scheme for ESP32 in Arduino IDE Tools menu:** "Minimal SPIFFS (1.9 MB APP with OTA/190 KB SPIFFS)"
|
- **NB! select next partition scheme for ESP32 in Arduino IDE Tools menu:** "Minimal SPIFFS (1.9 MB APP with OTA/190 KB SPIFFS)"
|
||||||
- for boards, which do not have this option, need to modify `~/.arduino15/packages/esp32/hardware/esp32/1.0.4/boards.txt` and add required partition option
|
- for boards, which do not have this option, need to modify `~/.arduino15/packages/esp32/hardware/esp32/1.0.4/boards.txt` and add required partition option
|
||||||
- **use 80 MHz ESP32 frequency** in Arduino SDK, it will prolong battery life when operating portable, higher CPU speed is not required, there are no CPU intensive operations
|
- **use 80 MHz ESP32 frequency** in Arduino SDK, it will prolong battery life when operating portable, higher CPU speed is not required, there are no CPU intensive operations
|
||||||
|
|
||||||
|
# APRSDroid configuration
|
||||||
- when setting up APRSDroid, use **"TNC (KISS)"** connection protocol in Connection Preferences -> Connection Protocol
|
- when setting up APRSDroid, use **"TNC (KISS)"** connection protocol in Connection Preferences -> Connection Protocol
|
||||||
|
|
||||||
|
# Sketch configuration
|
||||||
- go to esp32_loraprs.ino and make next changes based on your requirements in `initializeConfig()`
|
- go to esp32_loraprs.ino and make next changes based on your requirements in `initializeConfig()`
|
||||||
- set `cfg.IsClientMode` to `false` if you are planning to run server mode for APRS-IS iGate / Digipeater
|
- set `cfg.IsClientMode` to `false` if you are planning to run server mode for APRS-IS iGate / Digipeater
|
||||||
- for server mode fill `cfg.WifiSsid` and `cfg.WifiKey` with your WiFI AP data
|
- for server mode fill `cfg.WifiSsid` and `cfg.WifiKey` with your WiFI AP data
|
||||||
|
@ -20,10 +25,14 @@
|
||||||
- sync word `cfg.LoraSync`, 0x34
|
- sync word `cfg.LoraSync`, 0x34
|
||||||
- consider minimum decode level based on on BW + SF and required throughput 
|
- consider minimum decode level based on on BW + SF and required throughput 
|
||||||
- uses LoRa **built-in checksum** calculation to drop broken packets
|
- uses LoRa **built-in checksum** calculation to drop broken packets
|
||||||
|
|
||||||
|
# Frequency drift and calibration
|
||||||
- note, that there a is **significant frequency drift** on temperature changes for different modules
|
- note, that there a is **significant frequency drift** on temperature changes for different modules
|
||||||
- you need to use **external TCXO** if you are planning to use modules for narrow bandwidths less than 125 kHz
|
- you need to use **external TCXO** if you are planning to use modules for narrow bandwidths less than 125 kHz
|
||||||
- or calibrate clients based on server frequency drift report by changing `cfg.LoraFreq`, for example, let client and server run for an 30-60 minutes and if server reports err: -1500, then set client frequency to about 1000 kHz less, e.g. instead of 433.775 set it to 433.774, this will give couple of additional dB
|
- or calibrate clients based on server frequency drift report by changing `cfg.LoraFreq`, for example, let client and server run for an 30-60 minutes and if server reports err: -1500, then set client frequency to about 1000 kHz less, e.g. instead of 433.775 set it to 433.774, this will give couple of additional dB
|
||||||
- alternatively automatic calibration could be done on server or client side by enabling automatic frequency correction by setting `cfg.EnableAutoFreqCorrection` to `true`, might be suitable for experiments where only one client is operating or if server broadcast messages, so clients can correct their frequency. Use it either on client side to tune all clients to server frequency if TX is enabled on iGate side or to tune server to single client for test purposes
|
- alternatively automatic calibration could be done on server or client side by enabling automatic frequency correction by setting `cfg.EnableAutoFreqCorrection` to `true`, might be suitable for experiments where only one client is operating or if server broadcast messages, so clients can correct their frequency. Use it either on client side to tune all clients to server frequency if TX is enabled on iGate side or to tune server to single client for test purposes
|
||||||
|
|
||||||
|
# APRS iGate configuration
|
||||||
- other useful options are
|
- other useful options are
|
||||||
- `cfg.EnableSignalReport` set to `true` to enable signal report, it will be added as a comment to APRS-IS submitted location
|
- `cfg.EnableSignalReport` set to `true` to enable signal report, it will be added as a comment to APRS-IS submitted location
|
||||||
- `cfg.EnablePersistentAprsConnection` set to `false` to avoid keeping connection open to APRS-IS
|
- `cfg.EnablePersistentAprsConnection` set to `false` to avoid keeping connection open to APRS-IS
|
||||||
|
@ -32,3 +41,7 @@
|
||||||
- `cfg.EnableRepeater` set to `true` to enable packet repeater
|
- `cfg.EnableRepeater` set to `true` to enable packet repeater
|
||||||
- `cfg.EnableBeacon` set to `true` to enable periodic beacons specified in `cfg.AprsRawBeacon` with period specified in `cfg.AprsRawBeaconPeriodMinutes` into RF and APRS-IS if `cfg.EnableRfToIs` is enabled
|
- `cfg.EnableBeacon` set to `true` to enable periodic beacons specified in `cfg.AprsRawBeacon` with period specified in `cfg.AprsRawBeaconPeriodMinutes` into RF and APRS-IS if `cfg.EnableRfToIs` is enabled
|
||||||
- `cfg.LoraUseIsr` set to `true` to enable LoRa incoming packet handling using interrupts in continous RX mode suitable for speech data, otherwise set to `false` for single packet polling mode
|
- `cfg.LoraUseIsr` set to `true` to enable LoRa incoming packet handling using interrupts in continous RX mode suitable for speech data, otherwise set to `false` for single packet polling mode
|
||||||
|
|
||||||
|
# BLE support
|
||||||
|
- iOS does not support serial over Bluetooth and requires BLE support, this enables APRS applications such as official aprs.fi to work with the modem
|
||||||
|
- to enable BLE support set `cfg.BtEnableBle` to `true`
|
Ładowanie…
Reference in New Issue