Friday, June 4, 2021

Lora APRS IGATE using T-beam ESP32 with GPS

Setting up a  LoRa APRS iGate on 433Mhz.

I need to build a Igate for LORA on 433Mhz and I hate two options to consider.

Options

Option 1 RTL-SDR dongle with LORA software as an gateway.

Option 2 using the same TTGO-T-Beam ESP32 with GPS and Lora 433Mhz module that will be the same as my Lora tracker board.

In this Description I will be using the Option 2, I will attempt the RTL-SDR rout later.

Setting up a Lora APRS tracker using the ESP32 Lora32 TTGO-T T-Beam 433/470Mhz Module

Example of Lora signal

I was looking for a low power battery backup APRS Lora system to track Balloons and cars.

I then got the TTGO-T T-Beam witch has ESP32 with WIFI and Bluetooth.
It also has a GPS Ublock and a Lora32 TTGO 433/470Mhz and USB port.

This module is available from Giga Technology here

I found a project on Github https://github.com/lora-aprs/LoRa_APRS_iGate
It seems to be strate foreword replacing the default firmware in the SP32

So lets get Started

Lets download the project from github here

On your pc run the following

git clone https://github.com/antonjan/LoRa_APRS_iGate

cd LoRa_APRS_iGate/

I Recommend installing Code editor with PlatformIO plugin.

PlatformIO can be downloaded directly from the PlatformIO website. There you just have to press the green button with “Install PlatformIO now”. Then just install it. If you have already installed Visual Studio Code, the PlatformIO Module can also be installed via the Plugin Manager. Now the source code can be opened in Visual Studio Code.

Start your Code editor

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Then select Extensions and search for Platformio and install it. 






 
 
 
 
 
 
 
 
 
 
 
 
 
Select platformio plugin
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 The instillation can take a while We now need to select the LoRa_APRS_iGate folder where you have cloned the github project above. There will be a directory LoRa_APRS_iGate
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
We can now edit the
 
 
Here is a copy of my platformio.ini

[platformio]
default_envs = lora_board

[env]
platform = espressif32 @ 3.0.0
framework = arduino
lib_ldf_mode = deep+
monitor_speed = 115200
lib_deps =
bblanchon/ArduinoJson @ 6.17.0
lewisxhe/AXP202X_Library @ 1.1.2
peterus/APRS-Decoder-Lib @ 0.0.6
peterus/APRS-IS-Lib @ 0.0.8
peterus/esp-logger @ 0.0.1
peterus/ESP-FTP-Server-Lib @ 0.9.5
check_tool = cppcheck
check_flags =
cppcheck: --suppress=*:*.pio\* --inline-suppr -DCPPCHECK --force lib -ilib/TimeLib -ilib/LoRa -ilib/NTPClient
check_skip_packages = yes
#monitor_flags = --raw
# activate for OTA Update, use the CALLSIGN from is-cfg.json as upload_port:
#upload_protocol = espota
#upload_port = <CALLSIGN>.local

[env:lora_board]
board = esp32doit-devkit-v1
#board = ttgo-t-beam-v1
build_flags = -Werror -Wall -DNO_GLOBAL_INSTANCES
upload_port = /dev/ttyUSB*
[env:lora_board_debug]
board = esp32doit-devkit-v1
build_flags = -Werror -Wall -DNO_GLOBAL_INSTANCES
build_type = debug
monitor_filters = esp32_exception_decoder


  
The following things can be done quickly in the status bar: Compile the firmware Flashing the firmware Cleaning up the temporary and compiled data Serial monitor  
 

Compilation and upload steps

git clone https://github.com/antonjan/LoRa_APRS_iGate Install The development environment VS Code from here https://code.visualstudio.com/download Start Code and click on the botom Gear icon to install Platformio.

 Then select the tracker.json and edit with the following information. 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Edit the tracker.json file in the data directory to look like this changing your callsign and save the file. [CTRL-s]
 
{
	"callsign":"NOCALL-7",
	"debug": false,
	"beacon":
	{
		"message":"LoRa Tracker",
		"timeout": 1,
		"symbol": "[",
		"overlay": "/"
	},
	"smart_beacon":
	{
		"active":true,
		"turn_min":25,
		"slow_rate":300,
		"slow_speed":10,
		"fast_rate":60,
		"fast_speed":100,
		"min_tx_dist":100,
		"min_bcn":5
	},
	"lora":
	{
		"frequency_rx":433775000,
		"frequency_tx":433775000,
		"power":20,
		"spreading_factor":12,
		"signal_bandwidth":125000,
		"coding_rate4":5
	}
} 
 

We now need to compile the program. This can be done by Clicking on the icon belo red 1 on the botom toolbaar.


 
 Now connect your LORA-APRS board to usb port of you computer. We now need to upload the compeld ferware.bi fie to the Board Click on the icon below red 2 to upload the file to your board. You should see details in the log terminal if all was sucess
 

Blog posts and Youtube videos from other Hams

feel free to add yours or create a ticket if you want to be added.

Supported boards

You can use one of the Lora32 boards without changings:

  • Heltec WiFi LoRa 32 V1 (433MHz SX1278)
  • Heltec WiFi LoRa 32 V2 (433MHz SX1278)
  • TTGO LoRa32 V1 (433MHz SX1278)
  • TTGO LoRa32 V2 (433MHz SX1278)
  • TTGO LoRa32 V2.1 (433MHz SX1278)
  • TTGO T-Beam V0.7 (433MHz SX1278)
  • TTGO T-Beam V1 (433MHz SX1278)
  • Tracker D from OE1ACM and OE1CGC
  • and sure many more...

Here are some amazon-de links for some example boards:

This boards cost around 20 Euros, they are very cheap and perfect for an LoRa iGate. Keep in minde: you need a 433MHz version!

 

No comments:

Post a Comment