thomasbrueggemann / predictwind.js

💨 Loading position information of PredictWind's tracking service for Iridium Go! users
MIT License
1 stars 1 forks source link

Iridium x Raspberry Pi #1

Open neauoire opened 6 years ago

neauoire commented 6 years ago

Hi Thomas,

I'm sorry to contact you through Github issues, but I had a question, it might be a long shot, but you seem to have done something along the lines of what I'm after.

I'm trying to get the GPS location from the Iridium Go from a Raspberry Pi, in Python. Do you know how to query the Iridium Go for location services?

Cheers

thomasbrueggemann commented 6 years ago

Hi Devine,

cool to hear from you, I've been following your adventures on Pino for quite a while now :-)

I think there are three possible solutions to your question:

1) The Iridum Go can be connected to the PredictWind service, which yields a web-app like this: http://forecast.predictwind.com/tracking/display/Varuna which loads a JSON http://forecast.predictwind.com/vodafone/Varuna.json with the latest position updates.

2) If the Iridium Go is not connected to the PredictWind service, option 1) is not an option. But I just read that there is an Iridum web-app or mobile app to display your position on. If that is the case, I would take a closer look at these apps and their data-connections, how they themselves query the location updates. Maybe there is a way to publicly access a similar JSON service as in 1). But I don't have an Iridum Go myself, so I don't know any further details on these app.

3) The first two options were online-querying options. I just reread your question and I think you want to directly query the Iridium Go from the Raspberry without the internet in between. In that case, since Iridium does not provide any developer information about an API to the Iridium Go, I would download the APK file of the official Iridium Go app https://play.google.com/store/apps/details?id=com.iridiumgo&hl=en which, as far as I understand it, can display your position track. I would then try to decompile the APK back into Java source code and reverse engineer the way the app communicates with the Iridum Go. Maybe via Bluetooth or Wifi. This might yield information on how you can establish a data connection to the Iridum vom your Raspberry an query it for positions.

I know that's very vage, but I always find reverse engineering things quite fun ;-) Hope that helps as a first idea on how to go about querying the Iridium Go. Keep me updated on the project!

Best, Thomas Two aboard Tuuli

neauoire commented 6 years ago

Thank you for your answer!

I have been poking around with this a bit, and I'm starting to believe it's something quite standard that is at work here. As, if I connect my macbook to the Iridium Go, without Predict Wind, I start automatically get the Location Services icon showing up, meaning that my GPS location is know, do you have any idea if standard WIFI connect share GPS coordinates? Or if it is possible for router to stream their own location.

thomasbrueggemann commented 6 years ago

That's a good point. There must be some sort of standard protocol to provide the location to the Mac. I tried to google it but could not really find any information. You could open https://www.charlesproxy.com/ or at a lower level https://www.wireshark.org/ on the Mac, connect to the Iridium and try to see what kind of data is shared between the Iridium Go an the Mac.