Coordinated external hardware support

475
7
02-02-2021 12:46 PM
MichaelDavis3
Regular Contributor

Very exciting to see that the 100.10 version of the Runtime SDK includes support for external high-precision GNSS devices!  Timing is great because I was just starting in on re-writing our implementation of this to extend support in our apps beyond EOS/Geneq devices.

Would it be possible to provide a list of currently supported GNSS hardware IDs?  Getting those from manufacturers has been a bit of a pain sometimes... it would be great to have a list of IDs for hardware that is known to work with the SDK.

I get that there is a whitelisting process if you want to list apps in the App Store with support for external hardware, but for enterprise apps that isn't a concern. 

0 Kudos
7 Replies
SuganyaBaskaran1
Esri Contributor

Hello Michael,
Our SDK is GNSS hardware agnostic, as long as the receiver is able to provide NMEA messages.

With 100.10 version, you'll have to establish connection, create session, extract the NMEA messages appropriately and push to our NMEALocationDataSource. Runtime will then extract the location information for that and propogate it through our API.

We are currently working on some coarse grained APIs that would simplify reading NMEA data from the device. We are hoping these would be device agnostic as well. If you are interested in trying them out with your devices and give us feedback, I can reach out to you over email.

Regarding GNSS hardware IDs, we don't work with those. You can get the protocol strings of a connected bluetooth accessory like so:

for accessory in EAAccessoryManager.shared().connectedAccessories {
    print("accessory: \(accessory)")
    print("protocol: \(accessory.protocolStrings)")
}

 

Thanks,

Suganya

0 Kudos
MichaelDavis3
Regular Contributor

Thanks Suganya that makes sense.  I think after reading the press release I assumed a more comprehensive management of devices but it seems logical that your support would only be the processing of NMEA sentences into location data.

That said - almost all of these devices run either Trimble or Hemisphere OEM boards and the pretty much work the same way.  If you support one of them in your app adding others is simple enough... if you know the protocol string.  It would be great if there were a shared source of these available rather than having to chase down each manufacturer (or get hands-on time with each device).   

0 Kudos
SuganyaBaskaran1
Esri Contributor

While we don't do device management per se, the next release includes API that enables you to easily connect to an EAAccessory with the protocol strings. We manage the streams and push NMEA messages internally. I'm happy to provide more info on that if you are interested in trying it out.

We also don't certify devices or specific models and that's part of why we do not provide protocol identifiers for each. Our fields apps like Collector do have a list of receivers that they support but again they also don't share identifiers for those. 

0 Kudos
MichaelDavis3
Regular Contributor

Now you're just teasing me!  I'd be very much interested in seeing more information on a device management API or wraparound of EAAccessory.

I understand that ESRI is probably hesitant to certify or appear to endorse specific hardware for use with their software.  Perhaps this is something "the community" can share amongst ourselves, here on this internet web site, in the interest of helping other community members more quickly adopt external GNSS receivers into their workflows?  It's not like hardware protocol strings are covered under NDA (at least I've not had to sign any).  It's more that it is sometimes a bit of an effort to navigate each companies support infrastructure to find the one person who has any idea what you are talking about and then for them to dig up the info.

0 Kudos
SuganyaBaskaran1
Esri Contributor

Of course!

We'll contact you via direct message on the upcoming API. 

0 Kudos
DavidVanValkenburgh
New Contributor

Hi @SuganyaBaskaran1, I am attempting to integrate GNSS support with the iOS, Android and WPF runtimes, and would be very interested in your upcoming API. Any chance I could get more information as well?

0 Kudos
SuganyaBaskaran1
Esri Contributor

@DavidVanValkenburgh Sure, one of us will get in touch with you via direct message

0 Kudos