Results 1 to 6 of 6

Thread: GPS over NBP?

  1. #1
    Potential Tuner
    Join Date
    May 2019
    Posts
    3

    GPS over NBP?

    I'm working on a pi-based datalogging device that supports nbp. It would be really nice if trackaddict could use the high quality GPS data of my device over nbp. Is something like this possible. Or on the horizon?
    Another useful nbp feature would be a client message from trackaddict when recording starts/stops. This could allow for a third party multi camera solution.
    These are definitely features that would be valuable in a "pro" version or in-app purchases.

    -Jason

  2. #2
    HPT Employee Weston@HPTuners's Avatar
    Join Date
    Jul 2014
    Location
    39.735034, -103.894459
    Posts
    868
    There's a bunch of GPS-specific data handling going on in several places within the app, so it's unfortunately not likely to be practical to accept GPS data in a universal way via an NBP source. You could probably include it without problems, but it would be secondary data that the app doesn't use for its GPS-based functionality. The best option to get any GPS data into the app would be via one of the GPS choices listed on the Options screen...

    For Android, that's as simple as having a Bluetooth SPP device connection that sends NMEA-0183 text sentences.

    For iOS, there's not really a ready-made solution at this time. The most practical option is probably BLE, but there are a couple of catches with that:
    1) For efficiency with BLE, you'd ideally want to condense the data into a binary format of 20 bytes or less, and then the app would need to add support for that specific protocol.
    2) Right now, the app only attempts BLE connections to certain known device names, as that's also how it also knows which protocol to use.

    So, this is something that we could possibly do for commercial hardware devices where the manufacturer wants to share their data format details, and we are starting to see some of those, but it's not really practical for one-off situations. I think we would need a universal format to use for those cases, and some UI for the user to choose the device.

  3. #3
    Potential Tuner
    Join Date
    May 2019
    Posts
    3
    I'm already opening an SPP connection to handle the NBP stream. Could a second SPP connection be made from the same device to handle the NMEA data? If so, that's great news...
    How about the start/stop recording information from TrackAddict? On the roadmap at all?

    -Jason

  4. #4
    HPT Employee Weston@HPTuners's Avatar
    Join Date
    Jul 2014
    Location
    39.735034, -103.894459
    Posts
    868
    I'll get the recording state added in the next update (v4.3.6 or higher)... In addition to the "KA" keep alive messages that TrackAddict currently sends, we'll now also send an "R1" or "R0" to indicate the recording state, so that you can synchronize cameras or other recordings. This will be sent immediately upon a change in that state, and also periodically with the KA's, to ensure that it is not missed if there's a communications disruption. I'll update the NBP docs accordingly in a bit...

    As for handling a combined NBP + NMEA broadcast, we unfortunately don't have a good way to split that incoming data between handlers at this time, as they are operating in their own modules, each one wanting its own exclusive SPP connection.

  5. #5
    Potential Tuner
    Join Date
    May 2019
    Posts
    3
    I suspected as much on the NBP/NMEA front. However, that's excellent news about the recording state updates!

  6. #6
    Potential Tuner
    Join Date
    Oct 2020
    Posts
    1
    Ah bummer, I was hoping to use NBP but I realized during testing that NBP GPS information (lat,lon,alt,vel,hea) is not taking priority over the built in phone location service: lesson learned, I should have checked the forum first. I was lured into using NBP by the very nice documentation on its specs, noting that TrackAddict does not consider GPS information on NBP as primary data might help.

    For a binary packed format I'd recommend looking at the UBX binary protocol, it seems like in the maker space uBlox is an extremely common option
    Paragraph 32 "UBX Protocol" from https://www.u-blox.com/sites/default...3003221%29.pdf