[aprssig] SmartBeaconing implementation wanted

John Gorkos jgorkos at gmail.com
Tue Aug 9 18:29:47 EDT 2022

On 8/7/22 08:01, Jason KG4WSV wrote:
> Thanks for sharing. APRS over LoRa has been on my radar for a while now, just haven’t gotten around to it.
> Are you using LoRa or the full LoRaWAN stack?
> -Jason
Just the Lora phy layer, not LoraWAN.  I have a TTN gateway at the 
house, as well as two HNT miners, but I don't need the full suite for 
something like this.  All of the encryption and modulation-dependent 
frequency schemes are overkill.

The setup is pretty straightforward:  6 eBikes with big batteries, each 
with a 915Mhz Lora tracker.  Because Burning Man is a completely 
contained event, the absolute farthest a bike can get from my camper is 
3400 meters.  I'll be using a SF9/125KHz chirp, which should be about 
250ms on air time, and just use non-slotted Aloha on the bikes.  Range 
should NOT be a problem. Here at the house, I routinely hear and am 
heard by a station 110 km away.
The trackers are an ESP32 with BLE enabled (for configuration 
management) but NOT Wifi, and a UBlox 6 GPS, with a Semtech 1276 LoRa 
radio.  Combined, they pull about 130mA, so a 3000mAh LiPo will give me 
about 20 hours to go track down the dirty hippy that rode off with my bike.
I'm not really worried about about bandwidth usage or collisions: I'm 
using a 125kHz chirp on a basically random frequency between 902 and 
928MHz.  I just want to use SmartBeaconing to save battery life.  I'm 
using a standard APRS Compressed Position Report, with course/speed 
only, as the payload, with an additional two bytes to indicate 
transmission number.  That's more for curiosity sake, to see what my 
throughput numbers actually are.
I did something almost identical here 
https://github.com/ab0oo/lora_drone_tracker for a university advisor and 
his students, to allow them to track their drones in real time.  That's 
just a fixed 1-second transmit rate, but I'll update it with 
SmartBeaconing when I get the library hammered out.

There seems to be a lot of APRS-over-LoRa in Europe, but LoRa is also 
more popular in Europe in general.  most of it is down at 433MHz.

The Lily TT-GO T-Beams (also called "meshtastic devices") are pretty 
slick pieces of kit, but the form factor is atrocious. Putting the USB 
jack on one long edge, and the SMA connector for the antenna on the 
opposite long edge is a prime example of a design engineer never using 
his product.  I'm using the Heltec ESP32 Lora dev boards and the Heltec 
CubeCell AB0-2S dev boards. The CubeCells are SAMD based and don't have 
BLE, but that's a use-case I have.

The ESP32 devices will also be using the FastLED library to drive a 1M 
strip of addressable LEDs, because it gets REAL DARK at night in the 
middle of the desert, and if you're not lit up like a Christmas tree, 
some dirty hippy WILL run into you on his (probably stolen) eBike at 
15MPH.  I'll use the BLE on my phone to control the light pattern, and 
set the smartbeacon params.

There's no real rocket science here; at this point, with all of the 
Arduino-compatible libraries, and all of the "dev kit" hardware 
available in 24 hours from Amazon, it's really like hardware and 
software Legos:  just keep putting pieces together until it looks like a 

I'll do a little writeup on the whole system when I'm done, including 
pictures.  Not really worthy of a Dayton presentation, but someone might 
find them useful for tracking cub scouts or RC boats or something.

de AB0OO
John Gorkos

>> On Aug 6, 2022, at 6:29 PM, John Gorkos <jgorkos at gmail.com> wrote:
>> This is perfect.  I'm hacking it up now.
>> Once I have it working, I'll put the code I'm using it in up on github and post the link to the project here.  All attribution will remain in the code.  I guess that's in contrast to what I said before, but it's possible other ham will want an arduino version of the SB code for their projects, and if I'm going to go through the effort of porting it, I might as well save someone else that effort.  Also, SmartBeacon is pretty good at saving bandwidth, and I think that's something we all appreciate.
>> John Gorkos
>>> On 7/29/22 18:02, Tom Russo wrote:
>>> On Fri, Jul 29, 2022 at 12:07:30PM -0700, we recorded a bogon-computron collision of the <jgorkos at gmail.com> flavor, containing:
>>>> Does anyone have a link to any C/C++ code that implements the complete
>>>> SmartBeaconing algo??? It's for a non-commercial, personal project.?? End
>>>> product is a tracker for my bike at Burning Man, using 915MHz LORA as the
>>>> phy channel.?? Target hardware is a Heltec HTCC-AB02S.
>>>> Appropriate attribution will be provided, but I really don't plan on
>>>> republishing the code.?? I just don't want some hippy taking off with my new
>>>> electric bike without a way to hunt him down.
>>> There is a C implementation in Xastir.  GPLed, feel free to use in any
>>> license-compatible manner (such as you have already described) if it is useful.
>>> See
>>> https://github.com/Xastir/Xastir/blob/master/src/db.c
>>> around line 16045 (where the comments for function "compute_smart_beacon"
>>> begin --- function itself is at line 16135)
>>>> _______________________________________________
>>>> aprssig mailing list
>>>> aprssig at lists.tapr.org
>>>> http://lists.tapr.org/mailman/listinfo/aprssig_lists.tapr.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_0xA4025CE04AE176ED_and_old_rev.asc
Type: application/pgp-keys
Size: 2346 bytes
Desc: OpenPGP public key
URL: <http://lists.tapr.org/pipermail/aprssig_lists.tapr.org/attachments/20220809/29f3594d/attachment.asc>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 236 bytes
Desc: OpenPGP digital signature
URL: <http://lists.tapr.org/pipermail/aprssig_lists.tapr.org/attachments/20220809/29f3594d/attachment.sig>

More information about the aprssig mailing list