Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Meshtastic as an option for tracking #123

Open
RCGV1 opened this issue Dec 16, 2024 · 6 comments
Open

Add Meshtastic as an option for tracking #123

RCGV1 opened this issue Dec 16, 2024 · 6 comments

Comments

@RCGV1
Copy link

RCGV1 commented Dec 16, 2024

Personally I’ve used Meshtastic to track balloons with great success. The MQTT server feature could be used and you can specify the node id of the balloon and intercept all packets from it with position data.

@darksidelemm
Copy link
Member

This is more of a sondehub-infra thing, since that's where any such gateway would need to run.

This has been considered, but i suspect it might not be as simple as you initially think.
We don't want to run a system where users need to specify node IDs to us for them to be imported and show up on the map.

It must be picked up automatically based on something in the telemetry.

What way can balloon trackers be uniquely identified from a stream of Meshtastic traffic? Is there a way to filter meshtastic traffic so that we don't have to 'drink from the firehose' (so to speak)? Is there a balloon-specific packet format?

For our APRS importer we specifically filter by position reports that use the balloon icon. We then apply some additional filters to remove non-amateur balloon traffic (radiosondes, etc).

@RCGV1
Copy link
Author

RCGV1 commented Dec 16, 2024

You could filter by short names with the balloon emoji or by a long name that has a callsign. You could filter by portnums (only get position data) and only search for stuff from a certain node ID. But the issue is that there are a ton of MQTT servers right now with different local groups making their own. My idea is that you would manually enter the mqtt server address, details ,and the topic to listen to. Here are packets from a balloon we launched today.

https://meshview.rouvier.org/packet_list/1400899438?q=!5380076e&portnum=3

@RCGV1
Copy link
Author

RCGV1 commented Dec 16, 2024

Thats a site that is made by using data gathered from the Bayme.sh MQTT server.

@darksidelemm
Copy link
Member

Manually enter the mqtt server address where? If we run a gateway, we would need to select a MQTT server to use, ideally something 'core' to the meshtastic network. Do these MQTT servers feed data to each other? (e.g. like how all the APRS-IS servers are linked together)

"only search for stuff from a certain node ID" - the idea here is that we want to avoid this. Looking for traffic which contains something that identifies it as a balloon (e.g. balloon emoji in some field), and then subscribing to that would be acceptable.

@RCGV1
Copy link
Author

RCGV1 commented Dec 16, 2024

Most networks feed into the official Meshtastic mqtt server but they have disabled subscriptions to all topics and precise GPS locations are filtered out for privacy concerns.
I think if Sondehub ran a Meshtastic-specific mqtt server and people who wanted to track balloons uplinked there that could work well.

@RCGV1
Copy link
Author

RCGV1 commented Dec 16, 2024

Nodes only broadcast their short names and long names in the node info packet. So you would need to pick up node info packets, find if they contain the balloon emoji and then store the node id of that node for tracking. Position packets don't contain the node name, just the node id.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants