Coder Social home page Coder Social logo

lora-aprs / lora_aprs_igate Goto Github PK

View Code? Open in Web Editor NEW
318.0 36.0 109.0 8.78 MB

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

Home Page: https://www.lora-aprs.info

License: MIT License

C++ 45.63% C 53.67% Python 0.63% Dockerfile 0.07%
lora-aprs-igate platformio boards ttgo-tbeam tracker arduino esp32 firmware lora aprs

lora_aprs_igate's Introduction

LoRa APRS iGate

Integration Tests

The LoRa APRS iGate will work with very cheep hardware which you can buy from amazon, ebay or aliexpress. Try it out and be part of the APRS network.

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

  • You can find all necessary settings to change for your configuration in data/is-cfg.json.
  • 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

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 my other 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 !

The LoRa APRS WiKi Displays page has more details.

Feel free to add hints!

lora_aprs_igate's People

Contributors

codacy-badger avatar dahuafschmied avatar db4ta avatar df2jh avatar dg0tm avatar dj1an avatar f1rmb avatar fkaup avatar folkertvanheusden avatar keyoz avatar mdiepart avatar ok1fwg avatar ok2mop avatar peterus avatar schulti avatar stardado avatar tht avatar tofuatjava avatar toyo avatar wa4osh avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

lora_aprs_igate's Issues

Add parseable diagnostic data output available via HTTP or TCP socket

Is your feature request related to a problem? Please describe.

It would be great to have some kind of diagnostics output available which allows us to collect statistic data of our LoRA iGates.

Using this data we can analyze/improve and visualize (Grafana?) our setups using TSDB (Time Series Databases).

Describe the solution you'd like

Basically the setup will look like this:

[LoRa iGate] <--- Raw TCP Socket or HTTP --- [Python Collector Script] ---> InFlux DB ---> Grafana

Example (with random data) of a diagnostic data payload:

{
  "esp32_unique_id": "FA3CFFAEFAAA"
  "callsign": "dm5tt-2",
  "timestamp": "2017-10-14T22:11:20+0000",
  "coordinates": {
    "lat": "42.111",
    "lon": "9.111",
    "alt": "191"
  },
  "lora": {
    "freq_rx": "433775000",
    "rssi": "-96",
    "snr": "-100",
    "payload_b64": "VEhJU0lTQVRFU1QxMjM1NlRISVNJU0FURVNUMTIzNTZUSElTSVNBVEVTVDEyMzU2VEhJU0lTQVRFU1QxMjM1NlRISVNJU0FURVNUMTIzNTZUSElTSVNBVEVTVDEyMzU2VEhJU0lTQVRFU1QxMjM1NlRISVNJU0FURVNUMTIzNTZUSElTSVNBVEVTVDEyMzU2VEhJU0lTQVRFU1QxMjM1Ng=="
  }
}

Use WifiManager for configuration

I like your two projects a lot and was able to implement them! But I am quite familiar with ESP32 and PlatformIO. Not all HAMS are ESP32 cracks but still would like to use your project.
This is why I propose to use WiFiManager to enter the credentials, etc. This would enable to distribute only one bin file per board version. And maybe it would even be possible to automatically find out if it is a 0.7 or a 1.0 T-beam version by checking if the power management chip answers or not, for example.
Then you could use this simple project to distribute one file: https://github.com/4m1g0/Tiny-Uploader . It packs the bin file as well as the ESP32 uploader into one executable file (it is a fork of tasmotizer).
A lot of work for you, I know. But I think it would tremendously increase its reach.

Invalid APRS-IS used in LoRa_APRS_iGate.cpp

As far as I can see, there is an issue with commit 8489be2, violating the APRS-IS regulations from Bob Bruninga, WB4APR.

In this commit 8489be2 src/LoRa_APRS_iGate.cpp has been changed (from also invalid "APRS") to:
msg.setDestination("APLG0");

Quote from the APRS-IS code of conduct (http://www.aprs-is.net/):
Authors, do NOT hijack another software's TO call (APxxxx). If you don't understand APRS and APRS-IS, don't design software to falsely identify itself.

There is an explizit definition for testing software and other purposes:
APZ APZxxx Experimental

Please change this to keep the APRS-IS network running like it has been designed.

mni tnx!
Mike, DL2MF

Software hangs if

Describe the bug
If "digi"->"beacon" is set to true in the config, the software hangs shortly after startup.

To Reproduce
Steps to reproduce the behaviour:

  • Set beacon to true in digi section in data/is-cfg.json, upload the config (pio run --target=uploadfs)

Expected behavior
I expect the board to run normally

Screenshots
Log from console (after the last line, no more ouput, completely stuck):

rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 188777542, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:10124
load:0x40080400,len:5828
entry 0x400806a8
I       LoRa_APRS_iGate.cpp   47 : LoRa APRS iGate by OE5BPA (Peter Buchegger)
I       LoRa_APRS_iGate.cpp   48 : Version: 21.25.0
I       LoRa_APRS_iGate.cpp   79 : Board TTGO_LORA32_V2 loaded.
D           TaskManager.cpp   23 : call setup from WifiTask
D              TaskWifi.cpp   19 : Looking for AP: Dinosauro
[I][WiFiMulti.cpp:84] addAP(): [WIFI][APlistAdd] add SSID: Dinosauro
lD           TaskManager.cpp   28 : call setup from ModemTask
D           TaskManager.cpp   28 : call setup from RouterTask
D           TaskManager.cpp   28 : call setup from OTATask
D           TaskManager.cpp   28 : call setup from NTPTask
D           TaskManager.cpp   28 : call setup from AprsIsTask
I       LoRa_APRS_iGate.cpp  139 : setup done...
[D][WiFiGeneric.cpp:374] _eventCallback(): Event: 0 - WIFI_READY
[D][WiFiGeneric.cpp:374] _eventCallback(): Event: 2 - STA_START
I               TaskEth.cpp   13 : WiFi Started
[D][WiFiGeneric.cpp:374] _eventCallback(): Event: 1 - SCAN_DONE
[I][WiFiMulti.cpp:114] run(): [WIFI] scan done
[I][WiFiMulti.cpp:119] run(): [WIFI] 4 networks found
[D][WiFiMulti.cpp:151] run():        0: [1][2E:3A:FD:9D:06:87] FRITZ!Box Fon WLAN 7270 (-50) *
[D][WiFiMulti.cpp:149] run():  --->   1: [1][2C:3A:FD:9D:06:87] Dinosauro (-51) *
[D][WiFiMulti.cpp:151] run():        2: [1][62:01:94:B9:45:24] LEDnetB94524 (-75)  
[D][WiFiMulti.cpp:151] run():        3: [11][98:DA:C4:27:FD:65] WLAN-947009_EXT (-86) *
[I][WiFiMulti.cpp:160] run(): [WIFI] Connecting BSSID: 2C:3A:FD:9D:06:87 SSID: Dinosauro Channel: 1 (-51)
[D][WiFiGeneric.cpp:374] _eventCallback(): Event: 4 - STA_CONNECTED
I               TaskEth.cpp   16 : WiFi Connected
[D][WiFiGeneric.cpp:374] _eventCallback(): Event: 7 - STA_GOT_IP
[D][WiFiGeneric.cpp:419] _eventCallback(): STA IP: 192.168.42.23, MASK: 255.255.255.0, GW: 192.168.42.1
I               TaskEth.cpp   19 : WiFi MAC: D8:A0:1D:60:D3:BC, IPv4: 192.168.42.23
[I][WiFiMulti.cpp:174] run(): [WIFI] Connecting done.
[D][WiFiMulti.cpp:175] run(): [WIFI] SSID: Dinosauro
[D][WiFiMulti.cpp:176] run(): [WIFI] IP: 192.168.42.23
[D][WiFiMulti.cpp:177] run(): [WIFI] MAC: 2C:3A:FD:9D:06:87
[D][WiFiMulti.cpp:178] run(): [WIFI] Channel: 1
D              TaskWifi.cpp   36 : IP address: 192.168.42.23
D            TaskRouter.cpp   81 : [00:00:08] DL9RDZ-10>APLG01:=4835.14NL01326.24E&LoRa iGATE & Digi DL9RDZ
[I][ArduinoOTA.cpp:155] begin(): OTA server at: DL9RDZ-10.local:3232
I               TaskNTP.cpp   30 : Current time: 11:47:47
I            TaskAprsIs.cpp   44 : connecting to APRS-IS server: euro.aprs2.net on port: 14580
I            TaskAprsIs.cpp   52 : Connected to APRS-IS server!

OLED Display (stuck there)

Display:DL9RDZ-10
Modem:Okay
Router:Booting
OTA:Okay
NTP:Booting
AprsIs:Booting

Desktop (please complete the following information):

  • OS: MacOS
  • PlatformIO Version: platformio/contrib-piohome 3.3.4, platform: espressif32 @ 3.1.1
  • Firmware Version: current from git, tagged v21.25.0

Board name:

  • TTGO LoRa32 V2.1 (printed on board: T3_V1.6 20180606)

Additional context
When changing "true" to "false" in the config, everything runs as expected (i.e., Display shows AprsIs: Connected, NTP: time, etc, and serial port monitor prints lines (APRS-IS:..., TaskNTP...) after "Connected to APRS-IS server".

where is LORA_SCK, LORA_MISO, LORA_MOSI, LORA_CS

void setup_lora()
{
Serial.println("[INFO] Set SPI pins!");
SPI.begin(LORA_SCK, LORA_MISO, LORA_MOSI, LORA_CS);
LoRa.setPins(LORA_CS, LORA_RST, LORA_IRQ);

LORA_SCK, LORA_MISO, LORA_MOSI, LORA_CS);--------------?
LoRa.setPins(LORA_CS, LORA_RST, LORA_IRQ);-----------?

IP not shown in OLED anymore

Describe the bug
The IP address is not shown on the OLED anymore (WiFi and Eth).

Expected behavior
Show local IP address on OLED again.

1200 baud support request

Please consider adding an option to change the default 300 Baud to 1200 Baud LoRa speed in the config json file

BR
VR2XKP

Please document the packet format

I'm currently trying to develop a custom tracker firmware for the Lilygo T-Echo that I'd like to make compatible with this LoRa APRS iGate firmware. Unfortunately, it seems like there is no documentation about the LoRa packet format yet.

Could you please add a section describing the packet format to the Wiki?


I have already tried to determine the format from the source code, but have not yet been able to deliver a packet to any iGate out there.

So far, I managed to extract the following rules from the code. Can you please confirm or correct my findings?

  • There is a packet header <\xff\x01 (in C string syntax).
  • The call signs and path are encoded in regular ASCII, like DL0xxx>GPS,WIDE2-2. I’m unsure because normal APRS/AX.25 left-shifts the ASCII values by one bit and uses the free bit as a special flag.
  • Path and data are separated by :.
  • The data is a normal APRS data field as defined in the APRS specification, chapter 5.
  • There is no additional checksum, only the CRC calculated by the LoRa modem.

When I follow these rules, I get a packet like the following (in C string syntax):

<\xff\x01DL0xxx>GPS,WIDE2-2:/193653h4800.00N/01100.00E[/A=001000 T-Echo test

Is this a valid packet?

platformio error building igate

Describe the bug
Had a lot of errors (wifi related) building the project

To Reproduce
Steps to reproduce the behavior:

  1. Clone repo
  2. build
    Expected behavior
    Firmware built.

Desktop (please complete the following information):

  • OS: KDE neon
  • PlatformIO Version:
  • Firmware Version:

Board name:

  • helltek V2

Fixed adding:

lib_ignore = WiFi101

to platformIO.ini

No reconnection to WLAN after lost WLAN connection

When WLAN connection to the iGate gets lost, the iGate doesn't do an automatic re-connection to the WLAN. It stops working and the screen says " booting".

booting screen:
image

Automatic restart including notification to WLAN would be very appreciated to ensure an 24/7 operation.

Firmware Version: Release v21.14.0

Board: TTGO-t-beam-v1

Peter, it would be great if you could get it fixed. Your work is highly appreciated. We all like your iGate solution :-)

Fehleranzeigen im Display

Describe the bug
Beim Booten kommt in eigenen Beacon-Paket im Display der Hinweis "..Type:Error..." sie Foto Nr. ..002

To Reproduce
Erste Bake nach dem Bootvorgang

Expected behavior
?? Kein ERROR

Screenshots
Peterus_Igate_Beta_002

Desktop (please complete the following information):

  • OS: Windows 10
  • PlatformIO Version: 5.1.0/3.3.3
  • Firmware Version: 21.04.0-dev

Board name:

  • China Heltec V1

Additional context
Damit in Verbindung steht vielleicht auch diese Anzeige einer Gegenstelle mit der Angabe "position without timestamp"
Peterus_Igate_Beta_001

In Pausen wird das Display angezeigt (steht jetzt auf dem Kopf)
Peterus_Igate_Beta_005

Igate Mobile use

Low priority but would be a great asset,
The igate has only a static loction entry possible.
It would be great to also have an option, so that the Igate could be used mobile, and the location would come from the
onboard GPS of the board.

If you see this as a possible change, I would love to hear about it ;)

Thanks

ON2ON

strange behaviour with multiple digipeaters close together

Describe the bug
two digipeaters repeat packet multiple times

To Reproduce
QTH. Oostende, Belgium.
1 station transmitting APRS packet every 10 minutes: ON1ARF
2 digipeater stations: ON1TG-13 ON4AIM-10
3 igates: ON1TG-14, ON8BZ and ON4AIM-10

ON1TG-13, ON1ATG-14 and on4AIM-10 are about 1 km from eachother. ON1ARF is 2 km away. ON8BZ is 6 km away

When sending a APRS packet, I see this in aprs.fi ("raw packet")

2021-07-14 16:00:58 CEST: ON1ARF>APLT00-1,qAR,ON1TG-14:!5114.02N/00258.56E-testing APRS over Lora running micropython on a ESP32/lora32 .. 55
2021-07-14 16:01:30 CEST: ON1ARF>APLT00-1,ON1TG-13*,qAR,ON4AIM-10:!5114.02N/00258.56E-testing APRS over Lora running micropython on a ESP32/lora32 .. 55
2021-07-14 16:02:03 CEST: ON1ARF>APLT00-1,ON4AIM-10*,qAR,ON1TG-14:!5114.02N/00258.56E-testing APRS over Lora running micropython on a ESP32/lora32 .. 55
2021-07-14 16:02:35 CEST: ON1ARF>APLT00-1,ON1TG-13*,qAR,ON4AIM-10:!5114.02N/00258.56E-testing APRS over Lora running micropython on a ESP32/lora32 .. 55
2021-07-14 16:03:07 CEST: ON1ARF>APLT00-1,ON4AIM-10*,qAR,ON1TG-14:!5114.02N/00258.56E-testing APRS over Lora running micropython on a ESP32/lora32 .. 55
2021-07-14 16:03:39 CEST: ON1ARF>APLT00-1,ON1TG-13*,qAR,ON4AIM-10:!5114.02N/00258.56E-testing APRS over Lora running micropython on a ESP32/lora32 .. 55
2021-07-14 16:04:12 CEST: ON1ARF>APLT00-1,ON4AIM-10*,qAR,ON1TG-14:!5114.02N/00258.56E-testing APRS over Lora running micropython on a ESP32/lora32 .. 55
2021-07-14 16:04:44 CEST: ON1ARF>APLT00-1,ON1TG-13*,qAR,ON4AIM-10:!5114.02N/00258.56E-testing APRS over Lora running micropython on a ESP32/lora32 .. 55
2021-07-14 16:05:16 CEST: ON1ARF>APLT00-1,ON4AIM-10*,qAR,ON1TG-14:!5114.02N/00258.56E-testing APRS over Lora running micropython on a ESP32/lora32 .. 55
2021-07-14 16:05:48 CEST: ON1ARF>APLT00-1,ON1TG-13*,qAR,ON4AIM-10:!5114.02N/00258.56E-testing APRS over Lora running micropython on a ESP32/lora32 .. 55
2021-07-14 16:06:21 CEST: ON1ARF>APLT00-1,ON4AIM-10*,qAR,ON1TG-14:!5114.02N/00258.56E-testing APRS over Lora running micropython on a ESP32/lora32 .. 55
2021-07-14 16:06:53 CEST: ON1ARF>APLT00-1,ON1TG-13*,qAR,ON1TG-14:!5114.02N/00258.56E-testing APRS over Lora running micropython on a ESP32/lora32 .. 55

More examples in file in attach and on aprs.fi
https://aprs.fi/?c=raw&call=ON1ARF&limit=1000&view=normal

So it looks that the igates ON1TG-13 and ON4AIM-10 get stuck in a situation where they keep on repeating a packet multiple times. (Perhaps due to an unforseen interaction between the two stations)

I do not know if the descision to send these packets multiple times is taken by the digipeat code or by the sx1276 chip itseld.

The igates run LoRa_APRS_iGate a dollatek t-beam
My station (ON1ARF) is the same hardware, but running micropython (development code)

aprslog.txt

Static IP für W-Lan

Ich würde Statische IPs benötigen.

// Set your Static IP address
IPAddress local_IP(192, 168, 1, 184);
// Set your Gateway IP address
IPAddress gateway(192, 168, 1, 1);

IPAddress subnet(255, 255, 0, 0);
IPAddress primaryDNS(8, 8, 8, 8); //optional
IPAddress secondaryDNS(8, 8, 4, 4); //optional

Weitere Info: Der reconnect nach WLan verlust bleibt in einer Schleife hängen. Lässt sich nur nach Spannungslos machen beheben.

Danke für die viele Zeit für dieses Projekt.
73de Christoph

Kein Displaytimout

Describe the bug
Display ist immer aktiv, egal was man in der Config konfiguriert.

Expected behavior
Working displaytimout after configured time.

Screenshots
-no-

Desktop (please complete the following information):

OS: Windows 10
VSCode — PlatformIO 5.1.0
Firmware Version: 21.04.0-dev

Board name:

TTGO ESP32 V2

Additional context
-no-

Documentation required

A small wiki would be very useful to better tunes parameters such as "digi active" or "digi beacon" and
the ftp settings

igated devices not seen at APRS.fi (RWA data)

Hi,
when i check display, I do see incoming APRS messages from several ID´s.
So, decoding is working, but then I check, which ID`s have been forwarded to APRS, I cannot see a single one:

e.g, 07-May 00:00 till 08:27
2021-05-07 00:00:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2NUERNBG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 00:05:40 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2NUERNBG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 00:10:40 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2NUERNBG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 00:15:40 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2NUERNBG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 00:20:40 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2NUERNBG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 00:25:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2NUERNBG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 00:30:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2NUERNBG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 00:35:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2NUERNBG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 00:40:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2NUERNBG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 00:45:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2NUERNBG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 00:50:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2NUERNBG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 00:55:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2NUERNBG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 01:00:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2NUERNBG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 01:05:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2NUERNBG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 01:10:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 01:15:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 01:20:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 01:25:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 01:30:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 01:35:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 01:40:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 01:45:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 01:50:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 01:55:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 02:00:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 02:05:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 02:10:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 02:15:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 02:20:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 02:25:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 02:30:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 02:35:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 02:40:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 02:45:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 02:50:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 02:55:43 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 03:00:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 03:05:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FFL:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 03:10:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 03:15:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 03:20:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 03:25:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 03:30:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 03:35:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 03:40:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 03:45:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 03:50:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 03:55:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 04:00:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 04:05:43 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 04:10:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 04:15:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 04:20:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 04:25:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2KA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 04:30:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 04:35:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 04:40:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 04:45:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 04:50:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 04:55:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 05:00:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 05:05:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 05:10:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 05:15:43 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 05:20:43 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 05:25:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 05:30:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 05:35:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 05:40:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 05:45:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 05:50:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 05:55:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 06:00:43 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 06:05:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 06:10:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 06:15:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 06:20:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 06:25:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 06:30:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 06:35:43 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 06:40:44 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 06:45:43 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 06:50:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 06:55:43 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 07:00:43 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 07:05:43 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 07:10:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 07:15:41 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 07:20:43 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 07:25:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 07:30:43 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 07:35:43 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 07:40:44 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 07:45:44 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 07:50:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 07:55:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 08:00:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 08:05:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 08:10:42 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2LEIPZIG:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 08:12:56 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FRA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 08:17:57 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FRA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 08:22:56 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FRA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E
2021-05-07 08:27:57 PDT: DL6SIX-10>APLG01,TCPIP*,qAC,T2FRA:=4946.10NL00838.15E&LoRa iGATE, by DL6SIX/KE6E

I would expect to see something like (example from another LoRa device:
2021-05-07 07:31:59 PDT: DJ7OO-14>APRS,qAS,DF9PM-5:!L56m^PTV?&EiQ LoRa-DiGi MZ-Lbg. SNR=+8dB RSSI=-76db
2021-05-07 07:41:57 PDT: DJ7OO-14>APRS,qAS,DL0MZ-16:!L56m^PTV?&EiQ LoRa-DiGi MZ-Lbg.
2021-05-07 07:41:57 PDT: DJ7OO-14>APRS,qAS,DF9PM-5:!L56m^PTV?&EiQ LoRa-DiGi MZ-Lbg. SNR=+8dB RSSI=-75db
2021-05-07 07:51:56 PDT: DJ7OO-14>APRS,qAS,DL0MZ-16:!L56m^PTV?&EiQ LoRa-DiGi MZ-Lbg.
2021-05-07 07:51:56 PDT: DJ7OO-14>APRS,qAS,DF9PM-5:!L56m^PTV?&EiQ LoRa-DiGi MZ-Lbg. SNR=+8dB RSSI=-74db
2021-05-07 08:01:54 PDT: DJ7OO-14>APRS,qAS,DL0MZ-16:!L56m^PTV?&EiQ LoRa-DiGi MZ-Lbg.
2021-05-07 08:01:54 PDT: DJ7OO-14>APRS,qAS,DF9PM-5:!L56m^PTV?&EiQ LoRa-DiGi MZ-Lbg. SNR=+8dB RSSI=-74db
2021-05-07 08:01:59 PDT: DJ7OO-14>APRS,DJ8HS-30*,qAS,DK1KT-13:!L56m^PTV?&EiQ LoRa-DiGi MZ-Lbg. SNR=-18dB RSSI=-86db
2021-05-07 08:11:52 PDT: DJ7OO-14>APRS,qAS,DL0MZ-16:!L56m^PTV?&EiQ LoRa-DiGi MZ-Lbg.
2021-05-07 08:11:52 PDT: DJ7OO-14>APRS,qAS,DF9PM-5:!L56m^PTV?&EiQ LoRa-DiGi MZ-Lbg. SNR=+8dB RSSI=-72db
2021-05-07 08:21:51 PDT: DJ7OO-14>APRS,qAS,DL0MZ-16:!L56m^PTV?&EiQ LoRa-DiGi MZ-Lbg.
2021-05-07 08:21:51 PDT: DJ7OO-14>APRS,qAS,DF9PM-5**:!L56m^PTV?&EiQ LoRa-DiGi MZ-Lbg. SNR=+8dB RSSI=-77db
2021-05-07 08:21:56 PDT: DJ7OO-14>APRS,DJ8HS-30*,qAS,DK1KT-13:!L56m^PTV?&EiQ LoRa-DiGi MZ-Lbg. SNR=-16dB RSSI=-86db

I´ve installed latest version.

regards
Gustav

Wifi hotspot for configuration (captive portal / webinterface)

Hi, this is just a low priority suggestion / feature request:

Is your feature request related to a problem? Please describe.
If you want to connect to a different wifi (and dont have access to your old one), you need to reconfigure and reupload the file system image via visual studio and usb.

Describe the solution you'd like
It would be nice to press a button pattern to force the device in "hotspot mode" and change wifi settings (and maybe other settings) via a webinterface/captive portal, e.g. like this: https://github.com/Juerd/ESP-WiFiSettings
This could also be an alternative for the initial setup.

vy 73 de Daniel, do1das

Rssi & Snr

Is there a way that you could show the Rssi and Snr values from an incomming packet from a Tracker ?
73 ON2ON

Solar mode is killing FLASH

I am running the iGate battery powered and buffered by a solar panel.

If the battery runs empty bcu the solar energy is not enough to reload the battery, the iGate reports the ERROR showed on the picture.

I was able to reproduce that failure repeatedly.

Maybe it is a bug in software.

image

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS:
  • PlatformIO Version:
  • Firmware Version:

Board name:

Additional context
Add any other context about the problem here.
73 de sTef DM5TU

No RX with 21.35.0-develop

With the newest develop-Branch of today my iGate didn't receive anymore.
Wet back to master and everything works as expected.

Board name:

  • PoE-iGate

KISS TNC functionality

I report the need for KISS-TNC mode for use with APRS applications.
For example with APRSIS32, APRX or APRSDROID software

I would like to connect DIGI LORA with DIGI APRS in 2m band which works under APRX control, so that data from LORA can be sent directly to APRS bypassing APRS-IS for off-grid operation

Bildschirm steht Kopf bei Heltec V1 Board

Mit der Beta Version steht der 0.96 Oled auf dem Kopf.

Expected behavior
Drehung um 180 Grad wäre fein.

Screenshots
keine notwendig

Desktop (please complete the following information):

  • OS: Windows 10
  • PlatformIO Version: Core 5.1.0·Home 3.3.3
  • Firmware Version: 21.04.0-dev

Board name:

  • China-Nachbau zu Heltec V1

Additional context
-nope-

TTGO T-Beam loosing configuration

Describe the bug
Using software version 21.35.0 on a TTGO T-Beam woftware seems to hang and overflow overwriting some functional parameters such as config info

To Reproduce
Steps to reproduce the behavior:

  1. build and upload software
  2. Edit callsign and coordinates on "is-cfg.json"
  3. click on "build filesystem image" and "upload file system image"
  4. wait some hours of normal work (usually from 8 to 15) and the software will hang (OLED stuck on any received package)., restarting the TTGO will drive to the "Error: you have to change settings..." page on the OLED. Only way to recover is to upload file system image once more

Screenshots
Check packet list of "IU2FRL-10" on aprs.fi to see the boot and when it hangs.

Board name:

  • TTGO Lora32 T-Beam with OLED 433MHz
  • Powered with internal 18650 battery and external power bank on USB

Additional context
both testing with "digi active: true".
First try with "digi beacon: true" lasted around 8h, with "digi beacon: false" lasted around 24h and then i had to upload again. I assume some function is overflow and editing some required info

link to vhf/uhf

A gateway to Direwolf (or other, ie kiss access) would really open up to the world when the internet -igate- remains unavailable.
In other words: allow trackers to get out of this LoRa bubble ... by a radio solution and thus become a real complement of coverage for "APRS 144.800 MHz -and gsm- white areas".
... and because the work done is already so great :-)
73 ' Philippe, f5rvx

Feature request: Tx iGate

To have more complete APRS integration, it would be nice to have to option for packets transmitted from APRS-IS to LoRa. On 2m, this is usually limited to messages addressed to stations expected to be in range of the iGate. Depending on the area and coverage of different types of digipeaters, transmitting all packets within a radius might be useful. This would allow better two-way communication between 2m and LoRa without requiring a crossband digipeater.

LoRa_APRS_iGate.cpp 102 : You have to change your settings in 'data/is-cfg.json' and upload it via "Upload File System image"!

HI
Dont think this is a bug but I get this error or startup after flash.
It seems it is not seeing the config or I might have it wrongly configured.
I am using a TTGO-T-Beam board.
Here is the log on startup.
***************** start *****************
Using '/dev/ttyUSB0' as serial port.
Connecting...[07:53:25]ets Jul 29 2019 12:21:46
[07:53:25]
[07:53:25]rst:0x1 (POWERON_RESET),boot:0x3 (DOWNLOAD_BOOT(UART0/UART1/SDIO_REI_REO_V2))
[07:53:25]waiting for download
.
Serial port closed!
.
Detecting chip type... ESP32
Connecting....

Chip Info:

  • Chip Family: ESP32
  • Chip Model: ESP32D0WDQ6 (revision 3)
  • Number of Cores: 2
  • Max CPU Frequency: 240MHz
  • Has Bluetooth: YES
  • Has Embedded Flash: NO
  • Has Factory-Calibrated ADC: YES
  • MAC Address: 24:0A:C4:F7:D9:20
    Uploading stub...
    Running stub...
    Stub running...
    Changing baud rate to 460800
    Changed.
  • Flash Size: 4MB
  • Flash Mode: dio
  • Flash Frequency: 40MHz
    Erasing flash (this may take a while)...
    Chip erase completed successfully in 2.6s
    Compressed 15872 bytes to 10319...
    Writing at 0x00001000... (100 %)Wrote 15872 bytes (10319 compressed) at 0x00001000 in 0.2 seconds (effective 519.7 kbit/s)...
    Hash of data verified.
    Compressed 3072 bytes to 143...
    Writing at 0x00008000... (100 %)Wrote 3072 bytes (143 compressed) at 0x00008000 in 0.0 seconds (effective 4585.0 kbit/s)...
    Hash of data verified.
    Compressed 8192 bytes to 47...
    Writing at 0x0000e000... (100 %)Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.0 seconds (effective 21232.7 kbit/s)...
    Hash of data verified.
    Compressed 919104 bytes to 515898...
    Writing at 0x0008c000... (100 %)Wrote 919104 bytes (515898 compressed) at 0x00010000 in 12.2 seconds (effective 604.6 kbit/s)...
    Hash of data verified.

Leaving...
Hard Resetting...
Done! Flashing is complete!

Showing logs:
[07:53:44]W LoRa_APRS_iGate.cpp 34 : LoRa APRS iGate by OE5BPA (Peter Buchegger)
[07:53:44]W LoRa_APRS_iGate.cpp 35 : Version: 21.14.0
[07:53:44]E (561) SPIFFS: mount failed, -10025
[07:53:45]W configuration.cpp 27 : Failed to read file, using default configuration.
[07:53:45]I BoardFinder.cpp 13 : looking for a board config.
[07:53:45]I BoardFinder.cpp 14 : searching for OLED...
[07:53:45]D BoardFinder.cpp 128 : 3
[07:53:45]D BoardFinder.cpp 130 : power chip found!
[07:53:45]D BoardFinder.cpp 128 : 3
[07:53:45]D BoardFinder.cpp 130 : power chip found!
[07:53:45]D BoardFinder.cpp 128 : 3
[07:53:45]D BoardFinder.cpp 130 : power chip found!
[07:53:45][E][esp32-hal-i2c.c:1426] i2cCheckLineState(): Bus Invalid State, TwoWire() Can't init sda=0, scl=0
[07:53:45]W BoardFinder.cpp 76 : issue with wire
[07:53:45]W BoardFinder.cpp 33 : could not find OLED, will search for the modem now...
[07:53:45]I BoardFinder.cpp 44 : found a board config: TTGO_LORA32_V1
[07:53:45]I LoRa_APRS_iGate.cpp 62 : will restart board now!
[07:53:45]ets Jul 29 2019 12:21:46
[07:53:45]
[07:53:45]rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
[07:53:45]configsip: 0, SPIWP:0xee
[07:53:45]clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
[07:53:45]mode:DIO, clock div:2
[07:53:45]load:0x3fff0018,len:4
[07:53:45]load:0x3fff001c,len:1044
[07:53:45]load:0x40078000,len:8896
[07:53:45]load:0x40080400,len:5828
[07:53:45]entry 0x400806ac
[07:53:46]W LoRa_APRS_iGate.cpp 34 : LoRa APRS iGate by OE5BPA (Peter Buchegger)
[07:53:46]W LoRa_APRS_iGate.cpp 35 : Version: 21.14.0
[07:53:46]I LoRa_APRS_iGate.cpp 65 : Board TTGO_LORA32_V1 loaded.
[07:53:46]W TaskManager.cpp 33 : call setup from WifiTask
[07:53:46]W TaskManager.cpp 38 : call setup from DisplayTask
[07:53:46]W TaskManager.cpp 38 : call setup from LoraTask
[07:53:46]W TaskManager.cpp 38 : call setup from OTATask
[07:53:46]W TaskManager.cpp 38 : call setup from NTPTask
[07:53:46]W TaskManager.cpp 38 : call setup from AprsIsTask
[07:53:46]E LoRa_APRS_iGate.cpp 102 : You have to change your settings in 'data/is-cfg.json' and upload it via "Upload File System image"!
******************************** end ******************************
Here is my config file is-cfg.json
********************** start ***************************************
{
"callsign": "ZR6AIC-11",
"wifi": {
"AP": [
{
"active": true,
"SSID": "wifi",
"password": "xxxxxxxx"
}
]
},
"beacon": {
"message": "LoRa iGATE & Digi, Info: github.com/antonjan/LoRa_APRS_iGate",
"position": {
"latitude": -26.2854385,
"longitude": 28.0713523
},
"timeout": 15
},
"aprs_is": {
"active": true,
"passcode": "1234",
"server": "euro.aprs2.net",
"port": 14580
},
"lora": {
"frequency_rx": 433775000,
"frequency_tx": 433775000,
"power": 20,
"spreading_factor": 12,
"signal_bandwidth": 125000,
"coding_rate4": 5
},
"display": {
"always_on": true,
"timeout": 10,
"overwrite_pin": 0,
"turn180": true
},
"digi": {
"active": true,
"forward_timeout": 5,
"beacon": true,
"beacon_timeout": 30
},
"ftp": {
"active": false,
"user": [
{
"name": "ftp",
"password": "ftp"
}
]
},
"ntp_server": "pool.ntp.org"
}
******************************** stop ******************************************
Here is also my build file platformio.ini
********************************* start *****************************************
[env:lora_board]
board = esp32doit-devkit-v1
#board = ttgo-t-beam-v1
build_flags = -Werror -Wall -DNO_GLOBAL_INSTANCES

[env:lora_board_debug]
board = esp32doit-devkit-v1
build_flags = -Werror -Wall -DNO_GLOBAL_INSTANCES
build_type = debug
monitor_filters = esp32_exception_decoder

I have tryded to change the board to ttgo-t-beam but then Board is not found

Hope you can assist
Regards
Anton
ZR6AIC

RFONLY issue

Frames received on a radio channel are sent to APRSIS regardless of their content.
According to the specification, iGate should not forward frames if RFONLY, NOGATE or TCPIP, is used in the path.

Spec. http://www.aprs.org/aprs11.html

igate: use q-construct qAO instead of qAR for listen-only igates

In the packet path at aprs-is servers like aprs.fi you see details about the submitter:
not only the callsign, but also the so-called q-construct.

If you see "qAR", you may assume that a bi-directional gateway has forwarded rf-packets.
-> There's a chance, that it may gate packets from inet as 3rd party traffic (i.e. aprs-text-messages).

Many lora-gateways are rx-only. Thus it would be great if we could see it at the q-construct, if message from inet to rf may pass.
As indicator, we have the config option system.getUserConfig()->digi.active.
-> If it's set to false, use qAO instead of qAR along with the gated packet.

How to implement:

src/TaskRouter.cpp
change
aprsIsMsg->setPath(path + "qAR," + system.getUserConfig()->callsign);
to
aprsIsMsg->setPath(path + system.getUserConfig()->digi.active ? "qAR," : "qAO," + system.getUserConfig()->callsign);

..or, better (see my other patch):

aprsIsMsg->setPath(path + system.getUserConfig()->lora.tx_enabled ? "qAR," : "qAO," + system.getUserConfig()->callsign);

..because the functionality igate->RF may be desired even if we are not configured as an rf-digipeater.

But: as far as I can see, currently it's not implemented that packets from inet are interpreted and sent on rf (-> they are discarded). -> Another Feature request ;)

Until then,
aprsIsMsg->setPath(path + "qAO," + system.getUserConfig()->callsign);
would be sufficient.

Info q-construct: http://www.aprs-is.net/q.aspx

No Call-Info in main screen

Is your feature request related to a problem? Please describe.
There is no Call Information at the main screen like in the old version.
If you run more iGates in parallel, its nice to see at one sight which iGate it is.

Describe the solution you'd like
Call Info in the mai screen.

Wrong q-construct in gated packets

Describe the bug
I see that the q-construct used for i-gated packets from RF use "qAS" which implies that the packet sent to APRS-IS was generated by the server and not picked up on RF. I would suggest that "qAR" should be used instead according to what normal i-gates do and to be compliant with the specification.

To Reproduce
Steps to reproduce the behavior:
Receive a packet from a LoRa transmitter using this LoRa i-gate. I-gate is connected and verified to APRS-IS.

Expected behavior
I-gated packets should use q-construct "qAR" instead of "qAS". Please see specification on http://www.aprs-is.net/q.aspx
"qAR - Packet is placed on APRS-IS by an IGate from RF. The callSSID following the qAR is the callSSID of the IGate"

Screenshots
Not applicable.

Desktop (please complete the following information):

  • OS: Windows 10
  • PlatformIO Version: 5.1.0
  • Firmware Version: 0.1

Board name:

  • Heltec WiFi LoRa 32 v2

Additional context
I tried to look for the affected part in the source code so I could correct it myself, but unfortunately it's not clear to me where this needs to be changed.

Syslog logging

Discussed in #146

Originally posted by oh2lak January 22, 2022
We are to use the TTGO ethernet boards to build our LoRa-APRS infrastructure for digi's and igates and thus the serial logging feature is not enough. Could a syslog logging feature be implemented to be able to do remote logging?

Looks like there is a suitable Arduino syslog library available ( https://github.com/arcao/Syslog ) which could do the job. I'm not a programmer but I'm tempted to fork the project and try on my own with learning by error.

@peterus Could you consider adding this to the igate code if I fail miserably?

Thanks for a great project and code!
Erik OH2LAK

Lora_RX Pakete mit "type: Error" - flag nicht zurück gesetzt?

Describe the bug
Wenn man die Zeilen auf der Debug-Console mitliest, sieht man, dass defekte Pakete trotzdem weiter behandelt werden.
Dabei sieht man auch, dass nur das erste fehlerhafte Paket mit type: Error markiert wird. Weitere defekte laufen durch.
Es sieht so aus, als würde der Interrupt nicht zurückgesetzt.

To Reproduce
Steps to reproduce the behavior:
Log mitlesen

Expected behavior
Defekte Pakete sollten nicht ins Internet weitergegeben werden.

Screenshots
PDF Datei mit Logauszug verfügbar

Desktop (please complete the following information):

  • unwichtig

Board name:

  • Heltec V1 compatible

Additional context
Good Luck
Peter_lora_gateway_dev_Fehlerbericht.pdf

add support to SX126X Lora chips.

I made a ESP32 Lora board with E22 module, am now trying to program it as a iGate/Digi. Currently it works good with RadioLib. I have very little knowledge regarding APRS, and AX25. your project is the most robust I have ever tried. if you can add SX126X to this project. it can really save me a lot of works.

Thanks!

iGate Can't connect to hidden Wifi (hidden SSID)

I really like the iGate APRS with this ESP32 ... but when I want to connect to hidden wifi (hidden SSID) ... it can't connection .... even though I have entered the SSID and password ... how to solve it?

ERROR: You have to change your settings in 'data/is-cfg.json' on startup

Describe the bug
I got ERROR messages on startup. But I edited datga/is-cfg.json

Desktop (please complete the following information):

  • OS: ubuntu 20.04
  • PlatformIO Version: 2.3.2
  • Firmware Version: 21.14.0

Board name:

  • Heltec WiFi LoRa 32 V2

Additional context
I followed issue #93. But still got ERROR messages.

Mobile digi?

Could a mobile digi option be added to pull the gps from the module to use as the digi's location. For instance a digi/tracker located in car.

Digipeater feature.

Hallo, wäre es möglich, die optionale Funktion von LoRa Digipeater, die in den Versionen 2020 vorhanden war, wieder einzuführen?
Hi, would it be possible to re-introduce the optional feature of LoRa Digipeater that existed in the 2020 releases?
Robert
F1TZU

IGate does not use the coordinates from config file

Describe the bug
When the iGate beacons and I look it up in APRS.fi the position is off by several kilometres and the coordinates shown do not match those I entered into the config file.

Expected behavior
The location of the iGate should be represented as accurately as the owner desires so that users can calculate their distance from it.

Screenshots
In APRS.fi search for 2E0WKW and you will see that my iGate is KMs from my tracker even though they sit side by side on the shelf.

Desktop (please complete the following information):

  • OS: iOS
  • PlatformIO Version: latest
  • Firmware Version: 21.14.0

Board name:

  • TYGO LoRa v2

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.