Get desktop application:
View/edit binary Protocol Buffers messages
The AggregatorService is an endpoint that clients should send GPS data too. Data dumped into the AggregatorService is used by the RegistrationService. In practice: - A GPS will be connected to a peripheral computer - The peripheral computer should establish timesync with the robot - The peripheral computer should read data from the GPS hardware - The peripheral computer should send timestamped data to the AggregatorService
Common request header.
GPS Measurements. GPS units that generate data at a high rate can bundle multiple measurements together in a single message.
Describer for what device is generating GPS data.
Common response header.
The RegistrationService consumes data sent to the Gps/AggregatorService. It calculates where the robot is in the world, and the transforms from the robots internal frames to the world frame.
Common request header.
Common response header.
Common request header.
Common response header.
Quality of registration status.
Used in:
Used in:
, ,The GPS measurement as Latitude, Longitude, Height.
The GPS measurement with respect to the Earth Centered Earth Fixed frame
Magnetometer yaw. 0 is north. Processes counter clockwise. We did this to match Spot's body coordinate system, where Z is up.
Movement heading. 0 is north. Processes counter clockwise. We did this to match Spot's body coordinate system, where Z is up.
Satellites used in the location solution.
The current fix, if any.
GPS timestamp. This will *not* match robot time.
Optional field corresponding the timestamp of the computer the GPS is connected to (if any).
Robot timestamp.
How the GPS is mounted relative to the robots body.
Estimated accuracy is measured in meters
Used in:
Used in:
Used in:
The current type of fix.
Types of fixes possible.
Used in:
Single Point Positioning
Differential Global Navigation Satellite System
Precise Positioning System Fix
Fixed-Point Real-Time Kinematics
Floating-Point Real-Time Kinematics
Satellite Based Augmentation System
Information about a GNSS satellite measurement.
Used in:
satellite identifier
Degrees from -90 to 90
Degrees from true north
in dB
Used in:
BDS stands for the BeiDou Navigation Satellite System
Used in:
, ,A human readable name for this GPS unit. "Piksi" or "Duro" or "Microstrain"
Used in:
Latest data from the GPS device.
What GPS device generated the latest data
Estimate of where the robot's body is in the ECEF frame given this measurement. Note this must be a position and not a pose because of the lack of orientation data.
Collection of all GPS data received by this device within some window.
Latitude/longitude location representation.
Used in:
, , ,Latitude value in degrees.
Longitude value in degrees.
Height value in meters. The reference system from where the height is calculated is controlled by the application generating this structure.
Used in:
,Time stamp of latest registration.
Includes all normal robots frames ("body", "odom", etc) AND "ecef" frame, which you can read about here: https://wikipedia.org/wiki/ECEF
The estimated position of the robot's body frame in LLH form. This position is filtered.
Most recent data from each GPS. Note that the LLH the GPS is reporting won't exactly match robot_body_location, because robot_body_location is filtered, and the GPS might have some offset relative to the robot's body.
Quality of registration status.
Used in:
No data has been reported to perform registration.
Data has been reported, but not enough to get a fix.
We have a registration, but it is based on old data.