oe3cjb / TTGO-T-Beam-LoRa-APRS

Use TTGO T-Beam as LoRa APRS Tracker
100 stars 74 forks source link

First of all I want to thank OE1ACM Bernd for his approval to use his code for my experiments.
He is the author of BG_RF95!

If you want to discuss with other LoRa APRS interested persons join the growing community at the LoRa-APRS Telegram group

USER GUIDE of TTGO T-Beam LoRa APRS V1.2:
Attention: a new HW Version is available - if you use the old version uncomment "// #define T_BEAM_V0_7" and comment out "#define T_BEAM_V1_0".You can recognize the new Rev1.0-Boards at their three push buttons instead of two at the older boards - both versions are now supported.
As the new board only has two LEDs for the GPS and battery charger I've moved the TX Led to PIN 4 (GPIO 4) - please use a LED with reasonable resistor of 470R.

You can now do an immediate TX beacon if you press the key for 2secs - use this for testing purposes.

Callsign setting:
Now two possibilities are implemented:
1st) enter your callsign in the file TTGO_T-Beam_LoRaAPRSconfig.h and replace the OE3CJB-11 with your data with 6 characters plus SSID-
in case of shorter callsign use "SPACES" and extend up to total length of 6 characters
2nd) if you leave the config-file unchanged, you will run into a simple setup routine at the very first boot and you will be asked to enter your callsign and SSID(s).
Once the callsign is programmed you can reenter the programming mode by pressing the BUTTON for 5secs while switching on the tracker.
When you uncomment this line // #define DONT_USE_FLASH_MEMORY in TTGO_T-Beam_LoRaAPRSconfig.h then the FW will always use the values from the config-file

The MODE of the tracker can now be changed by pressing the button 10secs!
This can be done now without connected display but with a mounted TX LED.
The modes are
TRACKER ... LED blinks 1x - normal APRS tracker
WX&TRACKER ... LED blinks 2x - alternate transmission of normal position packet and WX packet (if DHT22 is mounted)
WX-MOVE ... LED blinks 3x - only WX packets are sent but with position from GPS
WX-FIXED ... LED blinks 4x - only WX packets are transmitted but with fixed position given in Header-File

The fixed position is used for a fixed weather station, e.g. without GPS signal.

Possible symbols are
Weather Station (1x blink), Car (2x blink), Runner (3x blink), Bicyle (4x blink), Motorcycle (5x blink)
The symbol can now be changed without attached display - during normal operation press the key for 3secs and you will enter the setup routine. The first value to set is now the symbol and the currently selected symbol is represented by blinks of the TX LED. Once the one needed blinks, just press the key for short moment. After that you will be asked if you want to continue the setup routine (which only makes sense with a connected display) or if you want to stop and so the new symbol will be stored in the NVS memory.
2x TX LED blinks represent "yes" to leave the setup - press here the key to leave the setup - please do so if you don't have a display attached.
1x TX LED blinks represent "no" to continue with the setup - press here the key to continue the setup - please do so if you have a display attached.

Temperature Sensor:
for DHT22 I used the library from https://github.com/beegee-tokyo/DHTesp, as the standard library gives to many wrong readings
Now the DS18B20 is supported as well - uncomment line 37: // #define DS18B20 // use this if you use DS18B20, default ist DHT22
Now the BME280 is supported as well - uncomment line 38: // #define USE_BME280 // use this if you use BME280, default ist DHT22

show RX packets
by uncommenting // #define SHOW_RX_PACKET the tracker shows received LoRa APRS packets in raw format for the time in milliseconds defined in SHOW_RX_TIME - both in ...config.h

new features: