Hi Jason, Tom, David, all,

Thank you all the for the very long and detailed information.


Perhaps I will start with some more background information.


So far, I have found two references for aprs-over-LoRa:
- This is a website of some hams in Austria on this topic:
https://www.lora-aprs.at/

- And there is also this repo on github:
https://github.com/lora-aprs

I do not know how/if these two projects are related.


The hams in our local club use this hardware:
https://github.com/lora-aprs/LoRa_APRS_Tracker

The combination of the ESP32 and the LoRa chip is -I think- interesting as it offer some nice possibilities: WiFi (igate, mqtt), bluetooth (to talk to sensors or a smartphone) and a radio-chip (a clone of the sx1276) that can do both Lora and FSK (e.g. for POCSAG).  Also, the ESP32 is capable of running micropython (which is great for "fast development") (*)

The github repo has the software for a tracker and a digipeater/Igate (one-way), written in C that use the arduino API. It talks to the chip using SPI. (**)



I had some ideas in my head for this (e.g. a 'aprs-chat' or a aprs-to-pocsag paging gateway), but then I came to the conclusion I would probably need to design everything myself, including the "back-end" side. So it would perhaps be better to first integrate aprs-over-lora into other existing APRS-software that already exists (like xastir), and start from there on.


About the sx1276.
Like all these ISM-band radio modules, it is quite a capable chip that already includes some interesting features in silicon. One of these is the 'packet mode': you just define some modulation parameters (modulation-scheme, baudrate, sync-pattern, options, ...)  and hand it some data, and the chip does all the rest for you.

For the aprs/lora project, this means that there is no need for HDLC or AX.25, so it is not used. The APRS message is sent in as plain text inside a LoRa message. You do need add ['>',0x00,0xff] in front of the message. (no idea why this is) Also note that there is no compression, which is a bit strange considering the pretty low speed of 293 bps in this LoRa mode (125 KHz BW, SF12).


So, concerning integrating this into xastir,  (first of all, thanks you all for the extensive reply :-) )

As I understand it correctly, the interfaces in xastir are designed for AX.25, so I guess that is a problem. Am I correct to assume that, even if I would implement the KISS protocol (which is the easiest one to do), that still would not work as xastir still expect AX.25 data on top of that.
Is this correct?



So, what I would need is am interface that 'talks' raw ASCII APRS messages.

Question,
The xastir "internet" interface does "talk" ASCII APRS-messages, no?
(I just did a wireshark trace of the TCP session from xastir to the aprs-is service, and it looks like all plain-text APRS messages to me).


So wouldn't this be a option?

Perhaps create a dummy "aprs-is" like service on the local machine that acts as "bridge" between xastir and a aprs-over-LoRa modem?


Is xastir able to handle two "internet" interfaces at the same time (i.e. one to the aprs-is servers and one to the LoRa modem)?
Will this work?


Anybody any idea of this is doable?



Kristoff - on1arf


(*) About the tracker hardware, do note that the satnav chip is an old ublox NEO-6 (GPS-only!) with a pretty useless (passive) antenna!

(**) Note there are also certain LoRa modules that have a UART interface instead of SPI. You just send it some data of the serial line and after a 'timeout' of 100 ms or so, the data is packetised and transmitted.




On 24.07.21 02:35, Jason Winningham wrote:
lots of good information in Tom’s response.

The answer depends on what your goal is. A fully integrated LoRa APRS network 
bridged/routed to a standard AX.25 network would be a challenge.  Doable, but 
certainly not trivial. If the goal is to use LoRa to import data from the 
oft-maligned “dumb tracker” or some sort of sensor for display in xastir, the 
problem is a bit simpler.

I haven’t used LoRa, but I have used Xbee 900MHz data radios in a way that 
sounds similar toy what you are describing.

These xbee radios are point-to-point or broadcast.  I configure dumb trackers (for 
tracking rockets) in broadcast mode, and the code is written to time-slot the 
transmissions to avoid collisions. The digital side of the radio is a simple serial 
interface. The tracker prints a TNC2 format string to the radio, which is received 
by the ground station radio and transmitted via RS232 to an xastir port configured 
as a "serial TNC”.

The TNC2 format has the advantage of being human readable, so I can hand a 
radio+usb/rs232 adapter to a student with a windows laptop and a simple 
terminal program, and they can easily see the coordinates in the position 
report. Not as nice as a map, but in the past everyone had HyperTerm on a 
windows laptop, and putty is a free substitute. It is also possible to use 
multiple receivers, e.g. a simple dipole on one receiver and a yogi on another, 
to allow for different distances. This is helpful since the distance can change 
quite quickly during a rocket’s flight.

Getting this data retransmitted (digipeated) is problematic because digi 
software is not designed to accept TNC2 format packets for multiple legitimate 
reasons.  In my attempt to accomplish this I experimented with modifying the 
code of a popular digi software    package whose name escapes me at the moment. 
The modification was not as simple as I understood the author to imply, and I 
lost the hardware where that code lived.


If you are starting from the ground up and have digipeating to an AX.25 network 
as a requirement, I’d probably use a KISS mode packet. If you requirements, 
like mine, are a bit simpler, TNC2 may do the job.

-Jason




On Jul 23, 2021, at 11:17 AM, Kristoff<[email protected]>  wrote:

Hi all,


A quick question.

A few people in our local radioclub have become interested in aprs over lora, 
mainly using the LilyGo T-beam devices. This is in essence an ESP32 running 
arduino-code + a 'lora32' module (which is a clone of of the sx1276).
I have been tinkering with the kit, mainly using micropython to get to 
understand the sx1276 chip.

So,
If I would would want to use that device as an interface for xastir, what would 
be the most easy way to do this?

I guess just use the serial interface and create some kind of "bridge" between the serial 
packets and the Lora "air-interface"?

What is the difference between the "Serial TNC", "Serial KISS TNC" and the "Serial 
Multi-Port KISS TNC"?
Where can I find the documentation for this?

Or does this already exist?


Note, I am on linux (of course :-) )




BTW.
I have been discussion with a fellow ham on the use of 'UART pass-through' 
devices on LoRa. These are very simple, once they are configured, you just send 
data and receive data as it is a transparent serial path, ... except that it is 
'multicast'.

What would be the best way to connect this kind of device to xastir?


Many thanks in advance.

Kristoff - on1arf

_______________________________________________
Xastir-dev mailing list
[email protected]
http://xastir.org/mailman/listinfo/xastir-dev
_______________________________________________
Xastir-dev mailing list
[email protected]
http://xastir.org/mailman/listinfo/xastir-dev
_______________________________________________
Xastir-dev mailing list
[email protected]
http://xastir.org/mailman/listinfo/xastir-dev

Reply via email to