Skip to content

mdiepart/LoRa_APRS_iGate

 
 

Repository files navigation

LoRa APRS iGate

Integration Tests

The LoRa APRS iGate will work with very cheap hardware which you can buy from amazon, ebay or aliexpress. Try it out and be part of the APRS network.
This particular version is modified and optimized for remote deployments and data acquisition on the received packets. It also provides an HTTP/HTTPS web interface to access the device.

TTGO LoRa32

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 changes:

  • 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 mind: you need a 433MHz version!

Compiling and configuration

There is a german quick start page! Take a look ;)

There is a french quick start page! Take a look ;)

How to compile

The best success is to use PlatformIO (and it is the only platform where I can support you).

  • Go to PlatformIO download and install the IDE.
  • If installed open the IDE, go to the left side and click on 'extensions' then search for 'PlatformIO' and install.
  • When installed click 'the ant head' on the left and choose import the project on the right.
  • Just open the folder and you can compile the Firmware.

Configuration

  • The settings to change for your configuration are located in data/is-cfg.json. Here is a detailed list of the parameters and their meaning.
  • To upload it to your board you have to do this via Upload File System image in PlatformIO!
  • To find the 'Upload File System image' click the PlatformIO symbol (the little alien) on the left side, choose your configuration, click on 'Platform' and search for 'Upload File System image'.

Branches in this repository and version system

This firmware is developed in a rolling release system: everyday a new release could be created. But there are still rules where new pull requests has to go and and how the version system looks like.

Version system

If the develop branch is stable enough for a new release it will be merged with a pull request to the master branch and a new version will be generated.

The versions are based on this settings:

  • major: the current year (2 digits)
  • minor: the current week of the year
  • patch: if there is a important fix for an release, just increment the number, otherwise 0

example: a new release will be created on the 11/14/2020, this version numbers will be used:

  • major: 20
  • minor: 46
  • patch: 0

so the version will be: 20.46.0

Internal Web Server

The internal webserver, if enabled in the configuration, allows you to update the module remotely and check the state of the various services. Instructions are available here describing how to enable HTTPS protocol for the web server.

Updating the igate via the web server

The "Firmware Update" section of the web server allows you update the firmware and the SPIFFS partition of the module.

To update the firmware, click on "Upload Firmware", select the firmware.bin file that PlatformIO generated (in the project folder, under ./.pio/build/lora_board/firmware.bin). Then click "Upload".

To update the SPIFFS filesystem, click on "Upload SPIFFS", select the spiffs.bin file that PlatformIO generated (in the project folder, under ./.pio/build/lora_board/spiffs.bin). Then click "Upload".

Packet logger

A packet logger can be enabled in the configuration. It will store the latest packets received along with some more data (RSSI, SNR and frequency error of the reception). If a packet is recevived with incorrect data (an incorrect CRC check), a log line will be added with the RSSI, SNR and frequency_error of that transmission.

Recovery

In order to enable recovery of a remote iGate that could have lost its configuratio during a firmware upgrade, a recovery functionality have been added. More details can be found here

Future plans

  • show time until next beaconing
  • show login issues from IS server
  • add better OLED library to support multiple different OLEDs
  • add support to turn OLED on, off and dimming
  • add support for temperature chips (BMExxx)
  • add FTP server support to upload configuration
  • add web server for configuration and other things
  • add statistics for received packages
  • show received packages on a map
  • etc.

LoRa Tracker

Look at OE5BPA's original tracker project: a LoRa Tracker

Hints

Here are some peculiarities of the different boards

  • TTGO T-Beam V1.0 and V1.1 and SSD1306 OLED display

When adding an SSD1306 0,96" OLED display direct to the board you have to be careful, there are two different pinout versions on the market. For direct mount you need a display with this Pinout -> VCC - GND - SCL - SDA. A direct mount of the other display is not possible without damage the display! The 'wrong' display works too but you have to change VCC and GND by wire !

Feel free to add hints!

About

This is a LoRa APRS iGate/Digi based on an ESP32

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 49.6%
  • C 46.9%
  • HTML 1.5%
  • CSS 1.3%
  • Other 0.7%