How do I collect receiver name of integrated GPS?

724
2
Jump to solution
06-15-2020 09:03 AM
BobChristensen
Occasional Contributor

Greetings, I am using version 3.9 of Connect to create a survey. I would like to collect the name of the GPS receiver that is being used when data is submitted with the form. I have included a text type field with the name positionsourceinfo and a calculation of: pulldata("@geopoint",${location},"positionSourceInfo.deviceName"). Is this correct? I am able to collect the receiver name for a bad elf and trimble R1 but the field is left blank when the integrated GPS is used. 

On a related note, I would like to include in the esri warning message a notification that the user is using the integrated GPS and not the BT GPS. How would I do that?

I attached the xls form. 

b

Tags (1)
0 Kudos
1 Solution

Accepted Solutions
IsmaelChivite
Esri Notable Contributor

Hi. The positionSourceInfo.deviceName property is only available for external GNSS receivers. This explains why an empty string is returned when you use the internal GPS.  The built-in GPS does not really have a name that we can return. Alternatively, if you do not want to have am empty value, you could go with something like this:

 if(pulldata("@geopoint",${location},"positionSourceType")='2',"Built-In GPS",pulldata("@geopoint",${location},"positionSourceInfo.deviceName"))

You can also use the positionSourceType property to figure out if the user is using an external receiver or not. For example:

typenamelabelrelevant
notePlease connect your external GPSpulldata("@geopoint",${location},"positionSourceType")='2'
geopointlocationGPS location

To learn about all the properties you can pull from a geopoint, check the Geopoints—Survey123 for ArcGIS | Documentation  help topic.

Thanks!

View solution in original post

2 Replies
IsmaelChivite
Esri Notable Contributor

Hi. The positionSourceInfo.deviceName property is only available for external GNSS receivers. This explains why an empty string is returned when you use the internal GPS.  The built-in GPS does not really have a name that we can return. Alternatively, if you do not want to have am empty value, you could go with something like this:

 if(pulldata("@geopoint",${location},"positionSourceType")='2',"Built-In GPS",pulldata("@geopoint",${location},"positionSourceInfo.deviceName"))

You can also use the positionSourceType property to figure out if the user is using an external receiver or not. For example:

typenamelabelrelevant
notePlease connect your external GPSpulldata("@geopoint",${location},"positionSourceType")='2'
geopointlocationGPS location

To learn about all the properties you can pull from a geopoint, check the Geopoints—Survey123 for ArcGIS | Documentation  help topic.

Thanks!

BobChristensen
Occasional Contributor

Very helpful Ismael. Just what we needed. Thanks very much. 

b

0 Kudos