-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | SwiftNav's SBP Library -- -- Haskell bindings for Swift Navigation Binary Protocol (SBP), a fast, -- simple, and minimal binary protocol for communicating with Swift -- devices. It is the native binary protocol used by the Piksi GPS -- receiver to transmit solutions, observations, status and debugging -- messages, as well as receive messages from the host operating system, -- such as differential corrections and the almanac. @package sbp @version 4.3.3 -- | Error detection functions. module SwiftNav.CRC16 -- | Calculate CCITT 16-bit Cyclical Redundancy Check (CRC16). crc16 :: ByteString -> Word16 -- | Common SBP type requirements, containers, and serialization utilities. module SwiftNav.SBP.Types -- | Packet structure for Swift Navigation Binary Protocol (SBP). -- -- Definition of the over-the-wire message framing format and packet -- structure for Swift Navigation Binary Protocol (SBP), a minimal binary -- protocol for communicating with Swift devices. It is used to transmit -- solutions, observations, status and debugging messages, as well as -- receive messages from the host operating system. data Msg Msg :: !Word16 -> !Word16 -> !Word8 -> !Bytes -> !Word16 -> Msg -- | Uniquely identifies the type of the payload contents [_msgSBPType] :: Msg -> !Word16 -- | A unique identifier of the sending hardware. For v1.0, set to the 2 -- least significant bytes of the device serial number [_msgSBPSender] :: Msg -> !Word16 -- | Byte-length of the payload field [_msgSBPLen] :: Msg -> !Word8 -- | Binary data of the message, as identified by Message Type and Length. -- Usually contains the in-memory binary representation of a C struct -- (see documentation on individual message types) [_msgSBPPayload] :: Msg -> !Bytes -- | Cyclic Redundancy Check (CRC) of the packet's binary data from the -- Message Type up to the end of Payload (does not include the Preamble) [_msgSBPCrc] :: Msg -> !Word16 -- | Wrapper around ByteString for *JSON and Binary typeclass instances. newtype Bytes Bytes :: ByteString -> Bytes [unBytes] :: Bytes -> ByteString -- | Denotes the start of frame transmission. For v1.0, always 0x55. msgSBPPreamble :: Word8 -- | Default sender ID. Intended for messages sent from the host to the -- device. defaultSender :: Word16 -- | Class of generic representation of specialized SBP messages into SBP -- message frames. class Binary a => ToSBP a -- | Convert an SBP message record that is serializable and a two-byte -- senderID to a binary into an SBP message frame. toSBP :: ToSBP a => a -> Word16 -> Msg class HasMsg c_af31 msg :: HasMsg c_af31 => Lens' c_af31 Msg msgSBPCrc :: HasMsg c_af31 => Lens' c_af31 Word16 msgSBPLen :: HasMsg c_af31 => Lens' c_af31 Word8 msgSBPPayload :: HasMsg c_af31 => Lens' c_af31 Bytes msgSBPSender :: HasMsg c_af31 => Lens' c_af31 Word16 msgSBPType :: HasMsg c_af31 => Lens' c_af31 Word16 checkCrc :: Msg -> Word16 instance SwiftNav.SBP.Types.HasMsg SwiftNav.SBP.Types.Msg instance Data.Binary.Class.Binary SwiftNav.SBP.Types.Msg instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Types.Bytes instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Types.Msg instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Types.Bytes instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Types.Msg instance GHC.Classes.Eq SwiftNav.SBP.Types.Bytes instance GHC.Read.Read SwiftNav.SBP.Types.Bytes instance GHC.Show.Show SwiftNav.SBP.Types.Bytes instance GHC.Classes.Eq SwiftNav.SBP.Types.Msg instance GHC.Read.Read SwiftNav.SBP.Types.Msg instance GHC.Show.Show SwiftNav.SBP.Types.Msg -- | < Orientation Messages > module SwiftNav.SBP.Orientation -- | SBP class for message MSG_BASELINE_HEADING (0x020F). -- -- This message reports the baseline heading pointing from the base -- station to the rover relative to True North. The full GPS time is -- given by the preceding MSG_GPS_TIME with the matching time-of-week -- (tow). It is intended that time-matched RTK mode is used when the base -- station is moving. data MsgBaselineHeading MsgBaselineHeading :: !Word32 -> !Word32 -> !Word8 -> !Word8 -> MsgBaselineHeading -- | GPS Time of Week [_msgBaselineHeading_tow] :: MsgBaselineHeading -> !Word32 -- | Heading [_msgBaselineHeading_heading] :: MsgBaselineHeading -> !Word32 -- | Number of satellites used in solution [_msgBaselineHeading_n_sats] :: MsgBaselineHeading -> !Word8 -- | Status flags [_msgBaselineHeading_flags] :: MsgBaselineHeading -> !Word8 msgBaselineHeading :: Word16 -- | SBP class for message MSG_ORIENT_QUAT (0x0220). -- -- This message reports the quaternion vector describing the vehicle body -- frame's orientation with respect to a local-level NED frame. The -- components of the vector should sum to a unit vector assuming that the -- LSB of each component as a value of 2^-31. This message will only be -- available in future INS versions of Swift Products and is not produced -- by Piksi Multi or Duro. data MsgOrientQuat MsgOrientQuat :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> !Float -> !Float -> !Float -> !Float -> !Word8 -> MsgOrientQuat -- | GPS Time of Week [_msgOrientQuat_tow] :: MsgOrientQuat -> !Word32 -- | Real component [_msgOrientQuat_w] :: MsgOrientQuat -> !Int32 -- | 1st imaginary component [_msgOrientQuat_x] :: MsgOrientQuat -> !Int32 -- | 2nd imaginary component [_msgOrientQuat_y] :: MsgOrientQuat -> !Int32 -- | 3rd imaginary component [_msgOrientQuat_z] :: MsgOrientQuat -> !Int32 -- | Estimated standard deviation of w [_msgOrientQuat_w_accuracy] :: MsgOrientQuat -> !Float -- | Estimated standard deviation of x [_msgOrientQuat_x_accuracy] :: MsgOrientQuat -> !Float -- | Estimated standard deviation of y [_msgOrientQuat_y_accuracy] :: MsgOrientQuat -> !Float -- | Estimated standard deviation of z [_msgOrientQuat_z_accuracy] :: MsgOrientQuat -> !Float -- | Status flags [_msgOrientQuat_flags] :: MsgOrientQuat -> !Word8 msgBaselineHeading_flags :: Lens' MsgBaselineHeading Word8 msgBaselineHeading_heading :: Lens' MsgBaselineHeading Word32 msgBaselineHeading_n_sats :: Lens' MsgBaselineHeading Word8 msgBaselineHeading_tow :: Lens' MsgBaselineHeading Word32 msgOrientQuat :: Word16 -- | SBP class for message MSG_ORIENT_EULER (0x0221). -- -- This message reports the yaw, pitch, and roll angles of the vehicle -- body frame. The rotations should applied intrinsically in the order -- yaw, pitch, and roll in order to rotate the from a frame aligned with -- the local-level NED frame to the vehicle body frame. This message will -- only be available in future INS versions of Swift Products and is not -- produced by Piksi Multi or Duro. data MsgOrientEuler MsgOrientEuler :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Float -> !Float -> !Float -> !Word8 -> MsgOrientEuler -- | GPS Time of Week [_msgOrientEuler_tow] :: MsgOrientEuler -> !Word32 -- | rotation about the forward axis of the vehicle [_msgOrientEuler_roll] :: MsgOrientEuler -> !Int32 -- | rotation about the rightward axis of the vehicle [_msgOrientEuler_pitch] :: MsgOrientEuler -> !Int32 -- | rotation about the downward axis of the vehicle [_msgOrientEuler_yaw] :: MsgOrientEuler -> !Int32 -- | Estimated standard deviation of roll [_msgOrientEuler_roll_accuracy] :: MsgOrientEuler -> !Float -- | Estimated standard deviation of pitch [_msgOrientEuler_pitch_accuracy] :: MsgOrientEuler -> !Float -- | Estimated standard deviation of yaw [_msgOrientEuler_yaw_accuracy] :: MsgOrientEuler -> !Float -- | Status flags [_msgOrientEuler_flags] :: MsgOrientEuler -> !Word8 msgOrientQuat_flags :: Lens' MsgOrientQuat Word8 msgOrientQuat_tow :: Lens' MsgOrientQuat Word32 msgOrientQuat_w :: Lens' MsgOrientQuat Int32 msgOrientQuat_w_accuracy :: Lens' MsgOrientQuat Float msgOrientQuat_x :: Lens' MsgOrientQuat Int32 msgOrientQuat_x_accuracy :: Lens' MsgOrientQuat Float msgOrientQuat_y :: Lens' MsgOrientQuat Int32 msgOrientQuat_y_accuracy :: Lens' MsgOrientQuat Float msgOrientQuat_z :: Lens' MsgOrientQuat Int32 msgOrientQuat_z_accuracy :: Lens' MsgOrientQuat Float msgOrientEuler :: Word16 -- | SBP class for message MSG_ANGULAR_RATE (0x0222). -- -- This message reports the orientation rates in the vehicle body frame. -- The values represent the measurements a strapped down gyroscope would -- make and are not equivalent to the time derivative of the Euler -- angles. The orientation and origin of the user frame is specified via -- device settings. By convention, the vehicle x-axis is expected to be -- aligned with the forward direction, while the vehicle y-axis is -- expected to be aligned with the right direction, and the vehicle -- z-axis should be aligned with the down direction. This message will -- only be available in future INS versions of Swift Products and is not -- produced by Piksi Multi or Duro. data MsgAngularRate MsgAngularRate :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Word8 -> MsgAngularRate -- | GPS Time of Week [_msgAngularRate_tow] :: MsgAngularRate -> !Word32 -- | angular rate about x axis [_msgAngularRate_x] :: MsgAngularRate -> !Int32 -- | angular rate about y axis [_msgAngularRate_y] :: MsgAngularRate -> !Int32 -- | angular rate about z axis [_msgAngularRate_z] :: MsgAngularRate -> !Int32 -- | Status flags [_msgAngularRate_flags] :: MsgAngularRate -> !Word8 msgOrientEuler_flags :: Lens' MsgOrientEuler Word8 msgOrientEuler_pitch :: Lens' MsgOrientEuler Int32 msgOrientEuler_pitch_accuracy :: Lens' MsgOrientEuler Float msgOrientEuler_roll :: Lens' MsgOrientEuler Int32 msgOrientEuler_roll_accuracy :: Lens' MsgOrientEuler Float msgOrientEuler_tow :: Lens' MsgOrientEuler Word32 msgOrientEuler_yaw :: Lens' MsgOrientEuler Int32 msgOrientEuler_yaw_accuracy :: Lens' MsgOrientEuler Float msgAngularRate :: Word16 msgAngularRate_flags :: Lens' MsgAngularRate Word8 msgAngularRate_tow :: Lens' MsgAngularRate Word32 msgAngularRate_x :: Lens' MsgAngularRate Int32 msgAngularRate_y :: Lens' MsgAngularRate Int32 msgAngularRate_z :: Lens' MsgAngularRate Int32 instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Orientation.MsgAngularRate instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Orientation.MsgAngularRate instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Orientation.MsgAngularRate instance GHC.Classes.Eq SwiftNav.SBP.Orientation.MsgAngularRate instance GHC.Read.Read SwiftNav.SBP.Orientation.MsgAngularRate instance GHC.Show.Show SwiftNav.SBP.Orientation.MsgAngularRate instance Data.Binary.Class.Binary SwiftNav.SBP.Orientation.MsgAngularRate instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Orientation.MsgOrientEuler instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Orientation.MsgOrientEuler instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Orientation.MsgOrientEuler instance GHC.Classes.Eq SwiftNav.SBP.Orientation.MsgOrientEuler instance GHC.Read.Read SwiftNav.SBP.Orientation.MsgOrientEuler instance GHC.Show.Show SwiftNav.SBP.Orientation.MsgOrientEuler instance Data.Binary.Class.Binary SwiftNav.SBP.Orientation.MsgOrientEuler instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Orientation.MsgOrientQuat instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Orientation.MsgOrientQuat instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Orientation.MsgOrientQuat instance GHC.Classes.Eq SwiftNav.SBP.Orientation.MsgOrientQuat instance GHC.Read.Read SwiftNav.SBP.Orientation.MsgOrientQuat instance GHC.Show.Show SwiftNav.SBP.Orientation.MsgOrientQuat instance Data.Binary.Class.Binary SwiftNav.SBP.Orientation.MsgOrientQuat instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Orientation.MsgBaselineHeading instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Orientation.MsgBaselineHeading instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Orientation.MsgBaselineHeading instance GHC.Classes.Eq SwiftNav.SBP.Orientation.MsgBaselineHeading instance GHC.Read.Read SwiftNav.SBP.Orientation.MsgBaselineHeading instance GHC.Show.Show SwiftNav.SBP.Orientation.MsgBaselineHeading instance Data.Binary.Class.Binary SwiftNav.SBP.Orientation.MsgBaselineHeading -- | < Standardized system messages from Swift Navigation devices. > module SwiftNav.SBP.System -- | SBP class for message MSG_STARTUP (0xFF00). -- -- The system start-up message is sent once on system start-up. It -- notifies the host or other attached devices that the system has -- started and is now ready to respond to commands or configuration -- requests. data MsgStartup MsgStartup :: !Word8 -> !Word8 -> !Word16 -> MsgStartup -- | Cause of startup [_msgStartup_cause] :: MsgStartup -> !Word8 -- | Startup type [_msgStartup_startup_type] :: MsgStartup -> !Word8 -- | Reserved [_msgStartup_reserved] :: MsgStartup -> !Word16 msgStartup :: Word16 -- | SBP class for message MSG_DGNSS_STATUS (0xFF02). -- -- This message provides information about the receipt of Differential -- corrections. It is expected to be sent with each receipt of a complete -- corrections packet. data MsgDgnssStatus MsgDgnssStatus :: !Word8 -> !Word16 -> !Word8 -> !Text -> MsgDgnssStatus -- | Status flags [_msgDgnssStatus_flags] :: MsgDgnssStatus -> !Word8 -- | Latency of observation receipt [_msgDgnssStatus_latency] :: MsgDgnssStatus -> !Word16 -- | Number of signals from base station [_msgDgnssStatus_num_signals] :: MsgDgnssStatus -> !Word8 -- | Corrections source string [_msgDgnssStatus_source] :: MsgDgnssStatus -> !Text msgStartup_cause :: Lens' MsgStartup Word8 msgStartup_reserved :: Lens' MsgStartup Word16 msgStartup_startup_type :: Lens' MsgStartup Word8 msgDgnssStatus :: Word16 -- | SBP class for message MSG_HEARTBEAT (0xFFFF). -- -- The heartbeat message is sent periodically to inform the host or other -- attached devices that the system is running. It is used to monitor -- system malfunctions. It also contains status flags that indicate to -- the host the status of the system and whether it is operating -- correctly. Currently, the expected heartbeat interval is 1 sec. -- -- The system error flag is used to indicate that an error has occurred -- in the system. To determine the source of the error, the remaining -- error flags should be inspected. data MsgHeartbeat MsgHeartbeat :: !Word32 -> MsgHeartbeat -- | Status flags [_msgHeartbeat_flags] :: MsgHeartbeat -> !Word32 msgDgnssStatus_flags :: Lens' MsgDgnssStatus Word8 msgDgnssStatus_latency :: Lens' MsgDgnssStatus Word16 msgDgnssStatus_num_signals :: Lens' MsgDgnssStatus Word8 msgDgnssStatus_source :: Lens' MsgDgnssStatus Text msgHeartbeat :: Word16 -- | SubSystemReport. -- -- Report the general and specific state of a subsystem. If the generic -- state is reported as initializing, the specific state should be -- ignored. data SubSystemReport SubSystemReport :: !Word16 -> !Word8 -> !Word8 -> SubSystemReport -- | Identity of reporting subsystem [_subSystemReport_component] :: SubSystemReport -> !Word16 -- | Generic form status report [_subSystemReport_generic] :: SubSystemReport -> !Word8 -- | Subsystem specific status code [_subSystemReport_specific] :: SubSystemReport -> !Word8 msgHeartbeat_flags :: Iso' MsgHeartbeat Word32 -- | SBP class for message MSG_STATUS_REPORT (0xFFFE). -- -- The status report is sent periodically to inform the host or other -- attached devices that the system is running. It is used to monitor -- system malfunctions. It contains status reports that indicate to the -- host the status of each subsystem and whether it is operating -- correctly. -- -- Interpretation of the subsystem specific status code is product -- dependent, but if the generic status code is initializing, it should -- be ignored. Refer to product documentation for details. data MsgStatusReport MsgStatusReport :: !Word16 -> !Word16 -> !Word32 -> !Word32 -> ![SubSystemReport] -> MsgStatusReport -- | Identity of reporting system [_msgStatusReport_reporting_system] :: MsgStatusReport -> !Word16 -- | SBP protocol version [_msgStatusReport_sbp_version] :: MsgStatusReport -> !Word16 -- | Increments on each status report sent [_msgStatusReport_sequence] :: MsgStatusReport -> !Word32 -- | Number of seconds since system start-up [_msgStatusReport_uptime] :: MsgStatusReport -> !Word32 -- | Reported status of individual subsystems [_msgStatusReport_status] :: MsgStatusReport -> ![SubSystemReport] subSystemReport_component :: Lens' SubSystemReport Word16 subSystemReport_generic :: Lens' SubSystemReport Word8 subSystemReport_specific :: Lens' SubSystemReport Word8 msgStatusReport :: Word16 -- | StatusJournalItem. -- -- Reports the uptime and the state of a subsystem via generic and -- specific status codes. If the generic state is reported as -- initializing, the specific state should be ignored. data StatusJournalItem StatusJournalItem :: !Word32 -> !SubSystemReport -> StatusJournalItem -- | Milliseconds since system startup [_statusJournalItem_uptime] :: StatusJournalItem -> !Word32 [_statusJournalItem_report] :: StatusJournalItem -> !SubSystemReport msgStatusReport_reporting_system :: Lens' MsgStatusReport Word16 msgStatusReport_sbp_version :: Lens' MsgStatusReport Word16 msgStatusReport_sequence :: Lens' MsgStatusReport Word32 msgStatusReport_status :: Lens' MsgStatusReport [SubSystemReport] msgStatusReport_uptime :: Lens' MsgStatusReport Word32 -- | SBP class for message MSG_STATUS_JOURNAL (0xFFFD). -- -- The status journal message contains past status reports (see -- MSG_STATUS_REPORT) and functions as a error/event storage for -- telemetry purposes. data MsgStatusJournal MsgStatusJournal :: !Word16 -> !Word16 -> !Word32 -> !Word8 -> ![StatusJournalItem] -> MsgStatusJournal -- | Identity of reporting system [_msgStatusJournal_reporting_system] :: MsgStatusJournal -> !Word16 -- | SBP protocol version [_msgStatusJournal_sbp_version] :: MsgStatusJournal -> !Word16 -- | Total number of status reports sent since system startup [_msgStatusJournal_total_status_reports] :: MsgStatusJournal -> !Word32 -- | Index and number of messages in this sequence. First nibble is the -- size of the sequence (n), second nibble is the zero-indexed counter -- (ith packet of n) [_msgStatusJournal_sequence_descriptor] :: MsgStatusJournal -> !Word8 -- | Status journal [_msgStatusJournal_journal] :: MsgStatusJournal -> ![StatusJournalItem] statusJournalItem_report :: Lens' StatusJournalItem SubSystemReport statusJournalItem_uptime :: Lens' StatusJournalItem Word32 msgStatusJournal :: Word16 -- | SBP class for message MSG_INS_STATUS (0xFF03). -- -- The INS status message describes the state of the operation and -- initialization of the inertial navigation system. data MsgInsStatus MsgInsStatus :: !Word32 -> MsgInsStatus -- | Status flags [_msgInsStatus_flags] :: MsgInsStatus -> !Word32 msgStatusJournal_journal :: Lens' MsgStatusJournal [StatusJournalItem] msgStatusJournal_reporting_system :: Lens' MsgStatusJournal Word16 msgStatusJournal_sbp_version :: Lens' MsgStatusJournal Word16 msgStatusJournal_sequence_descriptor :: Lens' MsgStatusJournal Word8 msgStatusJournal_total_status_reports :: Lens' MsgStatusJournal Word32 msgInsStatus :: Word16 -- | SBP class for message MSG_CSAC_TELEMETRY (0xFF04). -- -- The CSAC telemetry message has an implementation defined telemetry -- string from a device. It is not produced or available on general Swift -- Products. It is intended to be a low rate message for status purposes. data MsgCsacTelemetry MsgCsacTelemetry :: !Word8 -> !Text -> MsgCsacTelemetry -- | Index representing the type of telemetry in use. It is implementation -- defined. [_msgCsacTelemetry_id] :: MsgCsacTelemetry -> !Word8 -- | Comma separated list of values as defined by the index [_msgCsacTelemetry_telemetry] :: MsgCsacTelemetry -> !Text msgInsStatus_flags :: Iso' MsgInsStatus Word32 msgCsacTelemetry :: Word16 -- | SBP class for message MSG_CSAC_TELEMETRY_LABELS (0xFF05). -- -- The CSAC telemetry message provides labels for each member of the -- string produced by MSG_CSAC_TELEMETRY. It should be provided by a -- device at a lower rate than the MSG_CSAC_TELEMETRY. data MsgCsacTelemetryLabels MsgCsacTelemetryLabels :: !Word8 -> !Text -> MsgCsacTelemetryLabels -- | Index representing the type of telemetry in use. It is implementation -- defined. [_msgCsacTelemetryLabels_id] :: MsgCsacTelemetryLabels -> !Word8 -- | Comma separated list of telemetry field values [_msgCsacTelemetryLabels_telemetry_labels] :: MsgCsacTelemetryLabels -> !Text msgCsacTelemetry_id :: Lens' MsgCsacTelemetry Word8 msgCsacTelemetry_telemetry :: Lens' MsgCsacTelemetry Text msgCsacTelemetryLabels :: Word16 -- | SBP class for message MSG_INS_UPDATES (0xFF06). -- -- The INS update status message contains information about executed and -- rejected INS updates. This message is expected to be extended in the -- future as new types of measurements are being added. data MsgInsUpdates MsgInsUpdates :: !Word32 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> MsgInsUpdates -- | GPS Time of Week [_msgInsUpdates_tow] :: MsgInsUpdates -> !Word32 -- | GNSS position update status flags [_msgInsUpdates_gnsspos] :: MsgInsUpdates -> !Word8 -- | GNSS velocity update status flags [_msgInsUpdates_gnssvel] :: MsgInsUpdates -> !Word8 -- | Wheelticks update status flags [_msgInsUpdates_wheelticks] :: MsgInsUpdates -> !Word8 -- | Wheelticks update status flags [_msgInsUpdates_speed] :: MsgInsUpdates -> !Word8 -- | NHC update status flags [_msgInsUpdates_nhc] :: MsgInsUpdates -> !Word8 -- | Zero velocity update status flags [_msgInsUpdates_zerovel] :: MsgInsUpdates -> !Word8 msgCsacTelemetryLabels_id :: Lens' MsgCsacTelemetryLabels Word8 msgCsacTelemetryLabels_telemetry_labels :: Lens' MsgCsacTelemetryLabels Text msgInsUpdates :: Word16 -- | SBP class for message MSG_GNSS_TIME_OFFSET (0xFF07). -- -- The GNSS time offset message contains the information that is needed -- to translate messages tagged with a local timestamp (e.g. IMU or -- wheeltick messages) to GNSS time for the sender producing this -- message. data MsgGnssTimeOffset MsgGnssTimeOffset :: !Int16 -> !Int32 -> !Int16 -> !Word8 -> MsgGnssTimeOffset -- | Weeks portion of the time offset [_msgGnssTimeOffset_weeks] :: MsgGnssTimeOffset -> !Int16 -- | Milliseconds portion of the time offset [_msgGnssTimeOffset_milliseconds] :: MsgGnssTimeOffset -> !Int32 -- | Microseconds portion of the time offset [_msgGnssTimeOffset_microseconds] :: MsgGnssTimeOffset -> !Int16 -- | Status flags (reserved) [_msgGnssTimeOffset_flags] :: MsgGnssTimeOffset -> !Word8 msgInsUpdates_gnsspos :: Lens' MsgInsUpdates Word8 msgInsUpdates_gnssvel :: Lens' MsgInsUpdates Word8 msgInsUpdates_nhc :: Lens' MsgInsUpdates Word8 msgInsUpdates_speed :: Lens' MsgInsUpdates Word8 msgInsUpdates_tow :: Lens' MsgInsUpdates Word32 msgInsUpdates_wheelticks :: Lens' MsgInsUpdates Word8 msgInsUpdates_zerovel :: Lens' MsgInsUpdates Word8 msgGnssTimeOffset :: Word16 -- | SBP class for message MSG_PPS_TIME (0xFF08). -- -- The PPS time message contains the value of the sender's local time in -- microseconds at the moment a pulse is detected on the PPS input. This -- is to be used for syncronisation of sensor data sampled with a local -- timestamp (e.g. IMU or wheeltick messages) where GNSS time is unknown -- to the sender. -- -- The local time used to timestamp the PPS pulse must be generated by -- the same clock which is used to timestamp the IMU/wheel sensor data -- and should follow the same roll-over rules. A separate MSG_PPS_TIME -- message should be sent for each source of sensor data which uses -- PPS-relative timestamping. The sender ID for each of these -- MSG_PPS_TIME messages should match the sender ID of the respective -- sensor data. data MsgPpsTime MsgPpsTime :: !Word64 -> !Word8 -> MsgPpsTime -- | Local time in microseconds [_msgPpsTime_time] :: MsgPpsTime -> !Word64 -- | Status flags [_msgPpsTime_flags] :: MsgPpsTime -> !Word8 msgGnssTimeOffset_flags :: Lens' MsgGnssTimeOffset Word8 msgGnssTimeOffset_microseconds :: Lens' MsgGnssTimeOffset Int16 msgGnssTimeOffset_milliseconds :: Lens' MsgGnssTimeOffset Int32 msgGnssTimeOffset_weeks :: Lens' MsgGnssTimeOffset Int16 msgPpsTime :: Word16 -- | SBP class for message MSG_SENSOR_AID_EVENT (0xFF09). -- -- This diagnostic message contains state and update status information -- for all sensors that are being used by the fusion engine. This message -- will be generated asynchronously to the solution messages and will be -- emitted anytime a sensor update is being processed. data MsgSensorAidEvent MsgSensorAidEvent :: !Word32 -> !Word8 -> !Word16 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> !Word32 -> MsgSensorAidEvent -- | Update timestamp in milliseconds. [_msgSensorAidEvent_time] :: MsgSensorAidEvent -> !Word32 -- | Sensor type [_msgSensorAidEvent_sensor_type] :: MsgSensorAidEvent -> !Word8 -- | Sensor identifier [_msgSensorAidEvent_sensor_id] :: MsgSensorAidEvent -> !Word16 -- | Reserved for future use [_msgSensorAidEvent_sensor_state] :: MsgSensorAidEvent -> !Word8 -- | Number of available measurements in this epoch [_msgSensorAidEvent_n_available_meas] :: MsgSensorAidEvent -> !Word8 -- | Number of attempted measurements in this epoch [_msgSensorAidEvent_n_attempted_meas] :: MsgSensorAidEvent -> !Word8 -- | Number of accepted measurements in this epoch [_msgSensorAidEvent_n_accepted_meas] :: MsgSensorAidEvent -> !Word8 -- | Reserved for future use [_msgSensorAidEvent_flags] :: MsgSensorAidEvent -> !Word32 msgPpsTime_flags :: Lens' MsgPpsTime Word8 msgPpsTime_time :: Lens' MsgPpsTime Word64 msgSensorAidEvent :: Word16 -- | SBP class for message MSG_GROUP_META (0xFF0A). -- -- This leading message lists the time metadata of the Solution Group. It -- also lists the atomic contents (i.e. types of messages included) of -- the Solution Group. data MsgGroupMeta MsgGroupMeta :: !Word8 -> !Word8 -> !Word8 -> ![Word16] -> MsgGroupMeta -- | Id of the Msgs Group, 0 is Unknown, 1 is Bestpos, 2 is Gnss [_msgGroupMeta_group_id] :: MsgGroupMeta -> !Word8 -- | Status flags (reserved) [_msgGroupMeta_flags] :: MsgGroupMeta -> !Word8 -- | Size of list group_msgs [_msgGroupMeta_n_group_msgs] :: MsgGroupMeta -> !Word8 -- | An in-order list of message types included in the Solution Group, -- including GROUP_META itself [_msgGroupMeta_group_msgs] :: MsgGroupMeta -> ![Word16] msgSensorAidEvent_flags :: Lens' MsgSensorAidEvent Word32 msgSensorAidEvent_n_accepted_meas :: Lens' MsgSensorAidEvent Word8 msgSensorAidEvent_n_attempted_meas :: Lens' MsgSensorAidEvent Word8 msgSensorAidEvent_n_available_meas :: Lens' MsgSensorAidEvent Word8 msgSensorAidEvent_sensor_id :: Lens' MsgSensorAidEvent Word16 msgSensorAidEvent_sensor_state :: Lens' MsgSensorAidEvent Word8 msgSensorAidEvent_sensor_type :: Lens' MsgSensorAidEvent Word8 msgSensorAidEvent_time :: Lens' MsgSensorAidEvent Word32 msgGroupMeta :: Word16 msgGroupMeta_flags :: Lens' MsgGroupMeta Word8 msgGroupMeta_group_id :: Lens' MsgGroupMeta Word8 msgGroupMeta_group_msgs :: Lens' MsgGroupMeta [Word16] msgGroupMeta_n_group_msgs :: Lens' MsgGroupMeta Word8 instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.System.MsgGroupMeta instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.System.MsgGroupMeta instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.System.MsgGroupMeta instance GHC.Classes.Eq SwiftNav.SBP.System.MsgGroupMeta instance GHC.Read.Read SwiftNav.SBP.System.MsgGroupMeta instance GHC.Show.Show SwiftNav.SBP.System.MsgGroupMeta instance Data.Binary.Class.Binary SwiftNav.SBP.System.MsgGroupMeta instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.System.MsgSensorAidEvent instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.System.MsgSensorAidEvent instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.System.MsgSensorAidEvent instance GHC.Classes.Eq SwiftNav.SBP.System.MsgSensorAidEvent instance GHC.Read.Read SwiftNav.SBP.System.MsgSensorAidEvent instance GHC.Show.Show SwiftNav.SBP.System.MsgSensorAidEvent instance Data.Binary.Class.Binary SwiftNav.SBP.System.MsgSensorAidEvent instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.System.MsgPpsTime instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.System.MsgPpsTime instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.System.MsgPpsTime instance GHC.Classes.Eq SwiftNav.SBP.System.MsgPpsTime instance GHC.Read.Read SwiftNav.SBP.System.MsgPpsTime instance GHC.Show.Show SwiftNav.SBP.System.MsgPpsTime instance Data.Binary.Class.Binary SwiftNav.SBP.System.MsgPpsTime instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.System.MsgGnssTimeOffset instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.System.MsgGnssTimeOffset instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.System.MsgGnssTimeOffset instance GHC.Classes.Eq SwiftNav.SBP.System.MsgGnssTimeOffset instance GHC.Read.Read SwiftNav.SBP.System.MsgGnssTimeOffset instance GHC.Show.Show SwiftNav.SBP.System.MsgGnssTimeOffset instance Data.Binary.Class.Binary SwiftNav.SBP.System.MsgGnssTimeOffset instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.System.MsgInsUpdates instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.System.MsgInsUpdates instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.System.MsgInsUpdates instance GHC.Classes.Eq SwiftNav.SBP.System.MsgInsUpdates instance GHC.Read.Read SwiftNav.SBP.System.MsgInsUpdates instance GHC.Show.Show SwiftNav.SBP.System.MsgInsUpdates instance Data.Binary.Class.Binary SwiftNav.SBP.System.MsgInsUpdates instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.System.MsgCsacTelemetryLabels instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.System.MsgCsacTelemetryLabels instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.System.MsgCsacTelemetryLabels instance GHC.Classes.Eq SwiftNav.SBP.System.MsgCsacTelemetryLabels instance GHC.Read.Read SwiftNav.SBP.System.MsgCsacTelemetryLabels instance GHC.Show.Show SwiftNav.SBP.System.MsgCsacTelemetryLabels instance Data.Binary.Class.Binary SwiftNav.SBP.System.MsgCsacTelemetryLabels instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.System.MsgCsacTelemetry instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.System.MsgCsacTelemetry instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.System.MsgCsacTelemetry instance GHC.Classes.Eq SwiftNav.SBP.System.MsgCsacTelemetry instance GHC.Read.Read SwiftNav.SBP.System.MsgCsacTelemetry instance GHC.Show.Show SwiftNav.SBP.System.MsgCsacTelemetry instance Data.Binary.Class.Binary SwiftNav.SBP.System.MsgCsacTelemetry instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.System.MsgInsStatus instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.System.MsgInsStatus instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.System.MsgInsStatus instance GHC.Classes.Eq SwiftNav.SBP.System.MsgInsStatus instance GHC.Read.Read SwiftNav.SBP.System.MsgInsStatus instance GHC.Show.Show SwiftNav.SBP.System.MsgInsStatus instance Data.Binary.Class.Binary SwiftNav.SBP.System.MsgInsStatus instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.System.MsgStatusJournal instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.System.MsgStatusJournal instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.System.MsgStatusJournal instance GHC.Classes.Eq SwiftNav.SBP.System.MsgStatusJournal instance GHC.Read.Read SwiftNav.SBP.System.MsgStatusJournal instance GHC.Show.Show SwiftNav.SBP.System.MsgStatusJournal instance Data.Binary.Class.Binary SwiftNav.SBP.System.MsgStatusJournal instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.System.StatusJournalItem instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.System.StatusJournalItem instance GHC.Classes.Eq SwiftNav.SBP.System.StatusJournalItem instance GHC.Read.Read SwiftNav.SBP.System.StatusJournalItem instance GHC.Show.Show SwiftNav.SBP.System.StatusJournalItem instance Data.Binary.Class.Binary SwiftNav.SBP.System.StatusJournalItem instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.System.MsgStatusReport instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.System.MsgStatusReport instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.System.MsgStatusReport instance GHC.Classes.Eq SwiftNav.SBP.System.MsgStatusReport instance GHC.Read.Read SwiftNav.SBP.System.MsgStatusReport instance GHC.Show.Show SwiftNav.SBP.System.MsgStatusReport instance Data.Binary.Class.Binary SwiftNav.SBP.System.MsgStatusReport instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.System.SubSystemReport instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.System.SubSystemReport instance GHC.Classes.Eq SwiftNav.SBP.System.SubSystemReport instance GHC.Read.Read SwiftNav.SBP.System.SubSystemReport instance GHC.Show.Show SwiftNav.SBP.System.SubSystemReport instance Data.Binary.Class.Binary SwiftNav.SBP.System.SubSystemReport instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.System.MsgHeartbeat instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.System.MsgHeartbeat instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.System.MsgHeartbeat instance GHC.Classes.Eq SwiftNav.SBP.System.MsgHeartbeat instance GHC.Read.Read SwiftNav.SBP.System.MsgHeartbeat instance GHC.Show.Show SwiftNav.SBP.System.MsgHeartbeat instance Data.Binary.Class.Binary SwiftNav.SBP.System.MsgHeartbeat instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.System.MsgDgnssStatus instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.System.MsgDgnssStatus instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.System.MsgDgnssStatus instance GHC.Classes.Eq SwiftNav.SBP.System.MsgDgnssStatus instance GHC.Read.Read SwiftNav.SBP.System.MsgDgnssStatus instance GHC.Show.Show SwiftNav.SBP.System.MsgDgnssStatus instance Data.Binary.Class.Binary SwiftNav.SBP.System.MsgDgnssStatus instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.System.MsgStartup instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.System.MsgStartup instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.System.MsgStartup instance GHC.Classes.Eq SwiftNav.SBP.System.MsgStartup instance GHC.Read.Read SwiftNav.SBP.System.MsgStartup instance GHC.Show.Show SwiftNav.SBP.System.MsgStartup instance Data.Binary.Class.Binary SwiftNav.SBP.System.MsgStartup -- | < Standardized Metadata messages for Fuzed Solution from Swift -- Navigation devices. > module SwiftNav.SBP.SolutionMeta -- | SolutionInputType. -- -- Metadata describing which sensors were involved in the solution. The -- structure is fixed no matter what the actual sensor type is. The -- sensor_type field tells you which sensor we are talking about. It also -- tells you whether the sensor data was actually used or not. The flags -- field, always a u8, contains the sensor-specific data. The content of -- flags, for each sensor type, is described in the relevant structures -- in this section. data SolutionInputType SolutionInputType :: !Word8 -> !Word8 -> SolutionInputType -- | The type of sensor [_solutionInputType_sensor_type] :: SolutionInputType -> !Word8 -- | Refer to each InputType description [_solutionInputType_flags] :: SolutionInputType -> !Word8 -- | SBP class for message MSG_SOLN_META_DEP_A (0xFF0F). -- -- Deprecated. -- -- This message contains all metadata about the sensors received and/or -- used in computing the Fuzed Solution. It focuses primarily, but not -- only, on GNSS metadata. data MsgSolnMetaDepA MsgSolnMetaDepA :: !Word16 -> !Word16 -> !Word16 -> !Word8 -> !Word16 -> !Word8 -> !Word32 -> !Word32 -> ![SolutionInputType] -> MsgSolnMetaDepA -- | Position Dilution of Precision as per last available DOPS from PVT -- engine (0xFFFF indicates invalid) [_msgSolnMetaDepA_pdop] :: MsgSolnMetaDepA -> !Word16 -- | Horizontal Dilution of Precision as per last available DOPS from PVT -- engine (0xFFFF indicates invalid) [_msgSolnMetaDepA_hdop] :: MsgSolnMetaDepA -> !Word16 -- | Vertical Dilution of Precision as per last available DOPS from PVT -- engine (0xFFFF indicates invalid) [_msgSolnMetaDepA_vdop] :: MsgSolnMetaDepA -> !Word16 -- | Number of satellites as per last available solution from PVT engine [_msgSolnMetaDepA_n_sats] :: MsgSolnMetaDepA -> !Word8 -- | Age of corrections as per last available AGE_CORRECTIONS from PVT -- engine (0xFFFF indicates invalid) [_msgSolnMetaDepA_age_corrections] :: MsgSolnMetaDepA -> !Word16 -- | State of alignment and the status and receipt of the alignment inputs [_msgSolnMetaDepA_alignment_status] :: MsgSolnMetaDepA -> !Word8 -- | Tow of last-used GNSS position measurement [_msgSolnMetaDepA_last_used_gnss_pos_tow] :: MsgSolnMetaDepA -> !Word32 -- | Tow of last-used GNSS velocity measurement [_msgSolnMetaDepA_last_used_gnss_vel_tow] :: MsgSolnMetaDepA -> !Word32 -- | Array of Metadata describing the sensors potentially involved in the -- solution. Each element in the array represents a single sensor type -- and consists of flags containing (meta)data pertaining to that -- specific single sensor. Refer to each (XX)InputType descriptor in the -- present doc. [_msgSolnMetaDepA_sol_in] :: MsgSolnMetaDepA -> ![SolutionInputType] solutionInputType_flags :: Lens' SolutionInputType Word8 solutionInputType_sensor_type :: Lens' SolutionInputType Word8 msgSolnMetaDepA :: Word16 -- | SBP class for message MSG_SOLN_META (0xFF0E). -- -- This message contains all metadata about the sensors received and/or -- used in computing the sensorfusion solution. It focuses primarily, but -- not only, on GNSS metadata. Regarding the age of the last received -- valid GNSS solution, the highest two bits are time status, indicating -- whether age gnss can or can not be used to retrieve time of -- measurement (noted TOM, also known as time of validity) If it can, -- subtract 'age gnss' from tow in navigation messages to get -- TOM. Can be used before alignment is complete in the Fusion Engine, -- when output solution is the last received valid GNSS solution and its -- tow is not a TOM. data MsgSolnMeta MsgSolnMeta :: !Word32 -> !Word16 -> !Word16 -> !Word16 -> !Word16 -> !Word32 -> ![SolutionInputType] -> MsgSolnMeta -- | GPS time of week rounded to the nearest millisecond [_msgSolnMeta_tow] :: MsgSolnMeta -> !Word32 -- | Position Dilution of Precision as per last available DOPS from PVT -- engine (0xFFFF indicates invalid) [_msgSolnMeta_pdop] :: MsgSolnMeta -> !Word16 -- | Horizontal Dilution of Precision as per last available DOPS from PVT -- engine (0xFFFF indicates invalid) [_msgSolnMeta_hdop] :: MsgSolnMeta -> !Word16 -- | Vertical Dilution of Precision as per last available DOPS from PVT -- engine (0xFFFF indicates invalid) [_msgSolnMeta_vdop] :: MsgSolnMeta -> !Word16 -- | Age of corrections as per last available AGE_CORRECTIONS from PVT -- engine (0xFFFF indicates invalid) [_msgSolnMeta_age_corrections] :: MsgSolnMeta -> !Word16 -- | Age and Time Status of the last received valid GNSS solution. [_msgSolnMeta_age_gnss] :: MsgSolnMeta -> !Word32 -- | Array of Metadata describing the sensors potentially involved in the -- solution. Each element in the array represents a single sensor type -- and consists of flags containing (meta)data pertaining to that -- specific single sensor. Refer to each (XX)InputType descriptor in the -- present doc. [_msgSolnMeta_sol_in] :: MsgSolnMeta -> ![SolutionInputType] msgSolnMetaDepA_age_corrections :: Lens' MsgSolnMetaDepA Word16 msgSolnMetaDepA_alignment_status :: Lens' MsgSolnMetaDepA Word8 msgSolnMetaDepA_hdop :: Lens' MsgSolnMetaDepA Word16 msgSolnMetaDepA_last_used_gnss_pos_tow :: Lens' MsgSolnMetaDepA Word32 msgSolnMetaDepA_last_used_gnss_vel_tow :: Lens' MsgSolnMetaDepA Word32 msgSolnMetaDepA_n_sats :: Lens' MsgSolnMetaDepA Word8 msgSolnMetaDepA_pdop :: Lens' MsgSolnMetaDepA Word16 msgSolnMetaDepA_sol_in :: Lens' MsgSolnMetaDepA [SolutionInputType] msgSolnMetaDepA_vdop :: Lens' MsgSolnMetaDepA Word16 msgSolnMeta :: Word16 -- | GNSSInputType. -- -- Metadata around the GNSS sensors involved in the fuzed solution. -- Accessible through sol_in[N].flags in a MSG_SOLN_META. data GNSSInputType GNSSInputType :: !Word8 -> GNSSInputType -- | flags that store all relevant info specific to this sensor type. [_gNSSInputType_flags] :: GNSSInputType -> !Word8 msgSolnMeta_age_corrections :: Lens' MsgSolnMeta Word16 msgSolnMeta_age_gnss :: Lens' MsgSolnMeta Word32 msgSolnMeta_hdop :: Lens' MsgSolnMeta Word16 msgSolnMeta_pdop :: Lens' MsgSolnMeta Word16 msgSolnMeta_sol_in :: Lens' MsgSolnMeta [SolutionInputType] msgSolnMeta_tow :: Lens' MsgSolnMeta Word32 msgSolnMeta_vdop :: Lens' MsgSolnMeta Word16 -- | IMUInputType. -- -- Metadata around the IMU sensors involved in the fuzed solution. -- Accessible through sol_in[N].flags in a MSG_SOLN_META. data IMUInputType IMUInputType :: !Word8 -> IMUInputType -- | Instrument time, grade, and architecture for a sensor. [_iMUInputType_flags] :: IMUInputType -> !Word8 gNSSInputType_flags :: Iso' GNSSInputType Word8 -- | OdoInputType. -- -- Metadata around the Odometry sensors involved in the fuzed solution. -- Accessible through sol_in[N].flags in a MSG_SOLN_META. data OdoInputType OdoInputType :: !Word8 -> OdoInputType -- | Instrument ODO rate, grade, and quality. [_odoInputType_flags] :: OdoInputType -> !Word8 iMUInputType_flags :: Iso' IMUInputType Word8 odoInputType_flags :: Iso' OdoInputType Word8 instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.SolutionMeta.OdoInputType instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.SolutionMeta.OdoInputType instance GHC.Classes.Eq SwiftNav.SBP.SolutionMeta.OdoInputType instance GHC.Read.Read SwiftNav.SBP.SolutionMeta.OdoInputType instance GHC.Show.Show SwiftNav.SBP.SolutionMeta.OdoInputType instance Data.Binary.Class.Binary SwiftNav.SBP.SolutionMeta.OdoInputType instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.SolutionMeta.IMUInputType instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.SolutionMeta.IMUInputType instance GHC.Classes.Eq SwiftNav.SBP.SolutionMeta.IMUInputType instance GHC.Read.Read SwiftNav.SBP.SolutionMeta.IMUInputType instance GHC.Show.Show SwiftNav.SBP.SolutionMeta.IMUInputType instance Data.Binary.Class.Binary SwiftNav.SBP.SolutionMeta.IMUInputType instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.SolutionMeta.GNSSInputType instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.SolutionMeta.GNSSInputType instance GHC.Classes.Eq SwiftNav.SBP.SolutionMeta.GNSSInputType instance GHC.Read.Read SwiftNav.SBP.SolutionMeta.GNSSInputType instance GHC.Show.Show SwiftNav.SBP.SolutionMeta.GNSSInputType instance Data.Binary.Class.Binary SwiftNav.SBP.SolutionMeta.GNSSInputType instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.SolutionMeta.MsgSolnMeta instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.SolutionMeta.MsgSolnMeta instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.SolutionMeta.MsgSolnMeta instance GHC.Classes.Eq SwiftNav.SBP.SolutionMeta.MsgSolnMeta instance GHC.Read.Read SwiftNav.SBP.SolutionMeta.MsgSolnMeta instance GHC.Show.Show SwiftNav.SBP.SolutionMeta.MsgSolnMeta instance Data.Binary.Class.Binary SwiftNav.SBP.SolutionMeta.MsgSolnMeta instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.SolutionMeta.MsgSolnMetaDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.SolutionMeta.MsgSolnMetaDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.SolutionMeta.MsgSolnMetaDepA instance GHC.Classes.Eq SwiftNav.SBP.SolutionMeta.MsgSolnMetaDepA instance GHC.Read.Read SwiftNav.SBP.SolutionMeta.MsgSolnMetaDepA instance GHC.Show.Show SwiftNav.SBP.SolutionMeta.MsgSolnMetaDepA instance Data.Binary.Class.Binary SwiftNav.SBP.SolutionMeta.MsgSolnMetaDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.SolutionMeta.SolutionInputType instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.SolutionMeta.SolutionInputType instance GHC.Classes.Eq SwiftNav.SBP.SolutionMeta.SolutionInputType instance GHC.Read.Read SwiftNav.SBP.SolutionMeta.SolutionInputType instance GHC.Show.Show SwiftNav.SBP.SolutionMeta.SolutionInputType instance Data.Binary.Class.Binary SwiftNav.SBP.SolutionMeta.SolutionInputType -- | < Messages for reading, writing, and discovering device settings. -- Settings with a "string" field have multiple values in this field -- delimited with a null character (the c style null terminator). For -- instance, when querying the firmware_version setting in the -- system_info section, the following array of characters needs -- to be sent for the string field in MSG_SETTINGS_READ: -- "system_info0firmware_version0", where the delimiting null characters -- are specified with the escape sequence '0' and all quotation marks -- should be omitted. -- -- In the message descriptions below, the generic strings SECTION_SETTING -- and SETTING are used to refer to the two strings that comprise the -- identifier of an individual setting.In firmware_version example above, -- SECTION_SETTING is the system_info, and the SETTING portion -- is firmware_version. See the "Software Settings Manual" on -- support.swiftnav.com for detailed documentation about all settings and -- sections available for each Swift firmware version. Settings manuals -- are available for each firmware version at the following link: -- https://support.swiftnav.com/support/solutions/articles/44001850753-piksi-multi-specification. -- The latest settings document is also available at the following link: -- http://swiftnav.com/latest/piksi-multi-settings . See lastly -- https://github.com/swift-nav/piksi_tools/blob/master/piksi_tools/settings.py -- , the open source python command line utility for reading, writing, -- and saving settings in the piksi_tools repository on github as a -- helpful reference and example. > module SwiftNav.SBP.Settings -- | SBP class for message MSG_SETTINGS_SAVE (0x00A1). -- -- The save settings message persists the device's current settings -- configuration to its onboard flash memory file system. data MsgSettingsSave MsgSettingsSave :: MsgSettingsSave msgSettingsSave :: Word16 -- | SBP class for message MSG_SETTINGS_WRITE (0x00A0). -- -- The setting message writes the device configuration for a particular -- setting via A NULL-terminated and NULL-delimited string with contents -- SECTION_SETTING\0SETTING\0VALUE\0 where the '0' escape sequence -- denotes the NULL character and where quotation marks are omitted. A -- device will only process to this message when it is received from -- sender ID 0x42. An example string that could be sent to a device is -- "solution0soln_freq0100". data MsgSettingsWrite MsgSettingsWrite :: !Text -> MsgSettingsWrite -- | A NULL-terminated and NULL-delimited string with contents -- SECTION_SETTING\0SETTING\0VALUE\0 [_msgSettingsWrite_setting] :: MsgSettingsWrite -> !Text msgSettingsWrite :: Word16 -- | SBP class for message MSG_SETTINGS_WRITE_RESP (0x00AF). -- -- Return the status of a write request with the new value of the -- setting. If the requested value is rejected, the current value will be -- returned. The string field is a NULL-terminated and NULL-delimited -- string with contents SECTION_SETTING\0SETTING\0VALUE\0 where -- the '0' escape sequence denotes the NULL character and where quotation -- marks are omitted. An example string that could be sent from device is -- "solution0soln_freq0100". data MsgSettingsWriteResp MsgSettingsWriteResp :: !Word8 -> !Text -> MsgSettingsWriteResp -- | Write status [_msgSettingsWriteResp_status] :: MsgSettingsWriteResp -> !Word8 -- | A NULL-terminated and delimited string with contents -- SECTION_SETTING\0SETTING\0VALUE\0 [_msgSettingsWriteResp_setting] :: MsgSettingsWriteResp -> !Text msgSettingsWrite_setting :: Iso' MsgSettingsWrite Text msgSettingsWriteResp :: Word16 -- | SBP class for message MSG_SETTINGS_READ_REQ (0x00A4). -- -- The setting message that reads the device configuration. The string -- field is a NULL-terminated and NULL-delimited string with contents -- SECTION_SETTING\0SETTING\0 where the '0' escape sequence -- denotes the NULL character and where quotation marks are omitted. An -- example string that could be sent to a device is -- "solution0soln_freq0". A device will only respond to this message when -- it is received from sender ID 0x42. A device should respond with a -- MSG_SETTINGS_READ_RESP message (msg_id 0x00A5). data MsgSettingsReadReq MsgSettingsReadReq :: !Text -> MsgSettingsReadReq -- | A NULL-terminated and NULL-delimited string with contents -- SECTION_SETTING\0SETTING\0 [_msgSettingsReadReq_setting] :: MsgSettingsReadReq -> !Text msgSettingsWriteResp_setting :: Lens' MsgSettingsWriteResp Text msgSettingsWriteResp_status :: Lens' MsgSettingsWriteResp Word8 msgSettingsReadReq :: Word16 -- | SBP class for message MSG_SETTINGS_READ_RESP (0x00A5). -- -- The setting message with which the device responds after a -- MSG_SETTING_READ_REQ is sent to device. The string field is a NULL- -- terminated and NULL-delimited string with contents -- SECTION_SETTING\0SETTING\0VALUE\0 where the '0' escape sequence -- denotes the NULL character and where quotation marks are omitted. An -- example string that could be sent from device is -- "solution0soln_freq0100". data MsgSettingsReadResp MsgSettingsReadResp :: !Text -> MsgSettingsReadResp -- | A NULL-terminated and NULL-delimited string with contents -- SECTION_SETTING\0SETTING\0VALUE\0 [_msgSettingsReadResp_setting] :: MsgSettingsReadResp -> !Text msgSettingsReadReq_setting :: Iso' MsgSettingsReadReq Text msgSettingsReadResp :: Word16 -- | SBP class for message MSG_SETTINGS_READ_BY_INDEX_REQ (0x00A2). -- -- The settings message for iterating through the settings values. A -- device will respond to this message with a -- MSG_SETTINGS_READ_BY_INDEX_RESP. data MsgSettingsReadByIndexReq MsgSettingsReadByIndexReq :: !Word16 -> MsgSettingsReadByIndexReq -- | An index into the device settings, with values ranging from 0 to -- length(settings). [_msgSettingsReadByIndexReq_index] :: MsgSettingsReadByIndexReq -> !Word16 msgSettingsReadResp_setting :: Iso' MsgSettingsReadResp Text msgSettingsReadByIndexReq :: Word16 -- | SBP class for message MSG_SETTINGS_READ_BY_INDEX_RESP (0x00A7). -- -- The settings message that reports the value of a setting at an index. -- -- In the string field, it reports NULL-terminated and delimited string -- with contents SECTION_SETTING\0SETTING\0VALUE\0FORMAT_TYPE\0. -- where the '0' escape sequence denotes the NULL character and where -- quotation marks are omitted. The FORMAT_TYPE field is optional and -- denotes possible string values of the setting as a hint to the user. -- If included, the format type portion of the string has the format -- "enum:value1,value2,value3". An example string that could be sent from -- the device is "simulator0enabled0True0enum:True,False0". data MsgSettingsReadByIndexResp MsgSettingsReadByIndexResp :: !Word16 -> !Text -> MsgSettingsReadByIndexResp -- | An index into the device settings, with values ranging from 0 to -- length(settings) [_msgSettingsReadByIndexResp_index] :: MsgSettingsReadByIndexResp -> !Word16 -- | A NULL-terminated and delimited string with contents -- SECTION_SETTING\0SETTING\0VALUE\0FORMAT_TYPE\0 [_msgSettingsReadByIndexResp_setting] :: MsgSettingsReadByIndexResp -> !Text msgSettingsReadByIndexReq_index :: Iso' MsgSettingsReadByIndexReq Word16 msgSettingsReadByIndexResp :: Word16 -- | SBP class for message MSG_SETTINGS_READ_BY_INDEX_DONE (0x00A6). -- -- The settings message for indicating end of the settings values. data MsgSettingsReadByIndexDone MsgSettingsReadByIndexDone :: MsgSettingsReadByIndexDone msgSettingsReadByIndexResp_index :: Lens' MsgSettingsReadByIndexResp Word16 msgSettingsReadByIndexResp_setting :: Lens' MsgSettingsReadByIndexResp Text msgSettingsReadByIndexDone :: Word16 -- | SBP class for message MSG_SETTINGS_REGISTER (0x00AE). -- -- This message registers the presence and default value of a setting -- with a settings daemon. The host should reply with MSG_SETTINGS_WRITE -- for this setting to set the initial value. data MsgSettingsRegister MsgSettingsRegister :: !Text -> MsgSettingsRegister -- | A NULL-terminated and delimited string with contents -- SECTION_SETTING\0SETTING\0VALUE. [_msgSettingsRegister_setting] :: MsgSettingsRegister -> !Text msgSettingsRegister :: Word16 -- | SBP class for message MSG_SETTINGS_REGISTER_RESP (0x01AF). -- -- This message responds to setting registration with the effective -- value. The effective value shall differ from the given default value -- if setting was already registered or is available in the permanent -- setting storage and had a different value. data MsgSettingsRegisterResp MsgSettingsRegisterResp :: !Word8 -> !Text -> MsgSettingsRegisterResp -- | Register status [_msgSettingsRegisterResp_status] :: MsgSettingsRegisterResp -> !Word8 -- | A NULL-terminated and delimited string with contents -- SECTION_SETTING\0SETTING\0VALUE. The meaning of value is -- defined according to the status field. [_msgSettingsRegisterResp_setting] :: MsgSettingsRegisterResp -> !Text msgSettingsRegister_setting :: Iso' MsgSettingsRegister Text msgSettingsRegisterResp :: Word16 msgSettingsRegisterResp_setting :: Lens' MsgSettingsRegisterResp Text msgSettingsRegisterResp_status :: Lens' MsgSettingsRegisterResp Word8 instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Settings.MsgSettingsRegisterResp instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Settings.MsgSettingsRegisterResp instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Settings.MsgSettingsRegisterResp instance GHC.Classes.Eq SwiftNav.SBP.Settings.MsgSettingsRegisterResp instance GHC.Read.Read SwiftNav.SBP.Settings.MsgSettingsRegisterResp instance GHC.Show.Show SwiftNav.SBP.Settings.MsgSettingsRegisterResp instance Data.Binary.Class.Binary SwiftNav.SBP.Settings.MsgSettingsRegisterResp instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Settings.MsgSettingsRegister instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Settings.MsgSettingsRegister instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Settings.MsgSettingsRegister instance GHC.Classes.Eq SwiftNav.SBP.Settings.MsgSettingsRegister instance GHC.Read.Read SwiftNav.SBP.Settings.MsgSettingsRegister instance GHC.Show.Show SwiftNav.SBP.Settings.MsgSettingsRegister instance Data.Binary.Class.Binary SwiftNav.SBP.Settings.MsgSettingsRegister instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Settings.MsgSettingsReadByIndexDone instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Settings.MsgSettingsReadByIndexDone instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Settings.MsgSettingsReadByIndexDone instance GHC.Classes.Eq SwiftNav.SBP.Settings.MsgSettingsReadByIndexDone instance GHC.Read.Read SwiftNav.SBP.Settings.MsgSettingsReadByIndexDone instance GHC.Show.Show SwiftNav.SBP.Settings.MsgSettingsReadByIndexDone instance Data.Binary.Class.Binary SwiftNav.SBP.Settings.MsgSettingsReadByIndexDone instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Settings.MsgSettingsReadByIndexResp instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Settings.MsgSettingsReadByIndexResp instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Settings.MsgSettingsReadByIndexResp instance GHC.Classes.Eq SwiftNav.SBP.Settings.MsgSettingsReadByIndexResp instance GHC.Read.Read SwiftNav.SBP.Settings.MsgSettingsReadByIndexResp instance GHC.Show.Show SwiftNav.SBP.Settings.MsgSettingsReadByIndexResp instance Data.Binary.Class.Binary SwiftNav.SBP.Settings.MsgSettingsReadByIndexResp instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Settings.MsgSettingsReadByIndexReq instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Settings.MsgSettingsReadByIndexReq instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Settings.MsgSettingsReadByIndexReq instance GHC.Classes.Eq SwiftNav.SBP.Settings.MsgSettingsReadByIndexReq instance GHC.Read.Read SwiftNav.SBP.Settings.MsgSettingsReadByIndexReq instance GHC.Show.Show SwiftNav.SBP.Settings.MsgSettingsReadByIndexReq instance Data.Binary.Class.Binary SwiftNav.SBP.Settings.MsgSettingsReadByIndexReq instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Settings.MsgSettingsReadResp instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Settings.MsgSettingsReadResp instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Settings.MsgSettingsReadResp instance GHC.Classes.Eq SwiftNav.SBP.Settings.MsgSettingsReadResp instance GHC.Read.Read SwiftNav.SBP.Settings.MsgSettingsReadResp instance GHC.Show.Show SwiftNav.SBP.Settings.MsgSettingsReadResp instance Data.Binary.Class.Binary SwiftNav.SBP.Settings.MsgSettingsReadResp instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Settings.MsgSettingsReadReq instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Settings.MsgSettingsReadReq instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Settings.MsgSettingsReadReq instance GHC.Classes.Eq SwiftNav.SBP.Settings.MsgSettingsReadReq instance GHC.Read.Read SwiftNav.SBP.Settings.MsgSettingsReadReq instance GHC.Show.Show SwiftNav.SBP.Settings.MsgSettingsReadReq instance Data.Binary.Class.Binary SwiftNav.SBP.Settings.MsgSettingsReadReq instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Settings.MsgSettingsWriteResp instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Settings.MsgSettingsWriteResp instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Settings.MsgSettingsWriteResp instance GHC.Classes.Eq SwiftNav.SBP.Settings.MsgSettingsWriteResp instance GHC.Read.Read SwiftNav.SBP.Settings.MsgSettingsWriteResp instance GHC.Show.Show SwiftNav.SBP.Settings.MsgSettingsWriteResp instance Data.Binary.Class.Binary SwiftNav.SBP.Settings.MsgSettingsWriteResp instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Settings.MsgSettingsWrite instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Settings.MsgSettingsWrite instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Settings.MsgSettingsWrite instance GHC.Classes.Eq SwiftNav.SBP.Settings.MsgSettingsWrite instance GHC.Read.Read SwiftNav.SBP.Settings.MsgSettingsWrite instance GHC.Show.Show SwiftNav.SBP.Settings.MsgSettingsWrite instance Data.Binary.Class.Binary SwiftNav.SBP.Settings.MsgSettingsWrite instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Settings.MsgSettingsSave instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Settings.MsgSettingsSave instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Settings.MsgSettingsSave instance GHC.Classes.Eq SwiftNav.SBP.Settings.MsgSettingsSave instance GHC.Read.Read SwiftNav.SBP.Settings.MsgSettingsSave instance GHC.Show.Show SwiftNav.SBP.Settings.MsgSettingsSave instance Data.Binary.Class.Binary SwiftNav.SBP.Settings.MsgSettingsSave -- | < Geodetic navigation messages reporting GPS time, position, -- velocity, and baseline position solutions. For position solutions, -- these messages define several different position solutions: -- single-point (SPP), RTK, and pseudo- absolute position solutions. -- -- The SPP is the standalone, absolute GPS position solution using only a -- single receiver. The RTK solution is the differential GPS solution, -- which can use either a fixed/integer or floating carrier phase -- ambiguity. The pseudo-absolute position solution uses a user-provided, -- well-surveyed base station position (if available) and the RTK -- solution in tandem. -- -- When the inertial navigation mode indicates that the IMU is used, all -- messages are reported in the vehicle body frame as defined by device -- settings. By default, the vehicle body frame is configured to be -- coincident with the antenna phase center. When there is no inertial -- navigation, the solution will be reported at the phase center of the -- antenna. There is no inertial navigation capability on Piksi Multi or -- Duro. -- -- The tow field, when valid, is most often the Time of Measurement. When -- this is the case, the 5th bit of flags is set to the default value of -- 0. When this is not the case, the tow may be a time of arrival or a -- local system timestamp, irrespective of the time reference (GPS Week -- or else), but not a Time of Measurement. > module SwiftNav.SBP.Navigation -- | SBP class for message MSG_GPS_TIME (0x0102). -- -- This message reports the GPS time, representing the time since the GPS -- epoch began on midnight January 6, 1980 UTC. GPS time counts the weeks -- and seconds of the week. The weeks begin at the Saturday/Sunday -- transition. GPS week 0 began at the beginning of the GPS time scale. -- -- Within each week number, the GPS time of the week is between between 0 -- and 604800 seconds (=60*60*24*7). Note that GPS time does not -- accumulate leap seconds, and as of now, has a small offset from UTC. -- In a message stream, this message precedes a set of other navigation -- messages referenced to the same time (but lacking the ns field) and -- indicates a more precise time of these messages. data MsgGpsTime MsgGpsTime :: !Word16 -> !Word32 -> !Int32 -> !Word8 -> MsgGpsTime -- | GPS week number [_msgGpsTime_wn] :: MsgGpsTime -> !Word16 -- | GPS time of week rounded to the nearest millisecond [_msgGpsTime_tow] :: MsgGpsTime -> !Word32 -- | Nanosecond residual of millisecond-rounded TOW (ranges from -500000 to -- 500000) [_msgGpsTime_ns_residual] :: MsgGpsTime -> !Int32 -- | Status flags (reserved) [_msgGpsTime_flags] :: MsgGpsTime -> !Word8 msgGpsTime :: Word16 -- | SBP class for message MSG_GPS_TIME_GNSS (0x0104). -- -- This message reports the GPS time, representing the time since the GPS -- epoch began on midnight January 6, 1980 UTC. GPS time counts the weeks -- and seconds of the week. The weeks begin at the Saturday/Sunday -- transition. GPS week 0 began at the beginning of the GPS time scale. -- -- Within each week number, the GPS time of the week is between between 0 -- and 604800 seconds (=60*60*24*7). Note that GPS time does not -- accumulate leap seconds, and as of now, has a small offset from UTC. -- In a message stream, this message precedes a set of other navigation -- messages referenced to the same time (but lacking the ns field) and -- indicates a more precise time of these messages. data MsgGpsTimeGnss MsgGpsTimeGnss :: !Word16 -> !Word32 -> !Int32 -> !Word8 -> MsgGpsTimeGnss -- | GPS week number [_msgGpsTimeGnss_wn] :: MsgGpsTimeGnss -> !Word16 -- | GPS time of week rounded to the nearest millisecond [_msgGpsTimeGnss_tow] :: MsgGpsTimeGnss -> !Word32 -- | Nanosecond residual of millisecond-rounded TOW (ranges from -500000 to -- 500000) [_msgGpsTimeGnss_ns_residual] :: MsgGpsTimeGnss -> !Int32 -- | Status flags (reserved) [_msgGpsTimeGnss_flags] :: MsgGpsTimeGnss -> !Word8 msgGpsTime_flags :: Lens' MsgGpsTime Word8 msgGpsTime_ns_residual :: Lens' MsgGpsTime Int32 msgGpsTime_tow :: Lens' MsgGpsTime Word32 msgGpsTime_wn :: Lens' MsgGpsTime Word16 msgGpsTimeGnss :: Word16 -- | SBP class for message MSG_UTC_TIME (0x0103). -- -- This message reports the Universal Coordinated Time (UTC). Note the -- flags which indicate the source of the UTC offset value and source of -- the time fix. data MsgUtcTime MsgUtcTime :: !Word8 -> !Word32 -> !Word16 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> !Word32 -> MsgUtcTime -- | Indicates source and time validity [_msgUtcTime_flags] :: MsgUtcTime -> !Word8 -- | GPS time of week rounded to the nearest millisecond [_msgUtcTime_tow] :: MsgUtcTime -> !Word32 -- | Year [_msgUtcTime_year] :: MsgUtcTime -> !Word16 -- | Month (range 1 .. 12) [_msgUtcTime_month] :: MsgUtcTime -> !Word8 -- | days in the month (range 1-31) [_msgUtcTime_day] :: MsgUtcTime -> !Word8 -- | hours of day (range 0-23) [_msgUtcTime_hours] :: MsgUtcTime -> !Word8 -- | minutes of hour (range 0-59) [_msgUtcTime_minutes] :: MsgUtcTime -> !Word8 -- | seconds of minute (range 0-60) rounded down [_msgUtcTime_seconds] :: MsgUtcTime -> !Word8 -- | nanoseconds of second (range 0-999999999) [_msgUtcTime_ns] :: MsgUtcTime -> !Word32 msgGpsTimeGnss_flags :: Lens' MsgGpsTimeGnss Word8 msgGpsTimeGnss_ns_residual :: Lens' MsgGpsTimeGnss Int32 msgGpsTimeGnss_tow :: Lens' MsgGpsTimeGnss Word32 msgGpsTimeGnss_wn :: Lens' MsgGpsTimeGnss Word16 msgUtcTime :: Word16 -- | SBP class for message MSG_UTC_TIME_GNSS (0x0105). -- -- This message reports the Universal Coordinated Time (UTC). Note the -- flags which indicate the source of the UTC offset value and source of -- the time fix. data MsgUtcTimeGnss MsgUtcTimeGnss :: !Word8 -> !Word32 -> !Word16 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> !Word32 -> MsgUtcTimeGnss -- | Indicates source and time validity [_msgUtcTimeGnss_flags] :: MsgUtcTimeGnss -> !Word8 -- | GPS time of week rounded to the nearest millisecond [_msgUtcTimeGnss_tow] :: MsgUtcTimeGnss -> !Word32 -- | Year [_msgUtcTimeGnss_year] :: MsgUtcTimeGnss -> !Word16 -- | Month (range 1 .. 12) [_msgUtcTimeGnss_month] :: MsgUtcTimeGnss -> !Word8 -- | days in the month (range 1-31) [_msgUtcTimeGnss_day] :: MsgUtcTimeGnss -> !Word8 -- | hours of day (range 0-23) [_msgUtcTimeGnss_hours] :: MsgUtcTimeGnss -> !Word8 -- | minutes of hour (range 0-59) [_msgUtcTimeGnss_minutes] :: MsgUtcTimeGnss -> !Word8 -- | seconds of minute (range 0-60) rounded down [_msgUtcTimeGnss_seconds] :: MsgUtcTimeGnss -> !Word8 -- | nanoseconds of second (range 0-999999999) [_msgUtcTimeGnss_ns] :: MsgUtcTimeGnss -> !Word32 msgUtcTime_day :: Lens' MsgUtcTime Word8 msgUtcTime_flags :: Lens' MsgUtcTime Word8 msgUtcTime_hours :: Lens' MsgUtcTime Word8 msgUtcTime_minutes :: Lens' MsgUtcTime Word8 msgUtcTime_month :: Lens' MsgUtcTime Word8 msgUtcTime_ns :: Lens' MsgUtcTime Word32 msgUtcTime_seconds :: Lens' MsgUtcTime Word8 msgUtcTime_tow :: Lens' MsgUtcTime Word32 msgUtcTime_year :: Lens' MsgUtcTime Word16 msgUtcTimeGnss :: Word16 -- | SBP class for message MSG_DOPS (0x0208). -- -- This dilution of precision (DOP) message describes the effect of -- navigation satellite geometry on positional measurement precision. The -- flags field indicated whether the DOP reported corresponds to -- differential or SPP solution. data MsgDops MsgDops :: !Word32 -> !Word16 -> !Word16 -> !Word16 -> !Word16 -> !Word16 -> !Word8 -> MsgDops -- | GPS Time of Week [_msgDops_tow] :: MsgDops -> !Word32 -- | Geometric Dilution of Precision [_msgDops_gdop] :: MsgDops -> !Word16 -- | Position Dilution of Precision [_msgDops_pdop] :: MsgDops -> !Word16 -- | Time Dilution of Precision [_msgDops_tdop] :: MsgDops -> !Word16 -- | Horizontal Dilution of Precision [_msgDops_hdop] :: MsgDops -> !Word16 -- | Vertical Dilution of Precision [_msgDops_vdop] :: MsgDops -> !Word16 -- | Indicates the position solution with which the DOPS message -- corresponds [_msgDops_flags] :: MsgDops -> !Word8 msgUtcTimeGnss_day :: Lens' MsgUtcTimeGnss Word8 msgUtcTimeGnss_flags :: Lens' MsgUtcTimeGnss Word8 msgUtcTimeGnss_hours :: Lens' MsgUtcTimeGnss Word8 msgUtcTimeGnss_minutes :: Lens' MsgUtcTimeGnss Word8 msgUtcTimeGnss_month :: Lens' MsgUtcTimeGnss Word8 msgUtcTimeGnss_ns :: Lens' MsgUtcTimeGnss Word32 msgUtcTimeGnss_seconds :: Lens' MsgUtcTimeGnss Word8 msgUtcTimeGnss_tow :: Lens' MsgUtcTimeGnss Word32 msgUtcTimeGnss_year :: Lens' MsgUtcTimeGnss Word16 msgDops :: Word16 -- | SBP class for message MSG_POS_ECEF (0x0209). -- -- The position solution message reports absolute Earth Centered Earth -- Fixed (ECEF) coordinates and the status (single point vs -- pseudo-absolute RTK) of the position solution. If the rover receiver -- knows the surveyed position of the base station and has an RTK -- solution, this reports a pseudo-absolute position solution using the -- base station position and the rover's RTK baseline vector. The full -- GPS time is given by the preceding MSG_GPS_TIME with the matching -- time-of-week (tow). data MsgPosEcef MsgPosEcef :: !Word32 -> !Double -> !Double -> !Double -> !Word16 -> !Word8 -> !Word8 -> MsgPosEcef -- | GPS Time of Week [_msgPosEcef_tow] :: MsgPosEcef -> !Word32 -- | ECEF X coordinate [_msgPosEcef_x] :: MsgPosEcef -> !Double -- | ECEF Y coordinate [_msgPosEcef_y] :: MsgPosEcef -> !Double -- | ECEF Z coordinate [_msgPosEcef_z] :: MsgPosEcef -> !Double -- | Position estimated standard deviation [_msgPosEcef_accuracy] :: MsgPosEcef -> !Word16 -- | Number of satellites used in solution [_msgPosEcef_n_sats] :: MsgPosEcef -> !Word8 -- | Status flags [_msgPosEcef_flags] :: MsgPosEcef -> !Word8 msgDops_flags :: Lens' MsgDops Word8 msgDops_gdop :: Lens' MsgDops Word16 msgDops_hdop :: Lens' MsgDops Word16 msgDops_pdop :: Lens' MsgDops Word16 msgDops_tdop :: Lens' MsgDops Word16 msgDops_tow :: Lens' MsgDops Word32 msgDops_vdop :: Lens' MsgDops Word16 msgPosEcef :: Word16 -- | SBP class for message MSG_POS_ECEF_COV (0x0214). -- -- The position solution message reports absolute Earth Centered Earth -- Fixed (ECEF) coordinates and the status (single point vs -- pseudo-absolute RTK) of the position solution. The message also -- reports the upper triangular portion of the 3x3 covariance matrix. If -- the receiver knows the surveyed position of the base station and has -- an RTK solution, this reports a pseudo-absolute position solution -- using the base station position and the rover's RTK baseline vector. -- The full GPS time is given by the preceding MSG_GPS_TIME with the -- matching time-of-week (tow). data MsgPosEcefCov MsgPosEcefCov :: !Word32 -> !Double -> !Double -> !Double -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Word8 -> !Word8 -> MsgPosEcefCov -- | GPS Time of Week [_msgPosEcefCov_tow] :: MsgPosEcefCov -> !Word32 -- | ECEF X coordinate [_msgPosEcefCov_x] :: MsgPosEcefCov -> !Double -- | ECEF Y coordinate [_msgPosEcefCov_y] :: MsgPosEcefCov -> !Double -- | ECEF Z coordinate [_msgPosEcefCov_z] :: MsgPosEcefCov -> !Double -- | Estimated variance of x [_msgPosEcefCov_cov_x_x] :: MsgPosEcefCov -> !Float -- | Estimated covariance of x and y [_msgPosEcefCov_cov_x_y] :: MsgPosEcefCov -> !Float -- | Estimated covariance of x and z [_msgPosEcefCov_cov_x_z] :: MsgPosEcefCov -> !Float -- | Estimated variance of y [_msgPosEcefCov_cov_y_y] :: MsgPosEcefCov -> !Float -- | Estimated covariance of y and z [_msgPosEcefCov_cov_y_z] :: MsgPosEcefCov -> !Float -- | Estimated variance of z [_msgPosEcefCov_cov_z_z] :: MsgPosEcefCov -> !Float -- | Number of satellites used in solution [_msgPosEcefCov_n_sats] :: MsgPosEcefCov -> !Word8 -- | Status flags [_msgPosEcefCov_flags] :: MsgPosEcefCov -> !Word8 msgPosEcef_accuracy :: Lens' MsgPosEcef Word16 msgPosEcef_flags :: Lens' MsgPosEcef Word8 msgPosEcef_n_sats :: Lens' MsgPosEcef Word8 msgPosEcef_tow :: Lens' MsgPosEcef Word32 msgPosEcef_x :: Lens' MsgPosEcef Double msgPosEcef_y :: Lens' MsgPosEcef Double msgPosEcef_z :: Lens' MsgPosEcef Double msgPosEcefCov :: Word16 -- | SBP class for message MSG_POS_LLH (0x020A). -- -- This position solution message reports the absolute geodetic -- coordinates and the status (single point vs pseudo-absolute RTK) of -- the position solution. If the rover receiver knows the surveyed -- position of the base station and has an RTK solution, this reports a -- pseudo-absolute position solution using the base station position and -- the rover's RTK baseline vector. The full GPS time is given by the -- preceding MSG_GPS_TIME with the matching time-of-week (tow). data MsgPosLlh MsgPosLlh :: !Word32 -> !Double -> !Double -> !Double -> !Word16 -> !Word16 -> !Word8 -> !Word8 -> MsgPosLlh -- | GPS Time of Week [_msgPosLlh_tow] :: MsgPosLlh -> !Word32 -- | Latitude [_msgPosLlh_lat] :: MsgPosLlh -> !Double -- | Longitude [_msgPosLlh_lon] :: MsgPosLlh -> !Double -- | Height above WGS84 ellipsoid [_msgPosLlh_height] :: MsgPosLlh -> !Double -- | Horizontal position estimated standard deviation [_msgPosLlh_h_accuracy] :: MsgPosLlh -> !Word16 -- | Vertical position estimated standard deviation [_msgPosLlh_v_accuracy] :: MsgPosLlh -> !Word16 -- | Number of satellites used in solution. [_msgPosLlh_n_sats] :: MsgPosLlh -> !Word8 -- | Status flags [_msgPosLlh_flags] :: MsgPosLlh -> !Word8 msgPosEcefCov_cov_x_x :: Lens' MsgPosEcefCov Float msgPosEcefCov_cov_x_y :: Lens' MsgPosEcefCov Float msgPosEcefCov_cov_x_z :: Lens' MsgPosEcefCov Float msgPosEcefCov_cov_y_y :: Lens' MsgPosEcefCov Float msgPosEcefCov_cov_y_z :: Lens' MsgPosEcefCov Float msgPosEcefCov_cov_z_z :: Lens' MsgPosEcefCov Float msgPosEcefCov_flags :: Lens' MsgPosEcefCov Word8 msgPosEcefCov_n_sats :: Lens' MsgPosEcefCov Word8 msgPosEcefCov_tow :: Lens' MsgPosEcefCov Word32 msgPosEcefCov_x :: Lens' MsgPosEcefCov Double msgPosEcefCov_y :: Lens' MsgPosEcefCov Double msgPosEcefCov_z :: Lens' MsgPosEcefCov Double msgPosLlh :: Word16 -- | SBP class for message MSG_POS_LLH_COV (0x0211). -- -- This position solution message reports the absolute geodetic -- coordinates and the status (single point vs pseudo-absolute RTK) of -- the position solution as well as the upper triangle of the 3x3 -- covariance matrix. The position information and Fix Mode flags follow -- the MSG_POS_LLH message. Since the covariance matrix is computed in -- the local-level North, East, Down frame, the covariance terms follow -- that convention. Thus, covariances are reported against the "downward" -- measurement and care should be taken with the sign convention. data MsgPosLlhCov MsgPosLlhCov :: !Word32 -> !Double -> !Double -> !Double -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Word8 -> !Word8 -> MsgPosLlhCov -- | GPS Time of Week [_msgPosLlhCov_tow] :: MsgPosLlhCov -> !Word32 -- | Latitude [_msgPosLlhCov_lat] :: MsgPosLlhCov -> !Double -- | Longitude [_msgPosLlhCov_lon] :: MsgPosLlhCov -> !Double -- | Height above WGS84 ellipsoid [_msgPosLlhCov_height] :: MsgPosLlhCov -> !Double -- | Estimated variance of northing [_msgPosLlhCov_cov_n_n] :: MsgPosLlhCov -> !Float -- | Covariance of northing and easting [_msgPosLlhCov_cov_n_e] :: MsgPosLlhCov -> !Float -- | Covariance of northing and downward measurement [_msgPosLlhCov_cov_n_d] :: MsgPosLlhCov -> !Float -- | Estimated variance of easting [_msgPosLlhCov_cov_e_e] :: MsgPosLlhCov -> !Float -- | Covariance of easting and downward measurement [_msgPosLlhCov_cov_e_d] :: MsgPosLlhCov -> !Float -- | Estimated variance of downward measurement [_msgPosLlhCov_cov_d_d] :: MsgPosLlhCov -> !Float -- | Number of satellites used in solution. [_msgPosLlhCov_n_sats] :: MsgPosLlhCov -> !Word8 -- | Status flags [_msgPosLlhCov_flags] :: MsgPosLlhCov -> !Word8 msgPosLlh_flags :: Lens' MsgPosLlh Word8 msgPosLlh_h_accuracy :: Lens' MsgPosLlh Word16 msgPosLlh_height :: Lens' MsgPosLlh Double msgPosLlh_lat :: Lens' MsgPosLlh Double msgPosLlh_lon :: Lens' MsgPosLlh Double msgPosLlh_n_sats :: Lens' MsgPosLlh Word8 msgPosLlh_tow :: Lens' MsgPosLlh Word32 msgPosLlh_v_accuracy :: Lens' MsgPosLlh Word16 msgPosLlhCov :: Word16 data EstimatedHorizontalErrorEllipse EstimatedHorizontalErrorEllipse :: !Float -> !Float -> !Float -> EstimatedHorizontalErrorEllipse -- | The semi major axis of the estimated horizontal error ellipse at the -- user-configured confidence level; zero implies invalid. [_estimatedHorizontalErrorEllipse_semi_major] :: EstimatedHorizontalErrorEllipse -> !Float -- | The semi minor axis of the estimated horizontal error ellipse at the -- user-configured confidence level; zero implies invalid. [_estimatedHorizontalErrorEllipse_semi_minor] :: EstimatedHorizontalErrorEllipse -> !Float -- | The orientation of the semi major axis of the estimated horizontal -- error ellipse with respect to North. [_estimatedHorizontalErrorEllipse_orientation] :: EstimatedHorizontalErrorEllipse -> !Float msgPosLlhCov_cov_d_d :: Lens' MsgPosLlhCov Float msgPosLlhCov_cov_e_d :: Lens' MsgPosLlhCov Float msgPosLlhCov_cov_e_e :: Lens' MsgPosLlhCov Float msgPosLlhCov_cov_n_d :: Lens' MsgPosLlhCov Float msgPosLlhCov_cov_n_e :: Lens' MsgPosLlhCov Float msgPosLlhCov_cov_n_n :: Lens' MsgPosLlhCov Float msgPosLlhCov_flags :: Lens' MsgPosLlhCov Word8 msgPosLlhCov_height :: Lens' MsgPosLlhCov Double msgPosLlhCov_lat :: Lens' MsgPosLlhCov Double msgPosLlhCov_lon :: Lens' MsgPosLlhCov Double msgPosLlhCov_n_sats :: Lens' MsgPosLlhCov Word8 msgPosLlhCov_tow :: Lens' MsgPosLlhCov Word32 -- | SBP class for message MSG_POS_LLH_ACC (0x0218). -- -- This position solution message reports the absolute geodetic -- coordinates and the status (single point vs pseudo-absolute RTK) of -- the position solution as well as the estimated horizontal, vertical, -- cross-track and along-track errors. The position information and Fix -- Mode flags follow the MSG_POS_LLH message. Since the covariance matrix -- is computed in the local-level North, East, Down frame, the estimated -- error terms follow that convention. -- -- The estimated errors are reported at a user-configurable confidence -- level. The user-configured percentile is encoded in the percentile -- field. data MsgPosLlhAcc MsgPosLlhAcc :: !Word32 -> !Double -> !Double -> !Double -> !Double -> !Float -> !Float -> !Float -> !Float -> !EstimatedHorizontalErrorEllipse -> !Word8 -> !Word8 -> !Word8 -> MsgPosLlhAcc -- | GPS Time of Week [_msgPosLlhAcc_tow] :: MsgPosLlhAcc -> !Word32 -- | Latitude [_msgPosLlhAcc_lat] :: MsgPosLlhAcc -> !Double -- | Longitude [_msgPosLlhAcc_lon] :: MsgPosLlhAcc -> !Double -- | Height above WGS84 ellipsoid [_msgPosLlhAcc_height] :: MsgPosLlhAcc -> !Double -- | Height above the geoid (i.e. height above mean sea level). See -- confidence_and_geoid for geoid model used. [_msgPosLlhAcc_orthometric_height] :: MsgPosLlhAcc -> !Double -- | Estimated horizontal error at the user-configured confidence level; -- zero implies invalid. [_msgPosLlhAcc_h_accuracy] :: MsgPosLlhAcc -> !Float -- | Estimated vertical error at the user-configured confidence level; zero -- implies invalid. [_msgPosLlhAcc_v_accuracy] :: MsgPosLlhAcc -> !Float -- | Estimated cross-track error at the user-configured confidence level; -- zero implies invalid. [_msgPosLlhAcc_ct_accuracy] :: MsgPosLlhAcc -> !Float -- | Estimated along-track error at the user-configured confidence level; -- zero implies invalid. [_msgPosLlhAcc_at_accuracy] :: MsgPosLlhAcc -> !Float -- | The estimated horizontal error ellipse at the user-configured -- confidence level. [_msgPosLlhAcc_h_ellipse] :: MsgPosLlhAcc -> !EstimatedHorizontalErrorEllipse -- | The lower bits describe the configured confidence level for the -- estimated position error. The middle bits describe the geoid model -- used to calculate the orthometric height. [_msgPosLlhAcc_confidence_and_geoid] :: MsgPosLlhAcc -> !Word8 -- | Number of satellites used in solution. [_msgPosLlhAcc_n_sats] :: MsgPosLlhAcc -> !Word8 -- | Status flags [_msgPosLlhAcc_flags] :: MsgPosLlhAcc -> !Word8 estimatedHorizontalErrorEllipse_orientation :: Lens' EstimatedHorizontalErrorEllipse Float estimatedHorizontalErrorEllipse_semi_major :: Lens' EstimatedHorizontalErrorEllipse Float estimatedHorizontalErrorEllipse_semi_minor :: Lens' EstimatedHorizontalErrorEllipse Float msgPosLlhAcc :: Word16 -- | SBP class for message MSG_BASELINE_ECEF (0x020B). -- -- This message reports the baseline solution in Earth Centered Earth -- Fixed (ECEF) coordinates. This baseline is the relative vector -- distance from the base station to the rover receiver. The full GPS -- time is given by the preceding MSG_GPS_TIME with the matching -- time-of-week (tow). data MsgBaselineEcef MsgBaselineEcef :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Word16 -> !Word8 -> !Word8 -> MsgBaselineEcef -- | GPS Time of Week [_msgBaselineEcef_tow] :: MsgBaselineEcef -> !Word32 -- | Baseline ECEF X coordinate [_msgBaselineEcef_x] :: MsgBaselineEcef -> !Int32 -- | Baseline ECEF Y coordinate [_msgBaselineEcef_y] :: MsgBaselineEcef -> !Int32 -- | Baseline ECEF Z coordinate [_msgBaselineEcef_z] :: MsgBaselineEcef -> !Int32 -- | Position estimated standard deviation [_msgBaselineEcef_accuracy] :: MsgBaselineEcef -> !Word16 -- | Number of satellites used in solution [_msgBaselineEcef_n_sats] :: MsgBaselineEcef -> !Word8 -- | Status flags [_msgBaselineEcef_flags] :: MsgBaselineEcef -> !Word8 msgPosLlhAcc_at_accuracy :: Lens' MsgPosLlhAcc Float msgPosLlhAcc_confidence_and_geoid :: Lens' MsgPosLlhAcc Word8 msgPosLlhAcc_ct_accuracy :: Lens' MsgPosLlhAcc Float msgPosLlhAcc_flags :: Lens' MsgPosLlhAcc Word8 msgPosLlhAcc_h_accuracy :: Lens' MsgPosLlhAcc Float msgPosLlhAcc_h_ellipse :: Lens' MsgPosLlhAcc EstimatedHorizontalErrorEllipse msgPosLlhAcc_height :: Lens' MsgPosLlhAcc Double msgPosLlhAcc_lat :: Lens' MsgPosLlhAcc Double msgPosLlhAcc_lon :: Lens' MsgPosLlhAcc Double msgPosLlhAcc_n_sats :: Lens' MsgPosLlhAcc Word8 msgPosLlhAcc_orthometric_height :: Lens' MsgPosLlhAcc Double msgPosLlhAcc_tow :: Lens' MsgPosLlhAcc Word32 msgPosLlhAcc_v_accuracy :: Lens' MsgPosLlhAcc Float msgBaselineEcef :: Word16 -- | SBP class for message MSG_BASELINE_NED (0x020C). -- -- This message reports the baseline solution in North East Down (NED) -- coordinates. This baseline is the relative vector distance from the -- base station to the rover receiver, and NED coordinate system is -- defined at the local WGS84 tangent plane centered at the base station -- position. The full GPS time is given by the preceding MSG_GPS_TIME -- with the matching time-of- week (tow). data MsgBaselineNed MsgBaselineNed :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Word16 -> !Word16 -> !Word8 -> !Word8 -> MsgBaselineNed -- | GPS Time of Week [_msgBaselineNed_tow] :: MsgBaselineNed -> !Word32 -- | Baseline North coordinate [_msgBaselineNed_n] :: MsgBaselineNed -> !Int32 -- | Baseline East coordinate [_msgBaselineNed_e] :: MsgBaselineNed -> !Int32 -- | Baseline Down coordinate [_msgBaselineNed_d] :: MsgBaselineNed -> !Int32 -- | Horizontal position estimated standard deviation [_msgBaselineNed_h_accuracy] :: MsgBaselineNed -> !Word16 -- | Vertical position estimated standard deviation [_msgBaselineNed_v_accuracy] :: MsgBaselineNed -> !Word16 -- | Number of satellites used in solution [_msgBaselineNed_n_sats] :: MsgBaselineNed -> !Word8 -- | Status flags [_msgBaselineNed_flags] :: MsgBaselineNed -> !Word8 msgBaselineEcef_accuracy :: Lens' MsgBaselineEcef Word16 msgBaselineEcef_flags :: Lens' MsgBaselineEcef Word8 msgBaselineEcef_n_sats :: Lens' MsgBaselineEcef Word8 msgBaselineEcef_tow :: Lens' MsgBaselineEcef Word32 msgBaselineEcef_x :: Lens' MsgBaselineEcef Int32 msgBaselineEcef_y :: Lens' MsgBaselineEcef Int32 msgBaselineEcef_z :: Lens' MsgBaselineEcef Int32 msgBaselineNed :: Word16 -- | SBP class for message MSG_VEL_ECEF (0x020D). -- -- This message reports the velocity in Earth Centered Earth Fixed (ECEF) -- coordinates. The full GPS time is given by the preceding MSG_GPS_TIME -- with the matching time-of-week (tow). data MsgVelEcef MsgVelEcef :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Word16 -> !Word8 -> !Word8 -> MsgVelEcef -- | GPS Time of Week [_msgVelEcef_tow] :: MsgVelEcef -> !Word32 -- | Velocity ECEF X coordinate [_msgVelEcef_x] :: MsgVelEcef -> !Int32 -- | Velocity ECEF Y coordinate [_msgVelEcef_y] :: MsgVelEcef -> !Int32 -- | Velocity ECEF Z coordinate [_msgVelEcef_z] :: MsgVelEcef -> !Int32 -- | Velocity estimated standard deviation [_msgVelEcef_accuracy] :: MsgVelEcef -> !Word16 -- | Number of satellites used in solution [_msgVelEcef_n_sats] :: MsgVelEcef -> !Word8 -- | Status flags [_msgVelEcef_flags] :: MsgVelEcef -> !Word8 msgBaselineNed_d :: Lens' MsgBaselineNed Int32 msgBaselineNed_e :: Lens' MsgBaselineNed Int32 msgBaselineNed_flags :: Lens' MsgBaselineNed Word8 msgBaselineNed_h_accuracy :: Lens' MsgBaselineNed Word16 msgBaselineNed_n :: Lens' MsgBaselineNed Int32 msgBaselineNed_n_sats :: Lens' MsgBaselineNed Word8 msgBaselineNed_tow :: Lens' MsgBaselineNed Word32 msgBaselineNed_v_accuracy :: Lens' MsgBaselineNed Word16 msgVelEcef :: Word16 -- | SBP class for message MSG_VEL_ECEF_COV (0x0215). -- -- This message reports the velocity in Earth Centered Earth Fixed (ECEF) -- coordinates. The full GPS time is given by the preceding MSG_GPS_TIME -- with the matching time-of-week (tow). data MsgVelEcefCov MsgVelEcefCov :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Word8 -> !Word8 -> MsgVelEcefCov -- | GPS Time of Week [_msgVelEcefCov_tow] :: MsgVelEcefCov -> !Word32 -- | Velocity ECEF X coordinate [_msgVelEcefCov_x] :: MsgVelEcefCov -> !Int32 -- | Velocity ECEF Y coordinate [_msgVelEcefCov_y] :: MsgVelEcefCov -> !Int32 -- | Velocity ECEF Z coordinate [_msgVelEcefCov_z] :: MsgVelEcefCov -> !Int32 -- | Estimated variance of x [_msgVelEcefCov_cov_x_x] :: MsgVelEcefCov -> !Float -- | Estimated covariance of x and y [_msgVelEcefCov_cov_x_y] :: MsgVelEcefCov -> !Float -- | Estimated covariance of x and z [_msgVelEcefCov_cov_x_z] :: MsgVelEcefCov -> !Float -- | Estimated variance of y [_msgVelEcefCov_cov_y_y] :: MsgVelEcefCov -> !Float -- | Estimated covariance of y and z [_msgVelEcefCov_cov_y_z] :: MsgVelEcefCov -> !Float -- | Estimated variance of z [_msgVelEcefCov_cov_z_z] :: MsgVelEcefCov -> !Float -- | Number of satellites used in solution [_msgVelEcefCov_n_sats] :: MsgVelEcefCov -> !Word8 -- | Status flags [_msgVelEcefCov_flags] :: MsgVelEcefCov -> !Word8 msgVelEcef_accuracy :: Lens' MsgVelEcef Word16 msgVelEcef_flags :: Lens' MsgVelEcef Word8 msgVelEcef_n_sats :: Lens' MsgVelEcef Word8 msgVelEcef_tow :: Lens' MsgVelEcef Word32 msgVelEcef_x :: Lens' MsgVelEcef Int32 msgVelEcef_y :: Lens' MsgVelEcef Int32 msgVelEcef_z :: Lens' MsgVelEcef Int32 msgVelEcefCov :: Word16 -- | SBP class for message MSG_VEL_NED (0x020E). -- -- This message reports the velocity in local North East Down (NED) -- coordinates. The NED coordinate system is defined as the local WGS84 -- tangent plane centered at the current position. The full GPS time is -- given by the preceding MSG_GPS_TIME with the matching time-of-week -- (tow). data MsgVelNed MsgVelNed :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Word16 -> !Word16 -> !Word8 -> !Word8 -> MsgVelNed -- | GPS Time of Week [_msgVelNed_tow] :: MsgVelNed -> !Word32 -- | Velocity North coordinate [_msgVelNed_n] :: MsgVelNed -> !Int32 -- | Velocity East coordinate [_msgVelNed_e] :: MsgVelNed -> !Int32 -- | Velocity Down coordinate [_msgVelNed_d] :: MsgVelNed -> !Int32 -- | Horizontal velocity estimated standard deviation [_msgVelNed_h_accuracy] :: MsgVelNed -> !Word16 -- | Vertical velocity estimated standard deviation [_msgVelNed_v_accuracy] :: MsgVelNed -> !Word16 -- | Number of satellites used in solution [_msgVelNed_n_sats] :: MsgVelNed -> !Word8 -- | Status flags [_msgVelNed_flags] :: MsgVelNed -> !Word8 msgVelEcefCov_cov_x_x :: Lens' MsgVelEcefCov Float msgVelEcefCov_cov_x_y :: Lens' MsgVelEcefCov Float msgVelEcefCov_cov_x_z :: Lens' MsgVelEcefCov Float msgVelEcefCov_cov_y_y :: Lens' MsgVelEcefCov Float msgVelEcefCov_cov_y_z :: Lens' MsgVelEcefCov Float msgVelEcefCov_cov_z_z :: Lens' MsgVelEcefCov Float msgVelEcefCov_flags :: Lens' MsgVelEcefCov Word8 msgVelEcefCov_n_sats :: Lens' MsgVelEcefCov Word8 msgVelEcefCov_tow :: Lens' MsgVelEcefCov Word32 msgVelEcefCov_x :: Lens' MsgVelEcefCov Int32 msgVelEcefCov_y :: Lens' MsgVelEcefCov Int32 msgVelEcefCov_z :: Lens' MsgVelEcefCov Int32 msgVelNed :: Word16 -- | SBP class for message MSG_VEL_NED_COV (0x0212). -- -- This message reports the velocity in local North East Down (NED) -- coordinates. The NED coordinate system is defined as the local WGS84 -- tangent plane centered at the current position. The full GPS time is -- given by the preceding MSG_GPS_TIME with the matching time-of-week -- (tow). This message is similar to the MSG_VEL_NED, but it includes the -- upper triangular portion of the 3x3 covariance matrix. data MsgVelNedCov MsgVelNedCov :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Word8 -> !Word8 -> MsgVelNedCov -- | GPS Time of Week [_msgVelNedCov_tow] :: MsgVelNedCov -> !Word32 -- | Velocity North coordinate [_msgVelNedCov_n] :: MsgVelNedCov -> !Int32 -- | Velocity East coordinate [_msgVelNedCov_e] :: MsgVelNedCov -> !Int32 -- | Velocity Down coordinate [_msgVelNedCov_d] :: MsgVelNedCov -> !Int32 -- | Estimated variance of northward measurement [_msgVelNedCov_cov_n_n] :: MsgVelNedCov -> !Float -- | Covariance of northward and eastward measurement [_msgVelNedCov_cov_n_e] :: MsgVelNedCov -> !Float -- | Covariance of northward and downward measurement [_msgVelNedCov_cov_n_d] :: MsgVelNedCov -> !Float -- | Estimated variance of eastward measurement [_msgVelNedCov_cov_e_e] :: MsgVelNedCov -> !Float -- | Covariance of eastward and downward measurement [_msgVelNedCov_cov_e_d] :: MsgVelNedCov -> !Float -- | Estimated variance of downward measurement [_msgVelNedCov_cov_d_d] :: MsgVelNedCov -> !Float -- | Number of satellites used in solution [_msgVelNedCov_n_sats] :: MsgVelNedCov -> !Word8 -- | Status flags [_msgVelNedCov_flags] :: MsgVelNedCov -> !Word8 msgVelNed_d :: Lens' MsgVelNed Int32 msgVelNed_e :: Lens' MsgVelNed Int32 msgVelNed_flags :: Lens' MsgVelNed Word8 msgVelNed_h_accuracy :: Lens' MsgVelNed Word16 msgVelNed_n :: Lens' MsgVelNed Int32 msgVelNed_n_sats :: Lens' MsgVelNed Word8 msgVelNed_tow :: Lens' MsgVelNed Word32 msgVelNed_v_accuracy :: Lens' MsgVelNed Word16 msgVelNedCov :: Word16 -- | SBP class for message MSG_POS_ECEF_GNSS (0x0229). -- -- The position solution message reports absolute Earth Centered Earth -- Fixed (ECEF) coordinates and the status (single point vs -- pseudo-absolute RTK) of the position solution. If the rover receiver -- knows the surveyed position of the base station and has an RTK -- solution, this reports a pseudo-absolute position solution using the -- base station position and the rover's RTK baseline vector. The full -- GPS time is given by the preceding MSG_GPS_TIME with the matching -- time-of-week (tow). data MsgPosEcefGnss MsgPosEcefGnss :: !Word32 -> !Double -> !Double -> !Double -> !Word16 -> !Word8 -> !Word8 -> MsgPosEcefGnss -- | GPS Time of Week [_msgPosEcefGnss_tow] :: MsgPosEcefGnss -> !Word32 -- | ECEF X coordinate [_msgPosEcefGnss_x] :: MsgPosEcefGnss -> !Double -- | ECEF Y coordinate [_msgPosEcefGnss_y] :: MsgPosEcefGnss -> !Double -- | ECEF Z coordinate [_msgPosEcefGnss_z] :: MsgPosEcefGnss -> !Double -- | Position estimated standard deviation [_msgPosEcefGnss_accuracy] :: MsgPosEcefGnss -> !Word16 -- | Number of satellites used in solution [_msgPosEcefGnss_n_sats] :: MsgPosEcefGnss -> !Word8 -- | Status flags [_msgPosEcefGnss_flags] :: MsgPosEcefGnss -> !Word8 msgVelNedCov_cov_d_d :: Lens' MsgVelNedCov Float msgVelNedCov_cov_e_d :: Lens' MsgVelNedCov Float msgVelNedCov_cov_e_e :: Lens' MsgVelNedCov Float msgVelNedCov_cov_n_d :: Lens' MsgVelNedCov Float msgVelNedCov_cov_n_e :: Lens' MsgVelNedCov Float msgVelNedCov_cov_n_n :: Lens' MsgVelNedCov Float msgVelNedCov_d :: Lens' MsgVelNedCov Int32 msgVelNedCov_e :: Lens' MsgVelNedCov Int32 msgVelNedCov_flags :: Lens' MsgVelNedCov Word8 msgVelNedCov_n :: Lens' MsgVelNedCov Int32 msgVelNedCov_n_sats :: Lens' MsgVelNedCov Word8 msgVelNedCov_tow :: Lens' MsgVelNedCov Word32 msgPosEcefGnss :: Word16 -- | SBP class for message MSG_POS_ECEF_COV_GNSS (0x0234). -- -- The position solution message reports absolute Earth Centered Earth -- Fixed (ECEF) coordinates and the status (single point vs -- pseudo-absolute RTK) of the position solution. The message also -- reports the upper triangular portion of the 3x3 covariance matrix. If -- the receiver knows the surveyed position of the base station and has -- an RTK solution, this reports a pseudo-absolute position solution -- using the base station position and the rover's RTK baseline vector. -- The full GPS time is given by the preceding MSG_GPS_TIME with the -- matching time-of-week (tow). data MsgPosEcefCovGnss MsgPosEcefCovGnss :: !Word32 -> !Double -> !Double -> !Double -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Word8 -> !Word8 -> MsgPosEcefCovGnss -- | GPS Time of Week [_msgPosEcefCovGnss_tow] :: MsgPosEcefCovGnss -> !Word32 -- | ECEF X coordinate [_msgPosEcefCovGnss_x] :: MsgPosEcefCovGnss -> !Double -- | ECEF Y coordinate [_msgPosEcefCovGnss_y] :: MsgPosEcefCovGnss -> !Double -- | ECEF Z coordinate [_msgPosEcefCovGnss_z] :: MsgPosEcefCovGnss -> !Double -- | Estimated variance of x [_msgPosEcefCovGnss_cov_x_x] :: MsgPosEcefCovGnss -> !Float -- | Estimated covariance of x and y [_msgPosEcefCovGnss_cov_x_y] :: MsgPosEcefCovGnss -> !Float -- | Estimated covariance of x and z [_msgPosEcefCovGnss_cov_x_z] :: MsgPosEcefCovGnss -> !Float -- | Estimated variance of y [_msgPosEcefCovGnss_cov_y_y] :: MsgPosEcefCovGnss -> !Float -- | Estimated covariance of y and z [_msgPosEcefCovGnss_cov_y_z] :: MsgPosEcefCovGnss -> !Float -- | Estimated variance of z [_msgPosEcefCovGnss_cov_z_z] :: MsgPosEcefCovGnss -> !Float -- | Number of satellites used in solution [_msgPosEcefCovGnss_n_sats] :: MsgPosEcefCovGnss -> !Word8 -- | Status flags [_msgPosEcefCovGnss_flags] :: MsgPosEcefCovGnss -> !Word8 msgPosEcefGnss_accuracy :: Lens' MsgPosEcefGnss Word16 msgPosEcefGnss_flags :: Lens' MsgPosEcefGnss Word8 msgPosEcefGnss_n_sats :: Lens' MsgPosEcefGnss Word8 msgPosEcefGnss_tow :: Lens' MsgPosEcefGnss Word32 msgPosEcefGnss_x :: Lens' MsgPosEcefGnss Double msgPosEcefGnss_y :: Lens' MsgPosEcefGnss Double msgPosEcefGnss_z :: Lens' MsgPosEcefGnss Double msgPosEcefCovGnss :: Word16 -- | SBP class for message MSG_POS_LLH_GNSS (0x022A). -- -- This position solution message reports the absolute geodetic -- coordinates and the status (single point vs pseudo-absolute RTK) of -- the position solution. If the rover receiver knows the surveyed -- position of the base station and has an RTK solution, this reports a -- pseudo-absolute position solution using the base station position and -- the rover's RTK baseline vector. The full GPS time is given by the -- preceding MSG_GPS_TIME with the matching time-of-week (tow). data MsgPosLlhGnss MsgPosLlhGnss :: !Word32 -> !Double -> !Double -> !Double -> !Word16 -> !Word16 -> !Word8 -> !Word8 -> MsgPosLlhGnss -- | GPS Time of Week [_msgPosLlhGnss_tow] :: MsgPosLlhGnss -> !Word32 -- | Latitude [_msgPosLlhGnss_lat] :: MsgPosLlhGnss -> !Double -- | Longitude [_msgPosLlhGnss_lon] :: MsgPosLlhGnss -> !Double -- | Height above WGS84 ellipsoid [_msgPosLlhGnss_height] :: MsgPosLlhGnss -> !Double -- | Horizontal position estimated standard deviation [_msgPosLlhGnss_h_accuracy] :: MsgPosLlhGnss -> !Word16 -- | Vertical position estimated standard deviation [_msgPosLlhGnss_v_accuracy] :: MsgPosLlhGnss -> !Word16 -- | Number of satellites used in solution. [_msgPosLlhGnss_n_sats] :: MsgPosLlhGnss -> !Word8 -- | Status flags [_msgPosLlhGnss_flags] :: MsgPosLlhGnss -> !Word8 msgPosEcefCovGnss_cov_x_x :: Lens' MsgPosEcefCovGnss Float msgPosEcefCovGnss_cov_x_y :: Lens' MsgPosEcefCovGnss Float msgPosEcefCovGnss_cov_x_z :: Lens' MsgPosEcefCovGnss Float msgPosEcefCovGnss_cov_y_y :: Lens' MsgPosEcefCovGnss Float msgPosEcefCovGnss_cov_y_z :: Lens' MsgPosEcefCovGnss Float msgPosEcefCovGnss_cov_z_z :: Lens' MsgPosEcefCovGnss Float msgPosEcefCovGnss_flags :: Lens' MsgPosEcefCovGnss Word8 msgPosEcefCovGnss_n_sats :: Lens' MsgPosEcefCovGnss Word8 msgPosEcefCovGnss_tow :: Lens' MsgPosEcefCovGnss Word32 msgPosEcefCovGnss_x :: Lens' MsgPosEcefCovGnss Double msgPosEcefCovGnss_y :: Lens' MsgPosEcefCovGnss Double msgPosEcefCovGnss_z :: Lens' MsgPosEcefCovGnss Double msgPosLlhGnss :: Word16 -- | SBP class for message MSG_POS_LLH_COV_GNSS (0x0231). -- -- This position solution message reports the absolute geodetic -- coordinates and the status (single point vs pseudo-absolute RTK) of -- the position solution as well as the upper triangle of the 3x3 -- covariance matrix. The position information and Fix Mode flags should -- follow the MSG_POS_LLH message. Since the covariance matrix is -- computed in the local-level North, East, Down frame, the covariance -- terms follow with that convention. Thus, covariances are reported -- against the "downward" measurement and care should be taken with the -- sign convention. data MsgPosLlhCovGnss MsgPosLlhCovGnss :: !Word32 -> !Double -> !Double -> !Double -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Word8 -> !Word8 -> MsgPosLlhCovGnss -- | GPS Time of Week [_msgPosLlhCovGnss_tow] :: MsgPosLlhCovGnss -> !Word32 -- | Latitude [_msgPosLlhCovGnss_lat] :: MsgPosLlhCovGnss -> !Double -- | Longitude [_msgPosLlhCovGnss_lon] :: MsgPosLlhCovGnss -> !Double -- | Height above WGS84 ellipsoid [_msgPosLlhCovGnss_height] :: MsgPosLlhCovGnss -> !Double -- | Estimated variance of northing [_msgPosLlhCovGnss_cov_n_n] :: MsgPosLlhCovGnss -> !Float -- | Covariance of northing and easting [_msgPosLlhCovGnss_cov_n_e] :: MsgPosLlhCovGnss -> !Float -- | Covariance of northing and downward measurement [_msgPosLlhCovGnss_cov_n_d] :: MsgPosLlhCovGnss -> !Float -- | Estimated variance of easting [_msgPosLlhCovGnss_cov_e_e] :: MsgPosLlhCovGnss -> !Float -- | Covariance of easting and downward measurement [_msgPosLlhCovGnss_cov_e_d] :: MsgPosLlhCovGnss -> !Float -- | Estimated variance of downward measurement [_msgPosLlhCovGnss_cov_d_d] :: MsgPosLlhCovGnss -> !Float -- | Number of satellites used in solution. [_msgPosLlhCovGnss_n_sats] :: MsgPosLlhCovGnss -> !Word8 -- | Status flags [_msgPosLlhCovGnss_flags] :: MsgPosLlhCovGnss -> !Word8 msgPosLlhGnss_flags :: Lens' MsgPosLlhGnss Word8 msgPosLlhGnss_h_accuracy :: Lens' MsgPosLlhGnss Word16 msgPosLlhGnss_height :: Lens' MsgPosLlhGnss Double msgPosLlhGnss_lat :: Lens' MsgPosLlhGnss Double msgPosLlhGnss_lon :: Lens' MsgPosLlhGnss Double msgPosLlhGnss_n_sats :: Lens' MsgPosLlhGnss Word8 msgPosLlhGnss_tow :: Lens' MsgPosLlhGnss Word32 msgPosLlhGnss_v_accuracy :: Lens' MsgPosLlhGnss Word16 msgPosLlhCovGnss :: Word16 -- | SBP class for message MSG_VEL_ECEF_GNSS (0x022D). -- -- This message reports the velocity in Earth Centered Earth Fixed (ECEF) -- coordinates. The full GPS time is given by the preceding MSG_GPS_TIME -- with the matching time-of-week (tow). data MsgVelEcefGnss MsgVelEcefGnss :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Word16 -> !Word8 -> !Word8 -> MsgVelEcefGnss -- | GPS Time of Week [_msgVelEcefGnss_tow] :: MsgVelEcefGnss -> !Word32 -- | Velocity ECEF X coordinate [_msgVelEcefGnss_x] :: MsgVelEcefGnss -> !Int32 -- | Velocity ECEF Y coordinate [_msgVelEcefGnss_y] :: MsgVelEcefGnss -> !Int32 -- | Velocity ECEF Z coordinate [_msgVelEcefGnss_z] :: MsgVelEcefGnss -> !Int32 -- | Velocity estimated standard deviation [_msgVelEcefGnss_accuracy] :: MsgVelEcefGnss -> !Word16 -- | Number of satellites used in solution [_msgVelEcefGnss_n_sats] :: MsgVelEcefGnss -> !Word8 -- | Status flags [_msgVelEcefGnss_flags] :: MsgVelEcefGnss -> !Word8 msgPosLlhCovGnss_cov_d_d :: Lens' MsgPosLlhCovGnss Float msgPosLlhCovGnss_cov_e_d :: Lens' MsgPosLlhCovGnss Float msgPosLlhCovGnss_cov_e_e :: Lens' MsgPosLlhCovGnss Float msgPosLlhCovGnss_cov_n_d :: Lens' MsgPosLlhCovGnss Float msgPosLlhCovGnss_cov_n_e :: Lens' MsgPosLlhCovGnss Float msgPosLlhCovGnss_cov_n_n :: Lens' MsgPosLlhCovGnss Float msgPosLlhCovGnss_flags :: Lens' MsgPosLlhCovGnss Word8 msgPosLlhCovGnss_height :: Lens' MsgPosLlhCovGnss Double msgPosLlhCovGnss_lat :: Lens' MsgPosLlhCovGnss Double msgPosLlhCovGnss_lon :: Lens' MsgPosLlhCovGnss Double msgPosLlhCovGnss_n_sats :: Lens' MsgPosLlhCovGnss Word8 msgPosLlhCovGnss_tow :: Lens' MsgPosLlhCovGnss Word32 msgVelEcefGnss :: Word16 -- | SBP class for message MSG_VEL_ECEF_COV_GNSS (0x0235). -- -- This message reports the velocity in Earth Centered Earth Fixed (ECEF) -- coordinates. The full GPS time is given by the preceding MSG_GPS_TIME -- with the matching time-of-week (tow). data MsgVelEcefCovGnss MsgVelEcefCovGnss :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Word8 -> !Word8 -> MsgVelEcefCovGnss -- | GPS Time of Week [_msgVelEcefCovGnss_tow] :: MsgVelEcefCovGnss -> !Word32 -- | Velocity ECEF X coordinate [_msgVelEcefCovGnss_x] :: MsgVelEcefCovGnss -> !Int32 -- | Velocity ECEF Y coordinate [_msgVelEcefCovGnss_y] :: MsgVelEcefCovGnss -> !Int32 -- | Velocity ECEF Z coordinate [_msgVelEcefCovGnss_z] :: MsgVelEcefCovGnss -> !Int32 -- | Estimated variance of x [_msgVelEcefCovGnss_cov_x_x] :: MsgVelEcefCovGnss -> !Float -- | Estimated covariance of x and y [_msgVelEcefCovGnss_cov_x_y] :: MsgVelEcefCovGnss -> !Float -- | Estimated covariance of x and z [_msgVelEcefCovGnss_cov_x_z] :: MsgVelEcefCovGnss -> !Float -- | Estimated variance of y [_msgVelEcefCovGnss_cov_y_y] :: MsgVelEcefCovGnss -> !Float -- | Estimated covariance of y and z [_msgVelEcefCovGnss_cov_y_z] :: MsgVelEcefCovGnss -> !Float -- | Estimated variance of z [_msgVelEcefCovGnss_cov_z_z] :: MsgVelEcefCovGnss -> !Float -- | Number of satellites used in solution [_msgVelEcefCovGnss_n_sats] :: MsgVelEcefCovGnss -> !Word8 -- | Status flags [_msgVelEcefCovGnss_flags] :: MsgVelEcefCovGnss -> !Word8 msgVelEcefGnss_accuracy :: Lens' MsgVelEcefGnss Word16 msgVelEcefGnss_flags :: Lens' MsgVelEcefGnss Word8 msgVelEcefGnss_n_sats :: Lens' MsgVelEcefGnss Word8 msgVelEcefGnss_tow :: Lens' MsgVelEcefGnss Word32 msgVelEcefGnss_x :: Lens' MsgVelEcefGnss Int32 msgVelEcefGnss_y :: Lens' MsgVelEcefGnss Int32 msgVelEcefGnss_z :: Lens' MsgVelEcefGnss Int32 msgVelEcefCovGnss :: Word16 -- | SBP class for message MSG_VEL_NED_GNSS (0x022E). -- -- This message reports the velocity in local North East Down (NED) -- coordinates. The NED coordinate system is defined as the local WGS84 -- tangent plane centered at the current position. The full GPS time is -- given by the preceding MSG_GPS_TIME with the matching time-of-week -- (tow). data MsgVelNedGnss MsgVelNedGnss :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Word16 -> !Word16 -> !Word8 -> !Word8 -> MsgVelNedGnss -- | GPS Time of Week [_msgVelNedGnss_tow] :: MsgVelNedGnss -> !Word32 -- | Velocity North coordinate [_msgVelNedGnss_n] :: MsgVelNedGnss -> !Int32 -- | Velocity East coordinate [_msgVelNedGnss_e] :: MsgVelNedGnss -> !Int32 -- | Velocity Down coordinate [_msgVelNedGnss_d] :: MsgVelNedGnss -> !Int32 -- | Horizontal velocity estimated standard deviation [_msgVelNedGnss_h_accuracy] :: MsgVelNedGnss -> !Word16 -- | Vertical velocity estimated standard deviation [_msgVelNedGnss_v_accuracy] :: MsgVelNedGnss -> !Word16 -- | Number of satellites used in solution [_msgVelNedGnss_n_sats] :: MsgVelNedGnss -> !Word8 -- | Status flags [_msgVelNedGnss_flags] :: MsgVelNedGnss -> !Word8 msgVelEcefCovGnss_cov_x_x :: Lens' MsgVelEcefCovGnss Float msgVelEcefCovGnss_cov_x_y :: Lens' MsgVelEcefCovGnss Float msgVelEcefCovGnss_cov_x_z :: Lens' MsgVelEcefCovGnss Float msgVelEcefCovGnss_cov_y_y :: Lens' MsgVelEcefCovGnss Float msgVelEcefCovGnss_cov_y_z :: Lens' MsgVelEcefCovGnss Float msgVelEcefCovGnss_cov_z_z :: Lens' MsgVelEcefCovGnss Float msgVelEcefCovGnss_flags :: Lens' MsgVelEcefCovGnss Word8 msgVelEcefCovGnss_n_sats :: Lens' MsgVelEcefCovGnss Word8 msgVelEcefCovGnss_tow :: Lens' MsgVelEcefCovGnss Word32 msgVelEcefCovGnss_x :: Lens' MsgVelEcefCovGnss Int32 msgVelEcefCovGnss_y :: Lens' MsgVelEcefCovGnss Int32 msgVelEcefCovGnss_z :: Lens' MsgVelEcefCovGnss Int32 msgVelNedGnss :: Word16 -- | SBP class for message MSG_VEL_NED_COV_GNSS (0x0232). -- -- This message reports the velocity in local North East Down (NED) -- coordinates. The NED coordinate system is defined as the local WGS84 -- tangent plane centered at the current position. The full GPS time is -- given by the preceding MSG_GPS_TIME with the matching time-of-week -- (tow). This message is similar to the MSG_VEL_NED, but it includes the -- upper triangular portion of the 3x3 covariance matrix. data MsgVelNedCovGnss MsgVelNedCovGnss :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Word8 -> !Word8 -> MsgVelNedCovGnss -- | GPS Time of Week [_msgVelNedCovGnss_tow] :: MsgVelNedCovGnss -> !Word32 -- | Velocity North coordinate [_msgVelNedCovGnss_n] :: MsgVelNedCovGnss -> !Int32 -- | Velocity East coordinate [_msgVelNedCovGnss_e] :: MsgVelNedCovGnss -> !Int32 -- | Velocity Down coordinate [_msgVelNedCovGnss_d] :: MsgVelNedCovGnss -> !Int32 -- | Estimated variance of northward measurement [_msgVelNedCovGnss_cov_n_n] :: MsgVelNedCovGnss -> !Float -- | Covariance of northward and eastward measurement [_msgVelNedCovGnss_cov_n_e] :: MsgVelNedCovGnss -> !Float -- | Covariance of northward and downward measurement [_msgVelNedCovGnss_cov_n_d] :: MsgVelNedCovGnss -> !Float -- | Estimated variance of eastward measurement [_msgVelNedCovGnss_cov_e_e] :: MsgVelNedCovGnss -> !Float -- | Covariance of eastward and downward measurement [_msgVelNedCovGnss_cov_e_d] :: MsgVelNedCovGnss -> !Float -- | Estimated variance of downward measurement [_msgVelNedCovGnss_cov_d_d] :: MsgVelNedCovGnss -> !Float -- | Number of satellites used in solution [_msgVelNedCovGnss_n_sats] :: MsgVelNedCovGnss -> !Word8 -- | Status flags [_msgVelNedCovGnss_flags] :: MsgVelNedCovGnss -> !Word8 msgVelNedGnss_d :: Lens' MsgVelNedGnss Int32 msgVelNedGnss_e :: Lens' MsgVelNedGnss Int32 msgVelNedGnss_flags :: Lens' MsgVelNedGnss Word8 msgVelNedGnss_h_accuracy :: Lens' MsgVelNedGnss Word16 msgVelNedGnss_n :: Lens' MsgVelNedGnss Int32 msgVelNedGnss_n_sats :: Lens' MsgVelNedGnss Word8 msgVelNedGnss_tow :: Lens' MsgVelNedGnss Word32 msgVelNedGnss_v_accuracy :: Lens' MsgVelNedGnss Word16 msgVelNedCovGnss :: Word16 -- | SBP class for message MSG_VEL_BODY (0x0213). -- -- This message reports the velocity in the Vehicle Body Frame. By -- convention, the x-axis should point out the nose of the vehicle and -- represent the forward direction, while as the y-axis should point out -- the right hand side of the vehicle. Since this is a right handed -- system, z should point out the bottom of the vehicle. The orientation -- and origin of the Vehicle Body Frame are specified via the device -- settings. The full GPS time is given by the preceding MSG_GPS_TIME -- with the matching time-of-week (tow). This message is only produced by -- inertial versions of Swift products and is not available from Piksi -- Multi or Duro. data MsgVelBody MsgVelBody :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Word8 -> !Word8 -> MsgVelBody -- | GPS Time of Week [_msgVelBody_tow] :: MsgVelBody -> !Word32 -- | Velocity in x direction [_msgVelBody_x] :: MsgVelBody -> !Int32 -- | Velocity in y direction [_msgVelBody_y] :: MsgVelBody -> !Int32 -- | Velocity in z direction [_msgVelBody_z] :: MsgVelBody -> !Int32 -- | Estimated variance of x [_msgVelBody_cov_x_x] :: MsgVelBody -> !Float -- | Covariance of x and y [_msgVelBody_cov_x_y] :: MsgVelBody -> !Float -- | Covariance of x and z [_msgVelBody_cov_x_z] :: MsgVelBody -> !Float -- | Estimated variance of y [_msgVelBody_cov_y_y] :: MsgVelBody -> !Float -- | Covariance of y and z [_msgVelBody_cov_y_z] :: MsgVelBody -> !Float -- | Estimated variance of z [_msgVelBody_cov_z_z] :: MsgVelBody -> !Float -- | Number of satellites used in solution [_msgVelBody_n_sats] :: MsgVelBody -> !Word8 -- | Status flags [_msgVelBody_flags] :: MsgVelBody -> !Word8 msgVelNedCovGnss_cov_d_d :: Lens' MsgVelNedCovGnss Float msgVelNedCovGnss_cov_e_d :: Lens' MsgVelNedCovGnss Float msgVelNedCovGnss_cov_e_e :: Lens' MsgVelNedCovGnss Float msgVelNedCovGnss_cov_n_d :: Lens' MsgVelNedCovGnss Float msgVelNedCovGnss_cov_n_e :: Lens' MsgVelNedCovGnss Float msgVelNedCovGnss_cov_n_n :: Lens' MsgVelNedCovGnss Float msgVelNedCovGnss_d :: Lens' MsgVelNedCovGnss Int32 msgVelNedCovGnss_e :: Lens' MsgVelNedCovGnss Int32 msgVelNedCovGnss_flags :: Lens' MsgVelNedCovGnss Word8 msgVelNedCovGnss_n :: Lens' MsgVelNedCovGnss Int32 msgVelNedCovGnss_n_sats :: Lens' MsgVelNedCovGnss Word8 msgVelNedCovGnss_tow :: Lens' MsgVelNedCovGnss Word32 msgVelBody :: Word16 -- | SBP class for message MSG_VEL_COG (0x021C). -- -- This message reports the receiver course over ground (COG) and speed -- over ground (SOG) based on the horizontal (N-E) components of the NED -- velocity vector. It also includes the vertical velocity coordinate. A -- flag is provided to indicate whether the COG value has been frozen. -- When the flag is set to true, the COG field is set to its last valid -- value until the system exceeds a minimum velocity threshold. No other -- fields are affected by this flag. The NED coordinate system is defined -- as the local WGS84 tangent plane centered at the current position. The -- full GPS time is given by the preceding MSG_GPS_TIME with the matching -- time-of-week (tow). Note: course over ground represents the receiver's -- direction of travel, but not necessarily the device heading. data MsgVelCog MsgVelCog :: !Word32 -> !Word32 -> !Word32 -> !Int32 -> !Word32 -> !Word32 -> !Word32 -> !Word16 -> MsgVelCog -- | GPS Time of Week [_msgVelCog_tow] :: MsgVelCog -> !Word32 -- | Course over ground relative to north direction [_msgVelCog_cog] :: MsgVelCog -> !Word32 -- | Speed over ground (based on horizontal velocity) [_msgVelCog_sog] :: MsgVelCog -> !Word32 -- | Vertical velocity component (positive up) [_msgVelCog_v_up] :: MsgVelCog -> !Int32 -- | Course over ground estimated standard deviation [_msgVelCog_cog_accuracy] :: MsgVelCog -> !Word32 -- | Speed over ground estimated standard deviation [_msgVelCog_sog_accuracy] :: MsgVelCog -> !Word32 -- | Vertical velocity estimated standard deviation [_msgVelCog_v_up_accuracy] :: MsgVelCog -> !Word32 -- | Status flags [_msgVelCog_flags] :: MsgVelCog -> !Word16 msgVelBody_cov_x_x :: Lens' MsgVelBody Float msgVelBody_cov_x_y :: Lens' MsgVelBody Float msgVelBody_cov_x_z :: Lens' MsgVelBody Float msgVelBody_cov_y_y :: Lens' MsgVelBody Float msgVelBody_cov_y_z :: Lens' MsgVelBody Float msgVelBody_cov_z_z :: Lens' MsgVelBody Float msgVelBody_flags :: Lens' MsgVelBody Word8 msgVelBody_n_sats :: Lens' MsgVelBody Word8 msgVelBody_tow :: Lens' MsgVelBody Word32 msgVelBody_x :: Lens' MsgVelBody Int32 msgVelBody_y :: Lens' MsgVelBody Int32 msgVelBody_z :: Lens' MsgVelBody Int32 msgVelCog :: Word16 -- | SBP class for message MSG_AGE_CORRECTIONS (0x0210). -- -- This message reports the Age of the corrections used for the current -- Differential solution. data MsgAgeCorrections MsgAgeCorrections :: !Word32 -> !Word16 -> MsgAgeCorrections -- | GPS Time of Week [_msgAgeCorrections_tow] :: MsgAgeCorrections -> !Word32 -- | Age of the corrections (0xFFFF indicates invalid) [_msgAgeCorrections_age] :: MsgAgeCorrections -> !Word16 msgVelCog_cog :: Lens' MsgVelCog Word32 msgVelCog_cog_accuracy :: Lens' MsgVelCog Word32 msgVelCog_flags :: Lens' MsgVelCog Word16 msgVelCog_sog :: Lens' MsgVelCog Word32 msgVelCog_sog_accuracy :: Lens' MsgVelCog Word32 msgVelCog_tow :: Lens' MsgVelCog Word32 msgVelCog_v_up :: Lens' MsgVelCog Int32 msgVelCog_v_up_accuracy :: Lens' MsgVelCog Word32 msgAgeCorrections :: Word16 -- | SBP class for message MSG_GPS_TIME_DEP_A (0x0100). -- -- This message reports the GPS time, representing the time since the GPS -- epoch began on midnight January 6, 1980 UTC. GPS time counts the weeks -- and seconds of the week. The weeks begin at the Saturday/Sunday -- transition. GPS week 0 began at the beginning of the GPS time scale. -- -- Within each week number, the GPS time of the week is between between 0 -- and 604800 seconds (=60*60*24*7). Note that GPS time does not -- accumulate leap seconds, and as of now, has a small offset from UTC. -- In a message stream, this message precedes a set of other navigation -- messages referenced to the same time (but lacking the ns field) and -- indicates a more precise time of these messages. data MsgGpsTimeDepA MsgGpsTimeDepA :: !Word16 -> !Word32 -> !Int32 -> !Word8 -> MsgGpsTimeDepA -- | GPS week number [_msgGpsTimeDepA_wn] :: MsgGpsTimeDepA -> !Word16 -- | GPS time of week rounded to the nearest millisecond [_msgGpsTimeDepA_tow] :: MsgGpsTimeDepA -> !Word32 -- | Nanosecond residual of millisecond-rounded TOW (ranges from -500000 to -- 500000) [_msgGpsTimeDepA_ns_residual] :: MsgGpsTimeDepA -> !Int32 -- | Status flags (reserved) [_msgGpsTimeDepA_flags] :: MsgGpsTimeDepA -> !Word8 msgAgeCorrections_age :: Lens' MsgAgeCorrections Word16 msgAgeCorrections_tow :: Lens' MsgAgeCorrections Word32 msgGpsTimeDepA :: Word16 -- | SBP class for message MSG_DOPS_DEP_A (0x0206). -- -- This dilution of precision (DOP) message describes the effect of -- navigation satellite geometry on positional measurement precision. data MsgDopsDepA MsgDopsDepA :: !Word32 -> !Word16 -> !Word16 -> !Word16 -> !Word16 -> !Word16 -> MsgDopsDepA -- | GPS Time of Week [_msgDopsDepA_tow] :: MsgDopsDepA -> !Word32 -- | Geometric Dilution of Precision [_msgDopsDepA_gdop] :: MsgDopsDepA -> !Word16 -- | Position Dilution of Precision [_msgDopsDepA_pdop] :: MsgDopsDepA -> !Word16 -- | Time Dilution of Precision [_msgDopsDepA_tdop] :: MsgDopsDepA -> !Word16 -- | Horizontal Dilution of Precision [_msgDopsDepA_hdop] :: MsgDopsDepA -> !Word16 -- | Vertical Dilution of Precision [_msgDopsDepA_vdop] :: MsgDopsDepA -> !Word16 msgGpsTimeDepA_flags :: Lens' MsgGpsTimeDepA Word8 msgGpsTimeDepA_ns_residual :: Lens' MsgGpsTimeDepA Int32 msgGpsTimeDepA_tow :: Lens' MsgGpsTimeDepA Word32 msgGpsTimeDepA_wn :: Lens' MsgGpsTimeDepA Word16 msgDopsDepA :: Word16 -- | SBP class for message MSG_POS_ECEF_DEP_A (0x0200). -- -- The position solution message reports absolute Earth Centered Earth -- Fixed (ECEF) coordinates and the status (single point vs -- pseudo-absolute RTK) of the position solution. If the rover receiver -- knows the surveyed position of the base station and has an RTK -- solution, this reports a pseudo-absolute position solution using the -- base station position and the rover's RTK baseline vector. The full -- GPS time is given by the preceding MSG_GPS_TIME with the matching -- time-of-week (tow). data MsgPosEcefDepA MsgPosEcefDepA :: !Word32 -> !Double -> !Double -> !Double -> !Word16 -> !Word8 -> !Word8 -> MsgPosEcefDepA -- | GPS Time of Week [_msgPosEcefDepA_tow] :: MsgPosEcefDepA -> !Word32 -- | ECEF X coordinate [_msgPosEcefDepA_x] :: MsgPosEcefDepA -> !Double -- | ECEF Y coordinate [_msgPosEcefDepA_y] :: MsgPosEcefDepA -> !Double -- | ECEF Z coordinate [_msgPosEcefDepA_z] :: MsgPosEcefDepA -> !Double -- | Position accuracy estimate (not implemented). Defaults to 0. [_msgPosEcefDepA_accuracy] :: MsgPosEcefDepA -> !Word16 -- | Number of satellites used in solution [_msgPosEcefDepA_n_sats] :: MsgPosEcefDepA -> !Word8 -- | Status flags [_msgPosEcefDepA_flags] :: MsgPosEcefDepA -> !Word8 msgDopsDepA_gdop :: Lens' MsgDopsDepA Word16 msgDopsDepA_hdop :: Lens' MsgDopsDepA Word16 msgDopsDepA_pdop :: Lens' MsgDopsDepA Word16 msgDopsDepA_tdop :: Lens' MsgDopsDepA Word16 msgDopsDepA_tow :: Lens' MsgDopsDepA Word32 msgDopsDepA_vdop :: Lens' MsgDopsDepA Word16 msgPosEcefDepA :: Word16 -- | SBP class for message MSG_POS_LLH_DEP_A (0x0201). -- -- This position solution message reports the absolute geodetic -- coordinates and the status (single point vs pseudo-absolute RTK) of -- the position solution. If the rover receiver knows the surveyed -- position of the base station and has an RTK solution, this reports a -- pseudo-absolute position solution using the base station position and -- the rover's RTK baseline vector. The full GPS time is given by the -- preceding MSG_GPS_TIME with the matching time-of-week (tow). data MsgPosLlhDepA MsgPosLlhDepA :: !Word32 -> !Double -> !Double -> !Double -> !Word16 -> !Word16 -> !Word8 -> !Word8 -> MsgPosLlhDepA -- | GPS Time of Week [_msgPosLlhDepA_tow] :: MsgPosLlhDepA -> !Word32 -- | Latitude [_msgPosLlhDepA_lat] :: MsgPosLlhDepA -> !Double -- | Longitude [_msgPosLlhDepA_lon] :: MsgPosLlhDepA -> !Double -- | Height [_msgPosLlhDepA_height] :: MsgPosLlhDepA -> !Double -- | Horizontal position accuracy estimate (not implemented). Defaults to -- 0. [_msgPosLlhDepA_h_accuracy] :: MsgPosLlhDepA -> !Word16 -- | Vertical position accuracy estimate (not implemented). Defaults to 0. [_msgPosLlhDepA_v_accuracy] :: MsgPosLlhDepA -> !Word16 -- | Number of satellites used in solution. [_msgPosLlhDepA_n_sats] :: MsgPosLlhDepA -> !Word8 -- | Status flags [_msgPosLlhDepA_flags] :: MsgPosLlhDepA -> !Word8 msgPosEcefDepA_accuracy :: Lens' MsgPosEcefDepA Word16 msgPosEcefDepA_flags :: Lens' MsgPosEcefDepA Word8 msgPosEcefDepA_n_sats :: Lens' MsgPosEcefDepA Word8 msgPosEcefDepA_tow :: Lens' MsgPosEcefDepA Word32 msgPosEcefDepA_x :: Lens' MsgPosEcefDepA Double msgPosEcefDepA_y :: Lens' MsgPosEcefDepA Double msgPosEcefDepA_z :: Lens' MsgPosEcefDepA Double msgPosLlhDepA :: Word16 -- | SBP class for message MSG_BASELINE_ECEF_DEP_A (0x0202). -- -- This message reports the baseline solution in Earth Centered Earth -- Fixed (ECEF) coordinates. This baseline is the relative vector -- distance from the base station to the rover receiver. The full GPS -- time is given by the preceding MSG_GPS_TIME with the matching -- time-of-week (tow). data MsgBaselineEcefDepA MsgBaselineEcefDepA :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Word16 -> !Word8 -> !Word8 -> MsgBaselineEcefDepA -- | GPS Time of Week [_msgBaselineEcefDepA_tow] :: MsgBaselineEcefDepA -> !Word32 -- | Baseline ECEF X coordinate [_msgBaselineEcefDepA_x] :: MsgBaselineEcefDepA -> !Int32 -- | Baseline ECEF Y coordinate [_msgBaselineEcefDepA_y] :: MsgBaselineEcefDepA -> !Int32 -- | Baseline ECEF Z coordinate [_msgBaselineEcefDepA_z] :: MsgBaselineEcefDepA -> !Int32 -- | Position accuracy estimate [_msgBaselineEcefDepA_accuracy] :: MsgBaselineEcefDepA -> !Word16 -- | Number of satellites used in solution [_msgBaselineEcefDepA_n_sats] :: MsgBaselineEcefDepA -> !Word8 -- | Status flags [_msgBaselineEcefDepA_flags] :: MsgBaselineEcefDepA -> !Word8 msgPosLlhDepA_flags :: Lens' MsgPosLlhDepA Word8 msgPosLlhDepA_h_accuracy :: Lens' MsgPosLlhDepA Word16 msgPosLlhDepA_height :: Lens' MsgPosLlhDepA Double msgPosLlhDepA_lat :: Lens' MsgPosLlhDepA Double msgPosLlhDepA_lon :: Lens' MsgPosLlhDepA Double msgPosLlhDepA_n_sats :: Lens' MsgPosLlhDepA Word8 msgPosLlhDepA_tow :: Lens' MsgPosLlhDepA Word32 msgPosLlhDepA_v_accuracy :: Lens' MsgPosLlhDepA Word16 msgBaselineEcefDepA :: Word16 -- | SBP class for message MSG_BASELINE_NED_DEP_A (0x0203). -- -- This message reports the baseline solution in North East Down (NED) -- coordinates. This baseline is the relative vector distance from the -- base station to the rover receiver, and NED coordinate system is -- defined at the local WGS84 tangent plane centered at the base station -- position. The full GPS time is given by the preceding MSG_GPS_TIME -- with the matching time-of- week (tow). data MsgBaselineNedDepA MsgBaselineNedDepA :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Word16 -> !Word16 -> !Word8 -> !Word8 -> MsgBaselineNedDepA -- | GPS Time of Week [_msgBaselineNedDepA_tow] :: MsgBaselineNedDepA -> !Word32 -- | Baseline North coordinate [_msgBaselineNedDepA_n] :: MsgBaselineNedDepA -> !Int32 -- | Baseline East coordinate [_msgBaselineNedDepA_e] :: MsgBaselineNedDepA -> !Int32 -- | Baseline Down coordinate [_msgBaselineNedDepA_d] :: MsgBaselineNedDepA -> !Int32 -- | Horizontal position accuracy estimate (not implemented). Defaults to -- 0. [_msgBaselineNedDepA_h_accuracy] :: MsgBaselineNedDepA -> !Word16 -- | Vertical position accuracy estimate (not implemented). Defaults to 0. [_msgBaselineNedDepA_v_accuracy] :: MsgBaselineNedDepA -> !Word16 -- | Number of satellites used in solution [_msgBaselineNedDepA_n_sats] :: MsgBaselineNedDepA -> !Word8 -- | Status flags [_msgBaselineNedDepA_flags] :: MsgBaselineNedDepA -> !Word8 msgBaselineEcefDepA_accuracy :: Lens' MsgBaselineEcefDepA Word16 msgBaselineEcefDepA_flags :: Lens' MsgBaselineEcefDepA Word8 msgBaselineEcefDepA_n_sats :: Lens' MsgBaselineEcefDepA Word8 msgBaselineEcefDepA_tow :: Lens' MsgBaselineEcefDepA Word32 msgBaselineEcefDepA_x :: Lens' MsgBaselineEcefDepA Int32 msgBaselineEcefDepA_y :: Lens' MsgBaselineEcefDepA Int32 msgBaselineEcefDepA_z :: Lens' MsgBaselineEcefDepA Int32 msgBaselineNedDepA :: Word16 -- | SBP class for message MSG_VEL_ECEF_DEP_A (0x0204). -- -- This message reports the velocity in Earth Centered Earth Fixed (ECEF) -- coordinates. The full GPS time is given by the preceding MSG_GPS_TIME -- with the matching time-of-week (tow). data MsgVelEcefDepA MsgVelEcefDepA :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Word16 -> !Word8 -> !Word8 -> MsgVelEcefDepA -- | GPS Time of Week [_msgVelEcefDepA_tow] :: MsgVelEcefDepA -> !Word32 -- | Velocity ECEF X coordinate [_msgVelEcefDepA_x] :: MsgVelEcefDepA -> !Int32 -- | Velocity ECEF Y coordinate [_msgVelEcefDepA_y] :: MsgVelEcefDepA -> !Int32 -- | Velocity ECEF Z coordinate [_msgVelEcefDepA_z] :: MsgVelEcefDepA -> !Int32 -- | Velocity accuracy estimate (not implemented). Defaults to 0. [_msgVelEcefDepA_accuracy] :: MsgVelEcefDepA -> !Word16 -- | Number of satellites used in solution [_msgVelEcefDepA_n_sats] :: MsgVelEcefDepA -> !Word8 -- | Status flags (reserved) [_msgVelEcefDepA_flags] :: MsgVelEcefDepA -> !Word8 msgBaselineNedDepA_d :: Lens' MsgBaselineNedDepA Int32 msgBaselineNedDepA_e :: Lens' MsgBaselineNedDepA Int32 msgBaselineNedDepA_flags :: Lens' MsgBaselineNedDepA Word8 msgBaselineNedDepA_h_accuracy :: Lens' MsgBaselineNedDepA Word16 msgBaselineNedDepA_n :: Lens' MsgBaselineNedDepA Int32 msgBaselineNedDepA_n_sats :: Lens' MsgBaselineNedDepA Word8 msgBaselineNedDepA_tow :: Lens' MsgBaselineNedDepA Word32 msgBaselineNedDepA_v_accuracy :: Lens' MsgBaselineNedDepA Word16 msgVelEcefDepA :: Word16 -- | SBP class for message MSG_VEL_NED_DEP_A (0x0205). -- -- This message reports the velocity in local North East Down (NED) -- coordinates. The NED coordinate system is defined as the local WGS84 -- tangent plane centered at the current position. The full GPS time is -- given by the preceding MSG_GPS_TIME with the matching time-of-week -- (tow). data MsgVelNedDepA MsgVelNedDepA :: !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Word16 -> !Word16 -> !Word8 -> !Word8 -> MsgVelNedDepA -- | GPS Time of Week [_msgVelNedDepA_tow] :: MsgVelNedDepA -> !Word32 -- | Velocity North coordinate [_msgVelNedDepA_n] :: MsgVelNedDepA -> !Int32 -- | Velocity East coordinate [_msgVelNedDepA_e] :: MsgVelNedDepA -> !Int32 -- | Velocity Down coordinate [_msgVelNedDepA_d] :: MsgVelNedDepA -> !Int32 -- | Horizontal velocity accuracy estimate (not implemented). Defaults to -- 0. [_msgVelNedDepA_h_accuracy] :: MsgVelNedDepA -> !Word16 -- | Vertical velocity accuracy estimate (not implemented). Defaults to 0. [_msgVelNedDepA_v_accuracy] :: MsgVelNedDepA -> !Word16 -- | Number of satellites used in solution [_msgVelNedDepA_n_sats] :: MsgVelNedDepA -> !Word8 -- | Status flags (reserved) [_msgVelNedDepA_flags] :: MsgVelNedDepA -> !Word8 msgVelEcefDepA_accuracy :: Lens' MsgVelEcefDepA Word16 msgVelEcefDepA_flags :: Lens' MsgVelEcefDepA Word8 msgVelEcefDepA_n_sats :: Lens' MsgVelEcefDepA Word8 msgVelEcefDepA_tow :: Lens' MsgVelEcefDepA Word32 msgVelEcefDepA_x :: Lens' MsgVelEcefDepA Int32 msgVelEcefDepA_y :: Lens' MsgVelEcefDepA Int32 msgVelEcefDepA_z :: Lens' MsgVelEcefDepA Int32 msgVelNedDepA :: Word16 -- | SBP class for message MSG_BASELINE_HEADING_DEP_A (0x0207). -- -- This message reports the baseline heading pointing from the base -- station to the rover relative to True North. The full GPS time is -- given by the preceding MSG_GPS_TIME with the matching time-of-week -- (tow). data MsgBaselineHeadingDepA MsgBaselineHeadingDepA :: !Word32 -> !Word32 -> !Word8 -> !Word8 -> MsgBaselineHeadingDepA -- | GPS Time of Week [_msgBaselineHeadingDepA_tow] :: MsgBaselineHeadingDepA -> !Word32 -- | Heading [_msgBaselineHeadingDepA_heading] :: MsgBaselineHeadingDepA -> !Word32 -- | Number of satellites used in solution [_msgBaselineHeadingDepA_n_sats] :: MsgBaselineHeadingDepA -> !Word8 -- | Status flags [_msgBaselineHeadingDepA_flags] :: MsgBaselineHeadingDepA -> !Word8 msgVelNedDepA_d :: Lens' MsgVelNedDepA Int32 msgVelNedDepA_e :: Lens' MsgVelNedDepA Int32 msgVelNedDepA_flags :: Lens' MsgVelNedDepA Word8 msgVelNedDepA_h_accuracy :: Lens' MsgVelNedDepA Word16 msgVelNedDepA_n :: Lens' MsgVelNedDepA Int32 msgVelNedDepA_n_sats :: Lens' MsgVelNedDepA Word8 msgVelNedDepA_tow :: Lens' MsgVelNedDepA Word32 msgVelNedDepA_v_accuracy :: Lens' MsgVelNedDepA Word16 msgBaselineHeadingDepA :: Word16 -- | SBP class for message MSG_PROTECTION_LEVEL_DEP_A (0x0216). -- -- This message reports the local vertical and horizontal protection -- levels associated with a given LLH position solution. The full GPS -- time is given by the preceding MSG_GPS_TIME with the matching -- time-of-week (tow). data MsgProtectionLevelDepA MsgProtectionLevelDepA :: !Word32 -> !Word16 -> !Word16 -> !Double -> !Double -> !Double -> !Word8 -> MsgProtectionLevelDepA -- | GPS Time of Week [_msgProtectionLevelDepA_tow] :: MsgProtectionLevelDepA -> !Word32 -- | Vertical protection level [_msgProtectionLevelDepA_vpl] :: MsgProtectionLevelDepA -> !Word16 -- | Horizontal protection level [_msgProtectionLevelDepA_hpl] :: MsgProtectionLevelDepA -> !Word16 -- | Latitude [_msgProtectionLevelDepA_lat] :: MsgProtectionLevelDepA -> !Double -- | Longitude [_msgProtectionLevelDepA_lon] :: MsgProtectionLevelDepA -> !Double -- | Height [_msgProtectionLevelDepA_height] :: MsgProtectionLevelDepA -> !Double -- | Status flags [_msgProtectionLevelDepA_flags] :: MsgProtectionLevelDepA -> !Word8 msgBaselineHeadingDepA_flags :: Lens' MsgBaselineHeadingDepA Word8 msgBaselineHeadingDepA_heading :: Lens' MsgBaselineHeadingDepA Word32 msgBaselineHeadingDepA_n_sats :: Lens' MsgBaselineHeadingDepA Word8 msgBaselineHeadingDepA_tow :: Lens' MsgBaselineHeadingDepA Word32 msgProtectionLevelDepA :: Word16 -- | SBP class for message MSG_PROTECTION_LEVEL (0x0217). -- -- This message reports the protection levels associated to the given -- state estimate. The full GPS time is given by the preceding -- MSG_GPS_TIME with the matching time-of-week (tow). data MsgProtectionLevel MsgProtectionLevel :: !Word32 -> !Int16 -> !Word16 -> !Word16 -> !Word16 -> !Word16 -> !Word16 -> !Word16 -> !Word16 -> !Word16 -> !Word16 -> !Double -> !Double -> !Double -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> !Word32 -> MsgProtectionLevel -- | GPS Time of Week [_msgProtectionLevel_tow] :: MsgProtectionLevel -> !Word32 -- | GPS week number [_msgProtectionLevel_wn] :: MsgProtectionLevel -> !Int16 -- | Horizontal protection level [_msgProtectionLevel_hpl] :: MsgProtectionLevel -> !Word16 -- | Vertical protection level [_msgProtectionLevel_vpl] :: MsgProtectionLevel -> !Word16 -- | Along-track position error protection level [_msgProtectionLevel_atpl] :: MsgProtectionLevel -> !Word16 -- | Cross-track position error protection level [_msgProtectionLevel_ctpl] :: MsgProtectionLevel -> !Word16 -- | Protection level for the error vector between estimated and true -- along/cross track velocity vector [_msgProtectionLevel_hvpl] :: MsgProtectionLevel -> !Word16 -- | Protection level for the velocity in vehicle upright direction -- (different from vertical direction if on a slope) [_msgProtectionLevel_vvpl] :: MsgProtectionLevel -> !Word16 -- | Heading orientation protection level [_msgProtectionLevel_hopl] :: MsgProtectionLevel -> !Word16 -- | Pitch orientation protection level [_msgProtectionLevel_popl] :: MsgProtectionLevel -> !Word16 -- | Roll orientation protection level [_msgProtectionLevel_ropl] :: MsgProtectionLevel -> !Word16 -- | Latitude [_msgProtectionLevel_lat] :: MsgProtectionLevel -> !Double -- | Longitude [_msgProtectionLevel_lon] :: MsgProtectionLevel -> !Double -- | Height [_msgProtectionLevel_height] :: MsgProtectionLevel -> !Double -- | Velocity in vehicle x direction [_msgProtectionLevel_v_x] :: MsgProtectionLevel -> !Int32 -- | Velocity in vehicle y direction [_msgProtectionLevel_v_y] :: MsgProtectionLevel -> !Int32 -- | Velocity in vehicle z direction [_msgProtectionLevel_v_z] :: MsgProtectionLevel -> !Int32 -- | Roll angle [_msgProtectionLevel_roll] :: MsgProtectionLevel -> !Int32 -- | Pitch angle [_msgProtectionLevel_pitch] :: MsgProtectionLevel -> !Int32 -- | Heading angle [_msgProtectionLevel_heading] :: MsgProtectionLevel -> !Int32 -- | Status flags [_msgProtectionLevel_flags] :: MsgProtectionLevel -> !Word32 msgProtectionLevelDepA_flags :: Lens' MsgProtectionLevelDepA Word8 msgProtectionLevelDepA_height :: Lens' MsgProtectionLevelDepA Double msgProtectionLevelDepA_hpl :: Lens' MsgProtectionLevelDepA Word16 msgProtectionLevelDepA_lat :: Lens' MsgProtectionLevelDepA Double msgProtectionLevelDepA_lon :: Lens' MsgProtectionLevelDepA Double msgProtectionLevelDepA_tow :: Lens' MsgProtectionLevelDepA Word32 msgProtectionLevelDepA_vpl :: Lens' MsgProtectionLevelDepA Word16 msgProtectionLevel :: Word16 -- | SBP class for message MSG_GPS_LEAP_SECOND (0x023A). -- -- Emulates the GPS CNAV message, reserving bytes for future broadcast of -- the drift model parameters. data MsgGpsLeapSecond MsgGpsLeapSecond :: ![Word8] -> MsgGpsLeapSecond [_msgGpsLeapSecond_stub] :: MsgGpsLeapSecond -> ![Word8] msgProtectionLevel_atpl :: Lens' MsgProtectionLevel Word16 msgProtectionLevel_ctpl :: Lens' MsgProtectionLevel Word16 msgProtectionLevel_flags :: Lens' MsgProtectionLevel Word32 msgProtectionLevel_heading :: Lens' MsgProtectionLevel Int32 msgProtectionLevel_height :: Lens' MsgProtectionLevel Double msgProtectionLevel_hopl :: Lens' MsgProtectionLevel Word16 msgProtectionLevel_hpl :: Lens' MsgProtectionLevel Word16 msgProtectionLevel_hvpl :: Lens' MsgProtectionLevel Word16 msgProtectionLevel_lat :: Lens' MsgProtectionLevel Double msgProtectionLevel_lon :: Lens' MsgProtectionLevel Double msgProtectionLevel_pitch :: Lens' MsgProtectionLevel Int32 msgProtectionLevel_popl :: Lens' MsgProtectionLevel Word16 msgProtectionLevel_roll :: Lens' MsgProtectionLevel Int32 msgProtectionLevel_ropl :: Lens' MsgProtectionLevel Word16 msgProtectionLevel_tow :: Lens' MsgProtectionLevel Word32 msgProtectionLevel_v_x :: Lens' MsgProtectionLevel Int32 msgProtectionLevel_v_y :: Lens' MsgProtectionLevel Int32 msgProtectionLevel_v_z :: Lens' MsgProtectionLevel Int32 msgProtectionLevel_vpl :: Lens' MsgProtectionLevel Word16 msgProtectionLevel_vvpl :: Lens' MsgProtectionLevel Word16 msgProtectionLevel_wn :: Lens' MsgProtectionLevel Int16 msgGpsLeapSecond :: Word16 data MsgItrf MsgItrf :: ![Word8] -> MsgItrf [_msgItrf_stub] :: MsgItrf -> ![Word8] msgGpsLeapSecond_stub :: Iso' MsgGpsLeapSecond [Word8] msgItrf :: Word16 msgItrf_stub :: Iso' MsgItrf [Word8] instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgItrf instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgItrf instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgItrf instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgItrf instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgItrf instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgItrf instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgItrf instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgGpsLeapSecond instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgGpsLeapSecond instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgGpsLeapSecond instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgGpsLeapSecond instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgGpsLeapSecond instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgGpsLeapSecond instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgGpsLeapSecond instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgProtectionLevel instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgProtectionLevel instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgProtectionLevel instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgProtectionLevel instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgProtectionLevel instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgProtectionLevel instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgProtectionLevel instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgProtectionLevelDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgProtectionLevelDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgProtectionLevelDepA instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgProtectionLevelDepA instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgProtectionLevelDepA instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgProtectionLevelDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgProtectionLevelDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgBaselineHeadingDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgBaselineHeadingDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgBaselineHeadingDepA instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgBaselineHeadingDepA instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgBaselineHeadingDepA instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgBaselineHeadingDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgBaselineHeadingDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgVelNedDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgVelNedDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgVelNedDepA instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgVelNedDepA instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgVelNedDepA instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgVelNedDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgVelNedDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgVelEcefDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgVelEcefDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgVelEcefDepA instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgVelEcefDepA instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgVelEcefDepA instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgVelEcefDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgVelEcefDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgBaselineNedDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgBaselineNedDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgBaselineNedDepA instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgBaselineNedDepA instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgBaselineNedDepA instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgBaselineNedDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgBaselineNedDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgBaselineEcefDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgBaselineEcefDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgBaselineEcefDepA instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgBaselineEcefDepA instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgBaselineEcefDepA instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgBaselineEcefDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgBaselineEcefDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgPosLlhDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgPosLlhDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgPosLlhDepA instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgPosLlhDepA instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgPosLlhDepA instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgPosLlhDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgPosLlhDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgPosEcefDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgPosEcefDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgPosEcefDepA instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgPosEcefDepA instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgPosEcefDepA instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgPosEcefDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgPosEcefDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgDopsDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgDopsDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgDopsDepA instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgDopsDepA instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgDopsDepA instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgDopsDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgDopsDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgGpsTimeDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgGpsTimeDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgGpsTimeDepA instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgGpsTimeDepA instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgGpsTimeDepA instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgGpsTimeDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgGpsTimeDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgAgeCorrections instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgAgeCorrections instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgAgeCorrections instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgAgeCorrections instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgAgeCorrections instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgAgeCorrections instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgAgeCorrections instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgVelCog instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgVelCog instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgVelCog instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgVelCog instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgVelCog instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgVelCog instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgVelCog instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgVelBody instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgVelBody instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgVelBody instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgVelBody instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgVelBody instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgVelBody instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgVelBody instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgVelNedCovGnss instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgVelNedCovGnss instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgVelNedCovGnss instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgVelNedCovGnss instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgVelNedCovGnss instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgVelNedCovGnss instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgVelNedCovGnss instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgVelNedGnss instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgVelNedGnss instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgVelNedGnss instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgVelNedGnss instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgVelNedGnss instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgVelNedGnss instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgVelNedGnss instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgVelEcefCovGnss instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgVelEcefCovGnss instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgVelEcefCovGnss instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgVelEcefCovGnss instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgVelEcefCovGnss instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgVelEcefCovGnss instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgVelEcefCovGnss instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgVelEcefGnss instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgVelEcefGnss instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgVelEcefGnss instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgVelEcefGnss instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgVelEcefGnss instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgVelEcefGnss instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgVelEcefGnss instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgPosLlhCovGnss instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgPosLlhCovGnss instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgPosLlhCovGnss instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgPosLlhCovGnss instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgPosLlhCovGnss instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgPosLlhCovGnss instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgPosLlhCovGnss instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgPosLlhGnss instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgPosLlhGnss instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgPosLlhGnss instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgPosLlhGnss instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgPosLlhGnss instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgPosLlhGnss instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgPosLlhGnss instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgPosEcefCovGnss instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgPosEcefCovGnss instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgPosEcefCovGnss instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgPosEcefCovGnss instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgPosEcefCovGnss instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgPosEcefCovGnss instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgPosEcefCovGnss instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgPosEcefGnss instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgPosEcefGnss instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgPosEcefGnss instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgPosEcefGnss instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgPosEcefGnss instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgPosEcefGnss instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgPosEcefGnss instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgVelNedCov instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgVelNedCov instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgVelNedCov instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgVelNedCov instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgVelNedCov instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgVelNedCov instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgVelNedCov instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgVelNed instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgVelNed instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgVelNed instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgVelNed instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgVelNed instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgVelNed instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgVelNed instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgVelEcefCov instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgVelEcefCov instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgVelEcefCov instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgVelEcefCov instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgVelEcefCov instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgVelEcefCov instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgVelEcefCov instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgVelEcef instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgVelEcef instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgVelEcef instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgVelEcef instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgVelEcef instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgVelEcef instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgVelEcef instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgBaselineNed instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgBaselineNed instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgBaselineNed instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgBaselineNed instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgBaselineNed instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgBaselineNed instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgBaselineNed instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgBaselineEcef instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgBaselineEcef instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgBaselineEcef instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgBaselineEcef instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgBaselineEcef instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgBaselineEcef instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgBaselineEcef instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgPosLlhAcc instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgPosLlhAcc instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgPosLlhAcc instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgPosLlhAcc instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgPosLlhAcc instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgPosLlhAcc instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgPosLlhAcc instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.EstimatedHorizontalErrorEllipse instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.EstimatedHorizontalErrorEllipse instance GHC.Classes.Eq SwiftNav.SBP.Navigation.EstimatedHorizontalErrorEllipse instance GHC.Read.Read SwiftNav.SBP.Navigation.EstimatedHorizontalErrorEllipse instance GHC.Show.Show SwiftNav.SBP.Navigation.EstimatedHorizontalErrorEllipse instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.EstimatedHorizontalErrorEllipse instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgPosLlhCov instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgPosLlhCov instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgPosLlhCov instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgPosLlhCov instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgPosLlhCov instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgPosLlhCov instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgPosLlhCov instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgPosLlh instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgPosLlh instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgPosLlh instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgPosLlh instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgPosLlh instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgPosLlh instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgPosLlh instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgPosEcefCov instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgPosEcefCov instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgPosEcefCov instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgPosEcefCov instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgPosEcefCov instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgPosEcefCov instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgPosEcefCov instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgPosEcef instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgPosEcef instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgPosEcef instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgPosEcef instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgPosEcef instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgPosEcef instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgPosEcef instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgDops instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgDops instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgDops instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgDops instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgDops instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgDops instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgDops instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgUtcTimeGnss instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgUtcTimeGnss instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgUtcTimeGnss instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgUtcTimeGnss instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgUtcTimeGnss instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgUtcTimeGnss instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgUtcTimeGnss instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgUtcTime instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgUtcTime instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgUtcTime instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgUtcTime instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgUtcTime instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgUtcTime instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgUtcTime instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgGpsTimeGnss instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgGpsTimeGnss instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgGpsTimeGnss instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgGpsTimeGnss instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgGpsTimeGnss instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgGpsTimeGnss instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgGpsTimeGnss instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Navigation.MsgGpsTime instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Navigation.MsgGpsTime instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Navigation.MsgGpsTime instance GHC.Classes.Eq SwiftNav.SBP.Navigation.MsgGpsTime instance GHC.Read.Read SwiftNav.SBP.Navigation.MsgGpsTime instance GHC.Show.Show SwiftNav.SBP.Navigation.MsgGpsTime instance Data.Binary.Class.Binary SwiftNav.SBP.Navigation.MsgGpsTime -- | < Magnetometer (mag) messages. > module SwiftNav.SBP.Mag -- | SBP class for message MSG_MAG_RAW (0x0902). -- -- Raw data from the magnetometer. data MsgMagRaw MsgMagRaw :: !Word32 -> !Word8 -> !Int16 -> !Int16 -> !Int16 -> MsgMagRaw -- | Milliseconds since start of GPS week. If the high bit is set, the time -- is unknown or invalid. [_msgMagRaw_tow] :: MsgMagRaw -> !Word32 -- | Milliseconds since start of GPS week, fractional part [_msgMagRaw_tow_f] :: MsgMagRaw -> !Word8 -- | Magnetic field in the body frame X axis [_msgMagRaw_mag_x] :: MsgMagRaw -> !Int16 -- | Magnetic field in the body frame Y axis [_msgMagRaw_mag_y] :: MsgMagRaw -> !Int16 -- | Magnetic field in the body frame Z axis [_msgMagRaw_mag_z] :: MsgMagRaw -> !Int16 msgMagRaw :: Word16 msgMagRaw_mag_x :: Lens' MsgMagRaw Int16 msgMagRaw_mag_y :: Lens' MsgMagRaw Int16 msgMagRaw_mag_z :: Lens' MsgMagRaw Int16 msgMagRaw_tow :: Lens' MsgMagRaw Word32 msgMagRaw_tow_f :: Lens' MsgMagRaw Word8 instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Mag.MsgMagRaw instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Mag.MsgMagRaw instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Mag.MsgMagRaw instance GHC.Classes.Eq SwiftNav.SBP.Mag.MsgMagRaw instance GHC.Read.Read SwiftNav.SBP.Mag.MsgMagRaw instance GHC.Show.Show SwiftNav.SBP.Mag.MsgMagRaw instance Data.Binary.Class.Binary SwiftNav.SBP.Mag.MsgMagRaw -- | < Logging and debugging messages from the device. > module SwiftNav.SBP.Logging -- | SBP class for message MSG_LOG (0x0401). -- -- This message contains a human-readable payload string from the device -- containing errors, warnings and informational messages at ERROR, -- WARNING, DEBUG, INFO logging levels. data MsgLog MsgLog :: !Word8 -> !Text -> MsgLog -- | Logging level [_msgLog_level] :: MsgLog -> !Word8 -- | Human-readable string [_msgLog_text] :: MsgLog -> !Text msgLog :: Word16 -- | SBP class for message MSG_FWD (0x0402). -- -- This message provides the ability to forward messages over SBP. This -- may take the form of wrapping up SBP messages received by Piksi for -- logging purposes or wrapping another protocol with SBP. -- -- The source identifier indicates from what interface a forwarded stream -- derived. The protocol identifier identifies what the expected protocol -- the forwarded msg contains. Protocol 0 represents SBP and the -- remaining values are implementation defined. data MsgFwd MsgFwd :: !Word8 -> !Word8 -> ![Word8] -> MsgFwd -- | source identifier [_msgFwd_source] :: MsgFwd -> !Word8 -- | protocol identifier [_msgFwd_protocol] :: MsgFwd -> !Word8 -- | variable length wrapped binary message [_msgFwd_fwd_payload] :: MsgFwd -> ![Word8] msgLog_level :: Lens' MsgLog Word8 msgLog_text :: Lens' MsgLog Text msgFwd :: Word16 -- | SBP class for message MSG_PRINT_DEP (0x0010). -- -- Deprecated. data MsgPrintDep MsgPrintDep :: !Text -> MsgPrintDep -- | Human-readable string [_msgPrintDep_text] :: MsgPrintDep -> !Text msgFwd_fwd_payload :: Lens' MsgFwd [Word8] msgFwd_protocol :: Lens' MsgFwd Word8 msgFwd_source :: Lens' MsgFwd Word8 msgPrintDep :: Word16 msgPrintDep_text :: Iso' MsgPrintDep Text instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Logging.MsgPrintDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Logging.MsgPrintDep instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Logging.MsgPrintDep instance GHC.Classes.Eq SwiftNav.SBP.Logging.MsgPrintDep instance GHC.Read.Read SwiftNav.SBP.Logging.MsgPrintDep instance GHC.Show.Show SwiftNav.SBP.Logging.MsgPrintDep instance Data.Binary.Class.Binary SwiftNav.SBP.Logging.MsgPrintDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Logging.MsgFwd instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Logging.MsgFwd instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Logging.MsgFwd instance GHC.Classes.Eq SwiftNav.SBP.Logging.MsgFwd instance GHC.Read.Read SwiftNav.SBP.Logging.MsgFwd instance GHC.Show.Show SwiftNav.SBP.Logging.MsgFwd instance Data.Binary.Class.Binary SwiftNav.SBP.Logging.MsgFwd instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Logging.MsgLog instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Logging.MsgLog instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Logging.MsgLog instance GHC.Classes.Eq SwiftNav.SBP.Logging.MsgLog instance GHC.Read.Read SwiftNav.SBP.Logging.MsgLog instance GHC.Show.Show SwiftNav.SBP.Logging.MsgLog instance Data.Binary.Class.Binary SwiftNav.SBP.Logging.MsgLog -- | < Linux state monitoring. > module SwiftNav.SBP.Linux -- | SBP class for message MSG_LINUX_CPU_STATE_DEP_A (0x7F00). -- -- This message indicates the process state of the top 10 heaviest -- consumers of CPU on the system. data MsgLinuxCpuStateDepA MsgLinuxCpuStateDepA :: !Word8 -> !Word16 -> !Word8 -> !Text -> !Text -> MsgLinuxCpuStateDepA -- | sequence of this status message, values from 0-9 [_msgLinuxCpuStateDepA_index] :: MsgLinuxCpuStateDepA -> !Word8 -- | the PID of the process [_msgLinuxCpuStateDepA_pid] :: MsgLinuxCpuStateDepA -> !Word16 -- | percent of cpu used, expressed as a fraction of 256 [_msgLinuxCpuStateDepA_pcpu] :: MsgLinuxCpuStateDepA -> !Word8 -- | fixed length string representing the thread name [_msgLinuxCpuStateDepA_tname] :: MsgLinuxCpuStateDepA -> !Text -- | the command line (as much as it fits in the remaining packet) [_msgLinuxCpuStateDepA_cmdline] :: MsgLinuxCpuStateDepA -> !Text msgLinuxCpuStateDepA :: Word16 -- | SBP class for message MSG_LINUX_MEM_STATE_DEP_A (0x7F01). -- -- This message indicates the process state of the top 10 heaviest -- consumers of memory on the system. data MsgLinuxMemStateDepA MsgLinuxMemStateDepA :: !Word8 -> !Word16 -> !Word8 -> !Text -> !Text -> MsgLinuxMemStateDepA -- | sequence of this status message, values from 0-9 [_msgLinuxMemStateDepA_index] :: MsgLinuxMemStateDepA -> !Word8 -- | the PID of the process [_msgLinuxMemStateDepA_pid] :: MsgLinuxMemStateDepA -> !Word16 -- | percent of memory used, expressed as a fraction of 256 [_msgLinuxMemStateDepA_pmem] :: MsgLinuxMemStateDepA -> !Word8 -- | fixed length string representing the thread name [_msgLinuxMemStateDepA_tname] :: MsgLinuxMemStateDepA -> !Text -- | the command line (as much as it fits in the remaining packet) [_msgLinuxMemStateDepA_cmdline] :: MsgLinuxMemStateDepA -> !Text msgLinuxCpuStateDepA_cmdline :: Lens' MsgLinuxCpuStateDepA Text msgLinuxCpuStateDepA_index :: Lens' MsgLinuxCpuStateDepA Word8 msgLinuxCpuStateDepA_pcpu :: Lens' MsgLinuxCpuStateDepA Word8 msgLinuxCpuStateDepA_pid :: Lens' MsgLinuxCpuStateDepA Word16 msgLinuxCpuStateDepA_tname :: Lens' MsgLinuxCpuStateDepA Text msgLinuxMemStateDepA :: Word16 -- | SBP class for message MSG_LINUX_SYS_STATE_DEP_A (0x7F02). -- -- This presents a summary of CPU and memory utilization. data MsgLinuxSysStateDepA MsgLinuxSysStateDepA :: !Word16 -> !Word8 -> !Word8 -> !Word16 -> !Word16 -> !Word16 -> MsgLinuxSysStateDepA -- | total system memory [_msgLinuxSysStateDepA_mem_total] :: MsgLinuxSysStateDepA -> !Word16 -- | percent of total cpu currently utilized [_msgLinuxSysStateDepA_pcpu] :: MsgLinuxSysStateDepA -> !Word8 -- | percent of total memory currently utilized [_msgLinuxSysStateDepA_pmem] :: MsgLinuxSysStateDepA -> !Word8 -- | number of processes that started during collection phase [_msgLinuxSysStateDepA_procs_starting] :: MsgLinuxSysStateDepA -> !Word16 -- | number of processes that stopped during collection phase [_msgLinuxSysStateDepA_procs_stopping] :: MsgLinuxSysStateDepA -> !Word16 -- | the count of processes on the system [_msgLinuxSysStateDepA_pid_count] :: MsgLinuxSysStateDepA -> !Word16 msgLinuxMemStateDepA_cmdline :: Lens' MsgLinuxMemStateDepA Text msgLinuxMemStateDepA_index :: Lens' MsgLinuxMemStateDepA Word8 msgLinuxMemStateDepA_pid :: Lens' MsgLinuxMemStateDepA Word16 msgLinuxMemStateDepA_pmem :: Lens' MsgLinuxMemStateDepA Word8 msgLinuxMemStateDepA_tname :: Lens' MsgLinuxMemStateDepA Text msgLinuxSysStateDepA :: Word16 -- | SBP class for message MSG_LINUX_PROCESS_SOCKET_COUNTS (0x7F03). -- -- Top 10 list of processes with high socket counts. data MsgLinuxProcessSocketCounts MsgLinuxProcessSocketCounts :: !Word8 -> !Word16 -> !Word16 -> !Word16 -> !Word16 -> !Text -> MsgLinuxProcessSocketCounts -- | sequence of this status message, values from 0-9 [_msgLinuxProcessSocketCounts_index] :: MsgLinuxProcessSocketCounts -> !Word8 -- | the PID of the process in question [_msgLinuxProcessSocketCounts_pid] :: MsgLinuxProcessSocketCounts -> !Word16 -- | the number of sockets the process is using [_msgLinuxProcessSocketCounts_socket_count] :: MsgLinuxProcessSocketCounts -> !Word16 -- | A bitfield indicating the socket types used: 0x1 (tcp), 0x2 (udp), 0x4 -- (unix stream), 0x8 (unix dgram), 0x10 (netlink), and 0x8000 (unknown) [_msgLinuxProcessSocketCounts_socket_types] :: MsgLinuxProcessSocketCounts -> !Word16 -- | A bitfield indicating the socket states: 0x1 (established), 0x2 (syn- -- sent), 0x4 (syn-recv), 0x8 (fin-wait-1), 0x10 (fin-wait-2), 0x20 -- (time- wait), 0x40 (closed), 0x80 (close-wait), 0x100 (last-ack), -- 0x200 (listen), 0x400 (closing), 0x800 (unconnected), and 0x8000 -- (unknown) [_msgLinuxProcessSocketCounts_socket_states] :: MsgLinuxProcessSocketCounts -> !Word16 -- | the command line of the process in question [_msgLinuxProcessSocketCounts_cmdline] :: MsgLinuxProcessSocketCounts -> !Text msgLinuxSysStateDepA_mem_total :: Lens' MsgLinuxSysStateDepA Word16 msgLinuxSysStateDepA_pcpu :: Lens' MsgLinuxSysStateDepA Word8 msgLinuxSysStateDepA_pid_count :: Lens' MsgLinuxSysStateDepA Word16 msgLinuxSysStateDepA_pmem :: Lens' MsgLinuxSysStateDepA Word8 msgLinuxSysStateDepA_procs_starting :: Lens' MsgLinuxSysStateDepA Word16 msgLinuxSysStateDepA_procs_stopping :: Lens' MsgLinuxSysStateDepA Word16 msgLinuxProcessSocketCounts :: Word16 -- | SBP class for message MSG_LINUX_PROCESS_SOCKET_QUEUES (0x7F04). -- -- Top 10 list of sockets with deep queues. data MsgLinuxProcessSocketQueues MsgLinuxProcessSocketQueues :: !Word8 -> !Word16 -> !Word16 -> !Word16 -> !Word16 -> !Word16 -> !Text -> !Text -> MsgLinuxProcessSocketQueues -- | sequence of this status message, values from 0-9 [_msgLinuxProcessSocketQueues_index] :: MsgLinuxProcessSocketQueues -> !Word8 -- | the PID of the process in question [_msgLinuxProcessSocketQueues_pid] :: MsgLinuxProcessSocketQueues -> !Word16 -- | the total amount of receive data queued for this process [_msgLinuxProcessSocketQueues_recv_queued] :: MsgLinuxProcessSocketQueues -> !Word16 -- | the total amount of send data queued for this process [_msgLinuxProcessSocketQueues_send_queued] :: MsgLinuxProcessSocketQueues -> !Word16 -- | A bitfield indicating the socket types used: 0x1 (tcp), 0x2 (udp), 0x4 -- (unix stream), 0x8 (unix dgram), 0x10 (netlink), and 0x8000 (unknown) [_msgLinuxProcessSocketQueues_socket_types] :: MsgLinuxProcessSocketQueues -> !Word16 -- | A bitfield indicating the socket states: 0x1 (established), 0x2 (syn- -- sent), 0x4 (syn-recv), 0x8 (fin-wait-1), 0x10 (fin-wait-2), 0x20 -- (time- wait), 0x40 (closed), 0x80 (close-wait), 0x100 (last-ack), -- 0x200 (listen), 0x400 (closing), 0x800 (unconnected), and 0x8000 -- (unknown) [_msgLinuxProcessSocketQueues_socket_states] :: MsgLinuxProcessSocketQueues -> !Word16 -- | Address of the largest queue, remote or local depending on the -- directionality of the connection. [_msgLinuxProcessSocketQueues_address_of_largest] :: MsgLinuxProcessSocketQueues -> !Text -- | the command line of the process in question [_msgLinuxProcessSocketQueues_cmdline] :: MsgLinuxProcessSocketQueues -> !Text msgLinuxProcessSocketCounts_cmdline :: Lens' MsgLinuxProcessSocketCounts Text msgLinuxProcessSocketCounts_index :: Lens' MsgLinuxProcessSocketCounts Word8 msgLinuxProcessSocketCounts_pid :: Lens' MsgLinuxProcessSocketCounts Word16 msgLinuxProcessSocketCounts_socket_count :: Lens' MsgLinuxProcessSocketCounts Word16 msgLinuxProcessSocketCounts_socket_states :: Lens' MsgLinuxProcessSocketCounts Word16 msgLinuxProcessSocketCounts_socket_types :: Lens' MsgLinuxProcessSocketCounts Word16 msgLinuxProcessSocketQueues :: Word16 -- | SBP class for message MSG_LINUX_SOCKET_USAGE (0x7F05). -- -- Summaries the socket usage across the system. data MsgLinuxSocketUsage MsgLinuxSocketUsage :: !Word32 -> !Word32 -> ![Word16] -> ![Word16] -> MsgLinuxSocketUsage -- | average socket queue depths across all sockets on the system [_msgLinuxSocketUsage_avg_queue_depth] :: MsgLinuxSocketUsage -> !Word32 -- | the max queue depth seen within the reporting period [_msgLinuxSocketUsage_max_queue_depth] :: MsgLinuxSocketUsage -> !Word32 -- | A count for each socket type reported in the -- socket_types_reported field, the first entry corresponds to -- the first enabled bit in types_reported. [_msgLinuxSocketUsage_socket_state_counts] :: MsgLinuxSocketUsage -> ![Word16] -- | A count for each socket type reported in the -- socket_types_reported field, the first entry corresponds to -- the first enabled bit in types_reported. [_msgLinuxSocketUsage_socket_type_counts] :: MsgLinuxSocketUsage -> ![Word16] msgLinuxProcessSocketQueues_address_of_largest :: Lens' MsgLinuxProcessSocketQueues Text msgLinuxProcessSocketQueues_cmdline :: Lens' MsgLinuxProcessSocketQueues Text msgLinuxProcessSocketQueues_index :: Lens' MsgLinuxProcessSocketQueues Word8 msgLinuxProcessSocketQueues_pid :: Lens' MsgLinuxProcessSocketQueues Word16 msgLinuxProcessSocketQueues_recv_queued :: Lens' MsgLinuxProcessSocketQueues Word16 msgLinuxProcessSocketQueues_send_queued :: Lens' MsgLinuxProcessSocketQueues Word16 msgLinuxProcessSocketQueues_socket_states :: Lens' MsgLinuxProcessSocketQueues Word16 msgLinuxProcessSocketQueues_socket_types :: Lens' MsgLinuxProcessSocketQueues Word16 msgLinuxSocketUsage :: Word16 -- | SBP class for message MSG_LINUX_PROCESS_FD_COUNT (0x7F06). -- -- Top 10 list of processes with a large number of open file descriptors. data MsgLinuxProcessFdCount MsgLinuxProcessFdCount :: !Word8 -> !Word16 -> !Word16 -> !Text -> MsgLinuxProcessFdCount -- | sequence of this status message, values from 0-9 [_msgLinuxProcessFdCount_index] :: MsgLinuxProcessFdCount -> !Word8 -- | the PID of the process in question [_msgLinuxProcessFdCount_pid] :: MsgLinuxProcessFdCount -> !Word16 -- | a count of the number of file descriptors opened by the process [_msgLinuxProcessFdCount_fd_count] :: MsgLinuxProcessFdCount -> !Word16 -- | the command line of the process in question [_msgLinuxProcessFdCount_cmdline] :: MsgLinuxProcessFdCount -> !Text msgLinuxSocketUsage_avg_queue_depth :: Lens' MsgLinuxSocketUsage Word32 msgLinuxSocketUsage_max_queue_depth :: Lens' MsgLinuxSocketUsage Word32 msgLinuxSocketUsage_socket_state_counts :: Lens' MsgLinuxSocketUsage [Word16] msgLinuxSocketUsage_socket_type_counts :: Lens' MsgLinuxSocketUsage [Word16] msgLinuxProcessFdCount :: Word16 -- | SBP class for message MSG_LINUX_PROCESS_FD_SUMMARY (0x7F07). -- -- Summary of open file descriptors on the system. data MsgLinuxProcessFdSummary MsgLinuxProcessFdSummary :: !Word32 -> !Text -> MsgLinuxProcessFdSummary -- | count of total FDs open on the system [_msgLinuxProcessFdSummary_sys_fd_count] :: MsgLinuxProcessFdSummary -> !Word32 -- | A null delimited list of strings which alternates between a string -- representation of the process count and the file name whose count it -- being reported. That is, in C string syntax -- "320varlogsyslog0120tmp/foo0" with the end of the list -- being 2 NULL terminators in a row. [_msgLinuxProcessFdSummary_most_opened] :: MsgLinuxProcessFdSummary -> !Text msgLinuxProcessFdCount_cmdline :: Lens' MsgLinuxProcessFdCount Text msgLinuxProcessFdCount_fd_count :: Lens' MsgLinuxProcessFdCount Word16 msgLinuxProcessFdCount_index :: Lens' MsgLinuxProcessFdCount Word8 msgLinuxProcessFdCount_pid :: Lens' MsgLinuxProcessFdCount Word16 msgLinuxProcessFdSummary :: Word16 -- | SBP class for message MSG_LINUX_CPU_STATE (0x7F08). -- -- This message indicates the process state of the top 10 heaviest -- consumers of CPU on the system, including a timestamp. data MsgLinuxCpuState MsgLinuxCpuState :: !Word8 -> !Word16 -> !Word8 -> !Word32 -> !Word8 -> !Text -> !Text -> MsgLinuxCpuState -- | sequence of this status message, values from 0-9 [_msgLinuxCpuState_index] :: MsgLinuxCpuState -> !Word8 -- | the PID of the process [_msgLinuxCpuState_pid] :: MsgLinuxCpuState -> !Word16 -- | percent of CPU used, expressed as a fraction of 256 [_msgLinuxCpuState_pcpu] :: MsgLinuxCpuState -> !Word8 -- | timestamp of message, refer to flags field for how to interpret [_msgLinuxCpuState_time] :: MsgLinuxCpuState -> !Word32 -- | flags [_msgLinuxCpuState_flags] :: MsgLinuxCpuState -> !Word8 -- | fixed length string representing the thread name [_msgLinuxCpuState_tname] :: MsgLinuxCpuState -> !Text -- | the command line (as much as it fits in the remaining packet) [_msgLinuxCpuState_cmdline] :: MsgLinuxCpuState -> !Text msgLinuxProcessFdSummary_most_opened :: Lens' MsgLinuxProcessFdSummary Text msgLinuxProcessFdSummary_sys_fd_count :: Lens' MsgLinuxProcessFdSummary Word32 msgLinuxCpuState :: Word16 -- | SBP class for message MSG_LINUX_MEM_STATE (0x7F09). -- -- This message indicates the process state of the top 10 heaviest -- consumers of memory on the system, including a timestamp. data MsgLinuxMemState MsgLinuxMemState :: !Word8 -> !Word16 -> !Word8 -> !Word32 -> !Word8 -> !Text -> !Text -> MsgLinuxMemState -- | sequence of this status message, values from 0-9 [_msgLinuxMemState_index] :: MsgLinuxMemState -> !Word8 -- | the PID of the process [_msgLinuxMemState_pid] :: MsgLinuxMemState -> !Word16 -- | percent of memory used, expressed as a fraction of 256 [_msgLinuxMemState_pmem] :: MsgLinuxMemState -> !Word8 -- | timestamp of message, refer to flags field for how to interpret [_msgLinuxMemState_time] :: MsgLinuxMemState -> !Word32 -- | flags [_msgLinuxMemState_flags] :: MsgLinuxMemState -> !Word8 -- | fixed length string representing the thread name [_msgLinuxMemState_tname] :: MsgLinuxMemState -> !Text -- | the command line (as much as it fits in the remaining packet) [_msgLinuxMemState_cmdline] :: MsgLinuxMemState -> !Text msgLinuxCpuState_cmdline :: Lens' MsgLinuxCpuState Text msgLinuxCpuState_flags :: Lens' MsgLinuxCpuState Word8 msgLinuxCpuState_index :: Lens' MsgLinuxCpuState Word8 msgLinuxCpuState_pcpu :: Lens' MsgLinuxCpuState Word8 msgLinuxCpuState_pid :: Lens' MsgLinuxCpuState Word16 msgLinuxCpuState_time :: Lens' MsgLinuxCpuState Word32 msgLinuxCpuState_tname :: Lens' MsgLinuxCpuState Text msgLinuxMemState :: Word16 -- | SBP class for message MSG_LINUX_SYS_STATE (0x7F0A). -- -- This presents a summary of CPU and memory utilization, including a -- timestamp. data MsgLinuxSysState MsgLinuxSysState :: !Word16 -> !Word8 -> !Word8 -> !Word16 -> !Word16 -> !Word16 -> !Word32 -> !Word8 -> MsgLinuxSysState -- | total system memory, in MiB [_msgLinuxSysState_mem_total] :: MsgLinuxSysState -> !Word16 -- | percent of CPU used, expressed as a fraction of 256 [_msgLinuxSysState_pcpu] :: MsgLinuxSysState -> !Word8 -- | percent of memory used, expressed as a fraction of 256 [_msgLinuxSysState_pmem] :: MsgLinuxSysState -> !Word8 -- | number of processes that started during collection phase [_msgLinuxSysState_procs_starting] :: MsgLinuxSysState -> !Word16 -- | number of processes that stopped during collection phase [_msgLinuxSysState_procs_stopping] :: MsgLinuxSysState -> !Word16 -- | the count of processes on the system [_msgLinuxSysState_pid_count] :: MsgLinuxSysState -> !Word16 -- | timestamp of message, refer to flags field for how to interpret [_msgLinuxSysState_time] :: MsgLinuxSysState -> !Word32 -- | flags [_msgLinuxSysState_flags] :: MsgLinuxSysState -> !Word8 msgLinuxMemState_cmdline :: Lens' MsgLinuxMemState Text msgLinuxMemState_flags :: Lens' MsgLinuxMemState Word8 msgLinuxMemState_index :: Lens' MsgLinuxMemState Word8 msgLinuxMemState_pid :: Lens' MsgLinuxMemState Word16 msgLinuxMemState_pmem :: Lens' MsgLinuxMemState Word8 msgLinuxMemState_time :: Lens' MsgLinuxMemState Word32 msgLinuxMemState_tname :: Lens' MsgLinuxMemState Text msgLinuxSysState :: Word16 msgLinuxSysState_flags :: Lens' MsgLinuxSysState Word8 msgLinuxSysState_mem_total :: Lens' MsgLinuxSysState Word16 msgLinuxSysState_pcpu :: Lens' MsgLinuxSysState Word8 msgLinuxSysState_pid_count :: Lens' MsgLinuxSysState Word16 msgLinuxSysState_pmem :: Lens' MsgLinuxSysState Word8 msgLinuxSysState_procs_starting :: Lens' MsgLinuxSysState Word16 msgLinuxSysState_procs_stopping :: Lens' MsgLinuxSysState Word16 msgLinuxSysState_time :: Lens' MsgLinuxSysState Word32 instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Linux.MsgLinuxSysState instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Linux.MsgLinuxSysState instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Linux.MsgLinuxSysState instance GHC.Classes.Eq SwiftNav.SBP.Linux.MsgLinuxSysState instance GHC.Read.Read SwiftNav.SBP.Linux.MsgLinuxSysState instance GHC.Show.Show SwiftNav.SBP.Linux.MsgLinuxSysState instance Data.Binary.Class.Binary SwiftNav.SBP.Linux.MsgLinuxSysState instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Linux.MsgLinuxMemState instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Linux.MsgLinuxMemState instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Linux.MsgLinuxMemState instance GHC.Classes.Eq SwiftNav.SBP.Linux.MsgLinuxMemState instance GHC.Read.Read SwiftNav.SBP.Linux.MsgLinuxMemState instance GHC.Show.Show SwiftNav.SBP.Linux.MsgLinuxMemState instance Data.Binary.Class.Binary SwiftNav.SBP.Linux.MsgLinuxMemState instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Linux.MsgLinuxCpuState instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Linux.MsgLinuxCpuState instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Linux.MsgLinuxCpuState instance GHC.Classes.Eq SwiftNav.SBP.Linux.MsgLinuxCpuState instance GHC.Read.Read SwiftNav.SBP.Linux.MsgLinuxCpuState instance GHC.Show.Show SwiftNav.SBP.Linux.MsgLinuxCpuState instance Data.Binary.Class.Binary SwiftNav.SBP.Linux.MsgLinuxCpuState instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Linux.MsgLinuxProcessFdSummary instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Linux.MsgLinuxProcessFdSummary instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Linux.MsgLinuxProcessFdSummary instance GHC.Classes.Eq SwiftNav.SBP.Linux.MsgLinuxProcessFdSummary instance GHC.Read.Read SwiftNav.SBP.Linux.MsgLinuxProcessFdSummary instance GHC.Show.Show SwiftNav.SBP.Linux.MsgLinuxProcessFdSummary instance Data.Binary.Class.Binary SwiftNav.SBP.Linux.MsgLinuxProcessFdSummary instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Linux.MsgLinuxProcessFdCount instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Linux.MsgLinuxProcessFdCount instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Linux.MsgLinuxProcessFdCount instance GHC.Classes.Eq SwiftNav.SBP.Linux.MsgLinuxProcessFdCount instance GHC.Read.Read SwiftNav.SBP.Linux.MsgLinuxProcessFdCount instance GHC.Show.Show SwiftNav.SBP.Linux.MsgLinuxProcessFdCount instance Data.Binary.Class.Binary SwiftNav.SBP.Linux.MsgLinuxProcessFdCount instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Linux.MsgLinuxSocketUsage instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Linux.MsgLinuxSocketUsage instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Linux.MsgLinuxSocketUsage instance GHC.Classes.Eq SwiftNav.SBP.Linux.MsgLinuxSocketUsage instance GHC.Read.Read SwiftNav.SBP.Linux.MsgLinuxSocketUsage instance GHC.Show.Show SwiftNav.SBP.Linux.MsgLinuxSocketUsage instance Data.Binary.Class.Binary SwiftNav.SBP.Linux.MsgLinuxSocketUsage instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Linux.MsgLinuxProcessSocketQueues instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Linux.MsgLinuxProcessSocketQueues instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Linux.MsgLinuxProcessSocketQueues instance GHC.Classes.Eq SwiftNav.SBP.Linux.MsgLinuxProcessSocketQueues instance GHC.Read.Read SwiftNav.SBP.Linux.MsgLinuxProcessSocketQueues instance GHC.Show.Show SwiftNav.SBP.Linux.MsgLinuxProcessSocketQueues instance Data.Binary.Class.Binary SwiftNav.SBP.Linux.MsgLinuxProcessSocketQueues instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Linux.MsgLinuxProcessSocketCounts instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Linux.MsgLinuxProcessSocketCounts instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Linux.MsgLinuxProcessSocketCounts instance GHC.Classes.Eq SwiftNav.SBP.Linux.MsgLinuxProcessSocketCounts instance GHC.Read.Read SwiftNav.SBP.Linux.MsgLinuxProcessSocketCounts instance GHC.Show.Show SwiftNav.SBP.Linux.MsgLinuxProcessSocketCounts instance Data.Binary.Class.Binary SwiftNav.SBP.Linux.MsgLinuxProcessSocketCounts instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Linux.MsgLinuxSysStateDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Linux.MsgLinuxSysStateDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Linux.MsgLinuxSysStateDepA instance GHC.Classes.Eq SwiftNav.SBP.Linux.MsgLinuxSysStateDepA instance GHC.Read.Read SwiftNav.SBP.Linux.MsgLinuxSysStateDepA instance GHC.Show.Show SwiftNav.SBP.Linux.MsgLinuxSysStateDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Linux.MsgLinuxSysStateDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Linux.MsgLinuxMemStateDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Linux.MsgLinuxMemStateDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Linux.MsgLinuxMemStateDepA instance GHC.Classes.Eq SwiftNav.SBP.Linux.MsgLinuxMemStateDepA instance GHC.Read.Read SwiftNav.SBP.Linux.MsgLinuxMemStateDepA instance GHC.Show.Show SwiftNav.SBP.Linux.MsgLinuxMemStateDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Linux.MsgLinuxMemStateDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Linux.MsgLinuxCpuStateDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Linux.MsgLinuxCpuStateDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Linux.MsgLinuxCpuStateDepA instance GHC.Classes.Eq SwiftNav.SBP.Linux.MsgLinuxCpuStateDepA instance GHC.Read.Read SwiftNav.SBP.Linux.MsgLinuxCpuStateDepA instance GHC.Show.Show SwiftNav.SBP.Linux.MsgLinuxCpuStateDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Linux.MsgLinuxCpuStateDepA -- | < Inertial Measurement Unit (IMU) messages. > module SwiftNav.SBP.Imu -- | SBP class for message MSG_IMU_RAW (0x0900). -- -- Raw data from the Inertial Measurement Unit, containing accelerometer -- and gyroscope readings. The sense of the measurements are to be -- aligned with the indications on the device itself. Measurement units, -- which are specific to the device hardware and settings, are -- communicated via the MSG_IMU_AUX message. If using "time since -- startup" time tags, the receiving end will expect a -- MSG_GNSS_TIME_OFFSET when a PVT fix becomes available to -- synchronise IMU measurements with GNSS. The timestamp must wrap around -- to zero when reaching one week (604800 seconds). -- -- The time-tagging mode should not change throughout a run. data MsgImuRaw MsgImuRaw :: !Word32 -> !Word8 -> !Int16 -> !Int16 -> !Int16 -> !Int16 -> !Int16 -> !Int16 -> MsgImuRaw -- | Milliseconds since reference epoch and time status. [_msgImuRaw_tow] :: MsgImuRaw -> !Word32 -- | Milliseconds since reference epoch, fractional part [_msgImuRaw_tow_f] :: MsgImuRaw -> !Word8 -- | Acceleration in the IMU frame X axis [_msgImuRaw_acc_x] :: MsgImuRaw -> !Int16 -- | Acceleration in the IMU frame Y axis [_msgImuRaw_acc_y] :: MsgImuRaw -> !Int16 -- | Acceleration in the IMU frame Z axis [_msgImuRaw_acc_z] :: MsgImuRaw -> !Int16 -- | Angular rate around IMU frame X axis [_msgImuRaw_gyr_x] :: MsgImuRaw -> !Int16 -- | Angular rate around IMU frame Y axis [_msgImuRaw_gyr_y] :: MsgImuRaw -> !Int16 -- | Angular rate around IMU frame Z axis [_msgImuRaw_gyr_z] :: MsgImuRaw -> !Int16 msgImuRaw :: Word16 -- | SBP class for message MSG_IMU_AUX (0x0901). -- -- Auxiliary data specific to a particular IMU. The imu_type -- field will always be consistent but the rest of the payload is device -- specific and depends on the value of imu_type. data MsgImuAux MsgImuAux :: !Word8 -> !Int16 -> !Word8 -> MsgImuAux -- | IMU type [_msgImuAux_imu_type] :: MsgImuAux -> !Word8 -- | Raw IMU temperature [_msgImuAux_temp] :: MsgImuAux -> !Int16 -- | IMU configuration [_msgImuAux_imu_conf] :: MsgImuAux -> !Word8 msgImuRaw_acc_x :: Lens' MsgImuRaw Int16 msgImuRaw_acc_y :: Lens' MsgImuRaw Int16 msgImuRaw_acc_z :: Lens' MsgImuRaw Int16 msgImuRaw_gyr_x :: Lens' MsgImuRaw Int16 msgImuRaw_gyr_y :: Lens' MsgImuRaw Int16 msgImuRaw_gyr_z :: Lens' MsgImuRaw Int16 msgImuRaw_tow :: Lens' MsgImuRaw Word32 msgImuRaw_tow_f :: Lens' MsgImuRaw Word8 msgImuAux :: Word16 msgImuAux_imu_conf :: Lens' MsgImuAux Word8 msgImuAux_imu_type :: Lens' MsgImuAux Word8 msgImuAux_temp :: Lens' MsgImuAux Int16 instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Imu.MsgImuAux instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Imu.MsgImuAux instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Imu.MsgImuAux instance GHC.Classes.Eq SwiftNav.SBP.Imu.MsgImuAux instance GHC.Read.Read SwiftNav.SBP.Imu.MsgImuAux instance GHC.Show.Show SwiftNav.SBP.Imu.MsgImuAux instance Data.Binary.Class.Binary SwiftNav.SBP.Imu.MsgImuAux instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Imu.MsgImuRaw instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Imu.MsgImuRaw instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Imu.MsgImuRaw instance GHC.Classes.Eq SwiftNav.SBP.Imu.MsgImuRaw instance GHC.Read.Read SwiftNav.SBP.Imu.MsgImuRaw instance GHC.Show.Show SwiftNav.SBP.Imu.MsgImuRaw instance Data.Binary.Class.Binary SwiftNav.SBP.Imu.MsgImuRaw -- | < Various structs shared between modules > module SwiftNav.SBP.Gnss -- | GnssSignal. -- -- Signal identifier containing constellation, band, and satellite -- identifier. data GnssSignal GnssSignal :: !Word8 -> !Word8 -> GnssSignal -- | Constellation-specific satellite identifier. This field for Glonass -- can either be (100+FCN) where FCN is in [-7,+6] or the Slot ID in -- [1,28]. [_gnssSignal_sat] :: GnssSignal -> !Word8 -- | Signal constellation, band and code [_gnssSignal_code] :: GnssSignal -> !Word8 -- | SvId. -- -- A (Constellation ID, satellite ID) tuple that uniquely identifies a -- space vehicle. data SvId SvId :: !Word8 -> !Word8 -> SvId -- | ID of the space vehicle within its constellation [_svId_satId] :: SvId -> !Word8 -- | Constellation ID to which the SV belongs [_svId_constellation] :: SvId -> !Word8 gnssSignal_code :: Lens' GnssSignal Word8 gnssSignal_sat :: Lens' GnssSignal Word8 -- | GnssSignalDep. -- -- Deprecated. data GnssSignalDep GnssSignalDep :: !Word16 -> !Word8 -> !Word8 -> GnssSignalDep -- | Constellation-specific satellite identifier. -- -- Note: unlike GnssSignal, GPS satellites are encoded as (PRN - 1). -- Other constellations do not have this offset. [_gnssSignalDep_sat] :: GnssSignalDep -> !Word16 -- | Signal constellation, band and code [_gnssSignalDep_code] :: GnssSignalDep -> !Word8 -- | Reserved [_gnssSignalDep_reserved] :: GnssSignalDep -> !Word8 svId_constellation :: Lens' SvId Word8 svId_satId :: Lens' SvId Word8 -- | GPSTimeDep. -- -- A wire-appropriate GPS time, defined as the number of milliseconds -- since beginning of the week on the Saturday/Sunday transition. data GpsTimeDep GpsTimeDep :: !Word32 -> !Word16 -> GpsTimeDep -- | Milliseconds since start of GPS week [_gpsTimeDep_tow] :: GpsTimeDep -> !Word32 -- | GPS week number [_gpsTimeDep_wn] :: GpsTimeDep -> !Word16 gnssSignalDep_code :: Lens' GnssSignalDep Word8 gnssSignalDep_reserved :: Lens' GnssSignalDep Word8 gnssSignalDep_sat :: Lens' GnssSignalDep Word16 -- | GPSTimeSec. -- -- A GPS time, defined as the number of seconds since beginning of the -- week on the Saturday/Sunday transition. data GpsTimeSec GpsTimeSec :: !Word32 -> !Word16 -> GpsTimeSec -- | Seconds since start of GPS week [_gpsTimeSec_tow] :: GpsTimeSec -> !Word32 -- | GPS week number [_gpsTimeSec_wn] :: GpsTimeSec -> !Word16 gpsTimeDep_tow :: Lens' GpsTimeDep Word32 gpsTimeDep_wn :: Lens' GpsTimeDep Word16 -- | GPSTime. -- -- A wire-appropriate receiver clock time, defined as the time since the -- beginning of the week on the Saturday/Sunday transition. In most -- cases, observations are epoch aligned so ns field will be 0. data GpsTime GpsTime :: !Word32 -> !Int32 -> !Word16 -> GpsTime -- | Milliseconds since start of GPS week [_gpsTime_tow] :: GpsTime -> !Word32 -- | Nanosecond residual of millisecond-rounded TOW (ranges from -500000 to -- 500000) [_gpsTime_ns_residual] :: GpsTime -> !Int32 -- | GPS week number [_gpsTime_wn] :: GpsTime -> !Word16 gpsTimeSec_tow :: Lens' GpsTimeSec Word32 gpsTimeSec_wn :: Lens' GpsTimeSec Word16 -- | CarrierPhase. -- -- Carrier phase measurement in cycles represented as a 40-bit fixed -- point number with Q32.8 layout, i.e. 32-bits of whole cycles and -- 8-bits of fractional cycles. This phase has the same sign as the -- pseudorange. data CarrierPhase CarrierPhase :: !Int32 -> !Word8 -> CarrierPhase -- | Carrier phase whole cycles [_carrierPhase_i] :: CarrierPhase -> !Int32 -- | Carrier phase fractional part [_carrierPhase_f] :: CarrierPhase -> !Word8 gpsTime_ns_residual :: Lens' GpsTime Int32 gpsTime_tow :: Lens' GpsTime Word32 gpsTime_wn :: Lens' GpsTime Word16 carrierPhase_f :: Lens' CarrierPhase Word8 carrierPhase_i :: Lens' CarrierPhase Int32 instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Gnss.CarrierPhase instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Gnss.CarrierPhase instance GHC.Classes.Eq SwiftNav.SBP.Gnss.CarrierPhase instance GHC.Read.Read SwiftNav.SBP.Gnss.CarrierPhase instance GHC.Show.Show SwiftNav.SBP.Gnss.CarrierPhase instance Data.Binary.Class.Binary SwiftNav.SBP.Gnss.CarrierPhase instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Gnss.GpsTime instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Gnss.GpsTime instance GHC.Classes.Eq SwiftNav.SBP.Gnss.GpsTime instance GHC.Read.Read SwiftNav.SBP.Gnss.GpsTime instance GHC.Show.Show SwiftNav.SBP.Gnss.GpsTime instance Data.Binary.Class.Binary SwiftNav.SBP.Gnss.GpsTime instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Gnss.GpsTimeSec instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Gnss.GpsTimeSec instance GHC.Classes.Eq SwiftNav.SBP.Gnss.GpsTimeSec instance GHC.Read.Read SwiftNav.SBP.Gnss.GpsTimeSec instance GHC.Show.Show SwiftNav.SBP.Gnss.GpsTimeSec instance Data.Binary.Class.Binary SwiftNav.SBP.Gnss.GpsTimeSec instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Gnss.GpsTimeDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Gnss.GpsTimeDep instance GHC.Classes.Eq SwiftNav.SBP.Gnss.GpsTimeDep instance GHC.Read.Read SwiftNav.SBP.Gnss.GpsTimeDep instance GHC.Show.Show SwiftNav.SBP.Gnss.GpsTimeDep instance Data.Binary.Class.Binary SwiftNav.SBP.Gnss.GpsTimeDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Gnss.GnssSignalDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Gnss.GnssSignalDep instance GHC.Classes.Eq SwiftNav.SBP.Gnss.GnssSignalDep instance GHC.Read.Read SwiftNav.SBP.Gnss.GnssSignalDep instance GHC.Show.Show SwiftNav.SBP.Gnss.GnssSignalDep instance Data.Binary.Class.Binary SwiftNav.SBP.Gnss.GnssSignalDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Gnss.SvId instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Gnss.SvId instance GHC.Classes.Eq SwiftNav.SBP.Gnss.SvId instance GHC.Read.Read SwiftNav.SBP.Gnss.SvId instance GHC.Show.Show SwiftNav.SBP.Gnss.SvId instance Data.Binary.Class.Binary SwiftNav.SBP.Gnss.SvId instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Gnss.GnssSignal instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Gnss.GnssSignal instance GHC.Classes.Eq SwiftNav.SBP.Gnss.GnssSignal instance GHC.Read.Read SwiftNav.SBP.Gnss.GnssSignal instance GHC.Show.Show SwiftNav.SBP.Gnss.GnssSignal instance Data.Binary.Class.Binary SwiftNav.SBP.Gnss.GnssSignal -- | < Satellite code and carrier-phase tracking messages from the -- device. > module SwiftNav.SBP.Tracking -- | SBP class for message MSG_TRACKING_STATE_DETAILED_DEP_A (0x0021). -- -- The tracking message returns a set tracking channel parameters for a -- single tracking channel useful for debugging issues. data MsgTrackingStateDetailedDepA MsgTrackingStateDetailedDepA :: !Word64 -> !GpsTime -> !Word32 -> !Word16 -> !CarrierPhase -> !Word8 -> !Word16 -> !GnssSignal -> !Int32 -> !Word16 -> !Word32 -> !Int16 -> !Int16 -> !Word16 -> !Int8 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> MsgTrackingStateDetailedDepA -- | Receiver clock time. [_msgTrackingStateDetailedDepA_recv_time] :: MsgTrackingStateDetailedDepA -> !Word64 -- | Time of transmission of signal from satellite. TOW only valid when TOW -- status is decoded or propagated. WN only valid when week number valid -- flag is set. [_msgTrackingStateDetailedDepA_tot] :: MsgTrackingStateDetailedDepA -> !GpsTime -- | Pseudorange observation. Valid only when pseudorange valid flag is -- set. [_msgTrackingStateDetailedDepA_P] :: MsgTrackingStateDetailedDepA -> !Word32 -- | Pseudorange observation standard deviation. Valid only when -- pseudorange valid flag is set. [_msgTrackingStateDetailedDepA_P_std] :: MsgTrackingStateDetailedDepA -> !Word16 -- | Carrier phase observation with typical sign convention. Valid only -- when PLL pessimistic lock is achieved. [_msgTrackingStateDetailedDepA_L] :: MsgTrackingStateDetailedDepA -> !CarrierPhase -- | Carrier-to-Noise density [_msgTrackingStateDetailedDepA_cn0] :: MsgTrackingStateDetailedDepA -> !Word8 -- | Lock time. It is encoded according to DF402 from the RTCM 10403.2 -- Amendment 2 specification. Valid values range from 0 to 15. [_msgTrackingStateDetailedDepA_lock] :: MsgTrackingStateDetailedDepA -> !Word16 -- | GNSS signal identifier. [_msgTrackingStateDetailedDepA_sid] :: MsgTrackingStateDetailedDepA -> !GnssSignal -- | Carrier Doppler frequency. [_msgTrackingStateDetailedDepA_doppler] :: MsgTrackingStateDetailedDepA -> !Int32 -- | Carrier Doppler frequency standard deviation. [_msgTrackingStateDetailedDepA_doppler_std] :: MsgTrackingStateDetailedDepA -> !Word16 -- | Number of seconds of continuous tracking. Specifies how much time -- signal is in continuous track. [_msgTrackingStateDetailedDepA_uptime] :: MsgTrackingStateDetailedDepA -> !Word32 -- | TCXO clock offset. Valid only when valid clock valid flag is set. [_msgTrackingStateDetailedDepA_clock_offset] :: MsgTrackingStateDetailedDepA -> !Int16 -- | TCXO clock drift. Valid only when valid clock valid flag is set. [_msgTrackingStateDetailedDepA_clock_drift] :: MsgTrackingStateDetailedDepA -> !Int16 -- | Early-Prompt (EP) and Prompt-Late (PL) correlators spacing. [_msgTrackingStateDetailedDepA_corr_spacing] :: MsgTrackingStateDetailedDepA -> !Word16 -- | Acceleration. Valid only when acceleration valid flag is set. [_msgTrackingStateDetailedDepA_acceleration] :: MsgTrackingStateDetailedDepA -> !Int8 -- | Synchronization status flags. [_msgTrackingStateDetailedDepA_sync_flags] :: MsgTrackingStateDetailedDepA -> !Word8 -- | TOW status flags. [_msgTrackingStateDetailedDepA_tow_flags] :: MsgTrackingStateDetailedDepA -> !Word8 -- | Tracking loop status flags. [_msgTrackingStateDetailedDepA_track_flags] :: MsgTrackingStateDetailedDepA -> !Word8 -- | Navigation data status flags. [_msgTrackingStateDetailedDepA_nav_flags] :: MsgTrackingStateDetailedDepA -> !Word8 -- | Parameters sets flags. [_msgTrackingStateDetailedDepA_pset_flags] :: MsgTrackingStateDetailedDepA -> !Word8 -- | Miscellaneous flags. [_msgTrackingStateDetailedDepA_misc_flags] :: MsgTrackingStateDetailedDepA -> !Word8 msgTrackingStateDetailedDepA :: Word16 -- | SBP class for message MSG_TRACKING_STATE_DETAILED_DEP (0x0011). -- -- Deprecated. data MsgTrackingStateDetailedDep MsgTrackingStateDetailedDep :: !Word64 -> !GpsTimeDep -> !Word32 -> !Word16 -> !CarrierPhase -> !Word8 -> !Word16 -> !GnssSignalDep -> !Int32 -> !Word16 -> !Word32 -> !Int16 -> !Int16 -> !Word16 -> !Int8 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> MsgTrackingStateDetailedDep -- | Receiver clock time. [_msgTrackingStateDetailedDep_recv_time] :: MsgTrackingStateDetailedDep -> !Word64 -- | Time of transmission of signal from satellite. TOW only valid when TOW -- status is decoded or propagated. WN only valid when week number valid -- flag is set. [_msgTrackingStateDetailedDep_tot] :: MsgTrackingStateDetailedDep -> !GpsTimeDep -- | Pseudorange observation. Valid only when pseudorange valid flag is -- set. [_msgTrackingStateDetailedDep_P] :: MsgTrackingStateDetailedDep -> !Word32 -- | Pseudorange observation standard deviation. Valid only when -- pseudorange valid flag is set. [_msgTrackingStateDetailedDep_P_std] :: MsgTrackingStateDetailedDep -> !Word16 -- | Carrier phase observation with typical sign convention. Valid only -- when PLL pessimistic lock is achieved. [_msgTrackingStateDetailedDep_L] :: MsgTrackingStateDetailedDep -> !CarrierPhase -- | Carrier-to-Noise density [_msgTrackingStateDetailedDep_cn0] :: MsgTrackingStateDetailedDep -> !Word8 -- | Lock time. It is encoded according to DF402 from the RTCM 10403.2 -- Amendment 2 specification. Valid values range from 0 to 15. [_msgTrackingStateDetailedDep_lock] :: MsgTrackingStateDetailedDep -> !Word16 -- | GNSS signal identifier. [_msgTrackingStateDetailedDep_sid] :: MsgTrackingStateDetailedDep -> !GnssSignalDep -- | Carrier Doppler frequency. [_msgTrackingStateDetailedDep_doppler] :: MsgTrackingStateDetailedDep -> !Int32 -- | Carrier Doppler frequency standard deviation. [_msgTrackingStateDetailedDep_doppler_std] :: MsgTrackingStateDetailedDep -> !Word16 -- | Number of seconds of continuous tracking. Specifies how much time -- signal is in continuous track. [_msgTrackingStateDetailedDep_uptime] :: MsgTrackingStateDetailedDep -> !Word32 -- | TCXO clock offset. Valid only when valid clock valid flag is set. [_msgTrackingStateDetailedDep_clock_offset] :: MsgTrackingStateDetailedDep -> !Int16 -- | TCXO clock drift. Valid only when valid clock valid flag is set. [_msgTrackingStateDetailedDep_clock_drift] :: MsgTrackingStateDetailedDep -> !Int16 -- | Early-Prompt (EP) and Prompt-Late (PL) correlators spacing. [_msgTrackingStateDetailedDep_corr_spacing] :: MsgTrackingStateDetailedDep -> !Word16 -- | Acceleration. Valid only when acceleration valid flag is set. [_msgTrackingStateDetailedDep_acceleration] :: MsgTrackingStateDetailedDep -> !Int8 -- | Synchronization status flags. [_msgTrackingStateDetailedDep_sync_flags] :: MsgTrackingStateDetailedDep -> !Word8 -- | TOW status flags. [_msgTrackingStateDetailedDep_tow_flags] :: MsgTrackingStateDetailedDep -> !Word8 -- | Tracking loop status flags. [_msgTrackingStateDetailedDep_track_flags] :: MsgTrackingStateDetailedDep -> !Word8 -- | Navigation data status flags. [_msgTrackingStateDetailedDep_nav_flags] :: MsgTrackingStateDetailedDep -> !Word8 -- | Parameters sets flags. [_msgTrackingStateDetailedDep_pset_flags] :: MsgTrackingStateDetailedDep -> !Word8 -- | Miscellaneous flags. [_msgTrackingStateDetailedDep_misc_flags] :: MsgTrackingStateDetailedDep -> !Word8 msgTrackingStateDetailedDepA_L :: Lens' MsgTrackingStateDetailedDepA CarrierPhase msgTrackingStateDetailedDepA_P :: Lens' MsgTrackingStateDetailedDepA Word32 msgTrackingStateDetailedDepA_P_std :: Lens' MsgTrackingStateDetailedDepA Word16 msgTrackingStateDetailedDepA_acceleration :: Lens' MsgTrackingStateDetailedDepA Int8 msgTrackingStateDetailedDepA_clock_drift :: Lens' MsgTrackingStateDetailedDepA Int16 msgTrackingStateDetailedDepA_clock_offset :: Lens' MsgTrackingStateDetailedDepA Int16 msgTrackingStateDetailedDepA_cn0 :: Lens' MsgTrackingStateDetailedDepA Word8 msgTrackingStateDetailedDepA_corr_spacing :: Lens' MsgTrackingStateDetailedDepA Word16 msgTrackingStateDetailedDepA_doppler :: Lens' MsgTrackingStateDetailedDepA Int32 msgTrackingStateDetailedDepA_doppler_std :: Lens' MsgTrackingStateDetailedDepA Word16 msgTrackingStateDetailedDepA_lock :: Lens' MsgTrackingStateDetailedDepA Word16 msgTrackingStateDetailedDepA_misc_flags :: Lens' MsgTrackingStateDetailedDepA Word8 msgTrackingStateDetailedDepA_nav_flags :: Lens' MsgTrackingStateDetailedDepA Word8 msgTrackingStateDetailedDepA_pset_flags :: Lens' MsgTrackingStateDetailedDepA Word8 msgTrackingStateDetailedDepA_recv_time :: Lens' MsgTrackingStateDetailedDepA Word64 msgTrackingStateDetailedDepA_sid :: Lens' MsgTrackingStateDetailedDepA GnssSignal msgTrackingStateDetailedDepA_sync_flags :: Lens' MsgTrackingStateDetailedDepA Word8 msgTrackingStateDetailedDepA_tot :: Lens' MsgTrackingStateDetailedDepA GpsTime msgTrackingStateDetailedDepA_tow_flags :: Lens' MsgTrackingStateDetailedDepA Word8 msgTrackingStateDetailedDepA_track_flags :: Lens' MsgTrackingStateDetailedDepA Word8 msgTrackingStateDetailedDepA_uptime :: Lens' MsgTrackingStateDetailedDepA Word32 msgTrackingStateDetailedDep :: Word16 -- | TrackingChannelState. -- -- Tracking channel state for a specific satellite signal and measured -- signal power. data TrackingChannelState TrackingChannelState :: !GnssSignal -> !Word8 -> !Word8 -> TrackingChannelState -- | GNSS signal being tracked [_trackingChannelState_sid] :: TrackingChannelState -> !GnssSignal -- | Frequency channel number (GLONASS only) [_trackingChannelState_fcn] :: TrackingChannelState -> !Word8 -- | Carrier-to-Noise density. Zero implies invalid cn0. [_trackingChannelState_cn0] :: TrackingChannelState -> !Word8 msgTrackingStateDetailedDep_L :: Lens' MsgTrackingStateDetailedDep CarrierPhase msgTrackingStateDetailedDep_P :: Lens' MsgTrackingStateDetailedDep Word32 msgTrackingStateDetailedDep_P_std :: Lens' MsgTrackingStateDetailedDep Word16 msgTrackingStateDetailedDep_acceleration :: Lens' MsgTrackingStateDetailedDep Int8 msgTrackingStateDetailedDep_clock_drift :: Lens' MsgTrackingStateDetailedDep Int16 msgTrackingStateDetailedDep_clock_offset :: Lens' MsgTrackingStateDetailedDep Int16 msgTrackingStateDetailedDep_cn0 :: Lens' MsgTrackingStateDetailedDep Word8 msgTrackingStateDetailedDep_corr_spacing :: Lens' MsgTrackingStateDetailedDep Word16 msgTrackingStateDetailedDep_doppler :: Lens' MsgTrackingStateDetailedDep Int32 msgTrackingStateDetailedDep_doppler_std :: Lens' MsgTrackingStateDetailedDep Word16 msgTrackingStateDetailedDep_lock :: Lens' MsgTrackingStateDetailedDep Word16 msgTrackingStateDetailedDep_misc_flags :: Lens' MsgTrackingStateDetailedDep Word8 msgTrackingStateDetailedDep_nav_flags :: Lens' MsgTrackingStateDetailedDep Word8 msgTrackingStateDetailedDep_pset_flags :: Lens' MsgTrackingStateDetailedDep Word8 msgTrackingStateDetailedDep_recv_time :: Lens' MsgTrackingStateDetailedDep Word64 msgTrackingStateDetailedDep_sid :: Lens' MsgTrackingStateDetailedDep GnssSignalDep msgTrackingStateDetailedDep_sync_flags :: Lens' MsgTrackingStateDetailedDep Word8 msgTrackingStateDetailedDep_tot :: Lens' MsgTrackingStateDetailedDep GpsTimeDep msgTrackingStateDetailedDep_tow_flags :: Lens' MsgTrackingStateDetailedDep Word8 msgTrackingStateDetailedDep_track_flags :: Lens' MsgTrackingStateDetailedDep Word8 msgTrackingStateDetailedDep_uptime :: Lens' MsgTrackingStateDetailedDep Word32 -- | SBP class for message MSG_TRACKING_STATE (0x0041). -- -- The tracking message returns a variable-length array of tracking -- channel states. It reports status and carrier-to-noise density -- measurements for all tracked satellites. data MsgTrackingState MsgTrackingState :: ![TrackingChannelState] -> MsgTrackingState -- | Signal tracking channel state [_msgTrackingState_states] :: MsgTrackingState -> ![TrackingChannelState] trackingChannelState_cn0 :: Lens' TrackingChannelState Word8 trackingChannelState_fcn :: Lens' TrackingChannelState Word8 trackingChannelState_sid :: Lens' TrackingChannelState GnssSignal msgTrackingState :: Word16 -- | MeasurementState. -- -- Measurement Engine tracking channel state for a specific satellite -- signal and measured signal power. The mesid field for Glonass can -- either carry the FCN as 100 + FCN where FCN is in [-7, +6] or the Slot -- ID (from 1 to 28). data MeasurementState MeasurementState :: !GnssSignal -> !Word8 -> MeasurementState -- | Measurement Engine GNSS signal being tracked (carries either Glonass -- FCN or SLOT) [_measurementState_mesid] :: MeasurementState -> !GnssSignal -- | Carrier-to-Noise density. Zero implies invalid cn0. [_measurementState_cn0] :: MeasurementState -> !Word8 msgTrackingState_states :: Iso' MsgTrackingState [TrackingChannelState] -- | SBP class for message MSG_MEASUREMENT_STATE (0x0061). -- -- The tracking message returns a variable-length array of tracking -- channel states. It reports status and carrier-to-noise density -- measurements for all tracked satellites. data MsgMeasurementState MsgMeasurementState :: ![MeasurementState] -> MsgMeasurementState -- | ME signal tracking channel state [_msgMeasurementState_states] :: MsgMeasurementState -> ![MeasurementState] measurementState_cn0 :: Lens' MeasurementState Word8 measurementState_mesid :: Lens' MeasurementState GnssSignal msgMeasurementState :: Word16 -- | TrackingChannelCorrelation. -- -- Structure containing in-phase and quadrature correlation components. data TrackingChannelCorrelation TrackingChannelCorrelation :: !Int16 -> !Int16 -> TrackingChannelCorrelation -- | In-phase correlation [_trackingChannelCorrelation_I] :: TrackingChannelCorrelation -> !Int16 -- | Quadrature correlation [_trackingChannelCorrelation_Q] :: TrackingChannelCorrelation -> !Int16 msgMeasurementState_states :: Iso' MsgMeasurementState [MeasurementState] -- | SBP class for message MSG_TRACKING_IQ (0x002D). -- -- When enabled, a tracking channel can output the correlations at each -- update interval. data MsgTrackingIq MsgTrackingIq :: !Word8 -> !GnssSignal -> ![TrackingChannelCorrelation] -> MsgTrackingIq -- | Tracking channel of origin [_msgTrackingIq_channel] :: MsgTrackingIq -> !Word8 -- | GNSS signal identifier [_msgTrackingIq_sid] :: MsgTrackingIq -> !GnssSignal -- | Early, Prompt and Late correlations [_msgTrackingIq_corrs] :: MsgTrackingIq -> ![TrackingChannelCorrelation] trackingChannelCorrelation_I :: Lens' TrackingChannelCorrelation Int16 trackingChannelCorrelation_Q :: Lens' TrackingChannelCorrelation Int16 msgTrackingIq :: Word16 -- | TrackingChannelCorrelationDep. -- -- Structure containing in-phase and quadrature correlation components. data TrackingChannelCorrelationDep TrackingChannelCorrelationDep :: !Int32 -> !Int32 -> TrackingChannelCorrelationDep -- | In-phase correlation [_trackingChannelCorrelationDep_I] :: TrackingChannelCorrelationDep -> !Int32 -- | Quadrature correlation [_trackingChannelCorrelationDep_Q] :: TrackingChannelCorrelationDep -> !Int32 msgTrackingIq_channel :: Lens' MsgTrackingIq Word8 msgTrackingIq_corrs :: Lens' MsgTrackingIq [TrackingChannelCorrelation] msgTrackingIq_sid :: Lens' MsgTrackingIq GnssSignal -- | SBP class for message MSG_TRACKING_IQ_DEP_B (0x002C). -- -- When enabled, a tracking channel can output the correlations at each -- update interval. data MsgTrackingIqDepB MsgTrackingIqDepB :: !Word8 -> !GnssSignal -> ![TrackingChannelCorrelationDep] -> MsgTrackingIqDepB -- | Tracking channel of origin [_msgTrackingIqDepB_channel] :: MsgTrackingIqDepB -> !Word8 -- | GNSS signal identifier [_msgTrackingIqDepB_sid] :: MsgTrackingIqDepB -> !GnssSignal -- | Early, Prompt and Late correlations [_msgTrackingIqDepB_corrs] :: MsgTrackingIqDepB -> ![TrackingChannelCorrelationDep] trackingChannelCorrelationDep_I :: Lens' TrackingChannelCorrelationDep Int32 trackingChannelCorrelationDep_Q :: Lens' TrackingChannelCorrelationDep Int32 msgTrackingIqDepB :: Word16 -- | SBP class for message MSG_TRACKING_IQ_DEP_A (0x001C). -- -- Deprecated. data MsgTrackingIqDepA MsgTrackingIqDepA :: !Word8 -> !GnssSignalDep -> ![TrackingChannelCorrelationDep] -> MsgTrackingIqDepA -- | Tracking channel of origin [_msgTrackingIqDepA_channel] :: MsgTrackingIqDepA -> !Word8 -- | GNSS signal identifier [_msgTrackingIqDepA_sid] :: MsgTrackingIqDepA -> !GnssSignalDep -- | Early, Prompt and Late correlations [_msgTrackingIqDepA_corrs] :: MsgTrackingIqDepA -> ![TrackingChannelCorrelationDep] msgTrackingIqDepB_channel :: Lens' MsgTrackingIqDepB Word8 msgTrackingIqDepB_corrs :: Lens' MsgTrackingIqDepB [TrackingChannelCorrelationDep] msgTrackingIqDepB_sid :: Lens' MsgTrackingIqDepB GnssSignal msgTrackingIqDepA :: Word16 -- | TrackingChannelStateDepA. -- -- Deprecated. data TrackingChannelStateDepA TrackingChannelStateDepA :: !Word8 -> !Word8 -> !Float -> TrackingChannelStateDepA -- | Status of tracking channel [_trackingChannelStateDepA_state] :: TrackingChannelStateDepA -> !Word8 -- | PRN-1 being tracked [_trackingChannelStateDepA_prn] :: TrackingChannelStateDepA -> !Word8 -- | Carrier-to-noise density [_trackingChannelStateDepA_cn0] :: TrackingChannelStateDepA -> !Float msgTrackingIqDepA_channel :: Lens' MsgTrackingIqDepA Word8 msgTrackingIqDepA_corrs :: Lens' MsgTrackingIqDepA [TrackingChannelCorrelationDep] msgTrackingIqDepA_sid :: Lens' MsgTrackingIqDepA GnssSignalDep -- | SBP class for message MSG_TRACKING_STATE_DEP_A (0x0016). -- -- Deprecated. data MsgTrackingStateDepA MsgTrackingStateDepA :: ![TrackingChannelStateDepA] -> MsgTrackingStateDepA -- | Satellite tracking channel state [_msgTrackingStateDepA_states] :: MsgTrackingStateDepA -> ![TrackingChannelStateDepA] trackingChannelStateDepA_cn0 :: Lens' TrackingChannelStateDepA Float trackingChannelStateDepA_prn :: Lens' TrackingChannelStateDepA Word8 trackingChannelStateDepA_state :: Lens' TrackingChannelStateDepA Word8 msgTrackingStateDepA :: Word16 -- | TrackingChannelStateDepB. -- -- Deprecated. data TrackingChannelStateDepB TrackingChannelStateDepB :: !Word8 -> !GnssSignalDep -> !Float -> TrackingChannelStateDepB -- | Status of tracking channel [_trackingChannelStateDepB_state] :: TrackingChannelStateDepB -> !Word8 -- | GNSS signal being tracked [_trackingChannelStateDepB_sid] :: TrackingChannelStateDepB -> !GnssSignalDep -- | Carrier-to-noise density [_trackingChannelStateDepB_cn0] :: TrackingChannelStateDepB -> !Float msgTrackingStateDepA_states :: Iso' MsgTrackingStateDepA [TrackingChannelStateDepA] -- | SBP class for message MSG_TRACKING_STATE_DEP_B (0x0013). -- -- Deprecated. data MsgTrackingStateDepB MsgTrackingStateDepB :: ![TrackingChannelStateDepB] -> MsgTrackingStateDepB -- | Signal tracking channel state [_msgTrackingStateDepB_states] :: MsgTrackingStateDepB -> ![TrackingChannelStateDepB] trackingChannelStateDepB_cn0 :: Lens' TrackingChannelStateDepB Float trackingChannelStateDepB_sid :: Lens' TrackingChannelStateDepB GnssSignalDep trackingChannelStateDepB_state :: Lens' TrackingChannelStateDepB Word8 msgTrackingStateDepB :: Word16 msgTrackingStateDepB_states :: Iso' MsgTrackingStateDepB [TrackingChannelStateDepB] instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Tracking.MsgTrackingStateDepB instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Tracking.MsgTrackingStateDepB instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Tracking.MsgTrackingStateDepB instance GHC.Classes.Eq SwiftNav.SBP.Tracking.MsgTrackingStateDepB instance GHC.Read.Read SwiftNav.SBP.Tracking.MsgTrackingStateDepB instance GHC.Show.Show SwiftNav.SBP.Tracking.MsgTrackingStateDepB instance Data.Binary.Class.Binary SwiftNav.SBP.Tracking.MsgTrackingStateDepB instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Tracking.TrackingChannelStateDepB instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Tracking.TrackingChannelStateDepB instance GHC.Classes.Eq SwiftNav.SBP.Tracking.TrackingChannelStateDepB instance GHC.Read.Read SwiftNav.SBP.Tracking.TrackingChannelStateDepB instance GHC.Show.Show SwiftNav.SBP.Tracking.TrackingChannelStateDepB instance Data.Binary.Class.Binary SwiftNav.SBP.Tracking.TrackingChannelStateDepB instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Tracking.MsgTrackingStateDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Tracking.MsgTrackingStateDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Tracking.MsgTrackingStateDepA instance GHC.Classes.Eq SwiftNav.SBP.Tracking.MsgTrackingStateDepA instance GHC.Read.Read SwiftNav.SBP.Tracking.MsgTrackingStateDepA instance GHC.Show.Show SwiftNav.SBP.Tracking.MsgTrackingStateDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Tracking.MsgTrackingStateDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Tracking.TrackingChannelStateDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Tracking.TrackingChannelStateDepA instance GHC.Classes.Eq SwiftNav.SBP.Tracking.TrackingChannelStateDepA instance GHC.Read.Read SwiftNav.SBP.Tracking.TrackingChannelStateDepA instance GHC.Show.Show SwiftNav.SBP.Tracking.TrackingChannelStateDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Tracking.TrackingChannelStateDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Tracking.MsgTrackingIqDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Tracking.MsgTrackingIqDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Tracking.MsgTrackingIqDepA instance GHC.Classes.Eq SwiftNav.SBP.Tracking.MsgTrackingIqDepA instance GHC.Read.Read SwiftNav.SBP.Tracking.MsgTrackingIqDepA instance GHC.Show.Show SwiftNav.SBP.Tracking.MsgTrackingIqDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Tracking.MsgTrackingIqDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Tracking.MsgTrackingIqDepB instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Tracking.MsgTrackingIqDepB instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Tracking.MsgTrackingIqDepB instance GHC.Classes.Eq SwiftNav.SBP.Tracking.MsgTrackingIqDepB instance GHC.Read.Read SwiftNav.SBP.Tracking.MsgTrackingIqDepB instance GHC.Show.Show SwiftNav.SBP.Tracking.MsgTrackingIqDepB instance Data.Binary.Class.Binary SwiftNav.SBP.Tracking.MsgTrackingIqDepB instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Tracking.TrackingChannelCorrelationDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Tracking.TrackingChannelCorrelationDep instance GHC.Classes.Eq SwiftNav.SBP.Tracking.TrackingChannelCorrelationDep instance GHC.Read.Read SwiftNav.SBP.Tracking.TrackingChannelCorrelationDep instance GHC.Show.Show SwiftNav.SBP.Tracking.TrackingChannelCorrelationDep instance Data.Binary.Class.Binary SwiftNav.SBP.Tracking.TrackingChannelCorrelationDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Tracking.MsgTrackingIq instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Tracking.MsgTrackingIq instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Tracking.MsgTrackingIq instance GHC.Classes.Eq SwiftNav.SBP.Tracking.MsgTrackingIq instance GHC.Read.Read SwiftNav.SBP.Tracking.MsgTrackingIq instance GHC.Show.Show SwiftNav.SBP.Tracking.MsgTrackingIq instance Data.Binary.Class.Binary SwiftNav.SBP.Tracking.MsgTrackingIq instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Tracking.TrackingChannelCorrelation instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Tracking.TrackingChannelCorrelation instance GHC.Classes.Eq SwiftNav.SBP.Tracking.TrackingChannelCorrelation instance GHC.Read.Read SwiftNav.SBP.Tracking.TrackingChannelCorrelation instance GHC.Show.Show SwiftNav.SBP.Tracking.TrackingChannelCorrelation instance Data.Binary.Class.Binary SwiftNav.SBP.Tracking.TrackingChannelCorrelation instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Tracking.MsgMeasurementState instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Tracking.MsgMeasurementState instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Tracking.MsgMeasurementState instance GHC.Classes.Eq SwiftNav.SBP.Tracking.MsgMeasurementState instance GHC.Read.Read SwiftNav.SBP.Tracking.MsgMeasurementState instance GHC.Show.Show SwiftNav.SBP.Tracking.MsgMeasurementState instance Data.Binary.Class.Binary SwiftNav.SBP.Tracking.MsgMeasurementState instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Tracking.MeasurementState instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Tracking.MeasurementState instance GHC.Classes.Eq SwiftNav.SBP.Tracking.MeasurementState instance GHC.Read.Read SwiftNav.SBP.Tracking.MeasurementState instance GHC.Show.Show SwiftNav.SBP.Tracking.MeasurementState instance Data.Binary.Class.Binary SwiftNav.SBP.Tracking.MeasurementState instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Tracking.MsgTrackingState instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Tracking.MsgTrackingState instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Tracking.MsgTrackingState instance GHC.Classes.Eq SwiftNav.SBP.Tracking.MsgTrackingState instance GHC.Read.Read SwiftNav.SBP.Tracking.MsgTrackingState instance GHC.Show.Show SwiftNav.SBP.Tracking.MsgTrackingState instance Data.Binary.Class.Binary SwiftNav.SBP.Tracking.MsgTrackingState instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Tracking.TrackingChannelState instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Tracking.TrackingChannelState instance GHC.Classes.Eq SwiftNav.SBP.Tracking.TrackingChannelState instance GHC.Read.Read SwiftNav.SBP.Tracking.TrackingChannelState instance GHC.Show.Show SwiftNav.SBP.Tracking.TrackingChannelState instance Data.Binary.Class.Binary SwiftNav.SBP.Tracking.TrackingChannelState instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Tracking.MsgTrackingStateDetailedDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Tracking.MsgTrackingStateDetailedDep instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Tracking.MsgTrackingStateDetailedDep instance GHC.Classes.Eq SwiftNav.SBP.Tracking.MsgTrackingStateDetailedDep instance GHC.Read.Read SwiftNav.SBP.Tracking.MsgTrackingStateDetailedDep instance GHC.Show.Show SwiftNav.SBP.Tracking.MsgTrackingStateDetailedDep instance Data.Binary.Class.Binary SwiftNav.SBP.Tracking.MsgTrackingStateDetailedDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Tracking.MsgTrackingStateDetailedDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Tracking.MsgTrackingStateDetailedDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Tracking.MsgTrackingStateDetailedDepA instance GHC.Classes.Eq SwiftNav.SBP.Tracking.MsgTrackingStateDetailedDepA instance GHC.Read.Read SwiftNav.SBP.Tracking.MsgTrackingStateDetailedDepA instance GHC.Show.Show SwiftNav.SBP.Tracking.MsgTrackingStateDetailedDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Tracking.MsgTrackingStateDetailedDepA -- | < Precise State Space Representation (SSR) corrections format > module SwiftNav.SBP.Ssr -- | CodeBiasesContent. -- -- Code biases are to be added to pseudorange. The corrections conform -- with RTCMv3 MT 1059 / 1065. data CodeBiasesContent CodeBiasesContent :: !Word8 -> !Int16 -> CodeBiasesContent -- | Signal encoded following RTCM specifications (DF380, DF381, DF382 and -- DF467). [_codeBiasesContent_code] :: CodeBiasesContent -> !Word8 -- | Code bias value [_codeBiasesContent_value] :: CodeBiasesContent -> !Int16 -- | PhaseBiasesContent. -- -- Phase biases are to be added to carrier phase measurements. data PhaseBiasesContent PhaseBiasesContent :: !Word8 -> !Word8 -> !Word8 -> !Word8 -> !Int32 -> PhaseBiasesContent -- | Signal encoded following RTCM specifications (DF380, DF381, DF382 and -- DF467) [_phaseBiasesContent_code] :: PhaseBiasesContent -> !Word8 -- | Indicator for integer property [_phaseBiasesContent_integer_indicator] :: PhaseBiasesContent -> !Word8 -- | Indicator for two groups of Wide-Lane(s) integer property [_phaseBiasesContent_widelane_integer_indicator] :: PhaseBiasesContent -> !Word8 -- | Signal phase discontinuity counter. Increased for every discontinuity -- in phase. [_phaseBiasesContent_discontinuity_counter] :: PhaseBiasesContent -> !Word8 -- | Phase bias for specified signal [_phaseBiasesContent_bias] :: PhaseBiasesContent -> !Int32 codeBiasesContent_code :: Lens' CodeBiasesContent Word8 codeBiasesContent_value :: Lens' CodeBiasesContent Int16 -- | STECHeader. -- -- A full set of STEC information will likely span multiple SBP messages, -- since SBP message a limited to 255 bytes. The header is used to tie -- multiple SBP messages into a sequence. data STECHeader STECHeader :: !Word16 -> !Word16 -> !GpsTimeSec -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> STECHeader -- | Unique identifier of the tile set this tile belongs to. [_sTECHeader_tile_set_id] :: STECHeader -> !Word16 -- | Unique identifier of this tile in the tile set. [_sTECHeader_tile_id] :: STECHeader -> !Word16 -- | GNSS reference time of the correction [_sTECHeader_time] :: STECHeader -> !GpsTimeSec -- | Number of messages in the dataset [_sTECHeader_num_msgs] :: STECHeader -> !Word8 -- | Position of this message in the dataset [_sTECHeader_seq_num] :: STECHeader -> !Word8 -- | Update interval between consecutive corrections. Encoded following -- RTCM DF391 specification. [_sTECHeader_update_interval] :: STECHeader -> !Word8 -- | IOD of the SSR atmospheric correction [_sTECHeader_iod_atmo] :: STECHeader -> !Word8 phaseBiasesContent_bias :: Lens' PhaseBiasesContent Int32 phaseBiasesContent_code :: Lens' PhaseBiasesContent Word8 phaseBiasesContent_discontinuity_counter :: Lens' PhaseBiasesContent Word8 phaseBiasesContent_integer_indicator :: Lens' PhaseBiasesContent Word8 phaseBiasesContent_widelane_integer_indicator :: Lens' PhaseBiasesContent Word8 -- | GriddedCorrectionHeader. -- -- The LPP message contains nested variable length arrays which are not -- supported in SBP, so each grid point will be identified by the index. data GriddedCorrectionHeader GriddedCorrectionHeader :: !Word16 -> !Word16 -> !GpsTimeSec -> !Word16 -> !Word16 -> !Word8 -> !Word8 -> !Word8 -> GriddedCorrectionHeader -- | Unique identifier of the tile set this tile belongs to. [_griddedCorrectionHeader_tile_set_id] :: GriddedCorrectionHeader -> !Word16 -- | Unique identifier of this tile in the tile set. [_griddedCorrectionHeader_tile_id] :: GriddedCorrectionHeader -> !Word16 -- | GNSS reference time of the correction [_griddedCorrectionHeader_time] :: GriddedCorrectionHeader -> !GpsTimeSec -- | Number of messages in the dataset [_griddedCorrectionHeader_num_msgs] :: GriddedCorrectionHeader -> !Word16 -- | Position of this message in the dataset [_griddedCorrectionHeader_seq_num] :: GriddedCorrectionHeader -> !Word16 -- | Update interval between consecutive corrections. Encoded following -- RTCM DF391 specification. [_griddedCorrectionHeader_update_interval] :: GriddedCorrectionHeader -> !Word8 -- | IOD of the SSR atmospheric correction [_griddedCorrectionHeader_iod_atmo] :: GriddedCorrectionHeader -> !Word8 -- | Quality of the troposphere data. Encoded following RTCM DF389 -- specification in units of m. [_griddedCorrectionHeader_tropo_quality_indicator] :: GriddedCorrectionHeader -> !Word8 sTECHeader_iod_atmo :: Lens' STECHeader Word8 sTECHeader_num_msgs :: Lens' STECHeader Word8 sTECHeader_seq_num :: Lens' STECHeader Word8 sTECHeader_tile_id :: Lens' STECHeader Word16 sTECHeader_tile_set_id :: Lens' STECHeader Word16 sTECHeader_time :: Lens' STECHeader GpsTimeSec sTECHeader_update_interval :: Lens' STECHeader Word8 -- | STECSatElement. -- -- STEC polynomial for the given satellite. data STECSatElement STECSatElement :: !SvId -> !Word8 -> ![Int16] -> STECSatElement -- | Unique space vehicle identifier [_sTECSatElement_sv_id] :: STECSatElement -> !SvId -- | Quality of the STEC data. Encoded following RTCM DF389 specification -- but in units of TECU instead of m. [_sTECSatElement_stec_quality_indicator] :: STECSatElement -> !Word8 -- | Coefficients of the STEC polynomial in the order of C00, C01, C10, C11 [_sTECSatElement_stec_coeff] :: STECSatElement -> ![Int16] griddedCorrectionHeader_iod_atmo :: Lens' GriddedCorrectionHeader Word8 griddedCorrectionHeader_num_msgs :: Lens' GriddedCorrectionHeader Word16 griddedCorrectionHeader_seq_num :: Lens' GriddedCorrectionHeader Word16 griddedCorrectionHeader_tile_id :: Lens' GriddedCorrectionHeader Word16 griddedCorrectionHeader_tile_set_id :: Lens' GriddedCorrectionHeader Word16 griddedCorrectionHeader_time :: Lens' GriddedCorrectionHeader GpsTimeSec griddedCorrectionHeader_tropo_quality_indicator :: Lens' GriddedCorrectionHeader Word8 griddedCorrectionHeader_update_interval :: Lens' GriddedCorrectionHeader Word8 -- | TroposphericDelayCorrectionNoStd. -- -- Troposphere vertical delays at the grid point. data TroposphericDelayCorrectionNoStd TroposphericDelayCorrectionNoStd :: !Int16 -> !Int8 -> TroposphericDelayCorrectionNoStd -- | Hydrostatic vertical delay [_troposphericDelayCorrectionNoStd_hydro] :: TroposphericDelayCorrectionNoStd -> !Int16 -- | Wet vertical delay [_troposphericDelayCorrectionNoStd_wet] :: TroposphericDelayCorrectionNoStd -> !Int8 sTECSatElement_stec_coeff :: Lens' STECSatElement [Int16] sTECSatElement_stec_quality_indicator :: Lens' STECSatElement Word8 sTECSatElement_sv_id :: Lens' STECSatElement SvId -- | TroposphericDelayCorrection. -- -- Troposphere vertical delays (mean and standard deviation) at the grid -- point. data TroposphericDelayCorrection TroposphericDelayCorrection :: !Int16 -> !Int8 -> !Word8 -> TroposphericDelayCorrection -- | Hydrostatic vertical delay [_troposphericDelayCorrection_hydro] :: TroposphericDelayCorrection -> !Int16 -- | Wet vertical delay [_troposphericDelayCorrection_wet] :: TroposphericDelayCorrection -> !Int8 -- | stddev [_troposphericDelayCorrection_stddev] :: TroposphericDelayCorrection -> !Word8 troposphericDelayCorrectionNoStd_hydro :: Lens' TroposphericDelayCorrectionNoStd Int16 troposphericDelayCorrectionNoStd_wet :: Lens' TroposphericDelayCorrectionNoStd Int8 -- | STECResidualNoStd. -- -- STEC residual for the given satellite at the grid point. data STECResidualNoStd STECResidualNoStd :: !SvId -> !Int16 -> STECResidualNoStd -- | space vehicle identifier [_sTECResidualNoStd_sv_id] :: STECResidualNoStd -> !SvId -- | STEC residual [_sTECResidualNoStd_residual] :: STECResidualNoStd -> !Int16 troposphericDelayCorrection_hydro :: Lens' TroposphericDelayCorrection Int16 troposphericDelayCorrection_stddev :: Lens' TroposphericDelayCorrection Word8 troposphericDelayCorrection_wet :: Lens' TroposphericDelayCorrection Int8 -- | STECResidual. -- -- STEC residual (mean and standard deviation) for the given satellite at -- the grid point. data STECResidual STECResidual :: !SvId -> !Int16 -> !Word8 -> STECResidual -- | space vehicle identifier [_sTECResidual_sv_id] :: STECResidual -> !SvId -- | STEC residual [_sTECResidual_residual] :: STECResidual -> !Int16 -- | stddev [_sTECResidual_stddev] :: STECResidual -> !Word8 sTECResidualNoStd_residual :: Lens' STECResidualNoStd Int16 sTECResidualNoStd_sv_id :: Lens' STECResidualNoStd SvId -- | SBP class for message MSG_SSR_ORBIT_CLOCK (0x05DD). -- -- The precise orbit and clock correction message is to be applied as a -- delta correction to broadcast ephemeris and is an equivalent to the -- 1060 /1066 RTCM message types. data MsgSsrOrbitClock MsgSsrOrbitClock :: !GpsTimeSec -> !GnssSignal -> !Word8 -> !Word8 -> !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> MsgSsrOrbitClock -- | GNSS reference time of the correction [_msgSsrOrbitClock_time] :: MsgSsrOrbitClock -> !GpsTimeSec -- | GNSS signal identifier (16 bit) [_msgSsrOrbitClock_sid] :: MsgSsrOrbitClock -> !GnssSignal -- | Update interval between consecutive corrections. Encoded following -- RTCM DF391 specification. [_msgSsrOrbitClock_update_interval] :: MsgSsrOrbitClock -> !Word8 -- | IOD of the SSR correction. A change of Issue Of Data SSR is used to -- indicate a change in the SSR generating configuration [_msgSsrOrbitClock_iod_ssr] :: MsgSsrOrbitClock -> !Word8 -- | Issue of broadcast ephemeris data or IODCRC (Beidou) [_msgSsrOrbitClock_iod] :: MsgSsrOrbitClock -> !Word32 -- | Orbit radial delta correction [_msgSsrOrbitClock_radial] :: MsgSsrOrbitClock -> !Int32 -- | Orbit along delta correction [_msgSsrOrbitClock_along] :: MsgSsrOrbitClock -> !Int32 -- | Orbit along delta correction [_msgSsrOrbitClock_cross] :: MsgSsrOrbitClock -> !Int32 -- | Velocity of orbit radial delta correction [_msgSsrOrbitClock_dot_radial] :: MsgSsrOrbitClock -> !Int32 -- | Velocity of orbit along delta correction [_msgSsrOrbitClock_dot_along] :: MsgSsrOrbitClock -> !Int32 -- | Velocity of orbit cross delta correction [_msgSsrOrbitClock_dot_cross] :: MsgSsrOrbitClock -> !Int32 -- | C0 polynomial coefficient for correction of broadcast satellite clock [_msgSsrOrbitClock_c0] :: MsgSsrOrbitClock -> !Int32 -- | C1 polynomial coefficient for correction of broadcast satellite clock [_msgSsrOrbitClock_c1] :: MsgSsrOrbitClock -> !Int32 -- | C2 polynomial coefficient for correction of broadcast satellite clock [_msgSsrOrbitClock_c2] :: MsgSsrOrbitClock -> !Int32 sTECResidual_residual :: Lens' STECResidual Int16 sTECResidual_stddev :: Lens' STECResidual Word8 sTECResidual_sv_id :: Lens' STECResidual SvId msgSsrOrbitClock :: Word16 -- | SBP class for message MSG_SSR_CODE_BIASES (0x05E1). -- -- The precise code biases message is to be added to the pseudorange of -- the corresponding signal to get corrected pseudorange. It is an -- equivalent to the 1059 / 1065 RTCM message types. data MsgSsrCodeBiases MsgSsrCodeBiases :: !GpsTimeSec -> !GnssSignal -> !Word8 -> !Word8 -> ![CodeBiasesContent] -> MsgSsrCodeBiases -- | GNSS reference time of the correction [_msgSsrCodeBiases_time] :: MsgSsrCodeBiases -> !GpsTimeSec -- | GNSS signal identifier (16 bit) [_msgSsrCodeBiases_sid] :: MsgSsrCodeBiases -> !GnssSignal -- | Update interval between consecutive corrections. Encoded following -- RTCM DF391 specification. [_msgSsrCodeBiases_update_interval] :: MsgSsrCodeBiases -> !Word8 -- | IOD of the SSR correction. A change of Issue Of Data SSR is used to -- indicate a change in the SSR generating configuration [_msgSsrCodeBiases_iod_ssr] :: MsgSsrCodeBiases -> !Word8 -- | Code biases for the different satellite signals [_msgSsrCodeBiases_biases] :: MsgSsrCodeBiases -> ![CodeBiasesContent] msgSsrOrbitClock_along :: Lens' MsgSsrOrbitClock Int32 msgSsrOrbitClock_c0 :: Lens' MsgSsrOrbitClock Int32 msgSsrOrbitClock_c1 :: Lens' MsgSsrOrbitClock Int32 msgSsrOrbitClock_c2 :: Lens' MsgSsrOrbitClock Int32 msgSsrOrbitClock_cross :: Lens' MsgSsrOrbitClock Int32 msgSsrOrbitClock_dot_along :: Lens' MsgSsrOrbitClock Int32 msgSsrOrbitClock_dot_cross :: Lens' MsgSsrOrbitClock Int32 msgSsrOrbitClock_dot_radial :: Lens' MsgSsrOrbitClock Int32 msgSsrOrbitClock_iod :: Lens' MsgSsrOrbitClock Word32 msgSsrOrbitClock_iod_ssr :: Lens' MsgSsrOrbitClock Word8 msgSsrOrbitClock_radial :: Lens' MsgSsrOrbitClock Int32 msgSsrOrbitClock_sid :: Lens' MsgSsrOrbitClock GnssSignal msgSsrOrbitClock_time :: Lens' MsgSsrOrbitClock GpsTimeSec msgSsrOrbitClock_update_interval :: Lens' MsgSsrOrbitClock Word8 msgSsrCodeBiases :: Word16 -- | SBP class for message MSG_SSR_PHASE_BIASES (0x05E6). -- -- The precise phase biases message contains the biases to be added to -- the carrier phase of the corresponding signal to get corrected carrier -- phase measurement, as well as the satellite yaw angle to be applied to -- compute the phase wind-up correction. It is typically an equivalent to -- the 1265 RTCM message types. data MsgSsrPhaseBiases MsgSsrPhaseBiases :: !GpsTimeSec -> !GnssSignal -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> !Word16 -> !Int8 -> ![PhaseBiasesContent] -> MsgSsrPhaseBiases -- | GNSS reference time of the correction [_msgSsrPhaseBiases_time] :: MsgSsrPhaseBiases -> !GpsTimeSec -- | GNSS signal identifier (16 bit) [_msgSsrPhaseBiases_sid] :: MsgSsrPhaseBiases -> !GnssSignal -- | Update interval between consecutive corrections. Encoded following -- RTCM DF391 specification. [_msgSsrPhaseBiases_update_interval] :: MsgSsrPhaseBiases -> !Word8 -- | IOD of the SSR correction. A change of Issue Of Data SSR is used to -- indicate a change in the SSR generating configuration [_msgSsrPhaseBiases_iod_ssr] :: MsgSsrPhaseBiases -> !Word8 -- | Indicator for the dispersive phase biases property. [_msgSsrPhaseBiases_dispersive_bias] :: MsgSsrPhaseBiases -> !Word8 -- | Consistency indicator for Melbourne-Wubbena linear combinations [_msgSsrPhaseBiases_mw_consistency] :: MsgSsrPhaseBiases -> !Word8 -- | Satellite yaw angle [_msgSsrPhaseBiases_yaw] :: MsgSsrPhaseBiases -> !Word16 -- | Satellite yaw angle rate [_msgSsrPhaseBiases_yaw_rate] :: MsgSsrPhaseBiases -> !Int8 -- | Phase biases corrections for a satellite being tracked. [_msgSsrPhaseBiases_biases] :: MsgSsrPhaseBiases -> ![PhaseBiasesContent] msgSsrCodeBiases_biases :: Lens' MsgSsrCodeBiases [CodeBiasesContent] msgSsrCodeBiases_iod_ssr :: Lens' MsgSsrCodeBiases Word8 msgSsrCodeBiases_sid :: Lens' MsgSsrCodeBiases GnssSignal msgSsrCodeBiases_time :: Lens' MsgSsrCodeBiases GpsTimeSec msgSsrCodeBiases_update_interval :: Lens' MsgSsrCodeBiases Word8 msgSsrPhaseBiases :: Word16 -- | SBP class for message MSG_SSR_STEC_CORRECTION_DEP (0x05FB). -- -- The Slant Total Electron Content per space vehicle, given as -- polynomial approximation for a given tile. This should be combined -- with the MSG_SSR_GRIDDED_CORRECTION message to get the state space -- representation of the atmospheric delay. -- -- It is typically equivalent to the QZSS CLAS Sub Type 8 messages. data MsgSsrStecCorrectionDep MsgSsrStecCorrectionDep :: !STECHeader -> ![STECSatElement] -> MsgSsrStecCorrectionDep -- | Header of a STEC polynomial coefficient message. [_msgSsrStecCorrectionDep_header] :: MsgSsrStecCorrectionDep -> !STECHeader -- | Array of STEC polynomial coefficients for each space vehicle. [_msgSsrStecCorrectionDep_stec_sat_list] :: MsgSsrStecCorrectionDep -> ![STECSatElement] msgSsrPhaseBiases_biases :: Lens' MsgSsrPhaseBiases [PhaseBiasesContent] msgSsrPhaseBiases_dispersive_bias :: Lens' MsgSsrPhaseBiases Word8 msgSsrPhaseBiases_iod_ssr :: Lens' MsgSsrPhaseBiases Word8 msgSsrPhaseBiases_mw_consistency :: Lens' MsgSsrPhaseBiases Word8 msgSsrPhaseBiases_sid :: Lens' MsgSsrPhaseBiases GnssSignal msgSsrPhaseBiases_time :: Lens' MsgSsrPhaseBiases GpsTimeSec msgSsrPhaseBiases_update_interval :: Lens' MsgSsrPhaseBiases Word8 msgSsrPhaseBiases_yaw :: Lens' MsgSsrPhaseBiases Word16 msgSsrPhaseBiases_yaw_rate :: Lens' MsgSsrPhaseBiases Int8 msgSsrStecCorrectionDep :: Word16 data MsgSsrStecCorrection MsgSsrStecCorrection :: ![Word8] -> MsgSsrStecCorrection [_msgSsrStecCorrection_stub] :: MsgSsrStecCorrection -> ![Word8] msgSsrStecCorrectionDep_header :: Lens' MsgSsrStecCorrectionDep STECHeader msgSsrStecCorrectionDep_stec_sat_list :: Lens' MsgSsrStecCorrectionDep [STECSatElement] msgSsrStecCorrection :: Word16 -- | SBP class for message MSG_SSR_GRIDDED_CORRECTION (0x05FC). -- -- STEC residuals are per space vehicle, troposphere is not. -- -- It is typically equivalent to the QZSS CLAS Sub Type 9 messages. data MsgSsrGriddedCorrection MsgSsrGriddedCorrection :: !GriddedCorrectionHeader -> !Word16 -> !TroposphericDelayCorrection -> ![STECResidual] -> MsgSsrGriddedCorrection -- | Header of a gridded correction message [_msgSsrGriddedCorrection_header] :: MsgSsrGriddedCorrection -> !GriddedCorrectionHeader -- | Index of the grid point. [_msgSsrGriddedCorrection_index] :: MsgSsrGriddedCorrection -> !Word16 -- | Wet and hydrostatic vertical delays (mean, stddev). [_msgSsrGriddedCorrection_tropo_delay_correction] :: MsgSsrGriddedCorrection -> !TroposphericDelayCorrection -- | STEC residuals for each satellite (mean, stddev). [_msgSsrGriddedCorrection_stec_residuals] :: MsgSsrGriddedCorrection -> ![STECResidual] msgSsrStecCorrection_stub :: Iso' MsgSsrStecCorrection [Word8] msgSsrGriddedCorrection :: Word16 data MsgSsrGriddedCorrectionBounds MsgSsrGriddedCorrectionBounds :: ![Word8] -> MsgSsrGriddedCorrectionBounds [_msgSsrGriddedCorrectionBounds_stub] :: MsgSsrGriddedCorrectionBounds -> ![Word8] msgSsrGriddedCorrection_header :: Lens' MsgSsrGriddedCorrection GriddedCorrectionHeader msgSsrGriddedCorrection_index :: Lens' MsgSsrGriddedCorrection Word16 msgSsrGriddedCorrection_stec_residuals :: Lens' MsgSsrGriddedCorrection [STECResidual] msgSsrGriddedCorrection_tropo_delay_correction :: Lens' MsgSsrGriddedCorrection TroposphericDelayCorrection msgSsrGriddedCorrectionBounds :: Word16 -- | SBP class for message MSG_SSR_TILE_DEFINITION_DEP (0x05F6). -- -- Provides the correction point coordinates for the atmospheric -- correction values in the MSG_SSR_STEC_CORRECTION_DEP and -- MSG_SSR_GRIDDED_CORRECTION messages. -- -- Based on ETSI TS 137 355 V16.1.0 (LTE Positioning Protocol) -- information element GNSS-SSR-CorrectionPoints. SBP only supports -- gridded arrays of correction points, not lists of points. data MsgSsrTileDefinitionDep MsgSsrTileDefinitionDep :: !Word16 -> !Word16 -> !Int16 -> !Int16 -> !Word16 -> !Word16 -> !Word16 -> !Word16 -> !Word64 -> MsgSsrTileDefinitionDep -- | Unique identifier of the tile set this tile belongs to. [_msgSsrTileDefinitionDep_tile_set_id] :: MsgSsrTileDefinitionDep -> !Word16 -- | Unique identifier of this tile in the tile set. See -- GNSS-SSR-ArrayOfCorrectionPoints field correctionPointSetID. [_msgSsrTileDefinitionDep_tile_id] :: MsgSsrTileDefinitionDep -> !Word16 -- | North-West corner correction point latitude. -- -- The relation between the latitude X in the range [-90, 90] and the -- coded number N is: -- -- N = floor((X / 90) * 2^14) -- -- See GNSS-SSR-ArrayOfCorrectionPoints field referencePointLatitude. [_msgSsrTileDefinitionDep_corner_nw_lat] :: MsgSsrTileDefinitionDep -> !Int16 -- | North-West corner correction point longitude. -- -- The relation between the longitude X in the range [-180, 180] and the -- coded number N is: -- -- N = floor((X / 180) * 2^15) -- -- See GNSS-SSR-ArrayOfCorrectionPoints field referencePointLongitude. [_msgSsrTileDefinitionDep_corner_nw_lon] :: MsgSsrTileDefinitionDep -> !Int16 -- | Spacing of the correction points in the latitude direction. -- -- See GNSS-SSR-ArrayOfCorrectionPoints field stepOfLatitude. [_msgSsrTileDefinitionDep_spacing_lat] :: MsgSsrTileDefinitionDep -> !Word16 -- | Spacing of the correction points in the longitude direction. -- -- See GNSS-SSR-ArrayOfCorrectionPoints field stepOfLongitude. [_msgSsrTileDefinitionDep_spacing_lon] :: MsgSsrTileDefinitionDep -> !Word16 -- | Number of steps in the latitude direction. -- -- See GNSS-SSR-ArrayOfCorrectionPoints field numberOfStepsLatitude. [_msgSsrTileDefinitionDep_rows] :: MsgSsrTileDefinitionDep -> !Word16 -- | Number of steps in the longitude direction. -- -- See GNSS-SSR-ArrayOfCorrectionPoints field numberOfStepsLongitude. [_msgSsrTileDefinitionDep_cols] :: MsgSsrTileDefinitionDep -> !Word16 -- | Specifies the availability of correction data at the correction points -- in the array. -- -- If a specific bit is enabled (set to 1), the correction is not -- available. Only the first rows * cols bits are used, the remainder are -- set to 0. If there are more then 64 correction points the remaining -- corrections are always available. -- -- Starting with the northwest corner of the array (top left on a north -- oriented map) the correction points are enumerated with row precedence -- - first row west to east, second row west to east, until last row west -- to east - ending with the southeast corner of the array. -- -- See GNSS-SSR-ArrayOfCorrectionPoints field bitmaskOfGrids but note the -- definition of the bits is inverted. [_msgSsrTileDefinitionDep_bitmask] :: MsgSsrTileDefinitionDep -> !Word64 msgSsrGriddedCorrectionBounds_stub :: Iso' MsgSsrGriddedCorrectionBounds [Word8] msgSsrTileDefinitionDep :: Word16 -- | SBP class for message MSG_SSR_TILE_DEFINITION (0x05F7). -- -- Provides the correction point coordinates for the atmospheric -- correction values in the MSG_SSR_STEC_CORRECTION and -- MSG_SSR_GRIDDED_CORRECTION messages. -- -- Based on ETSI TS 137 355 V16.1.0 (LTE Positioning Protocol) -- information element GNSS-SSR-CorrectionPoints. SBP only supports -- gridded arrays of correction points, not lists of points. data MsgSsrTileDefinition MsgSsrTileDefinition :: ![Word8] -> MsgSsrTileDefinition [_msgSsrTileDefinition_stub] :: MsgSsrTileDefinition -> ![Word8] msgSsrTileDefinitionDep_bitmask :: Lens' MsgSsrTileDefinitionDep Word64 msgSsrTileDefinitionDep_cols :: Lens' MsgSsrTileDefinitionDep Word16 msgSsrTileDefinitionDep_corner_nw_lat :: Lens' MsgSsrTileDefinitionDep Int16 msgSsrTileDefinitionDep_corner_nw_lon :: Lens' MsgSsrTileDefinitionDep Int16 msgSsrTileDefinitionDep_rows :: Lens' MsgSsrTileDefinitionDep Word16 msgSsrTileDefinitionDep_spacing_lat :: Lens' MsgSsrTileDefinitionDep Word16 msgSsrTileDefinitionDep_spacing_lon :: Lens' MsgSsrTileDefinitionDep Word16 msgSsrTileDefinitionDep_tile_id :: Lens' MsgSsrTileDefinitionDep Word16 msgSsrTileDefinitionDep_tile_set_id :: Lens' MsgSsrTileDefinitionDep Word16 msgSsrTileDefinition :: Word16 -- | SatelliteAPC. -- -- Contains phase center offset and elevation variation corrections for -- one signal on a satellite. data SatelliteAPC SatelliteAPC :: !GnssSignal -> !Word8 -> !Word16 -> ![Int16] -> ![Int8] -> SatelliteAPC -- | GNSS signal identifier (16 bit) [_satelliteAPC_sid] :: SatelliteAPC -> !GnssSignal -- | Additional satellite information [_satelliteAPC_sat_info] :: SatelliteAPC -> !Word8 -- | Satellite Code, as defined by IGS. Typically the space vehicle number. [_satelliteAPC_svn] :: SatelliteAPC -> !Word16 -- | Mean phase center offset, X Y and Z axes. See IGS ANTEX file format -- description for coordinate system definition. [_satelliteAPC_pco] :: SatelliteAPC -> ![Int16] -- | Elevation dependent phase center variations. First element is 0 -- degrees separation from the Z axis, subsequent elements represent -- elevation variations in 1 degree increments. [_satelliteAPC_pcv] :: SatelliteAPC -> ![Int8] msgSsrTileDefinition_stub :: Iso' MsgSsrTileDefinition [Word8] data MsgSsrSatelliteApc MsgSsrSatelliteApc :: ![SatelliteAPC] -> MsgSsrSatelliteApc -- | Satellite antenna phase center corrections [_msgSsrSatelliteApc_apc] :: MsgSsrSatelliteApc -> ![SatelliteAPC] satelliteAPC_pco :: Lens' SatelliteAPC [Int16] satelliteAPC_pcv :: Lens' SatelliteAPC [Int8] satelliteAPC_sat_info :: Lens' SatelliteAPC Word8 satelliteAPC_sid :: Lens' SatelliteAPC GnssSignal satelliteAPC_svn :: Lens' SatelliteAPC Word16 msgSsrSatelliteApc :: Word16 data MsgSsrOrbitClockDepA MsgSsrOrbitClockDepA :: !GpsTimeSec -> !GnssSignal -> !Word8 -> !Word8 -> !Word8 -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> !Int32 -> MsgSsrOrbitClockDepA -- | GNSS reference time of the correction [_msgSsrOrbitClockDepA_time] :: MsgSsrOrbitClockDepA -> !GpsTimeSec -- | GNSS signal identifier (16 bit) [_msgSsrOrbitClockDepA_sid] :: MsgSsrOrbitClockDepA -> !GnssSignal -- | Update interval between consecutive corrections. Encoded following -- RTCM DF391 specification. [_msgSsrOrbitClockDepA_update_interval] :: MsgSsrOrbitClockDepA -> !Word8 -- | IOD of the SSR correction. A change of Issue Of Data SSR is used to -- indicate a change in the SSR generating configuration [_msgSsrOrbitClockDepA_iod_ssr] :: MsgSsrOrbitClockDepA -> !Word8 -- | Issue of broadcast ephemeris data [_msgSsrOrbitClockDepA_iod] :: MsgSsrOrbitClockDepA -> !Word8 -- | Orbit radial delta correction [_msgSsrOrbitClockDepA_radial] :: MsgSsrOrbitClockDepA -> !Int32 -- | Orbit along delta correction [_msgSsrOrbitClockDepA_along] :: MsgSsrOrbitClockDepA -> !Int32 -- | Orbit along delta correction [_msgSsrOrbitClockDepA_cross] :: MsgSsrOrbitClockDepA -> !Int32 -- | Velocity of orbit radial delta correction [_msgSsrOrbitClockDepA_dot_radial] :: MsgSsrOrbitClockDepA -> !Int32 -- | Velocity of orbit along delta correction [_msgSsrOrbitClockDepA_dot_along] :: MsgSsrOrbitClockDepA -> !Int32 -- | Velocity of orbit cross delta correction [_msgSsrOrbitClockDepA_dot_cross] :: MsgSsrOrbitClockDepA -> !Int32 -- | C0 polynomial coefficient for correction of broadcast satellite clock [_msgSsrOrbitClockDepA_c0] :: MsgSsrOrbitClockDepA -> !Int32 -- | C1 polynomial coefficient for correction of broadcast satellite clock [_msgSsrOrbitClockDepA_c1] :: MsgSsrOrbitClockDepA -> !Int32 -- | C2 polynomial coefficient for correction of broadcast satellite clock [_msgSsrOrbitClockDepA_c2] :: MsgSsrOrbitClockDepA -> !Int32 msgSsrSatelliteApc_apc :: Iso' MsgSsrSatelliteApc [SatelliteAPC] msgSsrOrbitClockDepA :: Word16 -- | STECHeaderDepA. -- -- A full set of STEC information will likely span multiple SBP messages, -- since SBP message a limited to 255 bytes. The header is used to tie -- multiple SBP messages into a sequence. data STECHeaderDepA STECHeaderDepA :: !GpsTimeSec -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> STECHeaderDepA -- | GNSS reference time of the correction [_sTECHeaderDepA_time] :: STECHeaderDepA -> !GpsTimeSec -- | Number of messages in the dataset [_sTECHeaderDepA_num_msgs] :: STECHeaderDepA -> !Word8 -- | Position of this message in the dataset [_sTECHeaderDepA_seq_num] :: STECHeaderDepA -> !Word8 -- | Update interval between consecutive corrections. Encoded following -- RTCM DF391 specification. [_sTECHeaderDepA_update_interval] :: STECHeaderDepA -> !Word8 -- | IOD of the SSR atmospheric correction [_sTECHeaderDepA_iod_atmo] :: STECHeaderDepA -> !Word8 msgSsrOrbitClockDepA_along :: Lens' MsgSsrOrbitClockDepA Int32 msgSsrOrbitClockDepA_c0 :: Lens' MsgSsrOrbitClockDepA Int32 msgSsrOrbitClockDepA_c1 :: Lens' MsgSsrOrbitClockDepA Int32 msgSsrOrbitClockDepA_c2 :: Lens' MsgSsrOrbitClockDepA Int32 msgSsrOrbitClockDepA_cross :: Lens' MsgSsrOrbitClockDepA Int32 msgSsrOrbitClockDepA_dot_along :: Lens' MsgSsrOrbitClockDepA Int32 msgSsrOrbitClockDepA_dot_cross :: Lens' MsgSsrOrbitClockDepA Int32 msgSsrOrbitClockDepA_dot_radial :: Lens' MsgSsrOrbitClockDepA Int32 msgSsrOrbitClockDepA_iod :: Lens' MsgSsrOrbitClockDepA Word8 msgSsrOrbitClockDepA_iod_ssr :: Lens' MsgSsrOrbitClockDepA Word8 msgSsrOrbitClockDepA_radial :: Lens' MsgSsrOrbitClockDepA Int32 msgSsrOrbitClockDepA_sid :: Lens' MsgSsrOrbitClockDepA GnssSignal msgSsrOrbitClockDepA_time :: Lens' MsgSsrOrbitClockDepA GpsTimeSec msgSsrOrbitClockDepA_update_interval :: Lens' MsgSsrOrbitClockDepA Word8 -- | GriddedCorrectionHeaderDepA. -- -- The 3GPP message contains nested variable length arrays which are not -- supported in SBP, so each grid point will be identified by the index. data GriddedCorrectionHeaderDepA GriddedCorrectionHeaderDepA :: !GpsTimeSec -> !Word16 -> !Word16 -> !Word8 -> !Word8 -> !Word8 -> GriddedCorrectionHeaderDepA -- | GNSS reference time of the correction [_griddedCorrectionHeaderDepA_time] :: GriddedCorrectionHeaderDepA -> !GpsTimeSec -- | Number of messages in the dataset [_griddedCorrectionHeaderDepA_num_msgs] :: GriddedCorrectionHeaderDepA -> !Word16 -- | Position of this message in the dataset [_griddedCorrectionHeaderDepA_seq_num] :: GriddedCorrectionHeaderDepA -> !Word16 -- | Update interval between consecutive corrections. Encoded following -- RTCM DF391 specification. [_griddedCorrectionHeaderDepA_update_interval] :: GriddedCorrectionHeaderDepA -> !Word8 -- | IOD of the SSR atmospheric correction [_griddedCorrectionHeaderDepA_iod_atmo] :: GriddedCorrectionHeaderDepA -> !Word8 -- | Quality of the troposphere data. Encoded following RTCM DF389 -- specification in units of m. [_griddedCorrectionHeaderDepA_tropo_quality_indicator] :: GriddedCorrectionHeaderDepA -> !Word8 sTECHeaderDepA_iod_atmo :: Lens' STECHeaderDepA Word8 sTECHeaderDepA_num_msgs :: Lens' STECHeaderDepA Word8 sTECHeaderDepA_seq_num :: Lens' STECHeaderDepA Word8 sTECHeaderDepA_time :: Lens' STECHeaderDepA GpsTimeSec sTECHeaderDepA_update_interval :: Lens' STECHeaderDepA Word8 -- | GridDefinitionHeaderDepA. -- -- Defines the grid for MSG_SSR_GRIDDED_CORRECTION messages. Also -- includes an RLE encoded validity list. data GridDefinitionHeaderDepA GridDefinitionHeaderDepA :: !Word8 -> !Word16 -> !Word16 -> !Word16 -> !Word8 -> !Word8 -> GridDefinitionHeaderDepA -- | region_size (deg) = 10 / region_size_inverse 0 is an invalid value. [_gridDefinitionHeaderDepA_region_size_inverse] :: GridDefinitionHeaderDepA -> !Word8 -- | grid height (deg) = grid width (deg) = area_width / region_size 0 is -- an invalid value. [_gridDefinitionHeaderDepA_area_width] :: GridDefinitionHeaderDepA -> !Word16 -- | North-West corner latitude (deg) = region_size * lat_nw_corner_enc - -- 90 [_gridDefinitionHeaderDepA_lat_nw_corner_enc] :: GridDefinitionHeaderDepA -> !Word16 -- | North-West corner longitude (deg) = region_size * lon_nw_corner_enc - -- 180 [_gridDefinitionHeaderDepA_lon_nw_corner_enc] :: GridDefinitionHeaderDepA -> !Word16 -- | Number of messages in the dataset [_gridDefinitionHeaderDepA_num_msgs] :: GridDefinitionHeaderDepA -> !Word8 -- | Position of this message in the dataset [_gridDefinitionHeaderDepA_seq_num] :: GridDefinitionHeaderDepA -> !Word8 griddedCorrectionHeaderDepA_iod_atmo :: Lens' GriddedCorrectionHeaderDepA Word8 griddedCorrectionHeaderDepA_num_msgs :: Lens' GriddedCorrectionHeaderDepA Word16 griddedCorrectionHeaderDepA_seq_num :: Lens' GriddedCorrectionHeaderDepA Word16 griddedCorrectionHeaderDepA_time :: Lens' GriddedCorrectionHeaderDepA GpsTimeSec griddedCorrectionHeaderDepA_tropo_quality_indicator :: Lens' GriddedCorrectionHeaderDepA Word8 griddedCorrectionHeaderDepA_update_interval :: Lens' GriddedCorrectionHeaderDepA Word8 data MsgSsrStecCorrectionDepA MsgSsrStecCorrectionDepA :: !STECHeaderDepA -> ![STECSatElement] -> MsgSsrStecCorrectionDepA -- | Header of a STEC message [_msgSsrStecCorrectionDepA_header] :: MsgSsrStecCorrectionDepA -> !STECHeaderDepA -- | Array of STEC information for each space vehicle [_msgSsrStecCorrectionDepA_stec_sat_list] :: MsgSsrStecCorrectionDepA -> ![STECSatElement] gridDefinitionHeaderDepA_area_width :: Lens' GridDefinitionHeaderDepA Word16 gridDefinitionHeaderDepA_lat_nw_corner_enc :: Lens' GridDefinitionHeaderDepA Word16 gridDefinitionHeaderDepA_lon_nw_corner_enc :: Lens' GridDefinitionHeaderDepA Word16 gridDefinitionHeaderDepA_num_msgs :: Lens' GridDefinitionHeaderDepA Word8 gridDefinitionHeaderDepA_region_size_inverse :: Lens' GridDefinitionHeaderDepA Word8 gridDefinitionHeaderDepA_seq_num :: Lens' GridDefinitionHeaderDepA Word8 msgSsrStecCorrectionDepA :: Word16 data MsgSsrGriddedCorrectionNoStdDepA MsgSsrGriddedCorrectionNoStdDepA :: !GriddedCorrectionHeaderDepA -> !Word16 -> !TroposphericDelayCorrectionNoStd -> ![STECResidualNoStd] -> MsgSsrGriddedCorrectionNoStdDepA -- | Header of a Gridded Correction message [_msgSsrGriddedCorrectionNoStdDepA_header] :: MsgSsrGriddedCorrectionNoStdDepA -> !GriddedCorrectionHeaderDepA -- | Index of the grid point [_msgSsrGriddedCorrectionNoStdDepA_index] :: MsgSsrGriddedCorrectionNoStdDepA -> !Word16 -- | Wet and hydrostatic vertical delays [_msgSsrGriddedCorrectionNoStdDepA_tropo_delay_correction] :: MsgSsrGriddedCorrectionNoStdDepA -> !TroposphericDelayCorrectionNoStd -- | STEC residuals for each satellite [_msgSsrGriddedCorrectionNoStdDepA_stec_residuals] :: MsgSsrGriddedCorrectionNoStdDepA -> ![STECResidualNoStd] msgSsrStecCorrectionDepA_header :: Lens' MsgSsrStecCorrectionDepA STECHeaderDepA msgSsrStecCorrectionDepA_stec_sat_list :: Lens' MsgSsrStecCorrectionDepA [STECSatElement] msgSsrGriddedCorrectionNoStdDepA :: Word16 data MsgSsrGriddedCorrectionDepA MsgSsrGriddedCorrectionDepA :: !GriddedCorrectionHeaderDepA -> !Word16 -> !TroposphericDelayCorrection -> ![STECResidual] -> MsgSsrGriddedCorrectionDepA -- | Header of a Gridded Correction message [_msgSsrGriddedCorrectionDepA_header] :: MsgSsrGriddedCorrectionDepA -> !GriddedCorrectionHeaderDepA -- | Index of the grid point [_msgSsrGriddedCorrectionDepA_index] :: MsgSsrGriddedCorrectionDepA -> !Word16 -- | Wet and hydrostatic vertical delays (mean, stddev) [_msgSsrGriddedCorrectionDepA_tropo_delay_correction] :: MsgSsrGriddedCorrectionDepA -> !TroposphericDelayCorrection -- | STEC residuals for each satellite (mean, stddev) [_msgSsrGriddedCorrectionDepA_stec_residuals] :: MsgSsrGriddedCorrectionDepA -> ![STECResidual] msgSsrGriddedCorrectionNoStdDepA_header :: Lens' MsgSsrGriddedCorrectionNoStdDepA GriddedCorrectionHeaderDepA msgSsrGriddedCorrectionNoStdDepA_index :: Lens' MsgSsrGriddedCorrectionNoStdDepA Word16 msgSsrGriddedCorrectionNoStdDepA_stec_residuals :: Lens' MsgSsrGriddedCorrectionNoStdDepA [STECResidualNoStd] msgSsrGriddedCorrectionNoStdDepA_tropo_delay_correction :: Lens' MsgSsrGriddedCorrectionNoStdDepA TroposphericDelayCorrectionNoStd msgSsrGriddedCorrectionDepA :: Word16 data MsgSsrGridDefinitionDepA MsgSsrGridDefinitionDepA :: !GridDefinitionHeaderDepA -> ![Word8] -> MsgSsrGridDefinitionDepA -- | Header of a Gridded Correction message [_msgSsrGridDefinitionDepA_header] :: MsgSsrGridDefinitionDepA -> !GridDefinitionHeaderDepA -- | Run Length Encode list of quadrants that contain valid data. The spec -- describes the encoding scheme in detail, but essentially the index of -- the quadrants that contain transitions between valid and invalid (and -- vice versa) are encoded as u8 integers. [_msgSsrGridDefinitionDepA_rle_list] :: MsgSsrGridDefinitionDepA -> ![Word8] msgSsrGriddedCorrectionDepA_header :: Lens' MsgSsrGriddedCorrectionDepA GriddedCorrectionHeaderDepA msgSsrGriddedCorrectionDepA_index :: Lens' MsgSsrGriddedCorrectionDepA Word16 msgSsrGriddedCorrectionDepA_stec_residuals :: Lens' MsgSsrGriddedCorrectionDepA [STECResidual] msgSsrGriddedCorrectionDepA_tropo_delay_correction :: Lens' MsgSsrGriddedCorrectionDepA TroposphericDelayCorrection msgSsrGridDefinitionDepA :: Word16 data MsgSsrOrbitClockBounds MsgSsrOrbitClockBounds :: ![Word8] -> MsgSsrOrbitClockBounds [_msgSsrOrbitClockBounds_stub] :: MsgSsrOrbitClockBounds -> ![Word8] msgSsrGridDefinitionDepA_header :: Lens' MsgSsrGridDefinitionDepA GridDefinitionHeaderDepA msgSsrGridDefinitionDepA_rle_list :: Lens' MsgSsrGridDefinitionDepA [Word8] msgSsrOrbitClockBounds :: Word16 data MsgSsrCodePhaseBiasesBounds MsgSsrCodePhaseBiasesBounds :: ![Word8] -> MsgSsrCodePhaseBiasesBounds [_msgSsrCodePhaseBiasesBounds_stub] :: MsgSsrCodePhaseBiasesBounds -> ![Word8] msgSsrOrbitClockBounds_stub :: Iso' MsgSsrOrbitClockBounds [Word8] msgSsrCodePhaseBiasesBounds :: Word16 data MsgSsrOrbitClockBoundsDegradation MsgSsrOrbitClockBoundsDegradation :: ![Word8] -> MsgSsrOrbitClockBoundsDegradation [_msgSsrOrbitClockBoundsDegradation_stub] :: MsgSsrOrbitClockBoundsDegradation -> ![Word8] msgSsrCodePhaseBiasesBounds_stub :: Iso' MsgSsrCodePhaseBiasesBounds [Word8] msgSsrOrbitClockBoundsDegradation :: Word16 msgSsrOrbitClockBoundsDegradation_stub :: Iso' MsgSsrOrbitClockBoundsDegradation [Word8] instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrOrbitClockBoundsDegradation instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrOrbitClockBoundsDegradation instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrOrbitClockBoundsDegradation instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrOrbitClockBoundsDegradation instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrOrbitClockBoundsDegradation instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrOrbitClockBoundsDegradation instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrOrbitClockBoundsDegradation instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrCodePhaseBiasesBounds instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrCodePhaseBiasesBounds instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrCodePhaseBiasesBounds instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrCodePhaseBiasesBounds instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrCodePhaseBiasesBounds instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrCodePhaseBiasesBounds instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrCodePhaseBiasesBounds instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrOrbitClockBounds instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrOrbitClockBounds instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrOrbitClockBounds instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrOrbitClockBounds instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrOrbitClockBounds instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrOrbitClockBounds instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrOrbitClockBounds instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrGridDefinitionDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrGridDefinitionDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrGridDefinitionDepA instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrGridDefinitionDepA instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrGridDefinitionDepA instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrGridDefinitionDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrGridDefinitionDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionDepA instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionDepA instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionDepA instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionNoStdDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionNoStdDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionNoStdDepA instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionNoStdDepA instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionNoStdDepA instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionNoStdDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionNoStdDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrStecCorrectionDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrStecCorrectionDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrStecCorrectionDepA instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrStecCorrectionDepA instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrStecCorrectionDepA instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrStecCorrectionDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrStecCorrectionDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.GridDefinitionHeaderDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.GridDefinitionHeaderDepA instance GHC.Classes.Eq SwiftNav.SBP.Ssr.GridDefinitionHeaderDepA instance GHC.Read.Read SwiftNav.SBP.Ssr.GridDefinitionHeaderDepA instance GHC.Show.Show SwiftNav.SBP.Ssr.GridDefinitionHeaderDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.GridDefinitionHeaderDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.GriddedCorrectionHeaderDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.GriddedCorrectionHeaderDepA instance GHC.Classes.Eq SwiftNav.SBP.Ssr.GriddedCorrectionHeaderDepA instance GHC.Read.Read SwiftNav.SBP.Ssr.GriddedCorrectionHeaderDepA instance GHC.Show.Show SwiftNav.SBP.Ssr.GriddedCorrectionHeaderDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.GriddedCorrectionHeaderDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.STECHeaderDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.STECHeaderDepA instance GHC.Classes.Eq SwiftNav.SBP.Ssr.STECHeaderDepA instance GHC.Read.Read SwiftNav.SBP.Ssr.STECHeaderDepA instance GHC.Show.Show SwiftNav.SBP.Ssr.STECHeaderDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.STECHeaderDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrOrbitClockDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrOrbitClockDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrOrbitClockDepA instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrOrbitClockDepA instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrOrbitClockDepA instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrOrbitClockDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrOrbitClockDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrSatelliteApc instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrSatelliteApc instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrSatelliteApc instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrSatelliteApc instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrSatelliteApc instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrSatelliteApc instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrSatelliteApc instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.SatelliteAPC instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.SatelliteAPC instance GHC.Classes.Eq SwiftNav.SBP.Ssr.SatelliteAPC instance GHC.Read.Read SwiftNav.SBP.Ssr.SatelliteAPC instance GHC.Show.Show SwiftNav.SBP.Ssr.SatelliteAPC instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.SatelliteAPC instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrTileDefinition instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrTileDefinition instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrTileDefinition instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrTileDefinition instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrTileDefinition instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrTileDefinition instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrTileDefinition instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrTileDefinitionDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrTileDefinitionDep instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrTileDefinitionDep instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrTileDefinitionDep instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrTileDefinitionDep instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrTileDefinitionDep instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrTileDefinitionDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionBounds instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionBounds instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionBounds instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionBounds instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionBounds instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionBounds instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrGriddedCorrectionBounds instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrGriddedCorrection instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrGriddedCorrection instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrGriddedCorrection instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrGriddedCorrection instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrGriddedCorrection instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrGriddedCorrection instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrGriddedCorrection instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrStecCorrection instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrStecCorrection instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrStecCorrection instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrStecCorrection instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrStecCorrection instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrStecCorrection instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrStecCorrection instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrStecCorrectionDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrStecCorrectionDep instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrStecCorrectionDep instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrStecCorrectionDep instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrStecCorrectionDep instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrStecCorrectionDep instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrStecCorrectionDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrPhaseBiases instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrPhaseBiases instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrPhaseBiases instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrPhaseBiases instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrPhaseBiases instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrPhaseBiases instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrPhaseBiases instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrCodeBiases instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrCodeBiases instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrCodeBiases instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrCodeBiases instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrCodeBiases instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrCodeBiases instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrCodeBiases instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.MsgSsrOrbitClock instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.MsgSsrOrbitClock instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ssr.MsgSsrOrbitClock instance GHC.Classes.Eq SwiftNav.SBP.Ssr.MsgSsrOrbitClock instance GHC.Read.Read SwiftNav.SBP.Ssr.MsgSsrOrbitClock instance GHC.Show.Show SwiftNav.SBP.Ssr.MsgSsrOrbitClock instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.MsgSsrOrbitClock instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.STECResidual instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.STECResidual instance GHC.Classes.Eq SwiftNav.SBP.Ssr.STECResidual instance GHC.Read.Read SwiftNav.SBP.Ssr.STECResidual instance GHC.Show.Show SwiftNav.SBP.Ssr.STECResidual instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.STECResidual instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.STECResidualNoStd instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.STECResidualNoStd instance GHC.Classes.Eq SwiftNav.SBP.Ssr.STECResidualNoStd instance GHC.Read.Read SwiftNav.SBP.Ssr.STECResidualNoStd instance GHC.Show.Show SwiftNav.SBP.Ssr.STECResidualNoStd instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.STECResidualNoStd instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.TroposphericDelayCorrection instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.TroposphericDelayCorrection instance GHC.Classes.Eq SwiftNav.SBP.Ssr.TroposphericDelayCorrection instance GHC.Read.Read SwiftNav.SBP.Ssr.TroposphericDelayCorrection instance GHC.Show.Show SwiftNav.SBP.Ssr.TroposphericDelayCorrection instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.TroposphericDelayCorrection instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.TroposphericDelayCorrectionNoStd instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.TroposphericDelayCorrectionNoStd instance GHC.Classes.Eq SwiftNav.SBP.Ssr.TroposphericDelayCorrectionNoStd instance GHC.Read.Read SwiftNav.SBP.Ssr.TroposphericDelayCorrectionNoStd instance GHC.Show.Show SwiftNav.SBP.Ssr.TroposphericDelayCorrectionNoStd instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.TroposphericDelayCorrectionNoStd instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.STECSatElement instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.STECSatElement instance GHC.Classes.Eq SwiftNav.SBP.Ssr.STECSatElement instance GHC.Read.Read SwiftNav.SBP.Ssr.STECSatElement instance GHC.Show.Show SwiftNav.SBP.Ssr.STECSatElement instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.STECSatElement instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.GriddedCorrectionHeader instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.GriddedCorrectionHeader instance GHC.Classes.Eq SwiftNav.SBP.Ssr.GriddedCorrectionHeader instance GHC.Read.Read SwiftNav.SBP.Ssr.GriddedCorrectionHeader instance GHC.Show.Show SwiftNav.SBP.Ssr.GriddedCorrectionHeader instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.GriddedCorrectionHeader instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.STECHeader instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.STECHeader instance GHC.Classes.Eq SwiftNav.SBP.Ssr.STECHeader instance GHC.Read.Read SwiftNav.SBP.Ssr.STECHeader instance GHC.Show.Show SwiftNav.SBP.Ssr.STECHeader instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.STECHeader instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.PhaseBiasesContent instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.PhaseBiasesContent instance GHC.Classes.Eq SwiftNav.SBP.Ssr.PhaseBiasesContent instance GHC.Read.Read SwiftNav.SBP.Ssr.PhaseBiasesContent instance GHC.Show.Show SwiftNav.SBP.Ssr.PhaseBiasesContent instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.PhaseBiasesContent instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ssr.CodeBiasesContent instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ssr.CodeBiasesContent instance GHC.Classes.Eq SwiftNav.SBP.Ssr.CodeBiasesContent instance GHC.Read.Read SwiftNav.SBP.Ssr.CodeBiasesContent instance GHC.Show.Show SwiftNav.SBP.Ssr.CodeBiasesContent instance Data.Binary.Class.Binary SwiftNav.SBP.Ssr.CodeBiasesContent -- | < SBAS data > module SwiftNav.SBP.Sbas -- | SBP class for message MSG_SBAS_RAW (0x7777). -- -- This message is sent once per second per SBAS satellite. ME checks the -- parity of the data block and sends only blocks that pass the check. data MsgSbasRaw MsgSbasRaw :: !GnssSignal -> !Word32 -> !Word8 -> ![Word8] -> MsgSbasRaw -- | GNSS signal identifier. [_msgSbasRaw_sid] :: MsgSbasRaw -> !GnssSignal -- | GPS time-of-week at the start of the data block. [_msgSbasRaw_tow] :: MsgSbasRaw -> !Word32 -- | SBAS message type (0-63) [_msgSbasRaw_message_type] :: MsgSbasRaw -> !Word8 -- | Raw SBAS data field of 212 bits (last byte padded with zeros). [_msgSbasRaw_data] :: MsgSbasRaw -> ![Word8] msgSbasRaw :: Word16 msgSbasRaw_data :: Lens' MsgSbasRaw [Word8] msgSbasRaw_message_type :: Lens' MsgSbasRaw Word8 msgSbasRaw_sid :: Lens' MsgSbasRaw GnssSignal msgSbasRaw_tow :: Lens' MsgSbasRaw Word32 instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Sbas.MsgSbasRaw instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Sbas.MsgSbasRaw instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Sbas.MsgSbasRaw instance GHC.Classes.Eq SwiftNav.SBP.Sbas.MsgSbasRaw instance GHC.Read.Read SwiftNav.SBP.Sbas.MsgSbasRaw instance GHC.Show.Show SwiftNav.SBP.Sbas.MsgSbasRaw instance Data.Binary.Class.Binary SwiftNav.SBP.Sbas.MsgSbasRaw -- | < System health, configuration, and diagnostic messages specific to -- the Piksi L1 receiver, including a variety of legacy messages that may -- no longer be used. > module SwiftNav.SBP.Piksi -- | SBP class for message MSG_ALMANAC (0x0069). -- -- This is a legacy message for sending and loading a satellite alamanac -- onto the Piksi's flash memory from the host. data MsgAlmanac MsgAlmanac :: MsgAlmanac msgAlmanac :: Word16 -- | SBP class for message MSG_SET_TIME (0x0068). -- -- This message sets up timing functionality using a coarse GPS time -- estimate sent by the host. data MsgSetTime MsgSetTime :: MsgSetTime msgSetTime :: Word16 -- | SBP class for message MSG_RESET (0x00B6). -- -- This message from the host resets the Piksi back into the bootloader. data MsgReset MsgReset :: !Word32 -> MsgReset -- | Reset flags [_msgReset_flags] :: MsgReset -> !Word32 msgReset :: Word16 -- | SBP class for message MSG_RESET_DEP (0x00B2). -- -- This message from the host resets the Piksi back into the bootloader. data MsgResetDep MsgResetDep :: MsgResetDep msgReset_flags :: Iso' MsgReset Word32 msgResetDep :: Word16 -- | SBP class for message MSG_CW_RESULTS (0x00C0). -- -- This is an unused legacy message for result reporting from the CW -- interference channel on the SwiftNAP. This message will be removed in -- a future release. data MsgCwResults MsgCwResults :: MsgCwResults msgCwResults :: Word16 -- | SBP class for message MSG_CW_START (0x00C1). -- -- This is an unused legacy message from the host for starting the CW -- interference channel on the SwiftNAP. This message will be removed in -- a future release. data MsgCwStart MsgCwStart :: MsgCwStart msgCwStart :: Word16 -- | SBP class for message MSG_RESET_FILTERS (0x0022). -- -- This message resets either the DGNSS Kalman filters or Integer -- Ambiguity Resolution (IAR) process. data MsgResetFilters MsgResetFilters :: !Word8 -> MsgResetFilters -- | Filter flags [_msgResetFilters_filter] :: MsgResetFilters -> !Word8 msgResetFilters :: Word16 -- | SBP class for message MSG_INIT_BASE_DEP (0x0023). -- -- Deprecated data MsgInitBaseDep MsgInitBaseDep :: MsgInitBaseDep msgResetFilters_filter :: Iso' MsgResetFilters Word8 msgInitBaseDep :: Word16 -- | SBP class for message MSG_THREAD_STATE (0x0017). -- -- The thread usage message from the device reports real-time operating -- system (RTOS) thread usage statistics for the named thread. The -- reported percentage values must be normalized. data MsgThreadState MsgThreadState :: !Text -> !Word16 -> !Word32 -> MsgThreadState -- | Thread name (NULL terminated) [_msgThreadState_name] :: MsgThreadState -> !Text -- | Percentage cpu use for this thread. Values range from 0 - 1000 and -- needs to be renormalized to 100 [_msgThreadState_cpu] :: MsgThreadState -> !Word16 -- | Free stack space for this thread [_msgThreadState_stack_free] :: MsgThreadState -> !Word32 msgThreadState :: Word16 -- | UARTChannel. -- -- Throughput, utilization, and error counts on the RX/TX buffers of this -- UART channel. The reported percentage values must be normalized. data UARTChannel UARTChannel :: !Float -> !Float -> !Word16 -> !Word16 -> !Word8 -> !Word8 -> UARTChannel -- | UART transmit throughput [_uARTChannel_tx_throughput] :: UARTChannel -> !Float -- | UART receive throughput [_uARTChannel_rx_throughput] :: UARTChannel -> !Float -- | UART CRC error count [_uARTChannel_crc_error_count] :: UARTChannel -> !Word16 -- | UART IO error count [_uARTChannel_io_error_count] :: UARTChannel -> !Word16 -- | UART transmit buffer percentage utilization (ranges from 0 to 255) [_uARTChannel_tx_buffer_level] :: UARTChannel -> !Word8 -- | UART receive buffer percentage utilization (ranges from 0 to 255) [_uARTChannel_rx_buffer_level] :: UARTChannel -> !Word8 msgThreadState_cpu :: Lens' MsgThreadState Word16 msgThreadState_name :: Lens' MsgThreadState Text msgThreadState_stack_free :: Lens' MsgThreadState Word32 -- | Period. -- -- Statistics on the period of observations received from the base -- station. As complete observation sets are received, their time of -- reception is compared with the prior set''s time of reception. This -- measurement provides a proxy for link quality as incomplete or missing -- sets will increase the period. Long periods can cause momentary RTK -- solution outages. data Period Period :: !Int32 -> !Int32 -> !Int32 -> !Int32 -> Period -- | Average period [_period_avg] :: Period -> !Int32 -- | Minimum period [_period_pmin] :: Period -> !Int32 -- | Maximum period [_period_pmax] :: Period -> !Int32 -- | Smoothed estimate of the current period [_period_current] :: Period -> !Int32 uARTChannel_crc_error_count :: Lens' UARTChannel Word16 uARTChannel_io_error_count :: Lens' UARTChannel Word16 uARTChannel_rx_buffer_level :: Lens' UARTChannel Word8 uARTChannel_rx_throughput :: Lens' UARTChannel Float uARTChannel_tx_buffer_level :: Lens' UARTChannel Word8 uARTChannel_tx_throughput :: Lens' UARTChannel Float -- | Latency. -- -- Statistics on the latency of observations received from the base -- station. As observation packets are received their GPS time is -- compared to the current GPS time calculated locally by the receiver to -- give a precise measurement of the end-to-end communication latency in -- the system. data Latency Latency :: !Int32 -> !Int32 -> !Int32 -> !Int32 -> Latency -- | Average latency [_latency_avg] :: Latency -> !Int32 -- | Minimum latency [_latency_lmin] :: Latency -> !Int32 -- | Maximum latency [_latency_lmax] :: Latency -> !Int32 -- | Smoothed estimate of the current latency [_latency_current] :: Latency -> !Int32 period_avg :: Lens' Period Int32 period_current :: Lens' Period Int32 period_pmax :: Lens' Period Int32 period_pmin :: Lens' Period Int32 -- | SBP class for message MSG_UART_STATE (0x001D). -- -- The UART message reports data latency and throughput of the UART -- channels providing SBP I/O. On the default Piksi configuration, UARTs -- A and B are used for telemetry radios, but can also be host access -- ports for embedded hosts, or other interfaces in future. The reported -- percentage values must be normalized. Observations latency and period -- can be used to assess the health of the differential corrections link. -- Latency provides the timeliness of received base observations while -- the period indicates their likelihood of transmission. data MsgUartState MsgUartState :: !UARTChannel -> !UARTChannel -> !UARTChannel -> !Latency -> !Period -> MsgUartState -- | State of UART A [_msgUartState_uart_a] :: MsgUartState -> !UARTChannel -- | State of UART B [_msgUartState_uart_b] :: MsgUartState -> !UARTChannel -- | State of UART FTDI (USB logger) [_msgUartState_uart_ftdi] :: MsgUartState -> !UARTChannel -- | UART communication latency [_msgUartState_latency] :: MsgUartState -> !Latency -- | Observation receipt period [_msgUartState_obs_period] :: MsgUartState -> !Period latency_avg :: Lens' Latency Int32 latency_current :: Lens' Latency Int32 latency_lmax :: Lens' Latency Int32 latency_lmin :: Lens' Latency Int32 msgUartState :: Word16 -- | SBP class for message MSG_UART_STATE_DEPA (0x0018). -- -- Deprecated data MsgUartStateDepa MsgUartStateDepa :: !UARTChannel -> !UARTChannel -> !UARTChannel -> !Latency -> MsgUartStateDepa -- | State of UART A [_msgUartStateDepa_uart_a] :: MsgUartStateDepa -> !UARTChannel -- | State of UART B [_msgUartStateDepa_uart_b] :: MsgUartStateDepa -> !UARTChannel -- | State of UART FTDI (USB logger) [_msgUartStateDepa_uart_ftdi] :: MsgUartStateDepa -> !UARTChannel -- | UART communication latency [_msgUartStateDepa_latency] :: MsgUartStateDepa -> !Latency msgUartState_latency :: Lens' MsgUartState Latency msgUartState_obs_period :: Lens' MsgUartState Period msgUartState_uart_a :: Lens' MsgUartState UARTChannel msgUartState_uart_b :: Lens' MsgUartState UARTChannel msgUartState_uart_ftdi :: Lens' MsgUartState UARTChannel msgUartStateDepa :: Word16 -- | SBP class for message MSG_IAR_STATE (0x0019). -- -- This message reports the state of the Integer Ambiguity Resolution -- (IAR) process, which resolves unknown integer ambiguities from -- double-differenced carrier-phase measurements from satellite -- observations. data MsgIarState MsgIarState :: !Word32 -> MsgIarState -- | Number of integer ambiguity hypotheses remaining [_msgIarState_num_hyps] :: MsgIarState -> !Word32 msgUartStateDepa_latency :: Lens' MsgUartStateDepa Latency msgUartStateDepa_uart_a :: Lens' MsgUartStateDepa UARTChannel msgUartStateDepa_uart_b :: Lens' MsgUartStateDepa UARTChannel msgUartStateDepa_uart_ftdi :: Lens' MsgUartStateDepa UARTChannel msgIarState :: Word16 -- | SBP class for message MSG_MASK_SATELLITE (0x002B). -- -- This message allows setting a mask to prevent a particular satellite -- from being used in various Piksi subsystems. data MsgMaskSatellite MsgMaskSatellite :: !Word8 -> !GnssSignal -> MsgMaskSatellite -- | Mask of systems that should ignore this satellite. [_msgMaskSatellite_mask] :: MsgMaskSatellite -> !Word8 -- | GNSS signal for which the mask is applied [_msgMaskSatellite_sid] :: MsgMaskSatellite -> !GnssSignal msgIarState_num_hyps :: Iso' MsgIarState Word32 msgMaskSatellite :: Word16 -- | SBP class for message MSG_MASK_SATELLITE_DEP (0x001B). -- -- Deprecated. data MsgMaskSatelliteDep MsgMaskSatelliteDep :: !Word8 -> !GnssSignalDep -> MsgMaskSatelliteDep -- | Mask of systems that should ignore this satellite. [_msgMaskSatelliteDep_mask] :: MsgMaskSatelliteDep -> !Word8 -- | GNSS signal for which the mask is applied [_msgMaskSatelliteDep_sid] :: MsgMaskSatelliteDep -> !GnssSignalDep msgMaskSatellite_mask :: Lens' MsgMaskSatellite Word8 msgMaskSatellite_sid :: Lens' MsgMaskSatellite GnssSignal msgMaskSatelliteDep :: Word16 -- | SBP class for message MSG_DEVICE_MONITOR (0x00B5). -- -- This message contains temperature and voltage level measurements from -- the processor's monitoring system and the RF frontend die temperature -- if available. data MsgDeviceMonitor MsgDeviceMonitor :: !Int16 -> !Int16 -> !Int16 -> !Int16 -> !Int16 -> MsgDeviceMonitor -- | Device V_in [_msgDeviceMonitor_dev_vin] :: MsgDeviceMonitor -> !Int16 -- | Processor V_int [_msgDeviceMonitor_cpu_vint] :: MsgDeviceMonitor -> !Int16 -- | Processor V_aux [_msgDeviceMonitor_cpu_vaux] :: MsgDeviceMonitor -> !Int16 -- | Processor temperature [_msgDeviceMonitor_cpu_temperature] :: MsgDeviceMonitor -> !Int16 -- | Frontend temperature (if available) [_msgDeviceMonitor_fe_temperature] :: MsgDeviceMonitor -> !Int16 msgMaskSatelliteDep_mask :: Lens' MsgMaskSatelliteDep Word8 msgMaskSatelliteDep_sid :: Lens' MsgMaskSatelliteDep GnssSignalDep msgDeviceMonitor :: Word16 -- | SBP class for message MSG_COMMAND_REQ (0x00B8). -- -- Request the recipient to execute an command. Output will be sent in -- MSG_LOG messages, and the exit code will be returned with -- MSG_COMMAND_RESP. data MsgCommandReq MsgCommandReq :: !Word32 -> !Text -> MsgCommandReq -- | Sequence number [_msgCommandReq_sequence] :: MsgCommandReq -> !Word32 -- | Command line to execute [_msgCommandReq_command] :: MsgCommandReq -> !Text msgDeviceMonitor_cpu_temperature :: Lens' MsgDeviceMonitor Int16 msgDeviceMonitor_cpu_vaux :: Lens' MsgDeviceMonitor Int16 msgDeviceMonitor_cpu_vint :: Lens' MsgDeviceMonitor Int16 msgDeviceMonitor_dev_vin :: Lens' MsgDeviceMonitor Int16 msgDeviceMonitor_fe_temperature :: Lens' MsgDeviceMonitor Int16 msgCommandReq :: Word16 -- | SBP class for message MSG_COMMAND_RESP (0x00B9). -- -- The response to MSG_COMMAND_REQ with the return code of the command. A -- return code of zero indicates success. data MsgCommandResp MsgCommandResp :: !Word32 -> !Int32 -> MsgCommandResp -- | Sequence number [_msgCommandResp_sequence] :: MsgCommandResp -> !Word32 -- | Exit code [_msgCommandResp_code] :: MsgCommandResp -> !Int32 msgCommandReq_command :: Lens' MsgCommandReq Text msgCommandReq_sequence :: Lens' MsgCommandReq Word32 msgCommandResp :: Word16 -- | SBP class for message MSG_COMMAND_OUTPUT (0x00BC). -- -- Returns the standard output and standard error of the command -- requested by MSG_COMMAND_REQ. The sequence number can be used to -- filter for filtering the correct command. data MsgCommandOutput MsgCommandOutput :: !Word32 -> !Text -> MsgCommandOutput -- | Sequence number [_msgCommandOutput_sequence] :: MsgCommandOutput -> !Word32 -- | Line of standard output or standard error [_msgCommandOutput_line] :: MsgCommandOutput -> !Text msgCommandResp_code :: Lens' MsgCommandResp Int32 msgCommandResp_sequence :: Lens' MsgCommandResp Word32 msgCommandOutput :: Word16 -- | SBP class for message MSG_NETWORK_STATE_REQ (0x00BA). -- -- Request state of Piksi network interfaces. Output will be sent in -- MSG_NETWORK_STATE_RESP messages. data MsgNetworkStateReq MsgNetworkStateReq :: MsgNetworkStateReq msgCommandOutput_line :: Lens' MsgCommandOutput Text msgCommandOutput_sequence :: Lens' MsgCommandOutput Word32 msgNetworkStateReq :: Word16 -- | SBP class for message MSG_NETWORK_STATE_RESP (0x00BB). -- -- The state of a network interface on the Piksi. Data is made to reflect -- output of ifaddrs struct returned by getifaddrs in c. data MsgNetworkStateResp MsgNetworkStateResp :: ![Word8] -> !Word8 -> ![Word8] -> !Word8 -> !Word32 -> !Word32 -> !Text -> !Word32 -> MsgNetworkStateResp -- | IPv4 address (all zero when unavailable) [_msgNetworkStateResp_ipv4_address] :: MsgNetworkStateResp -> ![Word8] -- | IPv4 netmask CIDR notation [_msgNetworkStateResp_ipv4_mask_size] :: MsgNetworkStateResp -> !Word8 -- | IPv6 address (all zero when unavailable) [_msgNetworkStateResp_ipv6_address] :: MsgNetworkStateResp -> ![Word8] -- | IPv6 netmask CIDR notation [_msgNetworkStateResp_ipv6_mask_size] :: MsgNetworkStateResp -> !Word8 -- | Number of Rx bytes [_msgNetworkStateResp_rx_bytes] :: MsgNetworkStateResp -> !Word32 -- | Number of Tx bytes [_msgNetworkStateResp_tx_bytes] :: MsgNetworkStateResp -> !Word32 -- | Interface Name [_msgNetworkStateResp_interface_name] :: MsgNetworkStateResp -> !Text -- | Interface flags from SIOCGIFFLAGS [_msgNetworkStateResp_flags] :: MsgNetworkStateResp -> !Word32 msgNetworkStateResp :: Word16 -- | NetworkUsage. -- -- The bandwidth usage for each interface can be reported within this -- struct and utilize multiple fields to fully specify the type of -- traffic that is being tracked. As either the interval of collection or -- the collection time may vary, both a timestamp and period field is -- provided, though may not necessarily be populated with a value. data NetworkUsage NetworkUsage :: !Word64 -> !Word64 -> !Word32 -> !Word32 -> !Text -> NetworkUsage -- | Duration over which the measurement was collected [_networkUsage_duration] :: NetworkUsage -> !Word64 -- | Number of bytes handled in total within period [_networkUsage_total_bytes] :: NetworkUsage -> !Word64 -- | Number of bytes transmitted within period [_networkUsage_rx_bytes] :: NetworkUsage -> !Word32 -- | Number of bytes received within period [_networkUsage_tx_bytes] :: NetworkUsage -> !Word32 -- | Interface Name [_networkUsage_interface_name] :: NetworkUsage -> !Text msgNetworkStateResp_flags :: Lens' MsgNetworkStateResp Word32 msgNetworkStateResp_interface_name :: Lens' MsgNetworkStateResp Text msgNetworkStateResp_ipv4_address :: Lens' MsgNetworkStateResp [Word8] msgNetworkStateResp_ipv4_mask_size :: Lens' MsgNetworkStateResp Word8 msgNetworkStateResp_ipv6_address :: Lens' MsgNetworkStateResp [Word8] msgNetworkStateResp_ipv6_mask_size :: Lens' MsgNetworkStateResp Word8 msgNetworkStateResp_rx_bytes :: Lens' MsgNetworkStateResp Word32 msgNetworkStateResp_tx_bytes :: Lens' MsgNetworkStateResp Word32 -- | SBP class for message MSG_NETWORK_BANDWIDTH_USAGE (0x00BD). -- -- The bandwidth usage, a list of usage by interface. data MsgNetworkBandwidthUsage MsgNetworkBandwidthUsage :: ![NetworkUsage] -> MsgNetworkBandwidthUsage -- | Usage measurement array [_msgNetworkBandwidthUsage_interfaces] :: MsgNetworkBandwidthUsage -> ![NetworkUsage] networkUsage_duration :: Lens' NetworkUsage Word64 networkUsage_interface_name :: Lens' NetworkUsage Text networkUsage_rx_bytes :: Lens' NetworkUsage Word32 networkUsage_total_bytes :: Lens' NetworkUsage Word64 networkUsage_tx_bytes :: Lens' NetworkUsage Word32 msgNetworkBandwidthUsage :: Word16 -- | SBP class for message MSG_CELL_MODEM_STATUS (0x00BE). -- -- If a cell modem is present on a piksi device, this message will be -- send periodically to update the host on the status of the modem and -- its various parameters. data MsgCellModemStatus MsgCellModemStatus :: !Int8 -> !Float -> ![Word8] -> MsgCellModemStatus -- | Received cell signal strength in dBm, zero translates to unknown [_msgCellModemStatus_signal_strength] :: MsgCellModemStatus -> !Int8 -- | BER as reported by the modem, zero translates to unknown [_msgCellModemStatus_signal_error_rate] :: MsgCellModemStatus -> !Float -- | Unspecified data TBD for this schema [_msgCellModemStatus_reserved] :: MsgCellModemStatus -> ![Word8] msgNetworkBandwidthUsage_interfaces :: Iso' MsgNetworkBandwidthUsage [NetworkUsage] msgCellModemStatus :: Word16 -- | SBP class for message MSG_SPECAN_DEP (0x0050). -- -- Deprecated. data MsgSpecanDep MsgSpecanDep :: !Word16 -> !GpsTimeDep -> !Float -> !Float -> !Float -> !Float -> ![Word8] -> MsgSpecanDep -- | Channel ID [_msgSpecanDep_channel_tag] :: MsgSpecanDep -> !Word16 -- | Receiver time of this observation [_msgSpecanDep_t] :: MsgSpecanDep -> !GpsTimeDep -- | Reference frequency of this packet [_msgSpecanDep_freq_ref] :: MsgSpecanDep -> !Float -- | Frequency step of points in this packet [_msgSpecanDep_freq_step] :: MsgSpecanDep -> !Float -- | Reference amplitude of this packet [_msgSpecanDep_amplitude_ref] :: MsgSpecanDep -> !Float -- | Amplitude unit value of points in this packet [_msgSpecanDep_amplitude_unit] :: MsgSpecanDep -> !Float -- | Amplitude values (in the above units) of points in this packet [_msgSpecanDep_amplitude_value] :: MsgSpecanDep -> ![Word8] msgCellModemStatus_reserved :: Lens' MsgCellModemStatus [Word8] msgCellModemStatus_signal_error_rate :: Lens' MsgCellModemStatus Float msgCellModemStatus_signal_strength :: Lens' MsgCellModemStatus Int8 msgSpecanDep :: Word16 -- | SBP class for message MSG_SPECAN (0x0051). -- -- Spectrum analyzer packet. data MsgSpecan MsgSpecan :: !Word16 -> !GpsTime -> !Float -> !Float -> !Float -> !Float -> ![Word8] -> MsgSpecan -- | Channel ID [_msgSpecan_channel_tag] :: MsgSpecan -> !Word16 -- | Receiver time of this observation [_msgSpecan_t] :: MsgSpecan -> !GpsTime -- | Reference frequency of this packet [_msgSpecan_freq_ref] :: MsgSpecan -> !Float -- | Frequency step of points in this packet [_msgSpecan_freq_step] :: MsgSpecan -> !Float -- | Reference amplitude of this packet [_msgSpecan_amplitude_ref] :: MsgSpecan -> !Float -- | Amplitude unit value of points in this packet [_msgSpecan_amplitude_unit] :: MsgSpecan -> !Float -- | Amplitude values (in the above units) of points in this packet [_msgSpecan_amplitude_value] :: MsgSpecan -> ![Word8] msgSpecanDep_amplitude_ref :: Lens' MsgSpecanDep Float msgSpecanDep_amplitude_unit :: Lens' MsgSpecanDep Float msgSpecanDep_amplitude_value :: Lens' MsgSpecanDep [Word8] msgSpecanDep_channel_tag :: Lens' MsgSpecanDep Word16 msgSpecanDep_freq_ref :: Lens' MsgSpecanDep Float msgSpecanDep_freq_step :: Lens' MsgSpecanDep Float msgSpecanDep_t :: Lens' MsgSpecanDep GpsTimeDep msgSpecan :: Word16 -- | SBP class for message MSG_FRONT_END_GAIN (0x00BF). -- -- This message describes the gain of each channel in the receiver -- frontend. Each gain is encoded as a non-dimensional percentage -- relative to the maximum range possible for the gain stage of the -- frontend. By convention, each gain array has 8 entries and the index -- of the array corresponding to the index of the rf channel in the -- frontend. A gain of 127 percent encodes that rf channel is not present -- in the hardware. A negative value implies an error for the particular -- gain stage as reported by the frontend. data MsgFrontEndGain MsgFrontEndGain :: ![Int8] -> ![Int8] -> MsgFrontEndGain -- | RF gain for each frontend channel [_msgFrontEndGain_rf_gain] :: MsgFrontEndGain -> ![Int8] -- | Intermediate frequency gain for each frontend channel [_msgFrontEndGain_if_gain] :: MsgFrontEndGain -> ![Int8] msgSpecan_amplitude_ref :: Lens' MsgSpecan Float msgSpecan_amplitude_unit :: Lens' MsgSpecan Float msgSpecan_amplitude_value :: Lens' MsgSpecan [Word8] msgSpecan_channel_tag :: Lens' MsgSpecan Word16 msgSpecan_freq_ref :: Lens' MsgSpecan Float msgSpecan_freq_step :: Lens' MsgSpecan Float msgSpecan_t :: Lens' MsgSpecan GpsTime msgFrontEndGain :: Word16 msgFrontEndGain_if_gain :: Lens' MsgFrontEndGain [Int8] msgFrontEndGain_rf_gain :: Lens' MsgFrontEndGain [Int8] instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgFrontEndGain instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgFrontEndGain instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgFrontEndGain instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgFrontEndGain instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgFrontEndGain instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgFrontEndGain instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgFrontEndGain instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgSpecan instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgSpecan instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgSpecan instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgSpecan instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgSpecan instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgSpecan instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgSpecan instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgSpecanDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgSpecanDep instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgSpecanDep instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgSpecanDep instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgSpecanDep instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgSpecanDep instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgSpecanDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgCellModemStatus instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgCellModemStatus instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgCellModemStatus instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgCellModemStatus instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgCellModemStatus instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgCellModemStatus instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgCellModemStatus instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgNetworkBandwidthUsage instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgNetworkBandwidthUsage instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgNetworkBandwidthUsage instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgNetworkBandwidthUsage instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgNetworkBandwidthUsage instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgNetworkBandwidthUsage instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgNetworkBandwidthUsage instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.NetworkUsage instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.NetworkUsage instance GHC.Classes.Eq SwiftNav.SBP.Piksi.NetworkUsage instance GHC.Read.Read SwiftNav.SBP.Piksi.NetworkUsage instance GHC.Show.Show SwiftNav.SBP.Piksi.NetworkUsage instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.NetworkUsage instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgNetworkStateResp instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgNetworkStateResp instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgNetworkStateResp instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgNetworkStateResp instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgNetworkStateResp instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgNetworkStateResp instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgNetworkStateResp instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgNetworkStateReq instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgNetworkStateReq instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgNetworkStateReq instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgNetworkStateReq instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgNetworkStateReq instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgNetworkStateReq instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgNetworkStateReq instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgCommandOutput instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgCommandOutput instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgCommandOutput instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgCommandOutput instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgCommandOutput instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgCommandOutput instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgCommandOutput instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgCommandResp instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgCommandResp instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgCommandResp instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgCommandResp instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgCommandResp instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgCommandResp instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgCommandResp instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgCommandReq instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgCommandReq instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgCommandReq instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgCommandReq instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgCommandReq instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgCommandReq instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgCommandReq instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgDeviceMonitor instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgDeviceMonitor instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgDeviceMonitor instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgDeviceMonitor instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgDeviceMonitor instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgDeviceMonitor instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgDeviceMonitor instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgMaskSatelliteDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgMaskSatelliteDep instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgMaskSatelliteDep instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgMaskSatelliteDep instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgMaskSatelliteDep instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgMaskSatelliteDep instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgMaskSatelliteDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgMaskSatellite instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgMaskSatellite instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgMaskSatellite instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgMaskSatellite instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgMaskSatellite instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgMaskSatellite instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgMaskSatellite instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgIarState instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgIarState instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgIarState instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgIarState instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgIarState instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgIarState instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgIarState instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgUartStateDepa instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgUartStateDepa instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgUartStateDepa instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgUartStateDepa instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgUartStateDepa instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgUartStateDepa instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgUartStateDepa instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgUartState instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgUartState instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgUartState instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgUartState instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgUartState instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgUartState instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgUartState instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.Latency instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.Latency instance GHC.Classes.Eq SwiftNav.SBP.Piksi.Latency instance GHC.Read.Read SwiftNav.SBP.Piksi.Latency instance GHC.Show.Show SwiftNav.SBP.Piksi.Latency instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.Latency instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.Period instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.Period instance GHC.Classes.Eq SwiftNav.SBP.Piksi.Period instance GHC.Read.Read SwiftNav.SBP.Piksi.Period instance GHC.Show.Show SwiftNav.SBP.Piksi.Period instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.Period instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.UARTChannel instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.UARTChannel instance GHC.Classes.Eq SwiftNav.SBP.Piksi.UARTChannel instance GHC.Read.Read SwiftNav.SBP.Piksi.UARTChannel instance GHC.Show.Show SwiftNav.SBP.Piksi.UARTChannel instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.UARTChannel instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgThreadState instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgThreadState instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgThreadState instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgThreadState instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgThreadState instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgThreadState instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgThreadState instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgInitBaseDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgInitBaseDep instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgInitBaseDep instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgInitBaseDep instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgInitBaseDep instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgInitBaseDep instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgInitBaseDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgResetFilters instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgResetFilters instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgResetFilters instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgResetFilters instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgResetFilters instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgResetFilters instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgResetFilters instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgCwStart instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgCwStart instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgCwStart instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgCwStart instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgCwStart instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgCwStart instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgCwStart instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgCwResults instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgCwResults instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgCwResults instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgCwResults instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgCwResults instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgCwResults instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgCwResults instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgResetDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgResetDep instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgResetDep instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgResetDep instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgResetDep instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgResetDep instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgResetDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgReset instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgReset instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgReset instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgReset instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgReset instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgReset instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgReset instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgSetTime instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgSetTime instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgSetTime instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgSetTime instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgSetTime instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgSetTime instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgSetTime instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Piksi.MsgAlmanac instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Piksi.MsgAlmanac instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Piksi.MsgAlmanac instance GHC.Classes.Eq SwiftNav.SBP.Piksi.MsgAlmanac instance GHC.Read.Read SwiftNav.SBP.Piksi.MsgAlmanac instance GHC.Show.Show SwiftNav.SBP.Piksi.MsgAlmanac instance Data.Binary.Class.Binary SwiftNav.SBP.Piksi.MsgAlmanac -- | < Satellite observation messages from the device. The SBP sender ID -- of 0 indicates remote observations from a GNSS base station, -- correction network, or Skylark, Swift's cloud GNSS correction product. -- > module SwiftNav.SBP.Observation -- | ObservationHeader. -- -- Header of a GNSS observation message. data ObservationHeader ObservationHeader :: !GpsTime -> !Word8 -> ObservationHeader -- | GNSS time of this observation [_observationHeader_t] :: ObservationHeader -> !GpsTime -- | Total number of observations. First nibble is the size of the sequence -- (n), second nibble is the zero-indexed counter (ith packet of n) [_observationHeader_n_obs] :: ObservationHeader -> !Word8 -- | Doppler. -- -- Doppler measurement in Hz represented as a 24-bit fixed point number -- with Q16.8 layout, i.e. 16-bits of whole doppler and 8-bits of -- fractional doppler. This doppler is defined as positive for -- approaching satellites. data Doppler Doppler :: !Int16 -> !Word8 -> Doppler -- | Doppler whole Hz [_doppler_i] :: Doppler -> !Int16 -- | Doppler fractional part [_doppler_f] :: Doppler -> !Word8 observationHeader_n_obs :: Lens' ObservationHeader Word8 observationHeader_t :: Lens' ObservationHeader GpsTime -- | PackedObsContent. -- -- Pseudorange and carrier phase observation for a satellite being -- tracked. The observations are interoperable with 3rd party receivers -- and conform with typical RTCM 3.1 message GPS/GLO observations. -- -- Carrier phase observations are not guaranteed to be aligned to the -- RINEX 3 or RTCM 3.3 MSM reference signal and no 1/4 cycle adjustments -- are currently performed. data PackedObsContent PackedObsContent :: !Word32 -> !CarrierPhase -> !Doppler -> !Word8 -> !Word8 -> !Word8 -> !GnssSignal -> PackedObsContent -- | Pseudorange observation [_packedObsContent_P] :: PackedObsContent -> !Word32 -- | Carrier phase observation with typical sign convention. [_packedObsContent_L] :: PackedObsContent -> !CarrierPhase -- | Doppler observation with typical sign convention. [_packedObsContent_D] :: PackedObsContent -> !Doppler -- | Carrier-to-Noise density. Zero implies invalid cn0. [_packedObsContent_cn0] :: PackedObsContent -> !Word8 -- | Lock timer. This value gives an indication of the time for which a -- signal has maintained continuous phase lock. Whenever a signal has -- lost and regained lock, this value is reset to zero. It is encoded -- according to DF402 from the RTCM 10403.2 Amendment 2 specification. -- Valid values range from 0 to 15 and the most significant nibble is -- reserved for future use. [_packedObsContent_lock] :: PackedObsContent -> !Word8 -- | Measurement status flags. A bit field of flags providing the status of -- this observation. If this field is 0 it means only the Cn0 estimate -- for the signal is valid. [_packedObsContent_flags] :: PackedObsContent -> !Word8 -- | GNSS signal identifier (16 bit) [_packedObsContent_sid] :: PackedObsContent -> !GnssSignal doppler_f :: Lens' Doppler Word8 doppler_i :: Lens' Doppler Int16 -- | PackedOsrContent. -- -- Pseudorange and carrier phase network corrections for a satellite -- signal. data PackedOsrContent PackedOsrContent :: !Word32 -> !CarrierPhase -> !Word8 -> !Word8 -> !GnssSignal -> !Word16 -> !Word16 -> !Word16 -> PackedOsrContent -- | Pseudorange observation [_packedOsrContent_P] :: PackedOsrContent -> !Word32 -- | Carrier phase observation with typical sign convention. [_packedOsrContent_L] :: PackedOsrContent -> !CarrierPhase -- | Lock timer. This value gives an indication of the time for which a -- signal has maintained continuous phase lock. Whenever a signal has -- lost and regained lock, this value is reset to zero. It is encoded -- according to DF402 from the RTCM 10403.2 Amendment 2 specification. -- Valid values range from 0 to 15 and the most significant nibble is -- reserved for future use. [_packedOsrContent_lock] :: PackedOsrContent -> !Word8 -- | Correction flags. [_packedOsrContent_flags] :: PackedOsrContent -> !Word8 -- | GNSS signal identifier (16 bit) [_packedOsrContent_sid] :: PackedOsrContent -> !GnssSignal -- | Slant ionospheric correction standard deviation [_packedOsrContent_iono_std] :: PackedOsrContent -> !Word16 -- | Slant tropospheric correction standard deviation [_packedOsrContent_tropo_std] :: PackedOsrContent -> !Word16 -- | Orbitclockbias correction projected on range standard deviation [_packedOsrContent_range_std] :: PackedOsrContent -> !Word16 packedObsContent_D :: Lens' PackedObsContent Doppler packedObsContent_L :: Lens' PackedObsContent CarrierPhase packedObsContent_P :: Lens' PackedObsContent Word32 packedObsContent_cn0 :: Lens' PackedObsContent Word8 packedObsContent_flags :: Lens' PackedObsContent Word8 packedObsContent_lock :: Lens' PackedObsContent Word8 packedObsContent_sid :: Lens' PackedObsContent GnssSignal -- | SBP class for message MSG_OBS (0x004A). -- -- The GPS observations message reports all the raw pseudorange and -- carrier phase observations for the satellites being tracked by the -- device. Carrier phase observation here is represented as a 40-bit -- fixed point number with Q32.8 layout (i.e. 32-bits of whole cycles and -- 8-bits of fractional cycles). The observations are be interoperable -- with 3rd party receivers and conform with typical RTCMv3 GNSS -- observations. data MsgObs MsgObs :: !ObservationHeader -> ![PackedObsContent] -> MsgObs -- | Header of a GPS observation message [_msgObs_header] :: MsgObs -> !ObservationHeader -- | Pseudorange and carrier phase observation for a satellite being -- tracked. [_msgObs_obs] :: MsgObs -> ![PackedObsContent] packedOsrContent_L :: Lens' PackedOsrContent CarrierPhase packedOsrContent_P :: Lens' PackedOsrContent Word32 packedOsrContent_flags :: Lens' PackedOsrContent Word8 packedOsrContent_iono_std :: Lens' PackedOsrContent Word16 packedOsrContent_lock :: Lens' PackedOsrContent Word8 packedOsrContent_range_std :: Lens' PackedOsrContent Word16 packedOsrContent_sid :: Lens' PackedOsrContent GnssSignal packedOsrContent_tropo_std :: Lens' PackedOsrContent Word16 msgObs :: Word16 -- | SBP class for message MSG_BASE_POS_LLH (0x0044). -- -- The base station position message is the position reported by the base -- station itself. It is used for pseudo-absolute RTK positioning, and is -- required to be a high-accuracy surveyed location of the base station. -- Any error here will result in an error in the pseudo-absolute position -- output. data MsgBasePosLlh MsgBasePosLlh :: !Double -> !Double -> !Double -> MsgBasePosLlh -- | Latitude [_msgBasePosLlh_lat] :: MsgBasePosLlh -> !Double -- | Longitude [_msgBasePosLlh_lon] :: MsgBasePosLlh -> !Double -- | Height [_msgBasePosLlh_height] :: MsgBasePosLlh -> !Double msgObs_header :: Lens' MsgObs ObservationHeader msgObs_obs :: Lens' MsgObs [PackedObsContent] msgBasePosLlh :: Word16 -- | SBP class for message MSG_BASE_POS_ECEF (0x0048). -- -- The base station position message is the position reported by the base -- station itself in absolute Earth Centered Earth Fixed coordinates. It -- is used for pseudo-absolute RTK positioning, and is required to be a -- high- accuracy surveyed location of the base station. Any error here -- will result in an error in the pseudo-absolute position output. data MsgBasePosEcef MsgBasePosEcef :: !Double -> !Double -> !Double -> MsgBasePosEcef -- | ECEF X coordinate [_msgBasePosEcef_x] :: MsgBasePosEcef -> !Double -- | ECEF Y coordinate [_msgBasePosEcef_y] :: MsgBasePosEcef -> !Double -- | ECEF Z coordinate [_msgBasePosEcef_z] :: MsgBasePosEcef -> !Double msgBasePosLlh_height :: Lens' MsgBasePosLlh Double msgBasePosLlh_lat :: Lens' MsgBasePosLlh Double msgBasePosLlh_lon :: Lens' MsgBasePosLlh Double msgBasePosEcef :: Word16 data EphemerisCommonContent EphemerisCommonContent :: !GnssSignal -> !GpsTimeSec -> !Float -> !Word32 -> !Word8 -> !Word8 -> EphemerisCommonContent -- | GNSS signal identifier (16 bit) [_ephemerisCommonContent_sid] :: EphemerisCommonContent -> !GnssSignal -- | Time of Ephemerides [_ephemerisCommonContent_toe] :: EphemerisCommonContent -> !GpsTimeSec -- | User Range Accuracy [_ephemerisCommonContent_ura] :: EphemerisCommonContent -> !Float -- | Curve fit interval [_ephemerisCommonContent_fit_interval] :: EphemerisCommonContent -> !Word32 -- | Status of ephemeris, 1 = valid, 0 = invalid [_ephemerisCommonContent_valid] :: EphemerisCommonContent -> !Word8 -- | Satellite health status. GPS: ICD-GPS-200, chapter 20.3.3.3.1.4 SBAS: -- 0 = valid, non-zero = invalid GLO: 0 = valid, non-zero = invalid [_ephemerisCommonContent_health_bits] :: EphemerisCommonContent -> !Word8 msgBasePosEcef_x :: Lens' MsgBasePosEcef Double msgBasePosEcef_y :: Lens' MsgBasePosEcef Double msgBasePosEcef_z :: Lens' MsgBasePosEcef Double data EphemerisCommonContentDepB EphemerisCommonContentDepB :: !GnssSignal -> !GpsTimeSec -> !Double -> !Word32 -> !Word8 -> !Word8 -> EphemerisCommonContentDepB -- | GNSS signal identifier (16 bit) [_ephemerisCommonContentDepB_sid] :: EphemerisCommonContentDepB -> !GnssSignal -- | Time of Ephemerides [_ephemerisCommonContentDepB_toe] :: EphemerisCommonContentDepB -> !GpsTimeSec -- | User Range Accuracy [_ephemerisCommonContentDepB_ura] :: EphemerisCommonContentDepB -> !Double -- | Curve fit interval [_ephemerisCommonContentDepB_fit_interval] :: EphemerisCommonContentDepB -> !Word32 -- | Status of ephemeris, 1 = valid, 0 = invalid [_ephemerisCommonContentDepB_valid] :: EphemerisCommonContentDepB -> !Word8 -- | Satellite health status. GPS: ICD-GPS-200, chapter 20.3.3.3.1.4 -- Others: 0 = valid, non-zero = invalid [_ephemerisCommonContentDepB_health_bits] :: EphemerisCommonContentDepB -> !Word8 ephemerisCommonContent_fit_interval :: Lens' EphemerisCommonContent Word32 ephemerisCommonContent_health_bits :: Lens' EphemerisCommonContent Word8 ephemerisCommonContent_sid :: Lens' EphemerisCommonContent GnssSignal ephemerisCommonContent_toe :: Lens' EphemerisCommonContent GpsTimeSec ephemerisCommonContent_ura :: Lens' EphemerisCommonContent Float ephemerisCommonContent_valid :: Lens' EphemerisCommonContent Word8 data EphemerisCommonContentDepA EphemerisCommonContentDepA :: !GnssSignalDep -> !GpsTimeDep -> !Double -> !Word32 -> !Word8 -> !Word8 -> EphemerisCommonContentDepA -- | GNSS signal identifier [_ephemerisCommonContentDepA_sid] :: EphemerisCommonContentDepA -> !GnssSignalDep -- | Time of Ephemerides [_ephemerisCommonContentDepA_toe] :: EphemerisCommonContentDepA -> !GpsTimeDep -- | User Range Accuracy [_ephemerisCommonContentDepA_ura] :: EphemerisCommonContentDepA -> !Double -- | Curve fit interval [_ephemerisCommonContentDepA_fit_interval] :: EphemerisCommonContentDepA -> !Word32 -- | Status of ephemeris, 1 = valid, 0 = invalid [_ephemerisCommonContentDepA_valid] :: EphemerisCommonContentDepA -> !Word8 -- | Satellite health status. GPS: ICD-GPS-200, chapter 20.3.3.3.1.4 SBAS: -- 0 = valid, non-zero = invalid GLO: 0 = valid, non-zero = invalid [_ephemerisCommonContentDepA_health_bits] :: EphemerisCommonContentDepA -> !Word8 ephemerisCommonContentDepB_fit_interval :: Lens' EphemerisCommonContentDepB Word32 ephemerisCommonContentDepB_health_bits :: Lens' EphemerisCommonContentDepB Word8 ephemerisCommonContentDepB_sid :: Lens' EphemerisCommonContentDepB GnssSignal ephemerisCommonContentDepB_toe :: Lens' EphemerisCommonContentDepB GpsTimeSec ephemerisCommonContentDepB_ura :: Lens' EphemerisCommonContentDepB Double ephemerisCommonContentDepB_valid :: Lens' EphemerisCommonContentDepB Word8 -- | SBP class for message MSG_EPHEMERIS_GPS_DEP_E (0x0081). -- -- The ephemeris message returns a set of satellite orbit parameters that -- is used to calculate GPS satellite position, velocity, and clock -- offset. Please see the Navstar GPS Space Segment/Navigation user -- interfaces (ICD- GPS-200, Table 20-III) for more details. data MsgEphemerisGpsDepE MsgEphemerisGpsDepE :: !EphemerisCommonContentDepA -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !GpsTimeDep -> !Word8 -> !Word16 -> MsgEphemerisGpsDepE -- | Values common for all ephemeris types [_msgEphemerisGpsDepE_common] :: MsgEphemerisGpsDepE -> !EphemerisCommonContentDepA -- | Group delay differential between L1 and L2 [_msgEphemerisGpsDepE_tgd] :: MsgEphemerisGpsDepE -> !Double -- | Amplitude of the sine harmonic correction term to the orbit radius [_msgEphemerisGpsDepE_c_rs] :: MsgEphemerisGpsDepE -> !Double -- | Amplitude of the cosine harmonic correction term to the orbit radius [_msgEphemerisGpsDepE_c_rc] :: MsgEphemerisGpsDepE -> !Double -- | Amplitude of the cosine harmonic correction term to the argument of -- latitude [_msgEphemerisGpsDepE_c_uc] :: MsgEphemerisGpsDepE -> !Double -- | Amplitude of the sine harmonic correction term to the argument of -- latitude [_msgEphemerisGpsDepE_c_us] :: MsgEphemerisGpsDepE -> !Double -- | Amplitude of the cosine harmonic correction term to the angle of -- inclination [_msgEphemerisGpsDepE_c_ic] :: MsgEphemerisGpsDepE -> !Double -- | Amplitude of the sine harmonic correction term to the angle of -- inclination [_msgEphemerisGpsDepE_c_is] :: MsgEphemerisGpsDepE -> !Double -- | Mean motion difference [_msgEphemerisGpsDepE_dn] :: MsgEphemerisGpsDepE -> !Double -- | Mean anomaly at reference time [_msgEphemerisGpsDepE_m0] :: MsgEphemerisGpsDepE -> !Double -- | Eccentricity of satellite orbit [_msgEphemerisGpsDepE_ecc] :: MsgEphemerisGpsDepE -> !Double -- | Square root of the semi-major axis of orbit [_msgEphemerisGpsDepE_sqrta] :: MsgEphemerisGpsDepE -> !Double -- | Longitude of ascending node of orbit plane at weekly epoch [_msgEphemerisGpsDepE_omega0] :: MsgEphemerisGpsDepE -> !Double -- | Rate of right ascension [_msgEphemerisGpsDepE_omegadot] :: MsgEphemerisGpsDepE -> !Double -- | Argument of perigee [_msgEphemerisGpsDepE_w] :: MsgEphemerisGpsDepE -> !Double -- | Inclination [_msgEphemerisGpsDepE_inc] :: MsgEphemerisGpsDepE -> !Double -- | Inclination first derivative [_msgEphemerisGpsDepE_inc_dot] :: MsgEphemerisGpsDepE -> !Double -- | Polynomial clock correction coefficient (clock bias) [_msgEphemerisGpsDepE_af0] :: MsgEphemerisGpsDepE -> !Double -- | Polynomial clock correction coefficient (clock drift) [_msgEphemerisGpsDepE_af1] :: MsgEphemerisGpsDepE -> !Double -- | Polynomial clock correction coefficient (rate of clock drift) [_msgEphemerisGpsDepE_af2] :: MsgEphemerisGpsDepE -> !Double -- | Clock reference [_msgEphemerisGpsDepE_toc] :: MsgEphemerisGpsDepE -> !GpsTimeDep -- | Issue of ephemeris data [_msgEphemerisGpsDepE_iode] :: MsgEphemerisGpsDepE -> !Word8 -- | Issue of clock data [_msgEphemerisGpsDepE_iodc] :: MsgEphemerisGpsDepE -> !Word16 ephemerisCommonContentDepA_fit_interval :: Lens' EphemerisCommonContentDepA Word32 ephemerisCommonContentDepA_health_bits :: Lens' EphemerisCommonContentDepA Word8 ephemerisCommonContentDepA_sid :: Lens' EphemerisCommonContentDepA GnssSignalDep ephemerisCommonContentDepA_toe :: Lens' EphemerisCommonContentDepA GpsTimeDep ephemerisCommonContentDepA_ura :: Lens' EphemerisCommonContentDepA Double ephemerisCommonContentDepA_valid :: Lens' EphemerisCommonContentDepA Word8 msgEphemerisGpsDepE :: Word16 -- | SBP class for message MSG_EPHEMERIS_GPS_DEP_F (0x0086). -- -- This observation message has been deprecated in favor of ephemeris -- message using floats for size reduction. data MsgEphemerisGpsDepF MsgEphemerisGpsDepF :: !EphemerisCommonContentDepB -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !GpsTimeSec -> !Word8 -> !Word16 -> MsgEphemerisGpsDepF -- | Values common for all ephemeris types [_msgEphemerisGpsDepF_common] :: MsgEphemerisGpsDepF -> !EphemerisCommonContentDepB -- | Group delay differential between L1 and L2 [_msgEphemerisGpsDepF_tgd] :: MsgEphemerisGpsDepF -> !Double -- | Amplitude of the sine harmonic correction term to the orbit radius [_msgEphemerisGpsDepF_c_rs] :: MsgEphemerisGpsDepF -> !Double -- | Amplitude of the cosine harmonic correction term to the orbit radius [_msgEphemerisGpsDepF_c_rc] :: MsgEphemerisGpsDepF -> !Double -- | Amplitude of the cosine harmonic correction term to the argument of -- latitude [_msgEphemerisGpsDepF_c_uc] :: MsgEphemerisGpsDepF -> !Double -- | Amplitude of the sine harmonic correction term to the argument of -- latitude [_msgEphemerisGpsDepF_c_us] :: MsgEphemerisGpsDepF -> !Double -- | Amplitude of the cosine harmonic correction term to the angle of -- inclination [_msgEphemerisGpsDepF_c_ic] :: MsgEphemerisGpsDepF -> !Double -- | Amplitude of the sine harmonic correction term to the angle of -- inclination [_msgEphemerisGpsDepF_c_is] :: MsgEphemerisGpsDepF -> !Double -- | Mean motion difference [_msgEphemerisGpsDepF_dn] :: MsgEphemerisGpsDepF -> !Double -- | Mean anomaly at reference time [_msgEphemerisGpsDepF_m0] :: MsgEphemerisGpsDepF -> !Double -- | Eccentricity of satellite orbit [_msgEphemerisGpsDepF_ecc] :: MsgEphemerisGpsDepF -> !Double -- | Square root of the semi-major axis of orbit [_msgEphemerisGpsDepF_sqrta] :: MsgEphemerisGpsDepF -> !Double -- | Longitude of ascending node of orbit plane at weekly epoch [_msgEphemerisGpsDepF_omega0] :: MsgEphemerisGpsDepF -> !Double -- | Rate of right ascension [_msgEphemerisGpsDepF_omegadot] :: MsgEphemerisGpsDepF -> !Double -- | Argument of perigee [_msgEphemerisGpsDepF_w] :: MsgEphemerisGpsDepF -> !Double -- | Inclination [_msgEphemerisGpsDepF_inc] :: MsgEphemerisGpsDepF -> !Double -- | Inclination first derivative [_msgEphemerisGpsDepF_inc_dot] :: MsgEphemerisGpsDepF -> !Double -- | Polynomial clock correction coefficient (clock bias) [_msgEphemerisGpsDepF_af0] :: MsgEphemerisGpsDepF -> !Double -- | Polynomial clock correction coefficient (clock drift) [_msgEphemerisGpsDepF_af1] :: MsgEphemerisGpsDepF -> !Double -- | Polynomial clock correction coefficient (rate of clock drift) [_msgEphemerisGpsDepF_af2] :: MsgEphemerisGpsDepF -> !Double -- | Clock reference [_msgEphemerisGpsDepF_toc] :: MsgEphemerisGpsDepF -> !GpsTimeSec -- | Issue of ephemeris data [_msgEphemerisGpsDepF_iode] :: MsgEphemerisGpsDepF -> !Word8 -- | Issue of clock data [_msgEphemerisGpsDepF_iodc] :: MsgEphemerisGpsDepF -> !Word16 msgEphemerisGpsDepE_af0 :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_af1 :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_af2 :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_c_ic :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_c_is :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_c_rc :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_c_rs :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_c_uc :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_c_us :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_common :: Lens' MsgEphemerisGpsDepE EphemerisCommonContentDepA msgEphemerisGpsDepE_dn :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_ecc :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_inc :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_inc_dot :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_iodc :: Lens' MsgEphemerisGpsDepE Word16 msgEphemerisGpsDepE_iode :: Lens' MsgEphemerisGpsDepE Word8 msgEphemerisGpsDepE_m0 :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_omega0 :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_omegadot :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_sqrta :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_tgd :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepE_toc :: Lens' MsgEphemerisGpsDepE GpsTimeDep msgEphemerisGpsDepE_w :: Lens' MsgEphemerisGpsDepE Double msgEphemerisGpsDepF :: Word16 -- | SBP class for message MSG_EPHEMERIS_GPS (0x008A). -- -- The ephemeris message returns a set of satellite orbit parameters that -- is used to calculate GPS satellite position, velocity, and clock -- offset. Please see the Navstar GPS Space Segment/Navigation user -- interfaces (ICD- GPS-200, Table 20-III) for more details. data MsgEphemerisGps MsgEphemerisGps :: !EphemerisCommonContent -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Float -> !Float -> !Float -> !GpsTimeSec -> !Word8 -> !Word16 -> MsgEphemerisGps -- | Values common for all ephemeris types [_msgEphemerisGps_common] :: MsgEphemerisGps -> !EphemerisCommonContent -- | Group delay differential between L1 and L2 [_msgEphemerisGps_tgd] :: MsgEphemerisGps -> !Float -- | Amplitude of the sine harmonic correction term to the orbit radius [_msgEphemerisGps_c_rs] :: MsgEphemerisGps -> !Float -- | Amplitude of the cosine harmonic correction term to the orbit radius [_msgEphemerisGps_c_rc] :: MsgEphemerisGps -> !Float -- | Amplitude of the cosine harmonic correction term to the argument of -- latitude [_msgEphemerisGps_c_uc] :: MsgEphemerisGps -> !Float -- | Amplitude of the sine harmonic correction term to the argument of -- latitude [_msgEphemerisGps_c_us] :: MsgEphemerisGps -> !Float -- | Amplitude of the cosine harmonic correction term to the angle of -- inclination [_msgEphemerisGps_c_ic] :: MsgEphemerisGps -> !Float -- | Amplitude of the sine harmonic correction term to the angle of -- inclination [_msgEphemerisGps_c_is] :: MsgEphemerisGps -> !Float -- | Mean motion difference [_msgEphemerisGps_dn] :: MsgEphemerisGps -> !Double -- | Mean anomaly at reference time [_msgEphemerisGps_m0] :: MsgEphemerisGps -> !Double -- | Eccentricity of satellite orbit [_msgEphemerisGps_ecc] :: MsgEphemerisGps -> !Double -- | Square root of the semi-major axis of orbit [_msgEphemerisGps_sqrta] :: MsgEphemerisGps -> !Double -- | Longitude of ascending node of orbit plane at weekly epoch [_msgEphemerisGps_omega0] :: MsgEphemerisGps -> !Double -- | Rate of right ascension [_msgEphemerisGps_omegadot] :: MsgEphemerisGps -> !Double -- | Argument of perigee [_msgEphemerisGps_w] :: MsgEphemerisGps -> !Double -- | Inclination [_msgEphemerisGps_inc] :: MsgEphemerisGps -> !Double -- | Inclination first derivative [_msgEphemerisGps_inc_dot] :: MsgEphemerisGps -> !Double -- | Polynomial clock correction coefficient (clock bias) [_msgEphemerisGps_af0] :: MsgEphemerisGps -> !Float -- | Polynomial clock correction coefficient (clock drift) [_msgEphemerisGps_af1] :: MsgEphemerisGps -> !Float -- | Polynomial clock correction coefficient (rate of clock drift) [_msgEphemerisGps_af2] :: MsgEphemerisGps -> !Float -- | Clock reference [_msgEphemerisGps_toc] :: MsgEphemerisGps -> !GpsTimeSec -- | Issue of ephemeris data [_msgEphemerisGps_iode] :: MsgEphemerisGps -> !Word8 -- | Issue of clock data [_msgEphemerisGps_iodc] :: MsgEphemerisGps -> !Word16 msgEphemerisGpsDepF_af0 :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_af1 :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_af2 :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_c_ic :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_c_is :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_c_rc :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_c_rs :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_c_uc :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_c_us :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_common :: Lens' MsgEphemerisGpsDepF EphemerisCommonContentDepB msgEphemerisGpsDepF_dn :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_ecc :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_inc :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_inc_dot :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_iodc :: Lens' MsgEphemerisGpsDepF Word16 msgEphemerisGpsDepF_iode :: Lens' MsgEphemerisGpsDepF Word8 msgEphemerisGpsDepF_m0 :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_omega0 :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_omegadot :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_sqrta :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_tgd :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGpsDepF_toc :: Lens' MsgEphemerisGpsDepF GpsTimeSec msgEphemerisGpsDepF_w :: Lens' MsgEphemerisGpsDepF Double msgEphemerisGps :: Word16 -- | SBP class for message MSG_EPHEMERIS_QZSS (0x008E). -- -- The ephemeris message returns a set of satellite orbit parameters that -- is used to calculate QZSS satellite position, velocity, and clock -- offset. data MsgEphemerisQzss MsgEphemerisQzss :: !EphemerisCommonContent -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Float -> !Float -> !Float -> !GpsTimeSec -> !Word8 -> !Word16 -> MsgEphemerisQzss -- | Values common for all ephemeris types [_msgEphemerisQzss_common] :: MsgEphemerisQzss -> !EphemerisCommonContent -- | Group delay differential between L1 and L2 [_msgEphemerisQzss_tgd] :: MsgEphemerisQzss -> !Float -- | Amplitude of the sine harmonic correction term to the orbit radius [_msgEphemerisQzss_c_rs] :: MsgEphemerisQzss -> !Float -- | Amplitude of the cosine harmonic correction term to the orbit radius [_msgEphemerisQzss_c_rc] :: MsgEphemerisQzss -> !Float -- | Amplitude of the cosine harmonic correction term to the argument of -- latitude [_msgEphemerisQzss_c_uc] :: MsgEphemerisQzss -> !Float -- | Amplitude of the sine harmonic correction term to the argument of -- latitude [_msgEphemerisQzss_c_us] :: MsgEphemerisQzss -> !Float -- | Amplitude of the cosine harmonic correction term to the angle of -- inclination [_msgEphemerisQzss_c_ic] :: MsgEphemerisQzss -> !Float -- | Amplitude of the sine harmonic correction term to the angle of -- inclination [_msgEphemerisQzss_c_is] :: MsgEphemerisQzss -> !Float -- | Mean motion difference [_msgEphemerisQzss_dn] :: MsgEphemerisQzss -> !Double -- | Mean anomaly at reference time [_msgEphemerisQzss_m0] :: MsgEphemerisQzss -> !Double -- | Eccentricity of satellite orbit [_msgEphemerisQzss_ecc] :: MsgEphemerisQzss -> !Double -- | Square root of the semi-major axis of orbit [_msgEphemerisQzss_sqrta] :: MsgEphemerisQzss -> !Double -- | Longitude of ascending node of orbit plane at weekly epoch [_msgEphemerisQzss_omega0] :: MsgEphemerisQzss -> !Double -- | Rate of right ascension [_msgEphemerisQzss_omegadot] :: MsgEphemerisQzss -> !Double -- | Argument of perigee [_msgEphemerisQzss_w] :: MsgEphemerisQzss -> !Double -- | Inclination [_msgEphemerisQzss_inc] :: MsgEphemerisQzss -> !Double -- | Inclination first derivative [_msgEphemerisQzss_inc_dot] :: MsgEphemerisQzss -> !Double -- | Polynomial clock correction coefficient (clock bias) [_msgEphemerisQzss_af0] :: MsgEphemerisQzss -> !Float -- | Polynomial clock correction coefficient (clock drift) [_msgEphemerisQzss_af1] :: MsgEphemerisQzss -> !Float -- | Polynomial clock correction coefficient (rate of clock drift) [_msgEphemerisQzss_af2] :: MsgEphemerisQzss -> !Float -- | Clock reference [_msgEphemerisQzss_toc] :: MsgEphemerisQzss -> !GpsTimeSec -- | Issue of ephemeris data [_msgEphemerisQzss_iode] :: MsgEphemerisQzss -> !Word8 -- | Issue of clock data [_msgEphemerisQzss_iodc] :: MsgEphemerisQzss -> !Word16 msgEphemerisGps_af0 :: Lens' MsgEphemerisGps Float msgEphemerisGps_af1 :: Lens' MsgEphemerisGps Float msgEphemerisGps_af2 :: Lens' MsgEphemerisGps Float msgEphemerisGps_c_ic :: Lens' MsgEphemerisGps Float msgEphemerisGps_c_is :: Lens' MsgEphemerisGps Float msgEphemerisGps_c_rc :: Lens' MsgEphemerisGps Float msgEphemerisGps_c_rs :: Lens' MsgEphemerisGps Float msgEphemerisGps_c_uc :: Lens' MsgEphemerisGps Float msgEphemerisGps_c_us :: Lens' MsgEphemerisGps Float msgEphemerisGps_common :: Lens' MsgEphemerisGps EphemerisCommonContent msgEphemerisGps_dn :: Lens' MsgEphemerisGps Double msgEphemerisGps_ecc :: Lens' MsgEphemerisGps Double msgEphemerisGps_inc :: Lens' MsgEphemerisGps Double msgEphemerisGps_inc_dot :: Lens' MsgEphemerisGps Double msgEphemerisGps_iodc :: Lens' MsgEphemerisGps Word16 msgEphemerisGps_iode :: Lens' MsgEphemerisGps Word8 msgEphemerisGps_m0 :: Lens' MsgEphemerisGps Double msgEphemerisGps_omega0 :: Lens' MsgEphemerisGps Double msgEphemerisGps_omegadot :: Lens' MsgEphemerisGps Double msgEphemerisGps_sqrta :: Lens' MsgEphemerisGps Double msgEphemerisGps_tgd :: Lens' MsgEphemerisGps Float msgEphemerisGps_toc :: Lens' MsgEphemerisGps GpsTimeSec msgEphemerisGps_w :: Lens' MsgEphemerisGps Double msgEphemerisQzss :: Word16 -- | SBP class for message MSG_EPHEMERIS_BDS (0x0089). -- -- The ephemeris message returns a set of satellite orbit parameters that -- is used to calculate BDS satellite position, velocity, and clock -- offset. Please see the BeiDou Navigation Satellite System SIS-ICD -- Version 2.1, Table 5-9 for more details. data MsgEphemerisBds MsgEphemerisBds :: !EphemerisCommonContent -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Float -> !Float -> !GpsTimeSec -> !Word8 -> !Word16 -> MsgEphemerisBds -- | Values common for all ephemeris types [_msgEphemerisBds_common] :: MsgEphemerisBds -> !EphemerisCommonContent -- | Group delay differential for B1 [_msgEphemerisBds_tgd1] :: MsgEphemerisBds -> !Float -- | Group delay differential for B2 [_msgEphemerisBds_tgd2] :: MsgEphemerisBds -> !Float -- | Amplitude of the sine harmonic correction term to the orbit radius [_msgEphemerisBds_c_rs] :: MsgEphemerisBds -> !Float -- | Amplitude of the cosine harmonic correction term to the orbit radius [_msgEphemerisBds_c_rc] :: MsgEphemerisBds -> !Float -- | Amplitude of the cosine harmonic correction term to the argument of -- latitude [_msgEphemerisBds_c_uc] :: MsgEphemerisBds -> !Float -- | Amplitude of the sine harmonic correction term to the argument of -- latitude [_msgEphemerisBds_c_us] :: MsgEphemerisBds -> !Float -- | Amplitude of the cosine harmonic correction term to the angle of -- inclination [_msgEphemerisBds_c_ic] :: MsgEphemerisBds -> !Float -- | Amplitude of the sine harmonic correction term to the angle of -- inclination [_msgEphemerisBds_c_is] :: MsgEphemerisBds -> !Float -- | Mean motion difference [_msgEphemerisBds_dn] :: MsgEphemerisBds -> !Double -- | Mean anomaly at reference time [_msgEphemerisBds_m0] :: MsgEphemerisBds -> !Double -- | Eccentricity of satellite orbit [_msgEphemerisBds_ecc] :: MsgEphemerisBds -> !Double -- | Square root of the semi-major axis of orbit [_msgEphemerisBds_sqrta] :: MsgEphemerisBds -> !Double -- | Longitude of ascending node of orbit plane at weekly epoch [_msgEphemerisBds_omega0] :: MsgEphemerisBds -> !Double -- | Rate of right ascension [_msgEphemerisBds_omegadot] :: MsgEphemerisBds -> !Double -- | Argument of perigee [_msgEphemerisBds_w] :: MsgEphemerisBds -> !Double -- | Inclination [_msgEphemerisBds_inc] :: MsgEphemerisBds -> !Double -- | Inclination first derivative [_msgEphemerisBds_inc_dot] :: MsgEphemerisBds -> !Double -- | Polynomial clock correction coefficient (clock bias) [_msgEphemerisBds_af0] :: MsgEphemerisBds -> !Double -- | Polynomial clock correction coefficient (clock drift) [_msgEphemerisBds_af1] :: MsgEphemerisBds -> !Float -- | Polynomial clock correction coefficient (rate of clock drift) [_msgEphemerisBds_af2] :: MsgEphemerisBds -> !Float -- | Clock reference [_msgEphemerisBds_toc] :: MsgEphemerisBds -> !GpsTimeSec -- | Issue of ephemeris data Calculated from the navigation data parameter -- t_oe per RTCM/CSNO recommendation: IODE = mod (t_oe / 720, 240) [_msgEphemerisBds_iode] :: MsgEphemerisBds -> !Word8 -- | Issue of clock data Calculated from the navigation data parameter t_oe -- per RTCM/CSNO recommendation: IODE = mod (t_oc / 720, 240) [_msgEphemerisBds_iodc] :: MsgEphemerisBds -> !Word16 msgEphemerisQzss_af0 :: Lens' MsgEphemerisQzss Float msgEphemerisQzss_af1 :: Lens' MsgEphemerisQzss Float msgEphemerisQzss_af2 :: Lens' MsgEphemerisQzss Float msgEphemerisQzss_c_ic :: Lens' MsgEphemerisQzss Float msgEphemerisQzss_c_is :: Lens' MsgEphemerisQzss Float msgEphemerisQzss_c_rc :: Lens' MsgEphemerisQzss Float msgEphemerisQzss_c_rs :: Lens' MsgEphemerisQzss Float msgEphemerisQzss_c_uc :: Lens' MsgEphemerisQzss Float msgEphemerisQzss_c_us :: Lens' MsgEphemerisQzss Float msgEphemerisQzss_common :: Lens' MsgEphemerisQzss EphemerisCommonContent msgEphemerisQzss_dn :: Lens' MsgEphemerisQzss Double msgEphemerisQzss_ecc :: Lens' MsgEphemerisQzss Double msgEphemerisQzss_inc :: Lens' MsgEphemerisQzss Double msgEphemerisQzss_inc_dot :: Lens' MsgEphemerisQzss Double msgEphemerisQzss_iodc :: Lens' MsgEphemerisQzss Word16 msgEphemerisQzss_iode :: Lens' MsgEphemerisQzss Word8 msgEphemerisQzss_m0 :: Lens' MsgEphemerisQzss Double msgEphemerisQzss_omega0 :: Lens' MsgEphemerisQzss Double msgEphemerisQzss_omegadot :: Lens' MsgEphemerisQzss Double msgEphemerisQzss_sqrta :: Lens' MsgEphemerisQzss Double msgEphemerisQzss_tgd :: Lens' MsgEphemerisQzss Float msgEphemerisQzss_toc :: Lens' MsgEphemerisQzss GpsTimeSec msgEphemerisQzss_w :: Lens' MsgEphemerisQzss Double msgEphemerisBds :: Word16 -- | SBP class for message MSG_EPHEMERIS_GAL_DEP_A (0x0095). -- -- This observation message has been deprecated in favor of an ephemeris -- message with explicit source of NAV data. data MsgEphemerisGalDepA MsgEphemerisGalDepA :: !EphemerisCommonContent -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Float -> !GpsTimeSec -> !Word16 -> !Word16 -> MsgEphemerisGalDepA -- | Values common for all ephemeris types [_msgEphemerisGalDepA_common] :: MsgEphemerisGalDepA -> !EphemerisCommonContent -- | E1-E5a Broadcast Group Delay [_msgEphemerisGalDepA_bgd_e1e5a] :: MsgEphemerisGalDepA -> !Float -- | E1-E5b Broadcast Group Delay [_msgEphemerisGalDepA_bgd_e1e5b] :: MsgEphemerisGalDepA -> !Float -- | Amplitude of the sine harmonic correction term to the orbit radius [_msgEphemerisGalDepA_c_rs] :: MsgEphemerisGalDepA -> !Float -- | Amplitude of the cosine harmonic correction term to the orbit radius [_msgEphemerisGalDepA_c_rc] :: MsgEphemerisGalDepA -> !Float -- | Amplitude of the cosine harmonic correction term to the argument of -- latitude [_msgEphemerisGalDepA_c_uc] :: MsgEphemerisGalDepA -> !Float -- | Amplitude of the sine harmonic correction term to the argument of -- latitude [_msgEphemerisGalDepA_c_us] :: MsgEphemerisGalDepA -> !Float -- | Amplitude of the cosine harmonic correction term to the angle of -- inclination [_msgEphemerisGalDepA_c_ic] :: MsgEphemerisGalDepA -> !Float -- | Amplitude of the sine harmonic correction term to the angle of -- inclination [_msgEphemerisGalDepA_c_is] :: MsgEphemerisGalDepA -> !Float -- | Mean motion difference [_msgEphemerisGalDepA_dn] :: MsgEphemerisGalDepA -> !Double -- | Mean anomaly at reference time [_msgEphemerisGalDepA_m0] :: MsgEphemerisGalDepA -> !Double -- | Eccentricity of satellite orbit [_msgEphemerisGalDepA_ecc] :: MsgEphemerisGalDepA -> !Double -- | Square root of the semi-major axis of orbit [_msgEphemerisGalDepA_sqrta] :: MsgEphemerisGalDepA -> !Double -- | Longitude of ascending node of orbit plane at weekly epoch [_msgEphemerisGalDepA_omega0] :: MsgEphemerisGalDepA -> !Double -- | Rate of right ascension [_msgEphemerisGalDepA_omegadot] :: MsgEphemerisGalDepA -> !Double -- | Argument of perigee [_msgEphemerisGalDepA_w] :: MsgEphemerisGalDepA -> !Double -- | Inclination [_msgEphemerisGalDepA_inc] :: MsgEphemerisGalDepA -> !Double -- | Inclination first derivative [_msgEphemerisGalDepA_inc_dot] :: MsgEphemerisGalDepA -> !Double -- | Polynomial clock correction coefficient (clock bias) [_msgEphemerisGalDepA_af0] :: MsgEphemerisGalDepA -> !Double -- | Polynomial clock correction coefficient (clock drift) [_msgEphemerisGalDepA_af1] :: MsgEphemerisGalDepA -> !Double -- | Polynomial clock correction coefficient (rate of clock drift) [_msgEphemerisGalDepA_af2] :: MsgEphemerisGalDepA -> !Float -- | Clock reference [_msgEphemerisGalDepA_toc] :: MsgEphemerisGalDepA -> !GpsTimeSec -- | Issue of data (IODnav) [_msgEphemerisGalDepA_iode] :: MsgEphemerisGalDepA -> !Word16 -- | Issue of data (IODnav). Always equal to iode [_msgEphemerisGalDepA_iodc] :: MsgEphemerisGalDepA -> !Word16 msgEphemerisBds_af0 :: Lens' MsgEphemerisBds Double msgEphemerisBds_af1 :: Lens' MsgEphemerisBds Float msgEphemerisBds_af2 :: Lens' MsgEphemerisBds Float msgEphemerisBds_c_ic :: Lens' MsgEphemerisBds Float msgEphemerisBds_c_is :: Lens' MsgEphemerisBds Float msgEphemerisBds_c_rc :: Lens' MsgEphemerisBds Float msgEphemerisBds_c_rs :: Lens' MsgEphemerisBds Float msgEphemerisBds_c_uc :: Lens' MsgEphemerisBds Float msgEphemerisBds_c_us :: Lens' MsgEphemerisBds Float msgEphemerisBds_common :: Lens' MsgEphemerisBds EphemerisCommonContent msgEphemerisBds_dn :: Lens' MsgEphemerisBds Double msgEphemerisBds_ecc :: Lens' MsgEphemerisBds Double msgEphemerisBds_inc :: Lens' MsgEphemerisBds Double msgEphemerisBds_inc_dot :: Lens' MsgEphemerisBds Double msgEphemerisBds_iodc :: Lens' MsgEphemerisBds Word16 msgEphemerisBds_iode :: Lens' MsgEphemerisBds Word8 msgEphemerisBds_m0 :: Lens' MsgEphemerisBds Double msgEphemerisBds_omega0 :: Lens' MsgEphemerisBds Double msgEphemerisBds_omegadot :: Lens' MsgEphemerisBds Double msgEphemerisBds_sqrta :: Lens' MsgEphemerisBds Double msgEphemerisBds_tgd1 :: Lens' MsgEphemerisBds Float msgEphemerisBds_tgd2 :: Lens' MsgEphemerisBds Float msgEphemerisBds_toc :: Lens' MsgEphemerisBds GpsTimeSec msgEphemerisBds_w :: Lens' MsgEphemerisBds Double msgEphemerisGalDepA :: Word16 -- | SBP class for message MSG_EPHEMERIS_GAL (0x008D). -- -- The ephemeris message returns a set of satellite orbit parameters that -- is used to calculate Galileo satellite position, velocity, and clock -- offset. Please see the Signal In Space ICD OS SIS ICD, Issue 1.3, -- December 2016 for more details. data MsgEphemerisGal MsgEphemerisGal :: !EphemerisCommonContent -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Float -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Float -> !GpsTimeSec -> !Word16 -> !Word16 -> !Word8 -> MsgEphemerisGal -- | Values common for all ephemeris types [_msgEphemerisGal_common] :: MsgEphemerisGal -> !EphemerisCommonContent -- | E1-E5a Broadcast Group Delay [_msgEphemerisGal_bgd_e1e5a] :: MsgEphemerisGal -> !Float -- | E1-E5b Broadcast Group Delay [_msgEphemerisGal_bgd_e1e5b] :: MsgEphemerisGal -> !Float -- | Amplitude of the sine harmonic correction term to the orbit radius [_msgEphemerisGal_c_rs] :: MsgEphemerisGal -> !Float -- | Amplitude of the cosine harmonic correction term to the orbit radius [_msgEphemerisGal_c_rc] :: MsgEphemerisGal -> !Float -- | Amplitude of the cosine harmonic correction term to the argument of -- latitude [_msgEphemerisGal_c_uc] :: MsgEphemerisGal -> !Float -- | Amplitude of the sine harmonic correction term to the argument of -- latitude [_msgEphemerisGal_c_us] :: MsgEphemerisGal -> !Float -- | Amplitude of the cosine harmonic correction term to the angle of -- inclination [_msgEphemerisGal_c_ic] :: MsgEphemerisGal -> !Float -- | Amplitude of the sine harmonic correction term to the angle of -- inclination [_msgEphemerisGal_c_is] :: MsgEphemerisGal -> !Float -- | Mean motion difference [_msgEphemerisGal_dn] :: MsgEphemerisGal -> !Double -- | Mean anomaly at reference time [_msgEphemerisGal_m0] :: MsgEphemerisGal -> !Double -- | Eccentricity of satellite orbit [_msgEphemerisGal_ecc] :: MsgEphemerisGal -> !Double -- | Square root of the semi-major axis of orbit [_msgEphemerisGal_sqrta] :: MsgEphemerisGal -> !Double -- | Longitude of ascending node of orbit plane at weekly epoch [_msgEphemerisGal_omega0] :: MsgEphemerisGal -> !Double -- | Rate of right ascension [_msgEphemerisGal_omegadot] :: MsgEphemerisGal -> !Double -- | Argument of perigee [_msgEphemerisGal_w] :: MsgEphemerisGal -> !Double -- | Inclination [_msgEphemerisGal_inc] :: MsgEphemerisGal -> !Double -- | Inclination first derivative [_msgEphemerisGal_inc_dot] :: MsgEphemerisGal -> !Double -- | Polynomial clock correction coefficient (clock bias) [_msgEphemerisGal_af0] :: MsgEphemerisGal -> !Double -- | Polynomial clock correction coefficient (clock drift) [_msgEphemerisGal_af1] :: MsgEphemerisGal -> !Double -- | Polynomial clock correction coefficient (rate of clock drift) [_msgEphemerisGal_af2] :: MsgEphemerisGal -> !Float -- | Clock reference [_msgEphemerisGal_toc] :: MsgEphemerisGal -> !GpsTimeSec -- | Issue of data (IODnav) [_msgEphemerisGal_iode] :: MsgEphemerisGal -> !Word16 -- | Issue of data (IODnav). Always equal to iode [_msgEphemerisGal_iodc] :: MsgEphemerisGal -> !Word16 -- | 0=INAV, 1=FNAV [_msgEphemerisGal_source] :: MsgEphemerisGal -> !Word8 msgEphemerisGalDepA_af0 :: Lens' MsgEphemerisGalDepA Double msgEphemerisGalDepA_af1 :: Lens' MsgEphemerisGalDepA Double msgEphemerisGalDepA_af2 :: Lens' MsgEphemerisGalDepA Float msgEphemerisGalDepA_bgd_e1e5a :: Lens' MsgEphemerisGalDepA Float msgEphemerisGalDepA_bgd_e1e5b :: Lens' MsgEphemerisGalDepA Float msgEphemerisGalDepA_c_ic :: Lens' MsgEphemerisGalDepA Float msgEphemerisGalDepA_c_is :: Lens' MsgEphemerisGalDepA Float msgEphemerisGalDepA_c_rc :: Lens' MsgEphemerisGalDepA Float msgEphemerisGalDepA_c_rs :: Lens' MsgEphemerisGalDepA Float msgEphemerisGalDepA_c_uc :: Lens' MsgEphemerisGalDepA Float msgEphemerisGalDepA_c_us :: Lens' MsgEphemerisGalDepA Float msgEphemerisGalDepA_common :: Lens' MsgEphemerisGalDepA EphemerisCommonContent msgEphemerisGalDepA_dn :: Lens' MsgEphemerisGalDepA Double msgEphemerisGalDepA_ecc :: Lens' MsgEphemerisGalDepA Double msgEphemerisGalDepA_inc :: Lens' MsgEphemerisGalDepA Double msgEphemerisGalDepA_inc_dot :: Lens' MsgEphemerisGalDepA Double msgEphemerisGalDepA_iodc :: Lens' MsgEphemerisGalDepA Word16 msgEphemerisGalDepA_iode :: Lens' MsgEphemerisGalDepA Word16 msgEphemerisGalDepA_m0 :: Lens' MsgEphemerisGalDepA Double msgEphemerisGalDepA_omega0 :: Lens' MsgEphemerisGalDepA Double msgEphemerisGalDepA_omegadot :: Lens' MsgEphemerisGalDepA Double msgEphemerisGalDepA_sqrta :: Lens' MsgEphemerisGalDepA Double msgEphemerisGalDepA_toc :: Lens' MsgEphemerisGalDepA GpsTimeSec msgEphemerisGalDepA_w :: Lens' MsgEphemerisGalDepA Double msgEphemerisGal :: Word16 data MsgEphemerisSbasDepA MsgEphemerisSbasDepA :: !EphemerisCommonContentDepA -> ![Double] -> ![Double] -> ![Double] -> !Double -> !Double -> MsgEphemerisSbasDepA -- | Values common for all ephemeris types [_msgEphemerisSbasDepA_common] :: MsgEphemerisSbasDepA -> !EphemerisCommonContentDepA -- | Position of the GEO at time toe [_msgEphemerisSbasDepA_pos] :: MsgEphemerisSbasDepA -> ![Double] -- | Velocity of the GEO at time toe [_msgEphemerisSbasDepA_vel] :: MsgEphemerisSbasDepA -> ![Double] -- | Acceleration of the GEO at time toe [_msgEphemerisSbasDepA_acc] :: MsgEphemerisSbasDepA -> ![Double] -- | Time offset of the GEO clock w.r.t. SBAS Network Time [_msgEphemerisSbasDepA_a_gf0] :: MsgEphemerisSbasDepA -> !Double -- | Drift of the GEO clock w.r.t. SBAS Network Time [_msgEphemerisSbasDepA_a_gf1] :: MsgEphemerisSbasDepA -> !Double msgEphemerisGal_af0 :: Lens' MsgEphemerisGal Double msgEphemerisGal_af1 :: Lens' MsgEphemerisGal Double msgEphemerisGal_af2 :: Lens' MsgEphemerisGal Float msgEphemerisGal_bgd_e1e5a :: Lens' MsgEphemerisGal Float msgEphemerisGal_bgd_e1e5b :: Lens' MsgEphemerisGal Float msgEphemerisGal_c_ic :: Lens' MsgEphemerisGal Float msgEphemerisGal_c_is :: Lens' MsgEphemerisGal Float msgEphemerisGal_c_rc :: Lens' MsgEphemerisGal Float msgEphemerisGal_c_rs :: Lens' MsgEphemerisGal Float msgEphemerisGal_c_uc :: Lens' MsgEphemerisGal Float msgEphemerisGal_c_us :: Lens' MsgEphemerisGal Float msgEphemerisGal_common :: Lens' MsgEphemerisGal EphemerisCommonContent msgEphemerisGal_dn :: Lens' MsgEphemerisGal Double msgEphemerisGal_ecc :: Lens' MsgEphemerisGal Double msgEphemerisGal_inc :: Lens' MsgEphemerisGal Double msgEphemerisGal_inc_dot :: Lens' MsgEphemerisGal Double msgEphemerisGal_iodc :: Lens' MsgEphemerisGal Word16 msgEphemerisGal_iode :: Lens' MsgEphemerisGal Word16 msgEphemerisGal_m0 :: Lens' MsgEphemerisGal Double msgEphemerisGal_omega0 :: Lens' MsgEphemerisGal Double msgEphemerisGal_omegadot :: Lens' MsgEphemerisGal Double msgEphemerisGal_source :: Lens' MsgEphemerisGal Word8 msgEphemerisGal_sqrta :: Lens' MsgEphemerisGal Double msgEphemerisGal_toc :: Lens' MsgEphemerisGal GpsTimeSec msgEphemerisGal_w :: Lens' MsgEphemerisGal Double msgEphemerisSbasDepA :: Word16 -- | SBP class for message MSG_EPHEMERIS_GLO_DEP_A (0x0083). -- -- The ephemeris message returns a set of satellite orbit parameters that -- is used to calculate GLO satellite position, velocity, and clock -- offset. Please see the GLO ICD 5.1 "Table 4.5 Characteristics of words -- of immediate information (ephemeris parameters)" for more details. data MsgEphemerisGloDepA MsgEphemerisGloDepA :: !EphemerisCommonContentDepA -> !Double -> !Double -> ![Double] -> ![Double] -> ![Double] -> MsgEphemerisGloDepA -- | Values common for all ephemeris types [_msgEphemerisGloDepA_common] :: MsgEphemerisGloDepA -> !EphemerisCommonContentDepA -- | Relative deviation of predicted carrier frequency from nominal [_msgEphemerisGloDepA_gamma] :: MsgEphemerisGloDepA -> !Double -- | Correction to the SV time [_msgEphemerisGloDepA_tau] :: MsgEphemerisGloDepA -> !Double -- | Position of the SV at tb in PZ-90.02 coordinates system [_msgEphemerisGloDepA_pos] :: MsgEphemerisGloDepA -> ![Double] -- | Velocity vector of the SV at tb in PZ-90.02 coordinates system [_msgEphemerisGloDepA_vel] :: MsgEphemerisGloDepA -> ![Double] -- | Acceleration vector of the SV at tb in PZ-90.02 coordinates sys [_msgEphemerisGloDepA_acc] :: MsgEphemerisGloDepA -> ![Double] msgEphemerisSbasDepA_a_gf0 :: Lens' MsgEphemerisSbasDepA Double msgEphemerisSbasDepA_a_gf1 :: Lens' MsgEphemerisSbasDepA Double msgEphemerisSbasDepA_acc :: Lens' MsgEphemerisSbasDepA [Double] msgEphemerisSbasDepA_common :: Lens' MsgEphemerisSbasDepA EphemerisCommonContentDepA msgEphemerisSbasDepA_pos :: Lens' MsgEphemerisSbasDepA [Double] msgEphemerisSbasDepA_vel :: Lens' MsgEphemerisSbasDepA [Double] msgEphemerisGloDepA :: Word16 -- | SBP class for message MSG_EPHEMERIS_SBAS_DEP_B (0x0084). -- -- This observation message has been deprecated in favor of ephemeris -- message using floats for size reduction. data MsgEphemerisSbasDepB MsgEphemerisSbasDepB :: !EphemerisCommonContentDepB -> ![Double] -> ![Double] -> ![Double] -> !Double -> !Double -> MsgEphemerisSbasDepB -- | Values common for all ephemeris types [_msgEphemerisSbasDepB_common] :: MsgEphemerisSbasDepB -> !EphemerisCommonContentDepB -- | Position of the GEO at time toe [_msgEphemerisSbasDepB_pos] :: MsgEphemerisSbasDepB -> ![Double] -- | Velocity of the GEO at time toe [_msgEphemerisSbasDepB_vel] :: MsgEphemerisSbasDepB -> ![Double] -- | Acceleration of the GEO at time toe [_msgEphemerisSbasDepB_acc] :: MsgEphemerisSbasDepB -> ![Double] -- | Time offset of the GEO clock w.r.t. SBAS Network Time [_msgEphemerisSbasDepB_a_gf0] :: MsgEphemerisSbasDepB -> !Double -- | Drift of the GEO clock w.r.t. SBAS Network Time [_msgEphemerisSbasDepB_a_gf1] :: MsgEphemerisSbasDepB -> !Double msgEphemerisGloDepA_acc :: Lens' MsgEphemerisGloDepA [Double] msgEphemerisGloDepA_common :: Lens' MsgEphemerisGloDepA EphemerisCommonContentDepA msgEphemerisGloDepA_gamma :: Lens' MsgEphemerisGloDepA Double msgEphemerisGloDepA_pos :: Lens' MsgEphemerisGloDepA [Double] msgEphemerisGloDepA_tau :: Lens' MsgEphemerisGloDepA Double msgEphemerisGloDepA_vel :: Lens' MsgEphemerisGloDepA [Double] msgEphemerisSbasDepB :: Word16 data MsgEphemerisSbas MsgEphemerisSbas :: !EphemerisCommonContent -> ![Double] -> ![Float] -> ![Float] -> !Float -> !Float -> MsgEphemerisSbas -- | Values common for all ephemeris types [_msgEphemerisSbas_common] :: MsgEphemerisSbas -> !EphemerisCommonContent -- | Position of the GEO at time toe [_msgEphemerisSbas_pos] :: MsgEphemerisSbas -> ![Double] -- | Velocity of the GEO at time toe [_msgEphemerisSbas_vel] :: MsgEphemerisSbas -> ![Float] -- | Acceleration of the GEO at time toe [_msgEphemerisSbas_acc] :: MsgEphemerisSbas -> ![Float] -- | Time offset of the GEO clock w.r.t. SBAS Network Time [_msgEphemerisSbas_a_gf0] :: MsgEphemerisSbas -> !Float -- | Drift of the GEO clock w.r.t. SBAS Network Time [_msgEphemerisSbas_a_gf1] :: MsgEphemerisSbas -> !Float msgEphemerisSbasDepB_a_gf0 :: Lens' MsgEphemerisSbasDepB Double msgEphemerisSbasDepB_a_gf1 :: Lens' MsgEphemerisSbasDepB Double msgEphemerisSbasDepB_acc :: Lens' MsgEphemerisSbasDepB [Double] msgEphemerisSbasDepB_common :: Lens' MsgEphemerisSbasDepB EphemerisCommonContentDepB msgEphemerisSbasDepB_pos :: Lens' MsgEphemerisSbasDepB [Double] msgEphemerisSbasDepB_vel :: Lens' MsgEphemerisSbasDepB [Double] msgEphemerisSbas :: Word16 -- | SBP class for message MSG_EPHEMERIS_GLO_DEP_B (0x0085). -- -- The ephemeris message returns a set of satellite orbit parameters that -- is used to calculate GLO satellite position, velocity, and clock -- offset. Please see the GLO ICD 5.1 "Table 4.5 Characteristics of words -- of immediate information (ephemeris parameters)" for more details. data MsgEphemerisGloDepB MsgEphemerisGloDepB :: !EphemerisCommonContentDepB -> !Double -> !Double -> ![Double] -> ![Double] -> ![Double] -> MsgEphemerisGloDepB -- | Values common for all ephemeris types [_msgEphemerisGloDepB_common] :: MsgEphemerisGloDepB -> !EphemerisCommonContentDepB -- | Relative deviation of predicted carrier frequency from nominal [_msgEphemerisGloDepB_gamma] :: MsgEphemerisGloDepB -> !Double -- | Correction to the SV time [_msgEphemerisGloDepB_tau] :: MsgEphemerisGloDepB -> !Double -- | Position of the SV at tb in PZ-90.02 coordinates system [_msgEphemerisGloDepB_pos] :: MsgEphemerisGloDepB -> ![Double] -- | Velocity vector of the SV at tb in PZ-90.02 coordinates system [_msgEphemerisGloDepB_vel] :: MsgEphemerisGloDepB -> ![Double] -- | Acceleration vector of the SV at tb in PZ-90.02 coordinates sys [_msgEphemerisGloDepB_acc] :: MsgEphemerisGloDepB -> ![Double] msgEphemerisSbas_a_gf0 :: Lens' MsgEphemerisSbas Float msgEphemerisSbas_a_gf1 :: Lens' MsgEphemerisSbas Float msgEphemerisSbas_acc :: Lens' MsgEphemerisSbas [Float] msgEphemerisSbas_common :: Lens' MsgEphemerisSbas EphemerisCommonContent msgEphemerisSbas_pos :: Lens' MsgEphemerisSbas [Double] msgEphemerisSbas_vel :: Lens' MsgEphemerisSbas [Float] msgEphemerisGloDepB :: Word16 -- | SBP class for message MSG_EPHEMERIS_GLO_DEP_C (0x0087). -- -- The ephemeris message returns a set of satellite orbit parameters that -- is used to calculate GLO satellite position, velocity, and clock -- offset. Please see the GLO ICD 5.1 "Table 4.5 Characteristics of words -- of immediate information (ephemeris parameters)" for more details. data MsgEphemerisGloDepC MsgEphemerisGloDepC :: !EphemerisCommonContentDepB -> !Double -> !Double -> !Double -> ![Double] -> ![Double] -> ![Double] -> !Word8 -> MsgEphemerisGloDepC -- | Values common for all ephemeris types [_msgEphemerisGloDepC_common] :: MsgEphemerisGloDepC -> !EphemerisCommonContentDepB -- | Relative deviation of predicted carrier frequency from nominal [_msgEphemerisGloDepC_gamma] :: MsgEphemerisGloDepC -> !Double -- | Correction to the SV time [_msgEphemerisGloDepC_tau] :: MsgEphemerisGloDepC -> !Double -- | Equipment delay between L1 and L2 [_msgEphemerisGloDepC_d_tau] :: MsgEphemerisGloDepC -> !Double -- | Position of the SV at tb in PZ-90.02 coordinates system [_msgEphemerisGloDepC_pos] :: MsgEphemerisGloDepC -> ![Double] -- | Velocity vector of the SV at tb in PZ-90.02 coordinates system [_msgEphemerisGloDepC_vel] :: MsgEphemerisGloDepC -> ![Double] -- | Acceleration vector of the SV at tb in PZ-90.02 coordinates sys [_msgEphemerisGloDepC_acc] :: MsgEphemerisGloDepC -> ![Double] -- | Frequency slot. FCN+8 (that is [1..14]). 0 or 0xFF for invalid [_msgEphemerisGloDepC_fcn] :: MsgEphemerisGloDepC -> !Word8 msgEphemerisGloDepB_acc :: Lens' MsgEphemerisGloDepB [Double] msgEphemerisGloDepB_common :: Lens' MsgEphemerisGloDepB EphemerisCommonContentDepB msgEphemerisGloDepB_gamma :: Lens' MsgEphemerisGloDepB Double msgEphemerisGloDepB_pos :: Lens' MsgEphemerisGloDepB [Double] msgEphemerisGloDepB_tau :: Lens' MsgEphemerisGloDepB Double msgEphemerisGloDepB_vel :: Lens' MsgEphemerisGloDepB [Double] msgEphemerisGloDepC :: Word16 -- | SBP class for message MSG_EPHEMERIS_GLO_DEP_D (0x0088). -- -- This observation message has been deprecated in favor of ephemeris -- message using floats for size reduction. data MsgEphemerisGloDepD MsgEphemerisGloDepD :: !EphemerisCommonContentDepB -> !Double -> !Double -> !Double -> ![Double] -> ![Double] -> ![Double] -> !Word8 -> !Word8 -> MsgEphemerisGloDepD -- | Values common for all ephemeris types [_msgEphemerisGloDepD_common] :: MsgEphemerisGloDepD -> !EphemerisCommonContentDepB -- | Relative deviation of predicted carrier frequency from nominal [_msgEphemerisGloDepD_gamma] :: MsgEphemerisGloDepD -> !Double -- | Correction to the SV time [_msgEphemerisGloDepD_tau] :: MsgEphemerisGloDepD -> !Double -- | Equipment delay between L1 and L2 [_msgEphemerisGloDepD_d_tau] :: MsgEphemerisGloDepD -> !Double -- | Position of the SV at tb in PZ-90.02 coordinates system [_msgEphemerisGloDepD_pos] :: MsgEphemerisGloDepD -> ![Double] -- | Velocity vector of the SV at tb in PZ-90.02 coordinates system [_msgEphemerisGloDepD_vel] :: MsgEphemerisGloDepD -> ![Double] -- | Acceleration vector of the SV at tb in PZ-90.02 coordinates sys [_msgEphemerisGloDepD_acc] :: MsgEphemerisGloDepD -> ![Double] -- | Frequency slot. FCN+8 (that is [1..14]). 0 or 0xFF for invalid [_msgEphemerisGloDepD_fcn] :: MsgEphemerisGloDepD -> !Word8 -- | Issue of data. Equal to the 7 bits of the immediate data word t_b [_msgEphemerisGloDepD_iod] :: MsgEphemerisGloDepD -> !Word8 msgEphemerisGloDepC_acc :: Lens' MsgEphemerisGloDepC [Double] msgEphemerisGloDepC_common :: Lens' MsgEphemerisGloDepC EphemerisCommonContentDepB msgEphemerisGloDepC_d_tau :: Lens' MsgEphemerisGloDepC Double msgEphemerisGloDepC_fcn :: Lens' MsgEphemerisGloDepC Word8 msgEphemerisGloDepC_gamma :: Lens' MsgEphemerisGloDepC Double msgEphemerisGloDepC_pos :: Lens' MsgEphemerisGloDepC [Double] msgEphemerisGloDepC_tau :: Lens' MsgEphemerisGloDepC Double msgEphemerisGloDepC_vel :: Lens' MsgEphemerisGloDepC [Double] msgEphemerisGloDepD :: Word16 -- | SBP class for message MSG_EPHEMERIS_GLO (0x008B). -- -- The ephemeris message returns a set of satellite orbit parameters that -- is used to calculate GLO satellite position, velocity, and clock -- offset. Please see the GLO ICD 5.1 "Table 4.5 Characteristics of words -- of immediate information (ephemeris parameters)" for more details. data MsgEphemerisGlo MsgEphemerisGlo :: !EphemerisCommonContent -> !Float -> !Float -> !Float -> ![Double] -> ![Double] -> ![Float] -> !Word8 -> !Word8 -> MsgEphemerisGlo -- | Values common for all ephemeris types [_msgEphemerisGlo_common] :: MsgEphemerisGlo -> !EphemerisCommonContent -- | Relative deviation of predicted carrier frequency from nominal [_msgEphemerisGlo_gamma] :: MsgEphemerisGlo -> !Float -- | Correction to the SV time [_msgEphemerisGlo_tau] :: MsgEphemerisGlo -> !Float -- | Equipment delay between L1 and L2 [_msgEphemerisGlo_d_tau] :: MsgEphemerisGlo -> !Float -- | Position of the SV at tb in PZ-90.02 coordinates system [_msgEphemerisGlo_pos] :: MsgEphemerisGlo -> ![Double] -- | Velocity vector of the SV at tb in PZ-90.02 coordinates system [_msgEphemerisGlo_vel] :: MsgEphemerisGlo -> ![Double] -- | Acceleration vector of the SV at tb in PZ-90.02 coordinates sys [_msgEphemerisGlo_acc] :: MsgEphemerisGlo -> ![Float] -- | Frequency slot. FCN+8 (that is [1..14]). 0 or 0xFF for invalid [_msgEphemerisGlo_fcn] :: MsgEphemerisGlo -> !Word8 -- | Issue of data. Equal to the 7 bits of the immediate data word t_b [_msgEphemerisGlo_iod] :: MsgEphemerisGlo -> !Word8 msgEphemerisGloDepD_acc :: Lens' MsgEphemerisGloDepD [Double] msgEphemerisGloDepD_common :: Lens' MsgEphemerisGloDepD EphemerisCommonContentDepB msgEphemerisGloDepD_d_tau :: Lens' MsgEphemerisGloDepD Double msgEphemerisGloDepD_fcn :: Lens' MsgEphemerisGloDepD Word8 msgEphemerisGloDepD_gamma :: Lens' MsgEphemerisGloDepD Double msgEphemerisGloDepD_iod :: Lens' MsgEphemerisGloDepD Word8 msgEphemerisGloDepD_pos :: Lens' MsgEphemerisGloDepD [Double] msgEphemerisGloDepD_tau :: Lens' MsgEphemerisGloDepD Double msgEphemerisGloDepD_vel :: Lens' MsgEphemerisGloDepD [Double] msgEphemerisGlo :: Word16 -- | SBP class for message MSG_EPHEMERIS_DEP_D (0x0080). -- -- The ephemeris message returns a set of satellite orbit parameters that -- is used to calculate GPS satellite position, velocity, and clock -- offset. Please see the Navstar GPS Space Segment/Navigation user -- interfaces (ICD- GPS-200, Table 20-III) for more details. data MsgEphemerisDepD MsgEphemerisDepD :: !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Word16 -> !Double -> !Word16 -> !Word8 -> !Word8 -> !GnssSignalDep -> !Word8 -> !Word16 -> !Word32 -> MsgEphemerisDepD -- | Group delay differential between L1 and L2 [_msgEphemerisDepD_tgd] :: MsgEphemerisDepD -> !Double -- | Amplitude of the sine harmonic correction term to the orbit radius [_msgEphemerisDepD_c_rs] :: MsgEphemerisDepD -> !Double -- | Amplitude of the cosine harmonic correction term to the orbit radius [_msgEphemerisDepD_c_rc] :: MsgEphemerisDepD -> !Double -- | Amplitude of the cosine harmonic correction term to the argument of -- latitude [_msgEphemerisDepD_c_uc] :: MsgEphemerisDepD -> !Double -- | Amplitude of the sine harmonic correction term to the argument of -- latitude [_msgEphemerisDepD_c_us] :: MsgEphemerisDepD -> !Double -- | Amplitude of the cosine harmonic correction term to the angle of -- inclination [_msgEphemerisDepD_c_ic] :: MsgEphemerisDepD -> !Double -- | Amplitude of the sine harmonic correction term to the angle of -- inclination [_msgEphemerisDepD_c_is] :: MsgEphemerisDepD -> !Double -- | Mean motion difference [_msgEphemerisDepD_dn] :: MsgEphemerisDepD -> !Double -- | Mean anomaly at reference time [_msgEphemerisDepD_m0] :: MsgEphemerisDepD -> !Double -- | Eccentricity of satellite orbit [_msgEphemerisDepD_ecc] :: MsgEphemerisDepD -> !Double -- | Square root of the semi-major axis of orbit [_msgEphemerisDepD_sqrta] :: MsgEphemerisDepD -> !Double -- | Longitude of ascending node of orbit plane at weekly epoch [_msgEphemerisDepD_omega0] :: MsgEphemerisDepD -> !Double -- | Rate of right ascension [_msgEphemerisDepD_omegadot] :: MsgEphemerisDepD -> !Double -- | Argument of perigee [_msgEphemerisDepD_w] :: MsgEphemerisDepD -> !Double -- | Inclination [_msgEphemerisDepD_inc] :: MsgEphemerisDepD -> !Double -- | Inclination first derivative [_msgEphemerisDepD_inc_dot] :: MsgEphemerisDepD -> !Double -- | Polynomial clock correction coefficient (clock bias) [_msgEphemerisDepD_af0] :: MsgEphemerisDepD -> !Double -- | Polynomial clock correction coefficient (clock drift) [_msgEphemerisDepD_af1] :: MsgEphemerisDepD -> !Double -- | Polynomial clock correction coefficient (rate of clock drift) [_msgEphemerisDepD_af2] :: MsgEphemerisDepD -> !Double -- | Time of week [_msgEphemerisDepD_toe_tow] :: MsgEphemerisDepD -> !Double -- | Week number [_msgEphemerisDepD_toe_wn] :: MsgEphemerisDepD -> !Word16 -- | Clock reference time of week [_msgEphemerisDepD_toc_tow] :: MsgEphemerisDepD -> !Double -- | Clock reference week number [_msgEphemerisDepD_toc_wn] :: MsgEphemerisDepD -> !Word16 -- | Is valid? [_msgEphemerisDepD_valid] :: MsgEphemerisDepD -> !Word8 -- | Satellite is healthy? [_msgEphemerisDepD_healthy] :: MsgEphemerisDepD -> !Word8 -- | GNSS signal identifier [_msgEphemerisDepD_sid] :: MsgEphemerisDepD -> !GnssSignalDep -- | Issue of ephemeris data [_msgEphemerisDepD_iode] :: MsgEphemerisDepD -> !Word8 -- | Issue of clock data [_msgEphemerisDepD_iodc] :: MsgEphemerisDepD -> !Word16 -- | Reserved field [_msgEphemerisDepD_reserved] :: MsgEphemerisDepD -> !Word32 msgEphemerisGlo_acc :: Lens' MsgEphemerisGlo [Float] msgEphemerisGlo_common :: Lens' MsgEphemerisGlo EphemerisCommonContent msgEphemerisGlo_d_tau :: Lens' MsgEphemerisGlo Float msgEphemerisGlo_fcn :: Lens' MsgEphemerisGlo Word8 msgEphemerisGlo_gamma :: Lens' MsgEphemerisGlo Float msgEphemerisGlo_iod :: Lens' MsgEphemerisGlo Word8 msgEphemerisGlo_pos :: Lens' MsgEphemerisGlo [Double] msgEphemerisGlo_tau :: Lens' MsgEphemerisGlo Float msgEphemerisGlo_vel :: Lens' MsgEphemerisGlo [Double] msgEphemerisDepD :: Word16 -- | SBP class for message MSG_EPHEMERIS_DEP_A (0x001A). -- -- Deprecated. data MsgEphemerisDepA MsgEphemerisDepA :: !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Word16 -> !Double -> !Word16 -> !Word8 -> !Word8 -> !Word8 -> MsgEphemerisDepA -- | Group delay differential between L1 and L2 [_msgEphemerisDepA_tgd] :: MsgEphemerisDepA -> !Double -- | Amplitude of the sine harmonic correction term to the orbit radius [_msgEphemerisDepA_c_rs] :: MsgEphemerisDepA -> !Double -- | Amplitude of the cosine harmonic correction term to the orbit radius [_msgEphemerisDepA_c_rc] :: MsgEphemerisDepA -> !Double -- | Amplitude of the cosine harmonic correction term to the argument of -- latitude [_msgEphemerisDepA_c_uc] :: MsgEphemerisDepA -> !Double -- | Amplitude of the sine harmonic correction term to the argument of -- latitude [_msgEphemerisDepA_c_us] :: MsgEphemerisDepA -> !Double -- | Amplitude of the cosine harmonic correction term to the angle of -- inclination [_msgEphemerisDepA_c_ic] :: MsgEphemerisDepA -> !Double -- | Amplitude of the sine harmonic correction term to the angle of -- inclination [_msgEphemerisDepA_c_is] :: MsgEphemerisDepA -> !Double -- | Mean motion difference [_msgEphemerisDepA_dn] :: MsgEphemerisDepA -> !Double -- | Mean anomaly at reference time [_msgEphemerisDepA_m0] :: MsgEphemerisDepA -> !Double -- | Eccentricity of satellite orbit [_msgEphemerisDepA_ecc] :: MsgEphemerisDepA -> !Double -- | Square root of the semi-major axis of orbit [_msgEphemerisDepA_sqrta] :: MsgEphemerisDepA -> !Double -- | Longitude of ascending node of orbit plane at weekly epoch [_msgEphemerisDepA_omega0] :: MsgEphemerisDepA -> !Double -- | Rate of right ascension [_msgEphemerisDepA_omegadot] :: MsgEphemerisDepA -> !Double -- | Argument of perigee [_msgEphemerisDepA_w] :: MsgEphemerisDepA -> !Double -- | Inclination [_msgEphemerisDepA_inc] :: MsgEphemerisDepA -> !Double -- | Inclination first derivative [_msgEphemerisDepA_inc_dot] :: MsgEphemerisDepA -> !Double -- | Polynomial clock correction coefficient (clock bias) [_msgEphemerisDepA_af0] :: MsgEphemerisDepA -> !Double -- | Polynomial clock correction coefficient (clock drift) [_msgEphemerisDepA_af1] :: MsgEphemerisDepA -> !Double -- | Polynomial clock correction coefficient (rate of clock drift) [_msgEphemerisDepA_af2] :: MsgEphemerisDepA -> !Double -- | Time of week [_msgEphemerisDepA_toe_tow] :: MsgEphemerisDepA -> !Double -- | Week number [_msgEphemerisDepA_toe_wn] :: MsgEphemerisDepA -> !Word16 -- | Clock reference time of week [_msgEphemerisDepA_toc_tow] :: MsgEphemerisDepA -> !Double -- | Clock reference week number [_msgEphemerisDepA_toc_wn] :: MsgEphemerisDepA -> !Word16 -- | Is valid? [_msgEphemerisDepA_valid] :: MsgEphemerisDepA -> !Word8 -- | Satellite is healthy? [_msgEphemerisDepA_healthy] :: MsgEphemerisDepA -> !Word8 -- | PRN being tracked [_msgEphemerisDepA_prn] :: MsgEphemerisDepA -> !Word8 msgEphemerisDepD_af0 :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_af1 :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_af2 :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_c_ic :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_c_is :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_c_rc :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_c_rs :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_c_uc :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_c_us :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_dn :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_ecc :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_healthy :: Lens' MsgEphemerisDepD Word8 msgEphemerisDepD_inc :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_inc_dot :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_iodc :: Lens' MsgEphemerisDepD Word16 msgEphemerisDepD_iode :: Lens' MsgEphemerisDepD Word8 msgEphemerisDepD_m0 :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_omega0 :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_omegadot :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_reserved :: Lens' MsgEphemerisDepD Word32 msgEphemerisDepD_sid :: Lens' MsgEphemerisDepD GnssSignalDep msgEphemerisDepD_sqrta :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_tgd :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_toc_tow :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_toc_wn :: Lens' MsgEphemerisDepD Word16 msgEphemerisDepD_toe_tow :: Lens' MsgEphemerisDepD Double msgEphemerisDepD_toe_wn :: Lens' MsgEphemerisDepD Word16 msgEphemerisDepD_valid :: Lens' MsgEphemerisDepD Word8 msgEphemerisDepD_w :: Lens' MsgEphemerisDepD Double msgEphemerisDepA :: Word16 -- | SBP class for message MSG_EPHEMERIS_DEP_B (0x0046). -- -- Deprecated. data MsgEphemerisDepB MsgEphemerisDepB :: !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Word16 -> !Double -> !Word16 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> MsgEphemerisDepB -- | Group delay differential between L1 and L2 [_msgEphemerisDepB_tgd] :: MsgEphemerisDepB -> !Double -- | Amplitude of the sine harmonic correction term to the orbit radius [_msgEphemerisDepB_c_rs] :: MsgEphemerisDepB -> !Double -- | Amplitude of the cosine harmonic correction term to the orbit radius [_msgEphemerisDepB_c_rc] :: MsgEphemerisDepB -> !Double -- | Amplitude of the cosine harmonic correction term to the argument of -- latitude [_msgEphemerisDepB_c_uc] :: MsgEphemerisDepB -> !Double -- | Amplitude of the sine harmonic correction term to the argument of -- latitude [_msgEphemerisDepB_c_us] :: MsgEphemerisDepB -> !Double -- | Amplitude of the cosine harmonic correction term to the angle of -- inclination [_msgEphemerisDepB_c_ic] :: MsgEphemerisDepB -> !Double -- | Amplitude of the sine harmonic correction term to the angle of -- inclination [_msgEphemerisDepB_c_is] :: MsgEphemerisDepB -> !Double -- | Mean motion difference [_msgEphemerisDepB_dn] :: MsgEphemerisDepB -> !Double -- | Mean anomaly at reference time [_msgEphemerisDepB_m0] :: MsgEphemerisDepB -> !Double -- | Eccentricity of satellite orbit [_msgEphemerisDepB_ecc] :: MsgEphemerisDepB -> !Double -- | Square root of the semi-major axis of orbit [_msgEphemerisDepB_sqrta] :: MsgEphemerisDepB -> !Double -- | Longitude of ascending node of orbit plane at weekly epoch [_msgEphemerisDepB_omega0] :: MsgEphemerisDepB -> !Double -- | Rate of right ascension [_msgEphemerisDepB_omegadot] :: MsgEphemerisDepB -> !Double -- | Argument of perigee [_msgEphemerisDepB_w] :: MsgEphemerisDepB -> !Double -- | Inclination [_msgEphemerisDepB_inc] :: MsgEphemerisDepB -> !Double -- | Inclination first derivative [_msgEphemerisDepB_inc_dot] :: MsgEphemerisDepB -> !Double -- | Polynomial clock correction coefficient (clock bias) [_msgEphemerisDepB_af0] :: MsgEphemerisDepB -> !Double -- | Polynomial clock correction coefficient (clock drift) [_msgEphemerisDepB_af1] :: MsgEphemerisDepB -> !Double -- | Polynomial clock correction coefficient (rate of clock drift) [_msgEphemerisDepB_af2] :: MsgEphemerisDepB -> !Double -- | Time of week [_msgEphemerisDepB_toe_tow] :: MsgEphemerisDepB -> !Double -- | Week number [_msgEphemerisDepB_toe_wn] :: MsgEphemerisDepB -> !Word16 -- | Clock reference time of week [_msgEphemerisDepB_toc_tow] :: MsgEphemerisDepB -> !Double -- | Clock reference week number [_msgEphemerisDepB_toc_wn] :: MsgEphemerisDepB -> !Word16 -- | Is valid? [_msgEphemerisDepB_valid] :: MsgEphemerisDepB -> !Word8 -- | Satellite is healthy? [_msgEphemerisDepB_healthy] :: MsgEphemerisDepB -> !Word8 -- | PRN being tracked [_msgEphemerisDepB_prn] :: MsgEphemerisDepB -> !Word8 -- | Issue of ephemeris data [_msgEphemerisDepB_iode] :: MsgEphemerisDepB -> !Word8 msgEphemerisDepA_af0 :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_af1 :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_af2 :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_c_ic :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_c_is :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_c_rc :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_c_rs :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_c_uc :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_c_us :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_dn :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_ecc :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_healthy :: Lens' MsgEphemerisDepA Word8 msgEphemerisDepA_inc :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_inc_dot :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_m0 :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_omega0 :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_omegadot :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_prn :: Lens' MsgEphemerisDepA Word8 msgEphemerisDepA_sqrta :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_tgd :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_toc_tow :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_toc_wn :: Lens' MsgEphemerisDepA Word16 msgEphemerisDepA_toe_tow :: Lens' MsgEphemerisDepA Double msgEphemerisDepA_toe_wn :: Lens' MsgEphemerisDepA Word16 msgEphemerisDepA_valid :: Lens' MsgEphemerisDepA Word8 msgEphemerisDepA_w :: Lens' MsgEphemerisDepA Double msgEphemerisDepB :: Word16 -- | SBP class for message MSG_EPHEMERIS_DEP_C (0x0047). -- -- The ephemeris message returns a set of satellite orbit parameters that -- is used to calculate GPS satellite position, velocity, and clock -- offset. Please see the Navstar GPS Space Segment/Navigation user -- interfaces (ICD- GPS-200, Table 20-III) for more details. data MsgEphemerisDepC MsgEphemerisDepC :: !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Word16 -> !Double -> !Word16 -> !Word8 -> !Word8 -> !GnssSignalDep -> !Word8 -> !Word16 -> !Word32 -> MsgEphemerisDepC -- | Group delay differential between L1 and L2 [_msgEphemerisDepC_tgd] :: MsgEphemerisDepC -> !Double -- | Amplitude of the sine harmonic correction term to the orbit radius [_msgEphemerisDepC_c_rs] :: MsgEphemerisDepC -> !Double -- | Amplitude of the cosine harmonic correction term to the orbit radius [_msgEphemerisDepC_c_rc] :: MsgEphemerisDepC -> !Double -- | Amplitude of the cosine harmonic correction term to the argument of -- latitude [_msgEphemerisDepC_c_uc] :: MsgEphemerisDepC -> !Double -- | Amplitude of the sine harmonic correction term to the argument of -- latitude [_msgEphemerisDepC_c_us] :: MsgEphemerisDepC -> !Double -- | Amplitude of the cosine harmonic correction term to the angle of -- inclination [_msgEphemerisDepC_c_ic] :: MsgEphemerisDepC -> !Double -- | Amplitude of the sine harmonic correction term to the angle of -- inclination [_msgEphemerisDepC_c_is] :: MsgEphemerisDepC -> !Double -- | Mean motion difference [_msgEphemerisDepC_dn] :: MsgEphemerisDepC -> !Double -- | Mean anomaly at reference time [_msgEphemerisDepC_m0] :: MsgEphemerisDepC -> !Double -- | Eccentricity of satellite orbit [_msgEphemerisDepC_ecc] :: MsgEphemerisDepC -> !Double -- | Square root of the semi-major axis of orbit [_msgEphemerisDepC_sqrta] :: MsgEphemerisDepC -> !Double -- | Longitude of ascending node of orbit plane at weekly epoch [_msgEphemerisDepC_omega0] :: MsgEphemerisDepC -> !Double -- | Rate of right ascension [_msgEphemerisDepC_omegadot] :: MsgEphemerisDepC -> !Double -- | Argument of perigee [_msgEphemerisDepC_w] :: MsgEphemerisDepC -> !Double -- | Inclination [_msgEphemerisDepC_inc] :: MsgEphemerisDepC -> !Double -- | Inclination first derivative [_msgEphemerisDepC_inc_dot] :: MsgEphemerisDepC -> !Double -- | Polynomial clock correction coefficient (clock bias) [_msgEphemerisDepC_af0] :: MsgEphemerisDepC -> !Double -- | Polynomial clock correction coefficient (clock drift) [_msgEphemerisDepC_af1] :: MsgEphemerisDepC -> !Double -- | Polynomial clock correction coefficient (rate of clock drift) [_msgEphemerisDepC_af2] :: MsgEphemerisDepC -> !Double -- | Time of week [_msgEphemerisDepC_toe_tow] :: MsgEphemerisDepC -> !Double -- | Week number [_msgEphemerisDepC_toe_wn] :: MsgEphemerisDepC -> !Word16 -- | Clock reference time of week [_msgEphemerisDepC_toc_tow] :: MsgEphemerisDepC -> !Double -- | Clock reference week number [_msgEphemerisDepC_toc_wn] :: MsgEphemerisDepC -> !Word16 -- | Is valid? [_msgEphemerisDepC_valid] :: MsgEphemerisDepC -> !Word8 -- | Satellite is healthy? [_msgEphemerisDepC_healthy] :: MsgEphemerisDepC -> !Word8 -- | GNSS signal identifier [_msgEphemerisDepC_sid] :: MsgEphemerisDepC -> !GnssSignalDep -- | Issue of ephemeris data [_msgEphemerisDepC_iode] :: MsgEphemerisDepC -> !Word8 -- | Issue of clock data [_msgEphemerisDepC_iodc] :: MsgEphemerisDepC -> !Word16 -- | Reserved field [_msgEphemerisDepC_reserved] :: MsgEphemerisDepC -> !Word32 msgEphemerisDepB_af0 :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_af1 :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_af2 :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_c_ic :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_c_is :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_c_rc :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_c_rs :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_c_uc :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_c_us :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_dn :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_ecc :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_healthy :: Lens' MsgEphemerisDepB Word8 msgEphemerisDepB_inc :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_inc_dot :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_iode :: Lens' MsgEphemerisDepB Word8 msgEphemerisDepB_m0 :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_omega0 :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_omegadot :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_prn :: Lens' MsgEphemerisDepB Word8 msgEphemerisDepB_sqrta :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_tgd :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_toc_tow :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_toc_wn :: Lens' MsgEphemerisDepB Word16 msgEphemerisDepB_toe_tow :: Lens' MsgEphemerisDepB Double msgEphemerisDepB_toe_wn :: Lens' MsgEphemerisDepB Word16 msgEphemerisDepB_valid :: Lens' MsgEphemerisDepB Word8 msgEphemerisDepB_w :: Lens' MsgEphemerisDepB Double msgEphemerisDepC :: Word16 -- | ObservationHeaderDep. -- -- Header of a GPS observation message. data ObservationHeaderDep ObservationHeaderDep :: !GpsTimeDep -> !Word8 -> ObservationHeaderDep -- | GPS time of this observation [_observationHeaderDep_t] :: ObservationHeaderDep -> !GpsTimeDep -- | Total number of observations. First nibble is the size of the sequence -- (n), second nibble is the zero-indexed counter (ith packet of n) [_observationHeaderDep_n_obs] :: ObservationHeaderDep -> !Word8 msgEphemerisDepC_af0 :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_af1 :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_af2 :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_c_ic :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_c_is :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_c_rc :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_c_rs :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_c_uc :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_c_us :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_dn :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_ecc :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_healthy :: Lens' MsgEphemerisDepC Word8 msgEphemerisDepC_inc :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_inc_dot :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_iodc :: Lens' MsgEphemerisDepC Word16 msgEphemerisDepC_iode :: Lens' MsgEphemerisDepC Word8 msgEphemerisDepC_m0 :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_omega0 :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_omegadot :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_reserved :: Lens' MsgEphemerisDepC Word32 msgEphemerisDepC_sid :: Lens' MsgEphemerisDepC GnssSignalDep msgEphemerisDepC_sqrta :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_tgd :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_toc_tow :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_toc_wn :: Lens' MsgEphemerisDepC Word16 msgEphemerisDepC_toe_tow :: Lens' MsgEphemerisDepC Double msgEphemerisDepC_toe_wn :: Lens' MsgEphemerisDepC Word16 msgEphemerisDepC_valid :: Lens' MsgEphemerisDepC Word8 msgEphemerisDepC_w :: Lens' MsgEphemerisDepC Double -- | CarrierPhaseDepA. -- -- Carrier phase measurement in cycles represented as a 40-bit fixed -- point number with Q32.8 layout, i.e. 32-bits of whole cycles and -- 8-bits of fractional cycles. This has the opposite sign convention -- than a typical GPS receiver and the phase has the opposite sign as the -- pseudorange. data CarrierPhaseDepA CarrierPhaseDepA :: !Int32 -> !Word8 -> CarrierPhaseDepA -- | Carrier phase whole cycles [_carrierPhaseDepA_i] :: CarrierPhaseDepA -> !Int32 -- | Carrier phase fractional part [_carrierPhaseDepA_f] :: CarrierPhaseDepA -> !Word8 observationHeaderDep_n_obs :: Lens' ObservationHeaderDep Word8 observationHeaderDep_t :: Lens' ObservationHeaderDep GpsTimeDep -- | PackedObsContentDepA. -- -- Deprecated. data PackedObsContentDepA PackedObsContentDepA :: !Word32 -> !CarrierPhaseDepA -> !Word8 -> !Word16 -> !Word8 -> PackedObsContentDepA -- | Pseudorange observation [_packedObsContentDepA_P] :: PackedObsContentDepA -> !Word32 -- | Carrier phase observation with opposite sign from typical convention [_packedObsContentDepA_L] :: PackedObsContentDepA -> !CarrierPhaseDepA -- | Carrier-to-Noise density [_packedObsContentDepA_cn0] :: PackedObsContentDepA -> !Word8 -- | Lock indicator. This value changes whenever a satellite signal has -- lost and regained lock, indicating that the carrier phase ambiguity -- may have changed. [_packedObsContentDepA_lock] :: PackedObsContentDepA -> !Word16 -- | PRN-1 identifier of the satellite signal [_packedObsContentDepA_prn] :: PackedObsContentDepA -> !Word8 carrierPhaseDepA_f :: Lens' CarrierPhaseDepA Word8 carrierPhaseDepA_i :: Lens' CarrierPhaseDepA Int32 -- | PackedObsContentDepB. -- -- Pseudorange and carrier phase observation for a satellite being -- tracked. Pseudoranges are referenced to a nominal pseudorange. data PackedObsContentDepB PackedObsContentDepB :: !Word32 -> !CarrierPhaseDepA -> !Word8 -> !Word16 -> !GnssSignalDep -> PackedObsContentDepB -- | Pseudorange observation [_packedObsContentDepB_P] :: PackedObsContentDepB -> !Word32 -- | Carrier phase observation with opposite sign from typical convention. [_packedObsContentDepB_L] :: PackedObsContentDepB -> !CarrierPhaseDepA -- | Carrier-to-Noise density [_packedObsContentDepB_cn0] :: PackedObsContentDepB -> !Word8 -- | Lock indicator. This value changes whenever a satellite signal has -- lost and regained lock, indicating that the carrier phase ambiguity -- may have changed. [_packedObsContentDepB_lock] :: PackedObsContentDepB -> !Word16 -- | GNSS signal identifier [_packedObsContentDepB_sid] :: PackedObsContentDepB -> !GnssSignalDep packedObsContentDepA_L :: Lens' PackedObsContentDepA CarrierPhaseDepA packedObsContentDepA_P :: Lens' PackedObsContentDepA Word32 packedObsContentDepA_cn0 :: Lens' PackedObsContentDepA Word8 packedObsContentDepA_lock :: Lens' PackedObsContentDepA Word16 packedObsContentDepA_prn :: Lens' PackedObsContentDepA Word8 -- | PackedObsContentDepC. -- -- Pseudorange and carrier phase observation for a satellite being -- tracked. The observations are be interoperable with 3rd party -- receivers and conform with typical RTCMv3 GNSS observations. data PackedObsContentDepC PackedObsContentDepC :: !Word32 -> !CarrierPhase -> !Word8 -> !Word16 -> !GnssSignalDep -> PackedObsContentDepC -- | Pseudorange observation [_packedObsContentDepC_P] :: PackedObsContentDepC -> !Word32 -- | Carrier phase observation with typical sign convention. [_packedObsContentDepC_L] :: PackedObsContentDepC -> !CarrierPhase -- | Carrier-to-Noise density [_packedObsContentDepC_cn0] :: PackedObsContentDepC -> !Word8 -- | Lock indicator. This value changes whenever a satellite signal has -- lost and regained lock, indicating that the carrier phase ambiguity -- may have changed. [_packedObsContentDepC_lock] :: PackedObsContentDepC -> !Word16 -- | GNSS signal identifier [_packedObsContentDepC_sid] :: PackedObsContentDepC -> !GnssSignalDep packedObsContentDepB_L :: Lens' PackedObsContentDepB CarrierPhaseDepA packedObsContentDepB_P :: Lens' PackedObsContentDepB Word32 packedObsContentDepB_cn0 :: Lens' PackedObsContentDepB Word8 packedObsContentDepB_lock :: Lens' PackedObsContentDepB Word16 packedObsContentDepB_sid :: Lens' PackedObsContentDepB GnssSignalDep -- | SBP class for message MSG_OBS_DEP_A (0x0045). -- -- Deprecated. data MsgObsDepA MsgObsDepA :: !ObservationHeaderDep -> ![PackedObsContentDepA] -> MsgObsDepA -- | Header of a GPS observation message [_msgObsDepA_header] :: MsgObsDepA -> !ObservationHeaderDep -- | Pseudorange and carrier phase observation for a satellite being -- tracked. [_msgObsDepA_obs] :: MsgObsDepA -> ![PackedObsContentDepA] packedObsContentDepC_L :: Lens' PackedObsContentDepC CarrierPhase packedObsContentDepC_P :: Lens' PackedObsContentDepC Word32 packedObsContentDepC_cn0 :: Lens' PackedObsContentDepC Word8 packedObsContentDepC_lock :: Lens' PackedObsContentDepC Word16 packedObsContentDepC_sid :: Lens' PackedObsContentDepC GnssSignalDep msgObsDepA :: Word16 -- | SBP class for message MSG_OBS_DEP_B (0x0043). -- -- This observation message has been deprecated in favor of observations -- that are more interoperable. This message should be used for -- observations referenced to a nominal pseudorange which are not -- interoperable with most 3rd party GNSS receivers or typical RTCMv3 -- observations. data MsgObsDepB MsgObsDepB :: !ObservationHeaderDep -> ![PackedObsContentDepB] -> MsgObsDepB -- | Header of a GPS observation message [_msgObsDepB_header] :: MsgObsDepB -> !ObservationHeaderDep -- | Pseudorange and carrier phase observation for a satellite being -- tracked. [_msgObsDepB_obs] :: MsgObsDepB -> ![PackedObsContentDepB] msgObsDepA_header :: Lens' MsgObsDepA ObservationHeaderDep msgObsDepA_obs :: Lens' MsgObsDepA [PackedObsContentDepA] msgObsDepB :: Word16 -- | SBP class for message MSG_OBS_DEP_C (0x0049). -- -- The GPS observations message reports all the raw pseudorange and -- carrier phase observations for the satellites being tracked by the -- device. Carrier phase observation here is represented as a 40-bit -- fixed point number with Q32.8 layout (i.e. 32-bits of whole cycles and -- 8-bits of fractional cycles). The observations are interoperable with -- 3rd party receivers and conform with typical RTCMv3 GNSS observations. data MsgObsDepC MsgObsDepC :: !ObservationHeaderDep -> ![PackedObsContentDepC] -> MsgObsDepC -- | Header of a GPS observation message [_msgObsDepC_header] :: MsgObsDepC -> !ObservationHeaderDep -- | Pseudorange and carrier phase observation for a satellite being -- tracked. [_msgObsDepC_obs] :: MsgObsDepC -> ![PackedObsContentDepC] msgObsDepB_header :: Lens' MsgObsDepB ObservationHeaderDep msgObsDepB_obs :: Lens' MsgObsDepB [PackedObsContentDepB] msgObsDepC :: Word16 -- | SBP class for message MSG_IONO (0x0090). -- -- The ionospheric parameters which allow the "L1 only" or "L2 only" user -- to utilize the ionospheric model for computation of the ionospheric -- delay. Please see ICD-GPS-200 (Chapter 20.3.3.5.1.7) for more details. data MsgIono MsgIono :: !GpsTimeSec -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> MsgIono -- | Navigation Message Correction Table Validity Time [_msgIono_t_nmct] :: MsgIono -> !GpsTimeSec [_msgIono_a0] :: MsgIono -> !Double [_msgIono_a1] :: MsgIono -> !Double [_msgIono_a2] :: MsgIono -> !Double [_msgIono_a3] :: MsgIono -> !Double [_msgIono_b0] :: MsgIono -> !Double [_msgIono_b1] :: MsgIono -> !Double [_msgIono_b2] :: MsgIono -> !Double [_msgIono_b3] :: MsgIono -> !Double msgObsDepC_header :: Lens' MsgObsDepC ObservationHeaderDep msgObsDepC_obs :: Lens' MsgObsDepC [PackedObsContentDepC] msgIono :: Word16 -- | SBP class for message MSG_SV_CONFIGURATION_GPS_DEP (0x0091). -- -- Please see ICD-GPS-200 (Chapter 20.3.3.5.1.4) for more details. data MsgSvConfigurationGpsDep MsgSvConfigurationGpsDep :: !GpsTimeSec -> !Word32 -> MsgSvConfigurationGpsDep -- | Navigation Message Correction Table Validity Time [_msgSvConfigurationGpsDep_t_nmct] :: MsgSvConfigurationGpsDep -> !GpsTimeSec -- | L2C capability mask, SV32 bit being MSB, SV1 bit being LSB [_msgSvConfigurationGpsDep_l2c_mask] :: MsgSvConfigurationGpsDep -> !Word32 msgIono_a0 :: Lens' MsgIono Double msgIono_a1 :: Lens' MsgIono Double msgIono_a2 :: Lens' MsgIono Double msgIono_a3 :: Lens' MsgIono Double msgIono_b0 :: Lens' MsgIono Double msgIono_b1 :: Lens' MsgIono Double msgIono_b2 :: Lens' MsgIono Double msgIono_b3 :: Lens' MsgIono Double msgIono_t_nmct :: Lens' MsgIono GpsTimeSec msgSvConfigurationGpsDep :: Word16 data GnssCapb GnssCapb :: !Word64 -> !Word64 -> !Word64 -> !Word32 -> !Word32 -> !Word32 -> !Word64 -> !Word64 -> !Word64 -> !Word64 -> !Word64 -> !Word64 -> !Word32 -> !Word64 -> !Word64 -> GnssCapb -- | GPS SV active mask [_gnssCapb_gps_active] :: GnssCapb -> !Word64 -- | GPS L2C active mask [_gnssCapb_gps_l2c] :: GnssCapb -> !Word64 -- | GPS L5 active mask [_gnssCapb_gps_l5] :: GnssCapb -> !Word64 -- | GLO active mask [_gnssCapb_glo_active] :: GnssCapb -> !Word32 -- | GLO L2OF active mask [_gnssCapb_glo_l2of] :: GnssCapb -> !Word32 -- | GLO L3 active mask [_gnssCapb_glo_l3] :: GnssCapb -> !Word32 -- | SBAS active mask (PRNs 120..158, AN 762.2.2-1818 Table B-23, -- https://www.caat.or.th/wp-content/uploads/2018/03/SL-2018.18.E-1.pdf) [_gnssCapb_sbas_active] :: GnssCapb -> !Word64 -- | SBAS L5 active mask (PRNs 120..158, AN 762.2.2-1818 Table B-23, -- https://www.caat.or.th/wp-content/uploads/2018/03/SL-2018.18.E-1.pdf) [_gnssCapb_sbas_l5] :: GnssCapb -> !Word64 -- | BDS active mask [_gnssCapb_bds_active] :: GnssCapb -> !Word64 -- | BDS D2NAV active mask [_gnssCapb_bds_d2nav] :: GnssCapb -> !Word64 -- | BDS B2 active mask [_gnssCapb_bds_b2] :: GnssCapb -> !Word64 -- | BDS B2A active mask [_gnssCapb_bds_b2a] :: GnssCapb -> !Word64 -- | QZSS active mask [_gnssCapb_qzss_active] :: GnssCapb -> !Word32 -- | GAL active mask [_gnssCapb_gal_active] :: GnssCapb -> !Word64 -- | GAL E5 active mask [_gnssCapb_gal_e5] :: GnssCapb -> !Word64 msgSvConfigurationGpsDep_l2c_mask :: Lens' MsgSvConfigurationGpsDep Word32 msgSvConfigurationGpsDep_t_nmct :: Lens' MsgSvConfigurationGpsDep GpsTimeSec data MsgGnssCapb MsgGnssCapb :: !GpsTimeSec -> !GnssCapb -> MsgGnssCapb -- | Navigation Message Correction Table Validity Time [_msgGnssCapb_t_nmct] :: MsgGnssCapb -> !GpsTimeSec -- | GNSS capabilities masks [_msgGnssCapb_gc] :: MsgGnssCapb -> !GnssCapb gnssCapb_bds_active :: Lens' GnssCapb Word64 gnssCapb_bds_b2 :: Lens' GnssCapb Word64 gnssCapb_bds_b2a :: Lens' GnssCapb Word64 gnssCapb_bds_d2nav :: Lens' GnssCapb Word64 gnssCapb_gal_active :: Lens' GnssCapb Word64 gnssCapb_gal_e5 :: Lens' GnssCapb Word64 gnssCapb_glo_active :: Lens' GnssCapb Word32 gnssCapb_glo_l2of :: Lens' GnssCapb Word32 gnssCapb_glo_l3 :: Lens' GnssCapb Word32 gnssCapb_gps_active :: Lens' GnssCapb Word64 gnssCapb_gps_l2c :: Lens' GnssCapb Word64 gnssCapb_gps_l5 :: Lens' GnssCapb Word64 gnssCapb_qzss_active :: Lens' GnssCapb Word32 gnssCapb_sbas_active :: Lens' GnssCapb Word64 gnssCapb_sbas_l5 :: Lens' GnssCapb Word64 msgGnssCapb :: Word16 -- | SBP class for message MSG_GROUP_DELAY_DEP_A (0x0092). -- -- Please see ICD-GPS-200 (30.3.3.3.1.1) for more details. data MsgGroupDelayDepA MsgGroupDelayDepA :: !GpsTimeDep -> !Word8 -> !Word8 -> !Int16 -> !Int16 -> !Int16 -> MsgGroupDelayDepA -- | Data Predict Time of Week [_msgGroupDelayDepA_t_op] :: MsgGroupDelayDepA -> !GpsTimeDep -- | Satellite number [_msgGroupDelayDepA_prn] :: MsgGroupDelayDepA -> !Word8 -- | bit-field indicating validity of the values, LSB indicating tgd -- validity etc. 1 = value is valid, 0 = value is not valid. [_msgGroupDelayDepA_valid] :: MsgGroupDelayDepA -> !Word8 [_msgGroupDelayDepA_tgd] :: MsgGroupDelayDepA -> !Int16 [_msgGroupDelayDepA_isc_l1ca] :: MsgGroupDelayDepA -> !Int16 [_msgGroupDelayDepA_isc_l2c] :: MsgGroupDelayDepA -> !Int16 msgGnssCapb_gc :: Lens' MsgGnssCapb GnssCapb msgGnssCapb_t_nmct :: Lens' MsgGnssCapb GpsTimeSec msgGroupDelayDepA :: Word16 -- | SBP class for message MSG_GROUP_DELAY_DEP_B (0x0093). -- -- Please see ICD-GPS-200 (30.3.3.3.1.1) for more details. data MsgGroupDelayDepB MsgGroupDelayDepB :: !GpsTimeSec -> !GnssSignalDep -> !Word8 -> !Int16 -> !Int16 -> !Int16 -> MsgGroupDelayDepB -- | Data Predict Time of Week [_msgGroupDelayDepB_t_op] :: MsgGroupDelayDepB -> !GpsTimeSec -- | GNSS signal identifier [_msgGroupDelayDepB_sid] :: MsgGroupDelayDepB -> !GnssSignalDep -- | bit-field indicating validity of the values, LSB indicating tgd -- validity etc. 1 = value is valid, 0 = value is not valid. [_msgGroupDelayDepB_valid] :: MsgGroupDelayDepB -> !Word8 [_msgGroupDelayDepB_tgd] :: MsgGroupDelayDepB -> !Int16 [_msgGroupDelayDepB_isc_l1ca] :: MsgGroupDelayDepB -> !Int16 [_msgGroupDelayDepB_isc_l2c] :: MsgGroupDelayDepB -> !Int16 msgGroupDelayDepA_isc_l1ca :: Lens' MsgGroupDelayDepA Int16 msgGroupDelayDepA_isc_l2c :: Lens' MsgGroupDelayDepA Int16 msgGroupDelayDepA_prn :: Lens' MsgGroupDelayDepA Word8 msgGroupDelayDepA_t_op :: Lens' MsgGroupDelayDepA GpsTimeDep msgGroupDelayDepA_tgd :: Lens' MsgGroupDelayDepA Int16 msgGroupDelayDepA_valid :: Lens' MsgGroupDelayDepA Word8 msgGroupDelayDepB :: Word16 -- | SBP class for message MSG_GROUP_DELAY (0x0094). -- -- Please see ICD-GPS-200 (30.3.3.3.1.1) for more details. data MsgGroupDelay MsgGroupDelay :: !GpsTimeSec -> !GnssSignal -> !Word8 -> !Int16 -> !Int16 -> !Int16 -> MsgGroupDelay -- | Data Predict Time of Week [_msgGroupDelay_t_op] :: MsgGroupDelay -> !GpsTimeSec -- | GNSS signal identifier [_msgGroupDelay_sid] :: MsgGroupDelay -> !GnssSignal -- | bit-field indicating validity of the values, LSB indicating tgd -- validity etc. 1 = value is valid, 0 = value is not valid. [_msgGroupDelay_valid] :: MsgGroupDelay -> !Word8 [_msgGroupDelay_tgd] :: MsgGroupDelay -> !Int16 [_msgGroupDelay_isc_l1ca] :: MsgGroupDelay -> !Int16 [_msgGroupDelay_isc_l2c] :: MsgGroupDelay -> !Int16 msgGroupDelayDepB_isc_l1ca :: Lens' MsgGroupDelayDepB Int16 msgGroupDelayDepB_isc_l2c :: Lens' MsgGroupDelayDepB Int16 msgGroupDelayDepB_sid :: Lens' MsgGroupDelayDepB GnssSignalDep msgGroupDelayDepB_t_op :: Lens' MsgGroupDelayDepB GpsTimeSec msgGroupDelayDepB_tgd :: Lens' MsgGroupDelayDepB Int16 msgGroupDelayDepB_valid :: Lens' MsgGroupDelayDepB Word8 msgGroupDelay :: Word16 data AlmanacCommonContent AlmanacCommonContent :: !GnssSignal -> !GpsTimeSec -> !Double -> !Word32 -> !Word8 -> !Word8 -> AlmanacCommonContent -- | GNSS signal identifier [_almanacCommonContent_sid] :: AlmanacCommonContent -> !GnssSignal -- | Reference time of almanac [_almanacCommonContent_toa] :: AlmanacCommonContent -> !GpsTimeSec -- | User Range Accuracy [_almanacCommonContent_ura] :: AlmanacCommonContent -> !Double -- | Curve fit interval [_almanacCommonContent_fit_interval] :: AlmanacCommonContent -> !Word32 -- | Status of almanac, 1 = valid, 0 = invalid [_almanacCommonContent_valid] :: AlmanacCommonContent -> !Word8 -- | Satellite health status for GPS: - bits 5-7: NAV data health status. -- See IS-GPS-200H Table 20-VII: NAV Data Health Indications. - bits 0-4: -- Signal health status. See IS-GPS-200H Table 20-VIII. Codes for Health -- of SV Signal Components. Satellite health status for GLO (see GLO ICD -- 5.1 table 5.1 for details): - bit 0: C(n), "unhealthy" flag that is -- transmitted within non-immediate data and indicates overall -- constellation status at the moment of almanac uploading. '0' indicates -- malfunction of n-satellite. '1' indicates that n-satellite is -- operational. - bit 1: Bn(ln), '0' indicates the satellite is -- operational and suitable for navigation. [_almanacCommonContent_health_bits] :: AlmanacCommonContent -> !Word8 msgGroupDelay_isc_l1ca :: Lens' MsgGroupDelay Int16 msgGroupDelay_isc_l2c :: Lens' MsgGroupDelay Int16 msgGroupDelay_sid :: Lens' MsgGroupDelay GnssSignal msgGroupDelay_t_op :: Lens' MsgGroupDelay GpsTimeSec msgGroupDelay_tgd :: Lens' MsgGroupDelay Int16 msgGroupDelay_valid :: Lens' MsgGroupDelay Word8 data AlmanacCommonContentDep AlmanacCommonContentDep :: !GnssSignalDep -> !GpsTimeSec -> !Double -> !Word32 -> !Word8 -> !Word8 -> AlmanacCommonContentDep -- | GNSS signal identifier [_almanacCommonContentDep_sid] :: AlmanacCommonContentDep -> !GnssSignalDep -- | Reference time of almanac [_almanacCommonContentDep_toa] :: AlmanacCommonContentDep -> !GpsTimeSec -- | User Range Accuracy [_almanacCommonContentDep_ura] :: AlmanacCommonContentDep -> !Double -- | Curve fit interval [_almanacCommonContentDep_fit_interval] :: AlmanacCommonContentDep -> !Word32 -- | Status of almanac, 1 = valid, 0 = invalid [_almanacCommonContentDep_valid] :: AlmanacCommonContentDep -> !Word8 -- | Satellite health status for GPS: - bits 5-7: NAV data health status. -- See IS-GPS-200H Table 20-VII: NAV Data Health Indications. - bits 0-4: -- Signal health status. See IS-GPS-200H Table 20-VIII. Codes for Health -- of SV Signal Components. Satellite health status for GLO (see GLO ICD -- 5.1 table 5.1 for details): - bit 0: C(n), "unhealthy" flag that is -- transmitted within non-immediate data and indicates overall -- constellation status at the moment of almanac uploading. '0' indicates -- malfunction of n-satellite. '1' indicates that n-satellite is -- operational. - bit 1: Bn(ln), '0' indicates the satellite is -- operational and suitable for navigation. [_almanacCommonContentDep_health_bits] :: AlmanacCommonContentDep -> !Word8 almanacCommonContent_fit_interval :: Lens' AlmanacCommonContent Word32 almanacCommonContent_health_bits :: Lens' AlmanacCommonContent Word8 almanacCommonContent_sid :: Lens' AlmanacCommonContent GnssSignal almanacCommonContent_toa :: Lens' AlmanacCommonContent GpsTimeSec almanacCommonContent_ura :: Lens' AlmanacCommonContent Double almanacCommonContent_valid :: Lens' AlmanacCommonContent Word8 -- | SBP class for message MSG_ALMANAC_GPS_DEP (0x0070). -- -- The almanac message returns a set of satellite orbit parameters. -- Almanac data is not very precise and is considered valid for up to -- several months. Please see the Navstar GPS Space Segment/Navigation -- user interfaces (ICD- GPS-200, Chapter 20.3.3.5.1.2 Almanac Data) for -- more details. data MsgAlmanacGpsDep MsgAlmanacGpsDep :: !AlmanacCommonContentDep -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> MsgAlmanacGpsDep -- | Values common for all almanac types [_msgAlmanacGpsDep_common] :: MsgAlmanacGpsDep -> !AlmanacCommonContentDep -- | Mean anomaly at reference time [_msgAlmanacGpsDep_m0] :: MsgAlmanacGpsDep -> !Double -- | Eccentricity of satellite orbit [_msgAlmanacGpsDep_ecc] :: MsgAlmanacGpsDep -> !Double -- | Square root of the semi-major axis of orbit [_msgAlmanacGpsDep_sqrta] :: MsgAlmanacGpsDep -> !Double -- | Longitude of ascending node of orbit plane at weekly epoch [_msgAlmanacGpsDep_omega0] :: MsgAlmanacGpsDep -> !Double -- | Rate of right ascension [_msgAlmanacGpsDep_omegadot] :: MsgAlmanacGpsDep -> !Double -- | Argument of perigee [_msgAlmanacGpsDep_w] :: MsgAlmanacGpsDep -> !Double -- | Inclination [_msgAlmanacGpsDep_inc] :: MsgAlmanacGpsDep -> !Double -- | Polynomial clock correction coefficient (clock bias) [_msgAlmanacGpsDep_af0] :: MsgAlmanacGpsDep -> !Double -- | Polynomial clock correction coefficient (clock drift) [_msgAlmanacGpsDep_af1] :: MsgAlmanacGpsDep -> !Double almanacCommonContentDep_fit_interval :: Lens' AlmanacCommonContentDep Word32 almanacCommonContentDep_health_bits :: Lens' AlmanacCommonContentDep Word8 almanacCommonContentDep_sid :: Lens' AlmanacCommonContentDep GnssSignalDep almanacCommonContentDep_toa :: Lens' AlmanacCommonContentDep GpsTimeSec almanacCommonContentDep_ura :: Lens' AlmanacCommonContentDep Double almanacCommonContentDep_valid :: Lens' AlmanacCommonContentDep Word8 msgAlmanacGpsDep :: Word16 -- | SBP class for message MSG_ALMANAC_GPS (0x0072). -- -- The almanac message returns a set of satellite orbit parameters. -- Almanac data is not very precise and is considered valid for up to -- several months. Please see the Navstar GPS Space Segment/Navigation -- user interfaces (ICD- GPS-200, Chapter 20.3.3.5.1.2 Almanac Data) for -- more details. data MsgAlmanacGps MsgAlmanacGps :: !AlmanacCommonContent -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> MsgAlmanacGps -- | Values common for all almanac types [_msgAlmanacGps_common] :: MsgAlmanacGps -> !AlmanacCommonContent -- | Mean anomaly at reference time [_msgAlmanacGps_m0] :: MsgAlmanacGps -> !Double -- | Eccentricity of satellite orbit [_msgAlmanacGps_ecc] :: MsgAlmanacGps -> !Double -- | Square root of the semi-major axis of orbit [_msgAlmanacGps_sqrta] :: MsgAlmanacGps -> !Double -- | Longitude of ascending node of orbit plane at weekly epoch [_msgAlmanacGps_omega0] :: MsgAlmanacGps -> !Double -- | Rate of right ascension [_msgAlmanacGps_omegadot] :: MsgAlmanacGps -> !Double -- | Argument of perigee [_msgAlmanacGps_w] :: MsgAlmanacGps -> !Double -- | Inclination [_msgAlmanacGps_inc] :: MsgAlmanacGps -> !Double -- | Polynomial clock correction coefficient (clock bias) [_msgAlmanacGps_af0] :: MsgAlmanacGps -> !Double -- | Polynomial clock correction coefficient (clock drift) [_msgAlmanacGps_af1] :: MsgAlmanacGps -> !Double msgAlmanacGpsDep_af0 :: Lens' MsgAlmanacGpsDep Double msgAlmanacGpsDep_af1 :: Lens' MsgAlmanacGpsDep Double msgAlmanacGpsDep_common :: Lens' MsgAlmanacGpsDep AlmanacCommonContentDep msgAlmanacGpsDep_ecc :: Lens' MsgAlmanacGpsDep Double msgAlmanacGpsDep_inc :: Lens' MsgAlmanacGpsDep Double msgAlmanacGpsDep_m0 :: Lens' MsgAlmanacGpsDep Double msgAlmanacGpsDep_omega0 :: Lens' MsgAlmanacGpsDep Double msgAlmanacGpsDep_omegadot :: Lens' MsgAlmanacGpsDep Double msgAlmanacGpsDep_sqrta :: Lens' MsgAlmanacGpsDep Double msgAlmanacGpsDep_w :: Lens' MsgAlmanacGpsDep Double msgAlmanacGps :: Word16 -- | SBP class for message MSG_ALMANAC_GLO_DEP (0x0071). -- -- The almanac message returns a set of satellite orbit parameters. -- Almanac data is not very precise and is considered valid for up to -- several months. Please see the GLO ICD 5.1 "Chapter 4.5 Non-immediate -- information and almanac" for details. data MsgAlmanacGloDep MsgAlmanacGloDep :: !AlmanacCommonContentDep -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> MsgAlmanacGloDep -- | Values common for all almanac types [_msgAlmanacGloDep_common] :: MsgAlmanacGloDep -> !AlmanacCommonContentDep -- | Longitude of the first ascending node of the orbit in PZ-90.02 -- coordinate system [_msgAlmanacGloDep_lambda_na] :: MsgAlmanacGloDep -> !Double -- | Time of the first ascending node passage [_msgAlmanacGloDep_t_lambda_na] :: MsgAlmanacGloDep -> !Double -- | Value of inclination at instant of t_lambda [_msgAlmanacGloDep_i] :: MsgAlmanacGloDep -> !Double -- | Value of Draconian period at instant of t_lambda [_msgAlmanacGloDep_t] :: MsgAlmanacGloDep -> !Double -- | Rate of change of the Draconian period [_msgAlmanacGloDep_t_dot] :: MsgAlmanacGloDep -> !Double -- | Eccentricity at instant of t_lambda [_msgAlmanacGloDep_epsilon] :: MsgAlmanacGloDep -> !Double -- | Argument of perigee at instant of t_lambda [_msgAlmanacGloDep_omega] :: MsgAlmanacGloDep -> !Double msgAlmanacGps_af0 :: Lens' MsgAlmanacGps Double msgAlmanacGps_af1 :: Lens' MsgAlmanacGps Double msgAlmanacGps_common :: Lens' MsgAlmanacGps AlmanacCommonContent msgAlmanacGps_ecc :: Lens' MsgAlmanacGps Double msgAlmanacGps_inc :: Lens' MsgAlmanacGps Double msgAlmanacGps_m0 :: Lens' MsgAlmanacGps Double msgAlmanacGps_omega0 :: Lens' MsgAlmanacGps Double msgAlmanacGps_omegadot :: Lens' MsgAlmanacGps Double msgAlmanacGps_sqrta :: Lens' MsgAlmanacGps Double msgAlmanacGps_w :: Lens' MsgAlmanacGps Double msgAlmanacGloDep :: Word16 -- | SBP class for message MSG_ALMANAC_GLO (0x0073). -- -- The almanac message returns a set of satellite orbit parameters. -- Almanac data is not very precise and is considered valid for up to -- several months. Please see the GLO ICD 5.1 "Chapter 4.5 Non-immediate -- information and almanac" for details. data MsgAlmanacGlo MsgAlmanacGlo :: !AlmanacCommonContent -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> MsgAlmanacGlo -- | Values common for all almanac types [_msgAlmanacGlo_common] :: MsgAlmanacGlo -> !AlmanacCommonContent -- | Longitude of the first ascending node of the orbit in PZ-90.02 -- coordinate system [_msgAlmanacGlo_lambda_na] :: MsgAlmanacGlo -> !Double -- | Time of the first ascending node passage [_msgAlmanacGlo_t_lambda_na] :: MsgAlmanacGlo -> !Double -- | Value of inclination at instant of t_lambda [_msgAlmanacGlo_i] :: MsgAlmanacGlo -> !Double -- | Value of Draconian period at instant of t_lambda [_msgAlmanacGlo_t] :: MsgAlmanacGlo -> !Double -- | Rate of change of the Draconian period [_msgAlmanacGlo_t_dot] :: MsgAlmanacGlo -> !Double -- | Eccentricity at instant of t_lambda [_msgAlmanacGlo_epsilon] :: MsgAlmanacGlo -> !Double -- | Argument of perigee at instant of t_lambda [_msgAlmanacGlo_omega] :: MsgAlmanacGlo -> !Double msgAlmanacGloDep_common :: Lens' MsgAlmanacGloDep AlmanacCommonContentDep msgAlmanacGloDep_epsilon :: Lens' MsgAlmanacGloDep Double msgAlmanacGloDep_i :: Lens' MsgAlmanacGloDep Double msgAlmanacGloDep_lambda_na :: Lens' MsgAlmanacGloDep Double msgAlmanacGloDep_omega :: Lens' MsgAlmanacGloDep Double msgAlmanacGloDep_t :: Lens' MsgAlmanacGloDep Double msgAlmanacGloDep_t_dot :: Lens' MsgAlmanacGloDep Double msgAlmanacGloDep_t_lambda_na :: Lens' MsgAlmanacGloDep Double msgAlmanacGlo :: Word16 -- | SBP class for message MSG_GLO_BIASES (0x0075). -- -- The GLONASS L1/L2 Code-Phase biases allows to perform GPS+GLONASS -- integer ambiguity resolution for baselines with mixed receiver types -- (e.g. receiver of different manufacturers). data MsgGloBiases MsgGloBiases :: !Word8 -> !Int16 -> !Int16 -> !Int16 -> !Int16 -> MsgGloBiases -- | GLONASS FDMA signals mask [_msgGloBiases_mask] :: MsgGloBiases -> !Word8 -- | GLONASS L1 C/A Code-Phase Bias [_msgGloBiases_l1ca_bias] :: MsgGloBiases -> !Int16 -- | GLONASS L1 P Code-Phase Bias [_msgGloBiases_l1p_bias] :: MsgGloBiases -> !Int16 -- | GLONASS L2 C/A Code-Phase Bias [_msgGloBiases_l2ca_bias] :: MsgGloBiases -> !Int16 -- | GLONASS L2 P Code-Phase Bias [_msgGloBiases_l2p_bias] :: MsgGloBiases -> !Int16 msgAlmanacGlo_common :: Lens' MsgAlmanacGlo AlmanacCommonContent msgAlmanacGlo_epsilon :: Lens' MsgAlmanacGlo Double msgAlmanacGlo_i :: Lens' MsgAlmanacGlo Double msgAlmanacGlo_lambda_na :: Lens' MsgAlmanacGlo Double msgAlmanacGlo_omega :: Lens' MsgAlmanacGlo Double msgAlmanacGlo_t :: Lens' MsgAlmanacGlo Double msgAlmanacGlo_t_dot :: Lens' MsgAlmanacGlo Double msgAlmanacGlo_t_lambda_na :: Lens' MsgAlmanacGlo Double msgGloBiases :: Word16 -- | SvAzEl. -- -- Satellite azimuth and elevation. data SvAzEl SvAzEl :: !GnssSignal -> !Word8 -> !Int8 -> SvAzEl -- | GNSS signal identifier [_svAzEl_sid] :: SvAzEl -> !GnssSignal -- | Azimuth angle (range 0..179) [_svAzEl_az] :: SvAzEl -> !Word8 -- | Elevation angle (range -90..90) [_svAzEl_el] :: SvAzEl -> !Int8 msgGloBiases_l1ca_bias :: Lens' MsgGloBiases Int16 msgGloBiases_l1p_bias :: Lens' MsgGloBiases Int16 msgGloBiases_l2ca_bias :: Lens' MsgGloBiases Int16 msgGloBiases_l2p_bias :: Lens' MsgGloBiases Int16 msgGloBiases_mask :: Lens' MsgGloBiases Word8 -- | SBP class for message MSG_SV_AZ_EL (0x0097). -- -- Azimuth and elevation angles of all the visible satellites that the -- device does have ephemeris or almanac for. data MsgSvAzEl MsgSvAzEl :: ![SvAzEl] -> MsgSvAzEl -- | Azimuth and elevation per satellite [_msgSvAzEl_azel] :: MsgSvAzEl -> ![SvAzEl] svAzEl_az :: Lens' SvAzEl Word8 svAzEl_el :: Lens' SvAzEl Int8 svAzEl_sid :: Lens' SvAzEl GnssSignal msgSvAzEl :: Word16 -- | SBP class for message MSG_OSR (0x0640). -- -- The OSR message contains network corrections in an observation-like -- format. data MsgOsr MsgOsr :: !ObservationHeader -> ![PackedOsrContent] -> MsgOsr -- | Header of a GPS observation message [_msgOsr_header] :: MsgOsr -> !ObservationHeader -- | Network correction for a satellite signal. [_msgOsr_obs] :: MsgOsr -> ![PackedOsrContent] msgSvAzEl_azel :: Iso' MsgSvAzEl [SvAzEl] msgOsr :: Word16 msgOsr_header :: Lens' MsgOsr ObservationHeader msgOsr_obs :: Lens' MsgOsr [PackedOsrContent] instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgOsr instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgOsr instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgOsr instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgOsr instance GHC.Read.Read SwiftNav.SBP.Observation.MsgOsr instance GHC.Show.Show SwiftNav.SBP.Observation.MsgOsr instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgOsr instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgSvAzEl instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgSvAzEl instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgSvAzEl instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgSvAzEl instance GHC.Read.Read SwiftNav.SBP.Observation.MsgSvAzEl instance GHC.Show.Show SwiftNav.SBP.Observation.MsgSvAzEl instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgSvAzEl instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.SvAzEl instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.SvAzEl instance GHC.Classes.Eq SwiftNav.SBP.Observation.SvAzEl instance GHC.Read.Read SwiftNav.SBP.Observation.SvAzEl instance GHC.Show.Show SwiftNav.SBP.Observation.SvAzEl instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.SvAzEl instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgGloBiases instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgGloBiases instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgGloBiases instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgGloBiases instance GHC.Read.Read SwiftNav.SBP.Observation.MsgGloBiases instance GHC.Show.Show SwiftNav.SBP.Observation.MsgGloBiases instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgGloBiases instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgAlmanacGlo instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgAlmanacGlo instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgAlmanacGlo instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgAlmanacGlo instance GHC.Read.Read SwiftNav.SBP.Observation.MsgAlmanacGlo instance GHC.Show.Show SwiftNav.SBP.Observation.MsgAlmanacGlo instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgAlmanacGlo instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgAlmanacGloDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgAlmanacGloDep instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgAlmanacGloDep instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgAlmanacGloDep instance GHC.Read.Read SwiftNav.SBP.Observation.MsgAlmanacGloDep instance GHC.Show.Show SwiftNav.SBP.Observation.MsgAlmanacGloDep instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgAlmanacGloDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgAlmanacGps instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgAlmanacGps instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgAlmanacGps instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgAlmanacGps instance GHC.Read.Read SwiftNav.SBP.Observation.MsgAlmanacGps instance GHC.Show.Show SwiftNav.SBP.Observation.MsgAlmanacGps instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgAlmanacGps instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgAlmanacGpsDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgAlmanacGpsDep instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgAlmanacGpsDep instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgAlmanacGpsDep instance GHC.Read.Read SwiftNav.SBP.Observation.MsgAlmanacGpsDep instance GHC.Show.Show SwiftNav.SBP.Observation.MsgAlmanacGpsDep instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgAlmanacGpsDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.AlmanacCommonContentDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.AlmanacCommonContentDep instance GHC.Classes.Eq SwiftNav.SBP.Observation.AlmanacCommonContentDep instance GHC.Read.Read SwiftNav.SBP.Observation.AlmanacCommonContentDep instance GHC.Show.Show SwiftNav.SBP.Observation.AlmanacCommonContentDep instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.AlmanacCommonContentDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.AlmanacCommonContent instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.AlmanacCommonContent instance GHC.Classes.Eq SwiftNav.SBP.Observation.AlmanacCommonContent instance GHC.Read.Read SwiftNav.SBP.Observation.AlmanacCommonContent instance GHC.Show.Show SwiftNav.SBP.Observation.AlmanacCommonContent instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.AlmanacCommonContent instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgGroupDelay instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgGroupDelay instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgGroupDelay instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgGroupDelay instance GHC.Read.Read SwiftNav.SBP.Observation.MsgGroupDelay instance GHC.Show.Show SwiftNav.SBP.Observation.MsgGroupDelay instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgGroupDelay instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgGroupDelayDepB instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgGroupDelayDepB instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgGroupDelayDepB instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgGroupDelayDepB instance GHC.Read.Read SwiftNav.SBP.Observation.MsgGroupDelayDepB instance GHC.Show.Show SwiftNav.SBP.Observation.MsgGroupDelayDepB instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgGroupDelayDepB instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgGroupDelayDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgGroupDelayDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgGroupDelayDepA instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgGroupDelayDepA instance GHC.Read.Read SwiftNav.SBP.Observation.MsgGroupDelayDepA instance GHC.Show.Show SwiftNav.SBP.Observation.MsgGroupDelayDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgGroupDelayDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgGnssCapb instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgGnssCapb instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgGnssCapb instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgGnssCapb instance GHC.Read.Read SwiftNav.SBP.Observation.MsgGnssCapb instance GHC.Show.Show SwiftNav.SBP.Observation.MsgGnssCapb instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgGnssCapb instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.GnssCapb instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.GnssCapb instance GHC.Classes.Eq SwiftNav.SBP.Observation.GnssCapb instance GHC.Read.Read SwiftNav.SBP.Observation.GnssCapb instance GHC.Show.Show SwiftNav.SBP.Observation.GnssCapb instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.GnssCapb instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgSvConfigurationGpsDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgSvConfigurationGpsDep instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgSvConfigurationGpsDep instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgSvConfigurationGpsDep instance GHC.Read.Read SwiftNav.SBP.Observation.MsgSvConfigurationGpsDep instance GHC.Show.Show SwiftNav.SBP.Observation.MsgSvConfigurationGpsDep instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgSvConfigurationGpsDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgIono instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgIono instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgIono instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgIono instance GHC.Read.Read SwiftNav.SBP.Observation.MsgIono instance GHC.Show.Show SwiftNav.SBP.Observation.MsgIono instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgIono instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgObsDepC instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgObsDepC instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgObsDepC instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgObsDepC instance GHC.Read.Read SwiftNav.SBP.Observation.MsgObsDepC instance GHC.Show.Show SwiftNav.SBP.Observation.MsgObsDepC instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgObsDepC instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgObsDepB instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgObsDepB instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgObsDepB instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgObsDepB instance GHC.Read.Read SwiftNav.SBP.Observation.MsgObsDepB instance GHC.Show.Show SwiftNav.SBP.Observation.MsgObsDepB instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgObsDepB instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgObsDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgObsDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgObsDepA instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgObsDepA instance GHC.Read.Read SwiftNav.SBP.Observation.MsgObsDepA instance GHC.Show.Show SwiftNav.SBP.Observation.MsgObsDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgObsDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.PackedObsContentDepC instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.PackedObsContentDepC instance GHC.Classes.Eq SwiftNav.SBP.Observation.PackedObsContentDepC instance GHC.Read.Read SwiftNav.SBP.Observation.PackedObsContentDepC instance GHC.Show.Show SwiftNav.SBP.Observation.PackedObsContentDepC instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.PackedObsContentDepC instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.PackedObsContentDepB instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.PackedObsContentDepB instance GHC.Classes.Eq SwiftNav.SBP.Observation.PackedObsContentDepB instance GHC.Read.Read SwiftNav.SBP.Observation.PackedObsContentDepB instance GHC.Show.Show SwiftNav.SBP.Observation.PackedObsContentDepB instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.PackedObsContentDepB instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.PackedObsContentDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.PackedObsContentDepA instance GHC.Classes.Eq SwiftNav.SBP.Observation.PackedObsContentDepA instance GHC.Read.Read SwiftNav.SBP.Observation.PackedObsContentDepA instance GHC.Show.Show SwiftNav.SBP.Observation.PackedObsContentDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.PackedObsContentDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.CarrierPhaseDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.CarrierPhaseDepA instance GHC.Classes.Eq SwiftNav.SBP.Observation.CarrierPhaseDepA instance GHC.Read.Read SwiftNav.SBP.Observation.CarrierPhaseDepA instance GHC.Show.Show SwiftNav.SBP.Observation.CarrierPhaseDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.CarrierPhaseDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.ObservationHeaderDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.ObservationHeaderDep instance GHC.Classes.Eq SwiftNav.SBP.Observation.ObservationHeaderDep instance GHC.Read.Read SwiftNav.SBP.Observation.ObservationHeaderDep instance GHC.Show.Show SwiftNav.SBP.Observation.ObservationHeaderDep instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.ObservationHeaderDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisDepC instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisDepC instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisDepC instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisDepC instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisDepC instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisDepC instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisDepC instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisDepB instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisDepB instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisDepB instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisDepB instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisDepB instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisDepB instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisDepB instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisDepA instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisDepA instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisDepA instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisDepD instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisDepD instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisDepD instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisDepD instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisDepD instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisDepD instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisDepD instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisGlo instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisGlo instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisGlo instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisGlo instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisGlo instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisGlo instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisGlo instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisGloDepD instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisGloDepD instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisGloDepD instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisGloDepD instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisGloDepD instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisGloDepD instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisGloDepD instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisGloDepC instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisGloDepC instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisGloDepC instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisGloDepC instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisGloDepC instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisGloDepC instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisGloDepC instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisGloDepB instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisGloDepB instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisGloDepB instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisGloDepB instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisGloDepB instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisGloDepB instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisGloDepB instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisSbas instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisSbas instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisSbas instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisSbas instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisSbas instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisSbas instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisSbas instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisSbasDepB instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisSbasDepB instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisSbasDepB instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisSbasDepB instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisSbasDepB instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisSbasDepB instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisSbasDepB instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisGloDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisGloDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisGloDepA instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisGloDepA instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisGloDepA instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisGloDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisGloDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisSbasDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisSbasDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisSbasDepA instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisSbasDepA instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisSbasDepA instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisSbasDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisSbasDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisGal instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisGal instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisGal instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisGal instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisGal instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisGal instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisGal instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisGalDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisGalDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisGalDepA instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisGalDepA instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisGalDepA instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisGalDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisGalDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisBds instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisBds instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisBds instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisBds instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisBds instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisBds instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisBds instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisQzss instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisQzss instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisQzss instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisQzss instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisQzss instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisQzss instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisQzss instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisGps instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisGps instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisGps instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisGps instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisGps instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisGps instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisGps instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisGpsDepF instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisGpsDepF instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisGpsDepF instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisGpsDepF instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisGpsDepF instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisGpsDepF instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisGpsDepF instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgEphemerisGpsDepE instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgEphemerisGpsDepE instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgEphemerisGpsDepE instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgEphemerisGpsDepE instance GHC.Read.Read SwiftNav.SBP.Observation.MsgEphemerisGpsDepE instance GHC.Show.Show SwiftNav.SBP.Observation.MsgEphemerisGpsDepE instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgEphemerisGpsDepE instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.EphemerisCommonContentDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.EphemerisCommonContentDepA instance GHC.Classes.Eq SwiftNav.SBP.Observation.EphemerisCommonContentDepA instance GHC.Read.Read SwiftNav.SBP.Observation.EphemerisCommonContentDepA instance GHC.Show.Show SwiftNav.SBP.Observation.EphemerisCommonContentDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.EphemerisCommonContentDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.EphemerisCommonContentDepB instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.EphemerisCommonContentDepB instance GHC.Classes.Eq SwiftNav.SBP.Observation.EphemerisCommonContentDepB instance GHC.Read.Read SwiftNav.SBP.Observation.EphemerisCommonContentDepB instance GHC.Show.Show SwiftNav.SBP.Observation.EphemerisCommonContentDepB instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.EphemerisCommonContentDepB instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.EphemerisCommonContent instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.EphemerisCommonContent instance GHC.Classes.Eq SwiftNav.SBP.Observation.EphemerisCommonContent instance GHC.Read.Read SwiftNav.SBP.Observation.EphemerisCommonContent instance GHC.Show.Show SwiftNav.SBP.Observation.EphemerisCommonContent instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.EphemerisCommonContent instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgBasePosEcef instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgBasePosEcef instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgBasePosEcef instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgBasePosEcef instance GHC.Read.Read SwiftNav.SBP.Observation.MsgBasePosEcef instance GHC.Show.Show SwiftNav.SBP.Observation.MsgBasePosEcef instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgBasePosEcef instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgBasePosLlh instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgBasePosLlh instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgBasePosLlh instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgBasePosLlh instance GHC.Read.Read SwiftNav.SBP.Observation.MsgBasePosLlh instance GHC.Show.Show SwiftNav.SBP.Observation.MsgBasePosLlh instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgBasePosLlh instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.MsgObs instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.MsgObs instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Observation.MsgObs instance GHC.Classes.Eq SwiftNav.SBP.Observation.MsgObs instance GHC.Read.Read SwiftNav.SBP.Observation.MsgObs instance GHC.Show.Show SwiftNav.SBP.Observation.MsgObs instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.MsgObs instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.PackedOsrContent instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.PackedOsrContent instance GHC.Classes.Eq SwiftNav.SBP.Observation.PackedOsrContent instance GHC.Read.Read SwiftNav.SBP.Observation.PackedOsrContent instance GHC.Show.Show SwiftNav.SBP.Observation.PackedOsrContent instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.PackedOsrContent instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.PackedObsContent instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.PackedObsContent instance GHC.Classes.Eq SwiftNav.SBP.Observation.PackedObsContent instance GHC.Read.Read SwiftNav.SBP.Observation.PackedObsContent instance GHC.Show.Show SwiftNav.SBP.Observation.PackedObsContent instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.PackedObsContent instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.Doppler instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.Doppler instance GHC.Classes.Eq SwiftNav.SBP.Observation.Doppler instance GHC.Read.Read SwiftNav.SBP.Observation.Doppler instance GHC.Show.Show SwiftNav.SBP.Observation.Doppler instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.Doppler instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Observation.ObservationHeader instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Observation.ObservationHeader instance GHC.Classes.Eq SwiftNav.SBP.Observation.ObservationHeader instance GHC.Read.Read SwiftNav.SBP.Observation.ObservationHeader instance GHC.Show.Show SwiftNav.SBP.Observation.ObservationHeader instance Data.Binary.Class.Binary SwiftNav.SBP.Observation.ObservationHeader -- | < Messages for logging NDB events. > module SwiftNav.SBP.Ndb -- | SBP class for message MSG_NDB_EVENT (0x0400). -- -- This message is sent out when an object is stored into NDB. If needed -- message could also be sent out when fetching an object from NDB. data MsgNdbEvent MsgNdbEvent :: !Word64 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> !GnssSignal -> !GnssSignal -> !Word16 -> MsgNdbEvent -- | HW time in milliseconds. [_msgNdbEvent_recv_time] :: MsgNdbEvent -> !Word64 -- | Event type. [_msgNdbEvent_event] :: MsgNdbEvent -> !Word8 -- | Event object type. [_msgNdbEvent_object_type] :: MsgNdbEvent -> !Word8 -- | Event result. [_msgNdbEvent_result] :: MsgNdbEvent -> !Word8 -- | Data source for STORE event, reserved for other events. [_msgNdbEvent_data_source] :: MsgNdbEvent -> !Word8 -- | GNSS signal identifier, If object_type is Ephemeris OR Almanac, sid -- indicates for which signal the object belongs to. Reserved in other -- cases. [_msgNdbEvent_object_sid] :: MsgNdbEvent -> !GnssSignal -- | GNSS signal identifier, If object_type is Almanac, Almanac WN, Iono OR -- L2C capabilities AND data_source is NDB_DS_RECEIVER sid indicates from -- which SV data was decoded. Reserved in other cases. [_msgNdbEvent_src_sid] :: MsgNdbEvent -> !GnssSignal -- | A unique identifier of the sending hardware. For v1.0, set to the 2 -- least significant bytes of the device serial number, valid only if -- data_source is NDB_DS_SBP. Reserved in case of other data_source. [_msgNdbEvent_original_sender] :: MsgNdbEvent -> !Word16 msgNdbEvent :: Word16 msgNdbEvent_data_source :: Lens' MsgNdbEvent Word8 msgNdbEvent_event :: Lens' MsgNdbEvent Word8 msgNdbEvent_object_sid :: Lens' MsgNdbEvent GnssSignal msgNdbEvent_object_type :: Lens' MsgNdbEvent Word8 msgNdbEvent_original_sender :: Lens' MsgNdbEvent Word16 msgNdbEvent_recv_time :: Lens' MsgNdbEvent Word64 msgNdbEvent_result :: Lens' MsgNdbEvent Word8 msgNdbEvent_src_sid :: Lens' MsgNdbEvent GnssSignal instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Ndb.MsgNdbEvent instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Ndb.MsgNdbEvent instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Ndb.MsgNdbEvent instance GHC.Classes.Eq SwiftNav.SBP.Ndb.MsgNdbEvent instance GHC.Read.Read SwiftNav.SBP.Ndb.MsgNdbEvent instance GHC.Show.Show SwiftNav.SBP.Ndb.MsgNdbEvent instance Data.Binary.Class.Binary SwiftNav.SBP.Ndb.MsgNdbEvent -- | < Integrity flag messages > module SwiftNav.SBP.Integrity data MsgSsrFlagHighLevel MsgSsrFlagHighLevel :: ![Word8] -> MsgSsrFlagHighLevel [_msgSsrFlagHighLevel_stub] :: MsgSsrFlagHighLevel -> ![Word8] msgSsrFlagHighLevel :: Word16 data MsgSsrFlagSatellites MsgSsrFlagSatellites :: ![Word8] -> MsgSsrFlagSatellites [_msgSsrFlagSatellites_stub] :: MsgSsrFlagSatellites -> ![Word8] msgSsrFlagHighLevel_stub :: Iso' MsgSsrFlagHighLevel [Word8] msgSsrFlagSatellites :: Word16 data MsgSsrFlagTropoGridPoints MsgSsrFlagTropoGridPoints :: ![Word8] -> MsgSsrFlagTropoGridPoints [_msgSsrFlagTropoGridPoints_stub] :: MsgSsrFlagTropoGridPoints -> ![Word8] msgSsrFlagSatellites_stub :: Iso' MsgSsrFlagSatellites [Word8] msgSsrFlagTropoGridPoints :: Word16 data MsgSsrFlagIonoGridPoints MsgSsrFlagIonoGridPoints :: ![Word8] -> MsgSsrFlagIonoGridPoints [_msgSsrFlagIonoGridPoints_stub] :: MsgSsrFlagIonoGridPoints -> ![Word8] msgSsrFlagTropoGridPoints_stub :: Iso' MsgSsrFlagTropoGridPoints [Word8] msgSsrFlagIonoGridPoints :: Word16 data MsgSsrFlagIonoTileSatLos MsgSsrFlagIonoTileSatLos :: ![Word8] -> MsgSsrFlagIonoTileSatLos [_msgSsrFlagIonoTileSatLos_stub] :: MsgSsrFlagIonoTileSatLos -> ![Word8] msgSsrFlagIonoGridPoints_stub :: Iso' MsgSsrFlagIonoGridPoints [Word8] msgSsrFlagIonoTileSatLos :: Word16 data MsgSsrFlagIonoGridPointSatLos MsgSsrFlagIonoGridPointSatLos :: ![Word8] -> MsgSsrFlagIonoGridPointSatLos [_msgSsrFlagIonoGridPointSatLos_stub] :: MsgSsrFlagIonoGridPointSatLos -> ![Word8] msgSsrFlagIonoTileSatLos_stub :: Iso' MsgSsrFlagIonoTileSatLos [Word8] msgSsrFlagIonoGridPointSatLos :: Word16 msgSsrFlagIonoGridPointSatLos_stub :: Iso' MsgSsrFlagIonoGridPointSatLos [Word8] instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Integrity.MsgSsrFlagIonoGridPointSatLos instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Integrity.MsgSsrFlagIonoGridPointSatLos instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Integrity.MsgSsrFlagIonoGridPointSatLos instance GHC.Classes.Eq SwiftNav.SBP.Integrity.MsgSsrFlagIonoGridPointSatLos instance GHC.Read.Read SwiftNav.SBP.Integrity.MsgSsrFlagIonoGridPointSatLos instance GHC.Show.Show SwiftNav.SBP.Integrity.MsgSsrFlagIonoGridPointSatLos instance Data.Binary.Class.Binary SwiftNav.SBP.Integrity.MsgSsrFlagIonoGridPointSatLos instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Integrity.MsgSsrFlagIonoTileSatLos instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Integrity.MsgSsrFlagIonoTileSatLos instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Integrity.MsgSsrFlagIonoTileSatLos instance GHC.Classes.Eq SwiftNav.SBP.Integrity.MsgSsrFlagIonoTileSatLos instance GHC.Read.Read SwiftNav.SBP.Integrity.MsgSsrFlagIonoTileSatLos instance GHC.Show.Show SwiftNav.SBP.Integrity.MsgSsrFlagIonoTileSatLos instance Data.Binary.Class.Binary SwiftNav.SBP.Integrity.MsgSsrFlagIonoTileSatLos instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Integrity.MsgSsrFlagIonoGridPoints instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Integrity.MsgSsrFlagIonoGridPoints instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Integrity.MsgSsrFlagIonoGridPoints instance GHC.Classes.Eq SwiftNav.SBP.Integrity.MsgSsrFlagIonoGridPoints instance GHC.Read.Read SwiftNav.SBP.Integrity.MsgSsrFlagIonoGridPoints instance GHC.Show.Show SwiftNav.SBP.Integrity.MsgSsrFlagIonoGridPoints instance Data.Binary.Class.Binary SwiftNav.SBP.Integrity.MsgSsrFlagIonoGridPoints instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Integrity.MsgSsrFlagTropoGridPoints instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Integrity.MsgSsrFlagTropoGridPoints instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Integrity.MsgSsrFlagTropoGridPoints instance GHC.Classes.Eq SwiftNav.SBP.Integrity.MsgSsrFlagTropoGridPoints instance GHC.Read.Read SwiftNav.SBP.Integrity.MsgSsrFlagTropoGridPoints instance GHC.Show.Show SwiftNav.SBP.Integrity.MsgSsrFlagTropoGridPoints instance Data.Binary.Class.Binary SwiftNav.SBP.Integrity.MsgSsrFlagTropoGridPoints instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Integrity.MsgSsrFlagSatellites instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Integrity.MsgSsrFlagSatellites instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Integrity.MsgSsrFlagSatellites instance GHC.Classes.Eq SwiftNav.SBP.Integrity.MsgSsrFlagSatellites instance GHC.Read.Read SwiftNav.SBP.Integrity.MsgSsrFlagSatellites instance GHC.Show.Show SwiftNav.SBP.Integrity.MsgSsrFlagSatellites instance Data.Binary.Class.Binary SwiftNav.SBP.Integrity.MsgSsrFlagSatellites instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Integrity.MsgSsrFlagHighLevel instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Integrity.MsgSsrFlagHighLevel instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Integrity.MsgSsrFlagHighLevel instance GHC.Classes.Eq SwiftNav.SBP.Integrity.MsgSsrFlagHighLevel instance GHC.Read.Read SwiftNav.SBP.Integrity.MsgSsrFlagHighLevel instance GHC.Show.Show SwiftNav.SBP.Integrity.MsgSsrFlagHighLevel instance Data.Binary.Class.Binary SwiftNav.SBP.Integrity.MsgSsrFlagHighLevel -- | < Messages for reading/writing the device's onboard flash memory. -- Many of these messages target specific flash memory peripherals used -- in Swift Navigation devices: the STM32 flash and the M25Pxx FPGA -- configuration flash from Piksi 2.3.1. This module does not apply to -- Piksi Multi. > module SwiftNav.SBP.Flash -- | SBP class for message MSG_FLASH_PROGRAM (0x00E6). -- -- The flash program message programs a set of addresses of either the -- STM or M25 flash. The device replies with either a MSG_FLASH_DONE -- message containing the return code FLASH_OK (0) on success, or -- FLASH_INVALID_LEN (2) if the maximum write size is exceeded. Note that -- the sector-containing addresses must be erased before addresses can be -- programmed. data MsgFlashProgram MsgFlashProgram :: !Word8 -> ![Word8] -> !Word8 -> ![Word8] -> MsgFlashProgram -- | Target flags [_msgFlashProgram_target] :: MsgFlashProgram -> !Word8 -- | Starting address offset to program [_msgFlashProgram_addr_start] :: MsgFlashProgram -> ![Word8] -- | Length of set of addresses to program, counting up from starting -- address [_msgFlashProgram_addr_len] :: MsgFlashProgram -> !Word8 -- | Data to program addresses with, with length N=addr_len [_msgFlashProgram_data] :: MsgFlashProgram -> ![Word8] msgFlashProgram :: Word16 -- | SBP class for message MSG_FLASH_DONE (0x00E0). -- -- This message defines success or failure codes for a variety of flash -- memory requests from the host to the device. Flash read and write -- messages, such as MSG_FLASH_READ_REQ, or MSG_FLASH_PROGRAM, may return -- this message on failure. data MsgFlashDone MsgFlashDone :: !Word8 -> MsgFlashDone -- | Response flags [_msgFlashDone_response] :: MsgFlashDone -> !Word8 msgFlashProgram_addr_len :: Lens' MsgFlashProgram Word8 msgFlashProgram_addr_start :: Lens' MsgFlashProgram [Word8] msgFlashProgram_data :: Lens' MsgFlashProgram [Word8] msgFlashProgram_target :: Lens' MsgFlashProgram Word8 msgFlashDone :: Word16 -- | SBP class for message MSG_FLASH_READ_REQ (0x00E7). -- -- The flash read message reads a set of addresses of either the STM or -- M25 onboard flash. The device replies with a MSG_FLASH_READ_RESP -- message containing either the read data on success or a MSG_FLASH_DONE -- message containing the return code FLASH_INVALID_LEN (2) if the -- maximum read size is exceeded or FLASH_INVALID_ADDR (3) if the address -- is outside of the allowed range. data MsgFlashReadReq MsgFlashReadReq :: !Word8 -> ![Word8] -> !Word8 -> MsgFlashReadReq -- | Target flags [_msgFlashReadReq_target] :: MsgFlashReadReq -> !Word8 -- | Starting address offset to read from [_msgFlashReadReq_addr_start] :: MsgFlashReadReq -> ![Word8] -- | Length of set of addresses to read, counting up from starting address [_msgFlashReadReq_addr_len] :: MsgFlashReadReq -> !Word8 msgFlashDone_response :: Iso' MsgFlashDone Word8 msgFlashReadReq :: Word16 -- | SBP class for message MSG_FLASH_READ_RESP (0x00E1). -- -- The flash read message reads a set of addresses of either the STM or -- M25 onboard flash. The device replies with a MSG_FLASH_READ_RESP -- message containing either the read data on success or a MSG_FLASH_DONE -- message containing the return code FLASH_INVALID_LEN (2) if the -- maximum read size is exceeded or FLASH_INVALID_ADDR (3) if the address -- is outside of the allowed range. data MsgFlashReadResp MsgFlashReadResp :: !Word8 -> ![Word8] -> !Word8 -> MsgFlashReadResp -- | Target flags [_msgFlashReadResp_target] :: MsgFlashReadResp -> !Word8 -- | Starting address offset to read from [_msgFlashReadResp_addr_start] :: MsgFlashReadResp -> ![Word8] -- | Length of set of addresses to read, counting up from starting address [_msgFlashReadResp_addr_len] :: MsgFlashReadResp -> !Word8 msgFlashReadReq_addr_len :: Lens' MsgFlashReadReq Word8 msgFlashReadReq_addr_start :: Lens' MsgFlashReadReq [Word8] msgFlashReadReq_target :: Lens' MsgFlashReadReq Word8 msgFlashReadResp :: Word16 -- | SBP class for message MSG_FLASH_ERASE (0x00E2). -- -- The flash erase message from the host erases a sector of either the -- STM or M25 onboard flash memory. The device will reply with a -- MSG_FLASH_DONE message containing the return code - FLASH_OK (0) on -- success or FLASH_INVALID_FLASH (1) if the flash specified is invalid. data MsgFlashErase MsgFlashErase :: !Word8 -> !Word32 -> MsgFlashErase -- | Target flags [_msgFlashErase_target] :: MsgFlashErase -> !Word8 -- | Flash sector number to erase (0-11 for the STM, 0-15 for the M25) [_msgFlashErase_sector_num] :: MsgFlashErase -> !Word32 msgFlashReadResp_addr_len :: Lens' MsgFlashReadResp Word8 msgFlashReadResp_addr_start :: Lens' MsgFlashReadResp [Word8] msgFlashReadResp_target :: Lens' MsgFlashReadResp Word8 msgFlashErase :: Word16 -- | SBP class for message MSG_STM_FLASH_LOCK_SECTOR (0x00E3). -- -- The flash lock message locks a sector of the STM flash memory. The -- device replies with a MSG_FLASH_DONE message. data MsgStmFlashLockSector MsgStmFlashLockSector :: !Word32 -> MsgStmFlashLockSector -- | Flash sector number to lock [_msgStmFlashLockSector_sector] :: MsgStmFlashLockSector -> !Word32 msgFlashErase_sector_num :: Lens' MsgFlashErase Word32 msgFlashErase_target :: Lens' MsgFlashErase Word8 msgStmFlashLockSector :: Word16 -- | SBP class for message MSG_STM_FLASH_UNLOCK_SECTOR (0x00E4). -- -- The flash unlock message unlocks a sector of the STM flash memory. The -- device replies with a MSG_FLASH_DONE message. data MsgStmFlashUnlockSector MsgStmFlashUnlockSector :: !Word32 -> MsgStmFlashUnlockSector -- | Flash sector number to unlock [_msgStmFlashUnlockSector_sector] :: MsgStmFlashUnlockSector -> !Word32 msgStmFlashLockSector_sector :: Iso' MsgStmFlashLockSector Word32 msgStmFlashUnlockSector :: Word16 -- | SBP class for message MSG_STM_UNIQUE_ID_REQ (0x00E8). -- -- This message reads the device's hard-coded unique ID. The host -- requests the ID by sending a MSG_STM_UNIQUE_ID_REQ. The device -- responds with a MSG_STM_UNIQUE_ID_RESP with the 12-byte unique ID in -- the payload. data MsgStmUniqueIdReq MsgStmUniqueIdReq :: MsgStmUniqueIdReq msgStmFlashUnlockSector_sector :: Iso' MsgStmFlashUnlockSector Word32 msgStmUniqueIdReq :: Word16 -- | SBP class for message MSG_STM_UNIQUE_ID_RESP (0x00E5). -- -- This message reads the device's hard-coded unique ID. The host -- requests the ID by sending a MSG_STM_UNIQUE_ID_REQ. The device -- responds with a MSG_STM_UNIQUE_ID_RESP with the 12-byte unique ID in -- the payload. data MsgStmUniqueIdResp MsgStmUniqueIdResp :: ![Word8] -> MsgStmUniqueIdResp -- | Device unique ID [_msgStmUniqueIdResp_stm_id] :: MsgStmUniqueIdResp -> ![Word8] msgStmUniqueIdResp :: Word16 -- | SBP class for message MSG_M25_FLASH_WRITE_STATUS (0x00F3). -- -- The flash status message writes to the 8-bit M25 flash status -- register. The device replies with a MSG_FLASH_DONE message. data MsgM25FlashWriteStatus MsgM25FlashWriteStatus :: ![Word8] -> MsgM25FlashWriteStatus -- | Byte to write to the M25 flash status register [_msgM25FlashWriteStatus_status] :: MsgM25FlashWriteStatus -> ![Word8] msgStmUniqueIdResp_stm_id :: Iso' MsgStmUniqueIdResp [Word8] msgM25FlashWriteStatus :: Word16 msgM25FlashWriteStatus_status :: Iso' MsgM25FlashWriteStatus [Word8] instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Flash.MsgM25FlashWriteStatus instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Flash.MsgM25FlashWriteStatus instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Flash.MsgM25FlashWriteStatus instance GHC.Classes.Eq SwiftNav.SBP.Flash.MsgM25FlashWriteStatus instance GHC.Read.Read SwiftNav.SBP.Flash.MsgM25FlashWriteStatus instance GHC.Show.Show SwiftNav.SBP.Flash.MsgM25FlashWriteStatus instance Data.Binary.Class.Binary SwiftNav.SBP.Flash.MsgM25FlashWriteStatus instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Flash.MsgStmUniqueIdResp instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Flash.MsgStmUniqueIdResp instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Flash.MsgStmUniqueIdResp instance GHC.Classes.Eq SwiftNav.SBP.Flash.MsgStmUniqueIdResp instance GHC.Read.Read SwiftNav.SBP.Flash.MsgStmUniqueIdResp instance GHC.Show.Show SwiftNav.SBP.Flash.MsgStmUniqueIdResp instance Data.Binary.Class.Binary SwiftNav.SBP.Flash.MsgStmUniqueIdResp instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Flash.MsgStmUniqueIdReq instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Flash.MsgStmUniqueIdReq instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Flash.MsgStmUniqueIdReq instance GHC.Classes.Eq SwiftNav.SBP.Flash.MsgStmUniqueIdReq instance GHC.Read.Read SwiftNav.SBP.Flash.MsgStmUniqueIdReq instance GHC.Show.Show SwiftNav.SBP.Flash.MsgStmUniqueIdReq instance Data.Binary.Class.Binary SwiftNav.SBP.Flash.MsgStmUniqueIdReq instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Flash.MsgStmFlashUnlockSector instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Flash.MsgStmFlashUnlockSector instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Flash.MsgStmFlashUnlockSector instance GHC.Classes.Eq SwiftNav.SBP.Flash.MsgStmFlashUnlockSector instance GHC.Read.Read SwiftNav.SBP.Flash.MsgStmFlashUnlockSector instance GHC.Show.Show SwiftNav.SBP.Flash.MsgStmFlashUnlockSector instance Data.Binary.Class.Binary SwiftNav.SBP.Flash.MsgStmFlashUnlockSector instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Flash.MsgStmFlashLockSector instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Flash.MsgStmFlashLockSector instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Flash.MsgStmFlashLockSector instance GHC.Classes.Eq SwiftNav.SBP.Flash.MsgStmFlashLockSector instance GHC.Read.Read SwiftNav.SBP.Flash.MsgStmFlashLockSector instance GHC.Show.Show SwiftNav.SBP.Flash.MsgStmFlashLockSector instance Data.Binary.Class.Binary SwiftNav.SBP.Flash.MsgStmFlashLockSector instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Flash.MsgFlashErase instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Flash.MsgFlashErase instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Flash.MsgFlashErase instance GHC.Classes.Eq SwiftNav.SBP.Flash.MsgFlashErase instance GHC.Read.Read SwiftNav.SBP.Flash.MsgFlashErase instance GHC.Show.Show SwiftNav.SBP.Flash.MsgFlashErase instance Data.Binary.Class.Binary SwiftNav.SBP.Flash.MsgFlashErase instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Flash.MsgFlashReadResp instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Flash.MsgFlashReadResp instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Flash.MsgFlashReadResp instance GHC.Classes.Eq SwiftNav.SBP.Flash.MsgFlashReadResp instance GHC.Read.Read SwiftNav.SBP.Flash.MsgFlashReadResp instance GHC.Show.Show SwiftNav.SBP.Flash.MsgFlashReadResp instance Data.Binary.Class.Binary SwiftNav.SBP.Flash.MsgFlashReadResp instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Flash.MsgFlashReadReq instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Flash.MsgFlashReadReq instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Flash.MsgFlashReadReq instance GHC.Classes.Eq SwiftNav.SBP.Flash.MsgFlashReadReq instance GHC.Read.Read SwiftNav.SBP.Flash.MsgFlashReadReq instance GHC.Show.Show SwiftNav.SBP.Flash.MsgFlashReadReq instance Data.Binary.Class.Binary SwiftNav.SBP.Flash.MsgFlashReadReq instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Flash.MsgFlashDone instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Flash.MsgFlashDone instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Flash.MsgFlashDone instance GHC.Classes.Eq SwiftNav.SBP.Flash.MsgFlashDone instance GHC.Read.Read SwiftNav.SBP.Flash.MsgFlashDone instance GHC.Show.Show SwiftNav.SBP.Flash.MsgFlashDone instance Data.Binary.Class.Binary SwiftNav.SBP.Flash.MsgFlashDone instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Flash.MsgFlashProgram instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Flash.MsgFlashProgram instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Flash.MsgFlashProgram instance GHC.Classes.Eq SwiftNav.SBP.Flash.MsgFlashProgram instance GHC.Read.Read SwiftNav.SBP.Flash.MsgFlashProgram instance GHC.Show.Show SwiftNav.SBP.Flash.MsgFlashProgram instance Data.Binary.Class.Binary SwiftNav.SBP.Flash.MsgFlashProgram -- | < Messages for using device's onboard flash filesystem -- functionality. This allows data to be stored persistently in the -- device's program flash with wear-levelling using a simple filesystem -- interface. The file system interface (CFS) defines an abstract API for -- reading directories and for reading and writing files. -- -- Note that some of these messages share the same message type ID for -- both the host request and the device response. > module SwiftNav.SBP.FileIo -- | SBP class for message MSG_FILEIO_READ_REQ (0x00A8). -- -- The file read message reads a certain length (up to 255 bytes) from a -- given offset into a file, and returns the data in a -- MSG_FILEIO_READ_RESP message where the message length field indicates -- how many bytes were successfully read. The sequence number in the -- request will be returned in the response. If the message is invalid, a -- followup MSG_PRINT message will print "Invalid fileio read message". A -- device will only respond to this message when it is received from -- sender ID 0x42. data MsgFileioReadReq MsgFileioReadReq :: !Word32 -> !Word32 -> !Word8 -> !Text -> MsgFileioReadReq -- | Read sequence number [_msgFileioReadReq_sequence] :: MsgFileioReadReq -> !Word32 -- | File offset [_msgFileioReadReq_offset] :: MsgFileioReadReq -> !Word32 -- | Chunk size to read [_msgFileioReadReq_chunk_size] :: MsgFileioReadReq -> !Word8 -- | Name of the file to read from [_msgFileioReadReq_filename] :: MsgFileioReadReq -> !Text msgFileioReadReq :: Word16 -- | SBP class for message MSG_FILEIO_READ_RESP (0x00A3). -- -- The file read message reads a certain length (up to 255 bytes) from a -- given offset into a file, and returns the data in a message where the -- message length field indicates how many bytes were successfully read. -- The sequence number in the response is preserved from the request. data MsgFileioReadResp MsgFileioReadResp :: !Word32 -> ![Word8] -> MsgFileioReadResp -- | Read sequence number [_msgFileioReadResp_sequence] :: MsgFileioReadResp -> !Word32 -- | Contents of read file [_msgFileioReadResp_contents] :: MsgFileioReadResp -> ![Word8] msgFileioReadReq_chunk_size :: Lens' MsgFileioReadReq Word8 msgFileioReadReq_filename :: Lens' MsgFileioReadReq Text msgFileioReadReq_offset :: Lens' MsgFileioReadReq Word32 msgFileioReadReq_sequence :: Lens' MsgFileioReadReq Word32 msgFileioReadResp :: Word16 -- | SBP class for message MSG_FILEIO_READ_DIR_REQ (0x00A9). -- -- The read directory message lists the files in a directory on the -- device's onboard flash file system. The offset parameter can be used -- to skip the first n elements of the file list. Returns a -- MSG_FILEIO_READ_DIR_RESP message containing the directory listings as -- a NULL delimited list. The listing is chunked over multiple SBP -- packets. The sequence number in the request will be returned in the -- response. If message is invalid, a followup MSG_PRINT message will -- print "Invalid fileio read message". A device will only respond to -- this message when it is received from sender ID 0x42. data MsgFileioReadDirReq MsgFileioReadDirReq :: !Word32 -> !Word32 -> !Text -> MsgFileioReadDirReq -- | Read sequence number [_msgFileioReadDirReq_sequence] :: MsgFileioReadDirReq -> !Word32 -- | The offset to skip the first n elements of the file list [_msgFileioReadDirReq_offset] :: MsgFileioReadDirReq -> !Word32 -- | Name of the directory to list [_msgFileioReadDirReq_dirname] :: MsgFileioReadDirReq -> !Text msgFileioReadResp_contents :: Lens' MsgFileioReadResp [Word8] msgFileioReadResp_sequence :: Lens' MsgFileioReadResp Word32 msgFileioReadDirReq :: Word16 -- | SBP class for message MSG_FILEIO_READ_DIR_RESP (0x00AA). -- -- The read directory message lists the files in a directory on the -- device's onboard flash file system. Message contains the directory -- listings as a NULL delimited list. The listing is chunked over -- multiple SBP packets and the end of the list is identified by an -- packet with no entries. The sequence number in the response is -- preserved from the request. data MsgFileioReadDirResp MsgFileioReadDirResp :: !Word32 -> ![Word8] -> MsgFileioReadDirResp -- | Read sequence number [_msgFileioReadDirResp_sequence] :: MsgFileioReadDirResp -> !Word32 -- | Contents of read directory [_msgFileioReadDirResp_contents] :: MsgFileioReadDirResp -> ![Word8] msgFileioReadDirReq_dirname :: Lens' MsgFileioReadDirReq Text msgFileioReadDirReq_offset :: Lens' MsgFileioReadDirReq Word32 msgFileioReadDirReq_sequence :: Lens' MsgFileioReadDirReq Word32 msgFileioReadDirResp :: Word16 -- | SBP class for message MSG_FILEIO_REMOVE (0x00AC). -- -- The file remove message deletes a file from the file system. If the -- message is invalid, a followup MSG_PRINT message will print "Invalid -- fileio remove message". A device will only process this message when -- it is received from sender ID 0x42. data MsgFileioRemove MsgFileioRemove :: !Text -> MsgFileioRemove -- | Name of the file to delete [_msgFileioRemove_filename] :: MsgFileioRemove -> !Text msgFileioReadDirResp_contents :: Lens' MsgFileioReadDirResp [Word8] msgFileioReadDirResp_sequence :: Lens' MsgFileioReadDirResp Word32 msgFileioRemove :: Word16 -- | SBP class for message MSG_FILEIO_WRITE_REQ (0x00AD). -- -- The file write message writes a certain length (up to 255 bytes) of -- data to a file at a given offset. Returns a copy of the original -- MSG_FILEIO_WRITE_RESP message to check integrity of the write. The -- sequence number in the request will be returned in the response. If -- message is invalid, a followup MSG_PRINT message will print "Invalid -- fileio write message". A device will only process this message when it -- is received from sender ID 0x42. data MsgFileioWriteReq MsgFileioWriteReq :: !Word32 -> !Word32 -> !Text -> ![Word8] -> MsgFileioWriteReq -- | Write sequence number [_msgFileioWriteReq_sequence] :: MsgFileioWriteReq -> !Word32 -- | Offset into the file at which to start writing in bytes [_msgFileioWriteReq_offset] :: MsgFileioWriteReq -> !Word32 -- | Name of the file to write to [_msgFileioWriteReq_filename] :: MsgFileioWriteReq -> !Text -- | Variable-length array of data to write [_msgFileioWriteReq_data] :: MsgFileioWriteReq -> ![Word8] msgFileioRemove_filename :: Iso' MsgFileioRemove Text msgFileioWriteReq :: Word16 -- | SBP class for message MSG_FILEIO_WRITE_RESP (0x00AB). -- -- The file write message writes a certain length (up to 255 bytes) of -- data to a file at a given offset. The message is a copy of the -- original MSG_FILEIO_WRITE_REQ message to check integrity of the write. -- The sequence number in the response is preserved from the request. data MsgFileioWriteResp MsgFileioWriteResp :: !Word32 -> MsgFileioWriteResp -- | Write sequence number [_msgFileioWriteResp_sequence] :: MsgFileioWriteResp -> !Word32 msgFileioWriteReq_data :: Lens' MsgFileioWriteReq [Word8] msgFileioWriteReq_filename :: Lens' MsgFileioWriteReq Text msgFileioWriteReq_offset :: Lens' MsgFileioWriteReq Word32 msgFileioWriteReq_sequence :: Lens' MsgFileioWriteReq Word32 msgFileioWriteResp :: Word16 -- | SBP class for message MSG_FILEIO_CONFIG_REQ (0x1001). -- -- Requests advice on the optimal configuration for a FileIO transfer. -- Newer version of FileIO can support greater throughput by supporting a -- large window of FileIO data that can be in-flight during read or write -- operations. data MsgFileioConfigReq MsgFileioConfigReq :: !Word32 -> MsgFileioConfigReq -- | Advice sequence number [_msgFileioConfigReq_sequence] :: MsgFileioConfigReq -> !Word32 msgFileioWriteResp_sequence :: Iso' MsgFileioWriteResp Word32 msgFileioConfigReq :: Word16 -- | SBP class for message MSG_FILEIO_CONFIG_RESP (0x1002). -- -- The advice on the optimal configuration for a FileIO transfer. Newer -- version of FileIO can support greater throughput by supporting a large -- window of FileIO data that can be in-flight during read or write -- operations. data MsgFileioConfigResp MsgFileioConfigResp :: !Word32 -> !Word32 -> !Word32 -> !Word32 -> MsgFileioConfigResp -- | Advice sequence number [_msgFileioConfigResp_sequence] :: MsgFileioConfigResp -> !Word32 -- | The number of SBP packets in the data in-flight window [_msgFileioConfigResp_window_size] :: MsgFileioConfigResp -> !Word32 -- | The number of SBP packets sent in one PDU [_msgFileioConfigResp_batch_size] :: MsgFileioConfigResp -> !Word32 -- | The version of FileIO that is supported [_msgFileioConfigResp_fileio_version] :: MsgFileioConfigResp -> !Word32 msgFileioConfigReq_sequence :: Iso' MsgFileioConfigReq Word32 msgFileioConfigResp :: Word16 msgFileioConfigResp_batch_size :: Lens' MsgFileioConfigResp Word32 msgFileioConfigResp_fileio_version :: Lens' MsgFileioConfigResp Word32 msgFileioConfigResp_sequence :: Lens' MsgFileioConfigResp Word32 msgFileioConfigResp_window_size :: Lens' MsgFileioConfigResp Word32 instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.FileIo.MsgFileioConfigResp instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.FileIo.MsgFileioConfigResp instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.FileIo.MsgFileioConfigResp instance GHC.Classes.Eq SwiftNav.SBP.FileIo.MsgFileioConfigResp instance GHC.Read.Read SwiftNav.SBP.FileIo.MsgFileioConfigResp instance GHC.Show.Show SwiftNav.SBP.FileIo.MsgFileioConfigResp instance Data.Binary.Class.Binary SwiftNav.SBP.FileIo.MsgFileioConfigResp instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.FileIo.MsgFileioConfigReq instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.FileIo.MsgFileioConfigReq instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.FileIo.MsgFileioConfigReq instance GHC.Classes.Eq SwiftNav.SBP.FileIo.MsgFileioConfigReq instance GHC.Read.Read SwiftNav.SBP.FileIo.MsgFileioConfigReq instance GHC.Show.Show SwiftNav.SBP.FileIo.MsgFileioConfigReq instance Data.Binary.Class.Binary SwiftNav.SBP.FileIo.MsgFileioConfigReq instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.FileIo.MsgFileioWriteResp instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.FileIo.MsgFileioWriteResp instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.FileIo.MsgFileioWriteResp instance GHC.Classes.Eq SwiftNav.SBP.FileIo.MsgFileioWriteResp instance GHC.Read.Read SwiftNav.SBP.FileIo.MsgFileioWriteResp instance GHC.Show.Show SwiftNav.SBP.FileIo.MsgFileioWriteResp instance Data.Binary.Class.Binary SwiftNav.SBP.FileIo.MsgFileioWriteResp instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.FileIo.MsgFileioWriteReq instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.FileIo.MsgFileioWriteReq instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.FileIo.MsgFileioWriteReq instance GHC.Classes.Eq SwiftNav.SBP.FileIo.MsgFileioWriteReq instance GHC.Read.Read SwiftNav.SBP.FileIo.MsgFileioWriteReq instance GHC.Show.Show SwiftNav.SBP.FileIo.MsgFileioWriteReq instance Data.Binary.Class.Binary SwiftNav.SBP.FileIo.MsgFileioWriteReq instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.FileIo.MsgFileioRemove instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.FileIo.MsgFileioRemove instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.FileIo.MsgFileioRemove instance GHC.Classes.Eq SwiftNav.SBP.FileIo.MsgFileioRemove instance GHC.Read.Read SwiftNav.SBP.FileIo.MsgFileioRemove instance GHC.Show.Show SwiftNav.SBP.FileIo.MsgFileioRemove instance Data.Binary.Class.Binary SwiftNav.SBP.FileIo.MsgFileioRemove instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.FileIo.MsgFileioReadDirResp instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.FileIo.MsgFileioReadDirResp instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.FileIo.MsgFileioReadDirResp instance GHC.Classes.Eq SwiftNav.SBP.FileIo.MsgFileioReadDirResp instance GHC.Read.Read SwiftNav.SBP.FileIo.MsgFileioReadDirResp instance GHC.Show.Show SwiftNav.SBP.FileIo.MsgFileioReadDirResp instance Data.Binary.Class.Binary SwiftNav.SBP.FileIo.MsgFileioReadDirResp instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.FileIo.MsgFileioReadDirReq instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.FileIo.MsgFileioReadDirReq instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.FileIo.MsgFileioReadDirReq instance GHC.Classes.Eq SwiftNav.SBP.FileIo.MsgFileioReadDirReq instance GHC.Read.Read SwiftNav.SBP.FileIo.MsgFileioReadDirReq instance GHC.Show.Show SwiftNav.SBP.FileIo.MsgFileioReadDirReq instance Data.Binary.Class.Binary SwiftNav.SBP.FileIo.MsgFileioReadDirReq instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.FileIo.MsgFileioReadResp instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.FileIo.MsgFileioReadResp instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.FileIo.MsgFileioReadResp instance GHC.Classes.Eq SwiftNav.SBP.FileIo.MsgFileioReadResp instance GHC.Read.Read SwiftNav.SBP.FileIo.MsgFileioReadResp instance GHC.Show.Show SwiftNav.SBP.FileIo.MsgFileioReadResp instance Data.Binary.Class.Binary SwiftNav.SBP.FileIo.MsgFileioReadResp instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.FileIo.MsgFileioReadReq instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.FileIo.MsgFileioReadReq instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.FileIo.MsgFileioReadReq instance GHC.Classes.Eq SwiftNav.SBP.FileIo.MsgFileioReadReq instance GHC.Read.Read SwiftNav.SBP.FileIo.MsgFileioReadReq instance GHC.Show.Show SwiftNav.SBP.FileIo.MsgFileioReadReq instance Data.Binary.Class.Binary SwiftNav.SBP.FileIo.MsgFileioReadReq -- | < Messages reporting accurately-timestamped external events, e.g. -- camera shutter time. > module SwiftNav.SBP.ExtEvents -- | SBP class for message MSG_EXT_EVENT (0x0101). -- -- Reports detection of an external event, the GPS time it occurred, -- which pin it was and whether it was rising or falling. data MsgExtEvent MsgExtEvent :: !Word16 -> !Word32 -> !Int32 -> !Word8 -> !Word8 -> MsgExtEvent -- | GPS week number [_msgExtEvent_wn] :: MsgExtEvent -> !Word16 -- | GPS time of week rounded to the nearest millisecond [_msgExtEvent_tow] :: MsgExtEvent -> !Word32 -- | Nanosecond residual of millisecond-rounded TOW (ranges from -500000 to -- 500000) [_msgExtEvent_ns_residual] :: MsgExtEvent -> !Int32 -- | Flags [_msgExtEvent_flags] :: MsgExtEvent -> !Word8 -- | Pin number. 0..9 = DEBUG0..9. [_msgExtEvent_pin] :: MsgExtEvent -> !Word8 msgExtEvent :: Word16 msgExtEvent_flags :: Lens' MsgExtEvent Word8 msgExtEvent_ns_residual :: Lens' MsgExtEvent Int32 msgExtEvent_pin :: Lens' MsgExtEvent Word8 msgExtEvent_tow :: Lens' MsgExtEvent Word32 msgExtEvent_wn :: Lens' MsgExtEvent Word16 instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.ExtEvents.MsgExtEvent instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.ExtEvents.MsgExtEvent instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.ExtEvents.MsgExtEvent instance GHC.Classes.Eq SwiftNav.SBP.ExtEvents.MsgExtEvent instance GHC.Read.Read SwiftNav.SBP.ExtEvents.MsgExtEvent instance GHC.Show.Show SwiftNav.SBP.ExtEvents.MsgExtEvent instance Data.Binary.Class.Binary SwiftNav.SBP.ExtEvents.MsgExtEvent -- | < Messages for the bootloading configuration of a Piksi 2.3.1. This -- message group does not apply to Piksi Multi. -- -- Note that some of these messages share the same message type ID for -- both the host request and the device response. > module SwiftNav.SBP.Bootload -- | SBP class for message MSG_BOOTLOADER_HANDSHAKE_REQ (0x00B3). -- -- The handshake message request from the host establishes a handshake -- between the device bootloader and the host. The response from the -- device is MSG_BOOTLOADER_HANDSHAKE_RESP. data MsgBootloaderHandshakeReq MsgBootloaderHandshakeReq :: MsgBootloaderHandshakeReq msgBootloaderHandshakeReq :: Word16 -- | SBP class for message MSG_BOOTLOADER_HANDSHAKE_RESP (0x00B4). -- -- The handshake message response from the device establishes a handshake -- between the device bootloader and the host. The request from the host -- is MSG_BOOTLOADER_HANDSHAKE_REQ. The payload contains the bootloader -- version number and the SBP protocol version number. data MsgBootloaderHandshakeResp MsgBootloaderHandshakeResp :: !Word32 -> !Text -> MsgBootloaderHandshakeResp -- | Bootloader flags [_msgBootloaderHandshakeResp_flags] :: MsgBootloaderHandshakeResp -> !Word32 -- | Bootloader version number [_msgBootloaderHandshakeResp_version] :: MsgBootloaderHandshakeResp -> !Text msgBootloaderHandshakeResp :: Word16 -- | SBP class for message MSG_BOOTLOADER_JUMP_TO_APP (0x00B1). -- -- The host initiates the bootloader to jump to the application. data MsgBootloaderJumpToApp MsgBootloaderJumpToApp :: !Word8 -> MsgBootloaderJumpToApp -- | Ignored by the device [_msgBootloaderJumpToApp_jump] :: MsgBootloaderJumpToApp -> !Word8 msgBootloaderHandshakeResp_flags :: Lens' MsgBootloaderHandshakeResp Word32 msgBootloaderHandshakeResp_version :: Lens' MsgBootloaderHandshakeResp Text msgBootloaderJumpToApp :: Word16 -- | SBP class for message MSG_NAP_DEVICE_DNA_REQ (0x00DE). -- -- The device message from the host reads a unique device identifier from -- the SwiftNAP, an FPGA. The host requests the ID by sending a -- MSG_NAP_DEVICE_DNA_REQ message. The device responds with a -- MSG_NAP_DEVICE_DNA_RESP message with the device ID in the payload. -- Note that this ID is tied to the FPGA, and not related to the Piksi's -- serial number. data MsgNapDeviceDnaReq MsgNapDeviceDnaReq :: MsgNapDeviceDnaReq msgBootloaderJumpToApp_jump :: Iso' MsgBootloaderJumpToApp Word8 msgNapDeviceDnaReq :: Word16 -- | SBP class for message MSG_NAP_DEVICE_DNA_RESP (0x00DD). -- -- The device message from the host reads a unique device identifier from -- the SwiftNAP, an FPGA. The host requests the ID by sending a -- MSG_NAP_DEVICE_DNA_REQ message. The device responds with a -- MSG_NAP_DEVICE_DNA_RESP message with the device ID in the payload. -- Note that this ID is tied to the FPGA, and not related to the Piksi's -- serial number. data MsgNapDeviceDnaResp MsgNapDeviceDnaResp :: ![Word8] -> MsgNapDeviceDnaResp -- | 57-bit SwiftNAP FPGA Device ID. Remaining bits are padded on the -- right. [_msgNapDeviceDnaResp_dna] :: MsgNapDeviceDnaResp -> ![Word8] msgNapDeviceDnaResp :: Word16 -- | SBP class for message MSG_BOOTLOADER_HANDSHAKE_DEP_A (0x00B0). -- -- Deprecated. data MsgBootloaderHandshakeDepA MsgBootloaderHandshakeDepA :: ![Word8] -> MsgBootloaderHandshakeDepA -- | Version number string (not NULL terminated) [_msgBootloaderHandshakeDepA_handshake] :: MsgBootloaderHandshakeDepA -> ![Word8] msgNapDeviceDnaResp_dna :: Iso' MsgNapDeviceDnaResp [Word8] msgBootloaderHandshakeDepA :: Word16 msgBootloaderHandshakeDepA_handshake :: Iso' MsgBootloaderHandshakeDepA [Word8] instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Bootload.MsgBootloaderHandshakeDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Bootload.MsgBootloaderHandshakeDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Bootload.MsgBootloaderHandshakeDepA instance GHC.Classes.Eq SwiftNav.SBP.Bootload.MsgBootloaderHandshakeDepA instance GHC.Read.Read SwiftNav.SBP.Bootload.MsgBootloaderHandshakeDepA instance GHC.Show.Show SwiftNav.SBP.Bootload.MsgBootloaderHandshakeDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Bootload.MsgBootloaderHandshakeDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Bootload.MsgNapDeviceDnaResp instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Bootload.MsgNapDeviceDnaResp instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Bootload.MsgNapDeviceDnaResp instance GHC.Classes.Eq SwiftNav.SBP.Bootload.MsgNapDeviceDnaResp instance GHC.Read.Read SwiftNav.SBP.Bootload.MsgNapDeviceDnaResp instance GHC.Show.Show SwiftNav.SBP.Bootload.MsgNapDeviceDnaResp instance Data.Binary.Class.Binary SwiftNav.SBP.Bootload.MsgNapDeviceDnaResp instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Bootload.MsgNapDeviceDnaReq instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Bootload.MsgNapDeviceDnaReq instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Bootload.MsgNapDeviceDnaReq instance GHC.Classes.Eq SwiftNav.SBP.Bootload.MsgNapDeviceDnaReq instance GHC.Read.Read SwiftNav.SBP.Bootload.MsgNapDeviceDnaReq instance GHC.Show.Show SwiftNav.SBP.Bootload.MsgNapDeviceDnaReq instance Data.Binary.Class.Binary SwiftNav.SBP.Bootload.MsgNapDeviceDnaReq instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Bootload.MsgBootloaderJumpToApp instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Bootload.MsgBootloaderJumpToApp instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Bootload.MsgBootloaderJumpToApp instance GHC.Classes.Eq SwiftNav.SBP.Bootload.MsgBootloaderJumpToApp instance GHC.Read.Read SwiftNav.SBP.Bootload.MsgBootloaderJumpToApp instance GHC.Show.Show SwiftNav.SBP.Bootload.MsgBootloaderJumpToApp instance Data.Binary.Class.Binary SwiftNav.SBP.Bootload.MsgBootloaderJumpToApp instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Bootload.MsgBootloaderHandshakeResp instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Bootload.MsgBootloaderHandshakeResp instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Bootload.MsgBootloaderHandshakeResp instance GHC.Classes.Eq SwiftNav.SBP.Bootload.MsgBootloaderHandshakeResp instance GHC.Read.Read SwiftNav.SBP.Bootload.MsgBootloaderHandshakeResp instance GHC.Show.Show SwiftNav.SBP.Bootload.MsgBootloaderHandshakeResp instance Data.Binary.Class.Binary SwiftNav.SBP.Bootload.MsgBootloaderHandshakeResp instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Bootload.MsgBootloaderHandshakeReq instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Bootload.MsgBootloaderHandshakeReq instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Bootload.MsgBootloaderHandshakeReq instance GHC.Classes.Eq SwiftNav.SBP.Bootload.MsgBootloaderHandshakeReq instance GHC.Read.Read SwiftNav.SBP.Bootload.MsgBootloaderHandshakeReq instance GHC.Show.Show SwiftNav.SBP.Bootload.MsgBootloaderHandshakeReq instance Data.Binary.Class.Binary SwiftNav.SBP.Bootload.MsgBootloaderHandshakeReq -- | < Satellite acquisition messages from the device. > module SwiftNav.SBP.Acquisition -- | SBP class for message MSG_ACQ_RESULT (0x002F). -- -- This message describes the results from an attempted GPS signal -- acquisition search for a satellite PRN over a code phase/carrier -- frequency range. It contains the parameters of the point in the -- acquisition search space with the best carrier-to-noise (CN/0) ratio. data MsgAcqResult MsgAcqResult :: !Float -> !Float -> !Float -> !GnssSignal -> MsgAcqResult -- | CN/0 of best point [_msgAcqResult_cn0] :: MsgAcqResult -> !Float -- | Code phase of best point [_msgAcqResult_cp] :: MsgAcqResult -> !Float -- | Carrier frequency of best point [_msgAcqResult_cf] :: MsgAcqResult -> !Float -- | GNSS signal for which acquisition was attempted [_msgAcqResult_sid] :: MsgAcqResult -> !GnssSignal msgAcqResult :: Word16 -- | SBP class for message MSG_ACQ_RESULT_DEP_C (0x001F). -- -- Deprecated. data MsgAcqResultDepC MsgAcqResultDepC :: !Float -> !Float -> !Float -> !GnssSignalDep -> MsgAcqResultDepC -- | CN/0 of best point [_msgAcqResultDepC_cn0] :: MsgAcqResultDepC -> !Float -- | Code phase of best point [_msgAcqResultDepC_cp] :: MsgAcqResultDepC -> !Float -- | Carrier frequency of best point [_msgAcqResultDepC_cf] :: MsgAcqResultDepC -> !Float -- | GNSS signal for which acquisition was attempted [_msgAcqResultDepC_sid] :: MsgAcqResultDepC -> !GnssSignalDep msgAcqResult_cf :: Lens' MsgAcqResult Float msgAcqResult_cn0 :: Lens' MsgAcqResult Float msgAcqResult_cp :: Lens' MsgAcqResult Float msgAcqResult_sid :: Lens' MsgAcqResult GnssSignal msgAcqResultDepC :: Word16 -- | SBP class for message MSG_ACQ_RESULT_DEP_B (0x0014). -- -- Deprecated. data MsgAcqResultDepB MsgAcqResultDepB :: !Float -> !Float -> !Float -> !GnssSignalDep -> MsgAcqResultDepB -- | SNR of best point. Currently in arbitrary SNR points, but will be in -- units of dB Hz in a later revision of this message. [_msgAcqResultDepB_snr] :: MsgAcqResultDepB -> !Float -- | Code phase of best point [_msgAcqResultDepB_cp] :: MsgAcqResultDepB -> !Float -- | Carrier frequency of best point [_msgAcqResultDepB_cf] :: MsgAcqResultDepB -> !Float -- | GNSS signal for which acquisition was attempted [_msgAcqResultDepB_sid] :: MsgAcqResultDepB -> !GnssSignalDep msgAcqResultDepC_cf :: Lens' MsgAcqResultDepC Float msgAcqResultDepC_cn0 :: Lens' MsgAcqResultDepC Float msgAcqResultDepC_cp :: Lens' MsgAcqResultDepC Float msgAcqResultDepC_sid :: Lens' MsgAcqResultDepC GnssSignalDep msgAcqResultDepB :: Word16 -- | SBP class for message MSG_ACQ_RESULT_DEP_A (0x0015). -- -- Deprecated. data MsgAcqResultDepA MsgAcqResultDepA :: !Float -> !Float -> !Float -> !Word8 -> MsgAcqResultDepA -- | SNR of best point. Currently dimensionless, but will have units of dB -- Hz in the revision of this message. [_msgAcqResultDepA_snr] :: MsgAcqResultDepA -> !Float -- | Code phase of best point [_msgAcqResultDepA_cp] :: MsgAcqResultDepA -> !Float -- | Carrier frequency of best point [_msgAcqResultDepA_cf] :: MsgAcqResultDepA -> !Float -- | PRN-1 identifier of the satellite signal for which acquisition was -- attempted [_msgAcqResultDepA_prn] :: MsgAcqResultDepA -> !Word8 msgAcqResultDepB_cf :: Lens' MsgAcqResultDepB Float msgAcqResultDepB_cp :: Lens' MsgAcqResultDepB Float msgAcqResultDepB_sid :: Lens' MsgAcqResultDepB GnssSignalDep msgAcqResultDepB_snr :: Lens' MsgAcqResultDepB Float msgAcqResultDepA :: Word16 -- | AcqSvProfile. -- -- Profile for a specific SV for debugging purposes. The message -- describes SV profile during acquisition time. The message is used to -- debug and measure the performance. data AcqSvProfile AcqSvProfile :: !Word8 -> !Word8 -> !Word16 -> !Word8 -> !GnssSignal -> !Word16 -> !Word32 -> !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Word32 -> AcqSvProfile -- | SV search job type (deep, fallback, etc) [_acqSvProfile_job_type] :: AcqSvProfile -> !Word8 -- | Acquisition status 1 is Success, 0 is Failure [_acqSvProfile_status] :: AcqSvProfile -> !Word8 -- | CN0 value. Only valid if status is '1' [_acqSvProfile_cn0] :: AcqSvProfile -> !Word16 -- | Acquisition integration time [_acqSvProfile_int_time] :: AcqSvProfile -> !Word8 -- | GNSS signal for which acquisition was attempted [_acqSvProfile_sid] :: AcqSvProfile -> !GnssSignal -- | Acq frequency bin width [_acqSvProfile_bin_width] :: AcqSvProfile -> !Word16 -- | Timestamp of the job complete event [_acqSvProfile_timestamp] :: AcqSvProfile -> !Word32 -- | Time spent to search for sid.code [_acqSvProfile_time_spent] :: AcqSvProfile -> !Word32 -- | Doppler range lowest frequency [_acqSvProfile_cf_min] :: AcqSvProfile -> !Int32 -- | Doppler range highest frequency [_acqSvProfile_cf_max] :: AcqSvProfile -> !Int32 -- | Doppler value of detected peak. Only valid if status is '1' [_acqSvProfile_cf] :: AcqSvProfile -> !Int32 -- | Codephase of detected peak. Only valid if status is '1' [_acqSvProfile_cp] :: AcqSvProfile -> !Word32 msgAcqResultDepA_cf :: Lens' MsgAcqResultDepA Float msgAcqResultDepA_cp :: Lens' MsgAcqResultDepA Float msgAcqResultDepA_prn :: Lens' MsgAcqResultDepA Word8 msgAcqResultDepA_snr :: Lens' MsgAcqResultDepA Float -- | AcqSvProfileDep. -- -- Deprecated. data AcqSvProfileDep AcqSvProfileDep :: !Word8 -> !Word8 -> !Word16 -> !Word8 -> !GnssSignalDep -> !Word16 -> !Word32 -> !Word32 -> !Int32 -> !Int32 -> !Int32 -> !Word32 -> AcqSvProfileDep -- | SV search job type (deep, fallback, etc) [_acqSvProfileDep_job_type] :: AcqSvProfileDep -> !Word8 -- | Acquisition status 1 is Success, 0 is Failure [_acqSvProfileDep_status] :: AcqSvProfileDep -> !Word8 -- | CN0 value. Only valid if status is '1' [_acqSvProfileDep_cn0] :: AcqSvProfileDep -> !Word16 -- | Acquisition integration time [_acqSvProfileDep_int_time] :: AcqSvProfileDep -> !Word8 -- | GNSS signal for which acquisition was attempted [_acqSvProfileDep_sid] :: AcqSvProfileDep -> !GnssSignalDep -- | Acq frequency bin width [_acqSvProfileDep_bin_width] :: AcqSvProfileDep -> !Word16 -- | Timestamp of the job complete event [_acqSvProfileDep_timestamp] :: AcqSvProfileDep -> !Word32 -- | Time spent to search for sid.code [_acqSvProfileDep_time_spent] :: AcqSvProfileDep -> !Word32 -- | Doppler range lowest frequency [_acqSvProfileDep_cf_min] :: AcqSvProfileDep -> !Int32 -- | Doppler range highest frequency [_acqSvProfileDep_cf_max] :: AcqSvProfileDep -> !Int32 -- | Doppler value of detected peak. Only valid if status is '1' [_acqSvProfileDep_cf] :: AcqSvProfileDep -> !Int32 -- | Codephase of detected peak. Only valid if status is '1' [_acqSvProfileDep_cp] :: AcqSvProfileDep -> !Word32 acqSvProfile_bin_width :: Lens' AcqSvProfile Word16 acqSvProfile_cf :: Lens' AcqSvProfile Int32 acqSvProfile_cf_max :: Lens' AcqSvProfile Int32 acqSvProfile_cf_min :: Lens' AcqSvProfile Int32 acqSvProfile_cn0 :: Lens' AcqSvProfile Word16 acqSvProfile_cp :: Lens' AcqSvProfile Word32 acqSvProfile_int_time :: Lens' AcqSvProfile Word8 acqSvProfile_job_type :: Lens' AcqSvProfile Word8 acqSvProfile_sid :: Lens' AcqSvProfile GnssSignal acqSvProfile_status :: Lens' AcqSvProfile Word8 acqSvProfile_time_spent :: Lens' AcqSvProfile Word32 acqSvProfile_timestamp :: Lens' AcqSvProfile Word32 -- | SBP class for message MSG_ACQ_SV_PROFILE (0x002E). -- -- The message describes all SV profiles during acquisition time. The -- message is used to debug and measure the performance. data MsgAcqSvProfile MsgAcqSvProfile :: ![AcqSvProfile] -> MsgAcqSvProfile -- | SV profiles during acquisition time [_msgAcqSvProfile_acq_sv_profile] :: MsgAcqSvProfile -> ![AcqSvProfile] acqSvProfileDep_bin_width :: Lens' AcqSvProfileDep Word16 acqSvProfileDep_cf :: Lens' AcqSvProfileDep Int32 acqSvProfileDep_cf_max :: Lens' AcqSvProfileDep Int32 acqSvProfileDep_cf_min :: Lens' AcqSvProfileDep Int32 acqSvProfileDep_cn0 :: Lens' AcqSvProfileDep Word16 acqSvProfileDep_cp :: Lens' AcqSvProfileDep Word32 acqSvProfileDep_int_time :: Lens' AcqSvProfileDep Word8 acqSvProfileDep_job_type :: Lens' AcqSvProfileDep Word8 acqSvProfileDep_sid :: Lens' AcqSvProfileDep GnssSignalDep acqSvProfileDep_status :: Lens' AcqSvProfileDep Word8 acqSvProfileDep_time_spent :: Lens' AcqSvProfileDep Word32 acqSvProfileDep_timestamp :: Lens' AcqSvProfileDep Word32 msgAcqSvProfile :: Word16 -- | SBP class for message MSG_ACQ_SV_PROFILE_DEP (0x001E). -- -- Deprecated. data MsgAcqSvProfileDep MsgAcqSvProfileDep :: ![AcqSvProfileDep] -> MsgAcqSvProfileDep -- | SV profiles during acquisition time [_msgAcqSvProfileDep_acq_sv_profile] :: MsgAcqSvProfileDep -> ![AcqSvProfileDep] msgAcqSvProfile_acq_sv_profile :: Iso' MsgAcqSvProfile [AcqSvProfile] msgAcqSvProfileDep :: Word16 msgAcqSvProfileDep_acq_sv_profile :: Iso' MsgAcqSvProfileDep [AcqSvProfileDep] instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Acquisition.MsgAcqSvProfileDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Acquisition.MsgAcqSvProfileDep instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Acquisition.MsgAcqSvProfileDep instance GHC.Classes.Eq SwiftNav.SBP.Acquisition.MsgAcqSvProfileDep instance GHC.Read.Read SwiftNav.SBP.Acquisition.MsgAcqSvProfileDep instance GHC.Show.Show SwiftNav.SBP.Acquisition.MsgAcqSvProfileDep instance Data.Binary.Class.Binary SwiftNav.SBP.Acquisition.MsgAcqSvProfileDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Acquisition.MsgAcqSvProfile instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Acquisition.MsgAcqSvProfile instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Acquisition.MsgAcqSvProfile instance GHC.Classes.Eq SwiftNav.SBP.Acquisition.MsgAcqSvProfile instance GHC.Read.Read SwiftNav.SBP.Acquisition.MsgAcqSvProfile instance GHC.Show.Show SwiftNav.SBP.Acquisition.MsgAcqSvProfile instance Data.Binary.Class.Binary SwiftNav.SBP.Acquisition.MsgAcqSvProfile instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Acquisition.AcqSvProfileDep instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Acquisition.AcqSvProfileDep instance GHC.Classes.Eq SwiftNav.SBP.Acquisition.AcqSvProfileDep instance GHC.Read.Read SwiftNav.SBP.Acquisition.AcqSvProfileDep instance GHC.Show.Show SwiftNav.SBP.Acquisition.AcqSvProfileDep instance Data.Binary.Class.Binary SwiftNav.SBP.Acquisition.AcqSvProfileDep instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Acquisition.AcqSvProfile instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Acquisition.AcqSvProfile instance GHC.Classes.Eq SwiftNav.SBP.Acquisition.AcqSvProfile instance GHC.Read.Read SwiftNav.SBP.Acquisition.AcqSvProfile instance GHC.Show.Show SwiftNav.SBP.Acquisition.AcqSvProfile instance Data.Binary.Class.Binary SwiftNav.SBP.Acquisition.AcqSvProfile instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Acquisition.MsgAcqResultDepA instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Acquisition.MsgAcqResultDepA instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Acquisition.MsgAcqResultDepA instance GHC.Classes.Eq SwiftNav.SBP.Acquisition.MsgAcqResultDepA instance GHC.Read.Read SwiftNav.SBP.Acquisition.MsgAcqResultDepA instance GHC.Show.Show SwiftNav.SBP.Acquisition.MsgAcqResultDepA instance Data.Binary.Class.Binary SwiftNav.SBP.Acquisition.MsgAcqResultDepA instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Acquisition.MsgAcqResultDepB instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Acquisition.MsgAcqResultDepB instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Acquisition.MsgAcqResultDepB instance GHC.Classes.Eq SwiftNav.SBP.Acquisition.MsgAcqResultDepB instance GHC.Read.Read SwiftNav.SBP.Acquisition.MsgAcqResultDepB instance GHC.Show.Show SwiftNav.SBP.Acquisition.MsgAcqResultDepB instance Data.Binary.Class.Binary SwiftNav.SBP.Acquisition.MsgAcqResultDepB instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Acquisition.MsgAcqResultDepC instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Acquisition.MsgAcqResultDepC instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Acquisition.MsgAcqResultDepC instance GHC.Classes.Eq SwiftNav.SBP.Acquisition.MsgAcqResultDepC instance GHC.Read.Read SwiftNav.SBP.Acquisition.MsgAcqResultDepC instance GHC.Show.Show SwiftNav.SBP.Acquisition.MsgAcqResultDepC instance Data.Binary.Class.Binary SwiftNav.SBP.Acquisition.MsgAcqResultDepC instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Acquisition.MsgAcqResult instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Acquisition.MsgAcqResult instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Acquisition.MsgAcqResult instance GHC.Classes.Eq SwiftNav.SBP.Acquisition.MsgAcqResult instance GHC.Read.Read SwiftNav.SBP.Acquisition.MsgAcqResult instance GHC.Show.Show SwiftNav.SBP.Acquisition.MsgAcqResult instance Data.Binary.Class.Binary SwiftNav.SBP.Acquisition.MsgAcqResult -- | < Messages reserved for use by the user. > module SwiftNav.SBP.User -- | SBP class for message MSG_USER_DATA (0x0800). -- -- This message can contain any application specific user data up to a -- maximum length of 255 bytes per message. data MsgUserData MsgUserData :: ![Word8] -> MsgUserData -- | User data payload [_msgUserData_contents] :: MsgUserData -> ![Word8] msgUserData :: Word16 msgUserData_contents :: Iso' MsgUserData [Word8] instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.User.MsgUserData instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.User.MsgUserData instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.User.MsgUserData instance GHC.Classes.Eq SwiftNav.SBP.User.MsgUserData instance GHC.Read.Read SwiftNav.SBP.User.MsgUserData instance GHC.Show.Show SwiftNav.SBP.User.MsgUserData instance Data.Binary.Class.Binary SwiftNav.SBP.User.MsgUserData -- | < Messages from a vehicle. > module SwiftNav.SBP.Vehicle -- | SBP class for message MSG_ODOMETRY (0x0903). -- -- Message representing the x component of vehicle velocity in the user -- frame at the odometry reference point(s) specified by the user. The -- offset for the odometry reference point and the definition and origin -- of the user frame are defined through the device settings interface. -- There are 4 possible user-defined sources of this message which are -- labeled arbitrarily source 0 through 3. If using "processor time" time -- tags, the receiving end will expect a MSG_GNSS_TIME_OFFSET -- when a PVT fix becomes available to synchronise odometry measurements -- with GNSS. Processor time shall roll over to zero after one week. data MsgOdometry MsgOdometry :: !Word32 -> !Int32 -> !Word8 -> MsgOdometry -- | Time field representing either milliseconds in the GPS Week or local -- CPU time from the producing system in milliseconds. See the tow_source -- flag for the exact source of this timestamp. [_msgOdometry_tow] :: MsgOdometry -> !Word32 -- | The signed forward component of vehicle velocity. [_msgOdometry_velocity] :: MsgOdometry -> !Int32 -- | Status flags [_msgOdometry_flags] :: MsgOdometry -> !Word8 msgOdometry :: Word16 -- | SBP class for message MSG_WHEELTICK (0x0904). -- -- Message containing the accumulated distance travelled by a wheel -- located at an odometry reference point defined by the user. The offset -- for the odometry reference point and the definition and origin of the -- user frame are defined through the device settings interface. The -- source of this message is identified by the source field, which is an -- integer ranging from 0 to 255. The timestamp associated with this -- message should represent the time when the accumulated tick count -- reached the value given by the contents of this message as accurately -- as possible. If using "local CPU time" time tags, the receiving end -- will expect a MSG_GNSS_TIME_OFFSET when a PVT fix becomes -- available to synchronise wheeltick measurements with GNSS. Local CPU -- time shall roll over to zero after one week. data MsgWheeltick MsgWheeltick :: !Word64 -> !Word8 -> !Word8 -> !Int32 -> MsgWheeltick -- | Time field representing either microseconds since the last PPS, -- microseconds in the GPS Week or local CPU time from the producing -- system in microseconds. See the synch_type field for the exact meaning -- of this timestamp. [_msgWheeltick_time] :: MsgWheeltick -> !Word64 -- | Field indicating the type of timestamp contained in the time field. [_msgWheeltick_flags] :: MsgWheeltick -> !Word8 -- | ID of the sensor producing this message [_msgWheeltick_source] :: MsgWheeltick -> !Word8 -- | Free-running counter of the accumulated distance for this sensor. The -- counter should be incrementing if travelling into one direction and -- decrementing when travelling in the opposite direction. [_msgWheeltick_ticks] :: MsgWheeltick -> !Int32 msgOdometry_flags :: Lens' MsgOdometry Word8 msgOdometry_tow :: Lens' MsgOdometry Word32 msgOdometry_velocity :: Lens' MsgOdometry Int32 msgWheeltick :: Word16 msgWheeltick_flags :: Lens' MsgWheeltick Word8 msgWheeltick_source :: Lens' MsgWheeltick Word8 msgWheeltick_ticks :: Lens' MsgWheeltick Int32 msgWheeltick_time :: Lens' MsgWheeltick Word64 instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Vehicle.MsgWheeltick instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Vehicle.MsgWheeltick instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Vehicle.MsgWheeltick instance GHC.Classes.Eq SwiftNav.SBP.Vehicle.MsgWheeltick instance GHC.Read.Read SwiftNav.SBP.Vehicle.MsgWheeltick instance GHC.Show.Show SwiftNav.SBP.Vehicle.MsgWheeltick instance Data.Binary.Class.Binary SwiftNav.SBP.Vehicle.MsgWheeltick instance Data.Aeson.Types.ToJSON.ToJSON SwiftNav.SBP.Vehicle.MsgOdometry instance Data.Aeson.Types.FromJSON.FromJSON SwiftNav.SBP.Vehicle.MsgOdometry instance SwiftNav.SBP.Types.ToSBP SwiftNav.SBP.Vehicle.MsgOdometry instance GHC.Classes.Eq SwiftNav.SBP.Vehicle.MsgOdometry instance GHC.Read.Read SwiftNav.SBP.Vehicle.MsgOdometry instance GHC.Show.Show SwiftNav.SBP.Vehicle.MsgOdometry instance Data.Binary.Class.Binary SwiftNav.SBP.Vehicle.MsgOdometry -- | SBP message containers. module SwiftNav.SBP -- | An SBP message ADT composed of all defined SBP messages. -- -- Includes SBPMsgUnknown for valid SBP messages with undefined message -- types and SBPMsgBadCRC for SBP messages with invalid CRC checksums. data SBPMsg SBPMsgAcqResult :: MsgAcqResult -> Msg -> SBPMsg SBPMsgAcqResultDepA :: MsgAcqResultDepA -> Msg -> SBPMsg SBPMsgAcqResultDepB :: MsgAcqResultDepB -> Msg -> SBPMsg SBPMsgAcqResultDepC :: MsgAcqResultDepC -> Msg -> SBPMsg SBPMsgAcqSvProfile :: MsgAcqSvProfile -> Msg -> SBPMsg SBPMsgAcqSvProfileDep :: MsgAcqSvProfileDep -> Msg -> SBPMsg SBPMsgAgeCorrections :: MsgAgeCorrections -> Msg -> SBPMsg SBPMsgAlmanac :: MsgAlmanac -> Msg -> SBPMsg SBPMsgAlmanacGlo :: MsgAlmanacGlo -> Msg -> SBPMsg SBPMsgAlmanacGloDep :: MsgAlmanacGloDep -> Msg -> SBPMsg SBPMsgAlmanacGps :: MsgAlmanacGps -> Msg -> SBPMsg SBPMsgAlmanacGpsDep :: MsgAlmanacGpsDep -> Msg -> SBPMsg SBPMsgAngularRate :: MsgAngularRate -> Msg -> SBPMsg SBPMsgBasePosEcef :: MsgBasePosEcef -> Msg -> SBPMsg SBPMsgBasePosLlh :: MsgBasePosLlh -> Msg -> SBPMsg SBPMsgBaselineEcef :: MsgBaselineEcef -> Msg -> SBPMsg SBPMsgBaselineEcefDepA :: MsgBaselineEcefDepA -> Msg -> SBPMsg SBPMsgBaselineHeading :: MsgBaselineHeading -> Msg -> SBPMsg SBPMsgBaselineHeadingDepA :: MsgBaselineHeadingDepA -> Msg -> SBPMsg SBPMsgBaselineNed :: MsgBaselineNed -> Msg -> SBPMsg SBPMsgBaselineNedDepA :: MsgBaselineNedDepA -> Msg -> SBPMsg SBPMsgBootloaderHandshakeDepA :: MsgBootloaderHandshakeDepA -> Msg -> SBPMsg SBPMsgBootloaderHandshakeReq :: MsgBootloaderHandshakeReq -> Msg -> SBPMsg SBPMsgBootloaderHandshakeResp :: MsgBootloaderHandshakeResp -> Msg -> SBPMsg SBPMsgBootloaderJumpToApp :: MsgBootloaderJumpToApp -> Msg -> SBPMsg SBPMsgCellModemStatus :: MsgCellModemStatus -> Msg -> SBPMsg SBPMsgCommandOutput :: MsgCommandOutput -> Msg -> SBPMsg SBPMsgCommandReq :: MsgCommandReq -> Msg -> SBPMsg SBPMsgCommandResp :: MsgCommandResp -> Msg -> SBPMsg SBPMsgCsacTelemetry :: MsgCsacTelemetry -> Msg -> SBPMsg SBPMsgCsacTelemetryLabels :: MsgCsacTelemetryLabels -> Msg -> SBPMsg SBPMsgCwResults :: MsgCwResults -> Msg -> SBPMsg SBPMsgCwStart :: MsgCwStart -> Msg -> SBPMsg SBPMsgDeviceMonitor :: MsgDeviceMonitor -> Msg -> SBPMsg SBPMsgDgnssStatus :: MsgDgnssStatus -> Msg -> SBPMsg SBPMsgDops :: MsgDops -> Msg -> SBPMsg SBPMsgDopsDepA :: MsgDopsDepA -> Msg -> SBPMsg SBPMsgEphemerisBds :: MsgEphemerisBds -> Msg -> SBPMsg SBPMsgEphemerisDepA :: MsgEphemerisDepA -> Msg -> SBPMsg SBPMsgEphemerisDepB :: MsgEphemerisDepB -> Msg -> SBPMsg SBPMsgEphemerisDepC :: MsgEphemerisDepC -> Msg -> SBPMsg SBPMsgEphemerisDepD :: MsgEphemerisDepD -> Msg -> SBPMsg SBPMsgEphemerisGal :: MsgEphemerisGal -> Msg -> SBPMsg SBPMsgEphemerisGalDepA :: MsgEphemerisGalDepA -> Msg -> SBPMsg SBPMsgEphemerisGlo :: MsgEphemerisGlo -> Msg -> SBPMsg SBPMsgEphemerisGloDepA :: MsgEphemerisGloDepA -> Msg -> SBPMsg SBPMsgEphemerisGloDepB :: MsgEphemerisGloDepB -> Msg -> SBPMsg SBPMsgEphemerisGloDepC :: MsgEphemerisGloDepC -> Msg -> SBPMsg SBPMsgEphemerisGloDepD :: MsgEphemerisGloDepD -> Msg -> SBPMsg SBPMsgEphemerisGps :: MsgEphemerisGps -> Msg -> SBPMsg SBPMsgEphemerisGpsDepE :: MsgEphemerisGpsDepE -> Msg -> SBPMsg SBPMsgEphemerisGpsDepF :: MsgEphemerisGpsDepF -> Msg -> SBPMsg SBPMsgEphemerisQzss :: MsgEphemerisQzss -> Msg -> SBPMsg SBPMsgEphemerisSbas :: MsgEphemerisSbas -> Msg -> SBPMsg SBPMsgEphemerisSbasDepA :: MsgEphemerisSbasDepA -> Msg -> SBPMsg SBPMsgEphemerisSbasDepB :: MsgEphemerisSbasDepB -> Msg -> SBPMsg SBPMsgExtEvent :: MsgExtEvent -> Msg -> SBPMsg SBPMsgFileioConfigReq :: MsgFileioConfigReq -> Msg -> SBPMsg SBPMsgFileioConfigResp :: MsgFileioConfigResp -> Msg -> SBPMsg SBPMsgFileioReadDirReq :: MsgFileioReadDirReq -> Msg -> SBPMsg SBPMsgFileioReadDirResp :: MsgFileioReadDirResp -> Msg -> SBPMsg SBPMsgFileioReadReq :: MsgFileioReadReq -> Msg -> SBPMsg SBPMsgFileioReadResp :: MsgFileioReadResp -> Msg -> SBPMsg SBPMsgFileioRemove :: MsgFileioRemove -> Msg -> SBPMsg SBPMsgFileioWriteReq :: MsgFileioWriteReq -> Msg -> SBPMsg SBPMsgFileioWriteResp :: MsgFileioWriteResp -> Msg -> SBPMsg SBPMsgFlashDone :: MsgFlashDone -> Msg -> SBPMsg SBPMsgFlashErase :: MsgFlashErase -> Msg -> SBPMsg SBPMsgFlashProgram :: MsgFlashProgram -> Msg -> SBPMsg SBPMsgFlashReadReq :: MsgFlashReadReq -> Msg -> SBPMsg SBPMsgFlashReadResp :: MsgFlashReadResp -> Msg -> SBPMsg SBPMsgFrontEndGain :: MsgFrontEndGain -> Msg -> SBPMsg SBPMsgFwd :: MsgFwd -> Msg -> SBPMsg SBPMsgGloBiases :: MsgGloBiases -> Msg -> SBPMsg SBPMsgGnssCapb :: MsgGnssCapb -> Msg -> SBPMsg SBPMsgGnssTimeOffset :: MsgGnssTimeOffset -> Msg -> SBPMsg SBPMsgGpsLeapSecond :: MsgGpsLeapSecond -> Msg -> SBPMsg SBPMsgGpsTime :: MsgGpsTime -> Msg -> SBPMsg SBPMsgGpsTimeDepA :: MsgGpsTimeDepA -> Msg -> SBPMsg SBPMsgGpsTimeGnss :: MsgGpsTimeGnss -> Msg -> SBPMsg SBPMsgGroupDelay :: MsgGroupDelay -> Msg -> SBPMsg SBPMsgGroupDelayDepA :: MsgGroupDelayDepA -> Msg -> SBPMsg SBPMsgGroupDelayDepB :: MsgGroupDelayDepB -> Msg -> SBPMsg SBPMsgGroupMeta :: MsgGroupMeta -> Msg -> SBPMsg SBPMsgHeartbeat :: MsgHeartbeat -> Msg -> SBPMsg SBPMsgIarState :: MsgIarState -> Msg -> SBPMsg SBPMsgImuAux :: MsgImuAux -> Msg -> SBPMsg SBPMsgImuRaw :: MsgImuRaw -> Msg -> SBPMsg SBPMsgInitBaseDep :: MsgInitBaseDep -> Msg -> SBPMsg SBPMsgInsStatus :: MsgInsStatus -> Msg -> SBPMsg SBPMsgInsUpdates :: MsgInsUpdates -> Msg -> SBPMsg SBPMsgIono :: MsgIono -> Msg -> SBPMsg SBPMsgItrf :: MsgItrf -> Msg -> SBPMsg SBPMsgLinuxCpuState :: MsgLinuxCpuState -> Msg -> SBPMsg SBPMsgLinuxCpuStateDepA :: MsgLinuxCpuStateDepA -> Msg -> SBPMsg SBPMsgLinuxMemState :: MsgLinuxMemState -> Msg -> SBPMsg SBPMsgLinuxMemStateDepA :: MsgLinuxMemStateDepA -> Msg -> SBPMsg SBPMsgLinuxProcessFdCount :: MsgLinuxProcessFdCount -> Msg -> SBPMsg SBPMsgLinuxProcessFdSummary :: MsgLinuxProcessFdSummary -> Msg -> SBPMsg SBPMsgLinuxProcessSocketCounts :: MsgLinuxProcessSocketCounts -> Msg -> SBPMsg SBPMsgLinuxProcessSocketQueues :: MsgLinuxProcessSocketQueues -> Msg -> SBPMsg SBPMsgLinuxSocketUsage :: MsgLinuxSocketUsage -> Msg -> SBPMsg SBPMsgLinuxSysState :: MsgLinuxSysState -> Msg -> SBPMsg SBPMsgLinuxSysStateDepA :: MsgLinuxSysStateDepA -> Msg -> SBPMsg SBPMsgLog :: MsgLog -> Msg -> SBPMsg SBPMsgM25FlashWriteStatus :: MsgM25FlashWriteStatus -> Msg -> SBPMsg SBPMsgMagRaw :: MsgMagRaw -> Msg -> SBPMsg SBPMsgMaskSatellite :: MsgMaskSatellite -> Msg -> SBPMsg SBPMsgMaskSatelliteDep :: MsgMaskSatelliteDep -> Msg -> SBPMsg SBPMsgMeasurementState :: MsgMeasurementState -> Msg -> SBPMsg SBPMsgNapDeviceDnaReq :: MsgNapDeviceDnaReq -> Msg -> SBPMsg SBPMsgNapDeviceDnaResp :: MsgNapDeviceDnaResp -> Msg -> SBPMsg SBPMsgNdbEvent :: MsgNdbEvent -> Msg -> SBPMsg SBPMsgNetworkBandwidthUsage :: MsgNetworkBandwidthUsage -> Msg -> SBPMsg SBPMsgNetworkStateReq :: MsgNetworkStateReq -> Msg -> SBPMsg SBPMsgNetworkStateResp :: MsgNetworkStateResp -> Msg -> SBPMsg SBPMsgObs :: MsgObs -> Msg -> SBPMsg SBPMsgObsDepA :: MsgObsDepA -> Msg -> SBPMsg SBPMsgObsDepB :: MsgObsDepB -> Msg -> SBPMsg SBPMsgObsDepC :: MsgObsDepC -> Msg -> SBPMsg SBPMsgOdometry :: MsgOdometry -> Msg -> SBPMsg SBPMsgOrientEuler :: MsgOrientEuler -> Msg -> SBPMsg SBPMsgOrientQuat :: MsgOrientQuat -> Msg -> SBPMsg SBPMsgOsr :: MsgOsr -> Msg -> SBPMsg SBPMsgPosEcef :: MsgPosEcef -> Msg -> SBPMsg SBPMsgPosEcefCov :: MsgPosEcefCov -> Msg -> SBPMsg SBPMsgPosEcefCovGnss :: MsgPosEcefCovGnss -> Msg -> SBPMsg SBPMsgPosEcefDepA :: MsgPosEcefDepA -> Msg -> SBPMsg SBPMsgPosEcefGnss :: MsgPosEcefGnss -> Msg -> SBPMsg SBPMsgPosLlh :: MsgPosLlh -> Msg -> SBPMsg SBPMsgPosLlhAcc :: MsgPosLlhAcc -> Msg -> SBPMsg SBPMsgPosLlhCov :: MsgPosLlhCov -> Msg -> SBPMsg SBPMsgPosLlhCovGnss :: MsgPosLlhCovGnss -> Msg -> SBPMsg SBPMsgPosLlhDepA :: MsgPosLlhDepA -> Msg -> SBPMsg SBPMsgPosLlhGnss :: MsgPosLlhGnss -> Msg -> SBPMsg SBPMsgPpsTime :: MsgPpsTime -> Msg -> SBPMsg SBPMsgPrintDep :: MsgPrintDep -> Msg -> SBPMsg SBPMsgProtectionLevel :: MsgProtectionLevel -> Msg -> SBPMsg SBPMsgProtectionLevelDepA :: MsgProtectionLevelDepA -> Msg -> SBPMsg SBPMsgReset :: MsgReset -> Msg -> SBPMsg SBPMsgResetDep :: MsgResetDep -> Msg -> SBPMsg SBPMsgResetFilters :: MsgResetFilters -> Msg -> SBPMsg SBPMsgSbasRaw :: MsgSbasRaw -> Msg -> SBPMsg SBPMsgSensorAidEvent :: MsgSensorAidEvent -> Msg -> SBPMsg SBPMsgSetTime :: MsgSetTime -> Msg -> SBPMsg SBPMsgSettingsReadByIndexDone :: MsgSettingsReadByIndexDone -> Msg -> SBPMsg SBPMsgSettingsReadByIndexReq :: MsgSettingsReadByIndexReq -> Msg -> SBPMsg SBPMsgSettingsReadByIndexResp :: MsgSettingsReadByIndexResp -> Msg -> SBPMsg SBPMsgSettingsReadReq :: MsgSettingsReadReq -> Msg -> SBPMsg SBPMsgSettingsReadResp :: MsgSettingsReadResp -> Msg -> SBPMsg SBPMsgSettingsRegister :: MsgSettingsRegister -> Msg -> SBPMsg SBPMsgSettingsRegisterResp :: MsgSettingsRegisterResp -> Msg -> SBPMsg SBPMsgSettingsSave :: MsgSettingsSave -> Msg -> SBPMsg SBPMsgSettingsWrite :: MsgSettingsWrite -> Msg -> SBPMsg SBPMsgSettingsWriteResp :: MsgSettingsWriteResp -> Msg -> SBPMsg SBPMsgSolnMeta :: MsgSolnMeta -> Msg -> SBPMsg SBPMsgSolnMetaDepA :: MsgSolnMetaDepA -> Msg -> SBPMsg SBPMsgSpecan :: MsgSpecan -> Msg -> SBPMsg SBPMsgSpecanDep :: MsgSpecanDep -> Msg -> SBPMsg SBPMsgSsrCodeBiases :: MsgSsrCodeBiases -> Msg -> SBPMsg SBPMsgSsrCodePhaseBiasesBounds :: MsgSsrCodePhaseBiasesBounds -> Msg -> SBPMsg SBPMsgSsrFlagHighLevel :: MsgSsrFlagHighLevel -> Msg -> SBPMsg SBPMsgSsrFlagIonoGridPointSatLos :: MsgSsrFlagIonoGridPointSatLos -> Msg -> SBPMsg SBPMsgSsrFlagIonoGridPoints :: MsgSsrFlagIonoGridPoints -> Msg -> SBPMsg SBPMsgSsrFlagIonoTileSatLos :: MsgSsrFlagIonoTileSatLos -> Msg -> SBPMsg SBPMsgSsrFlagSatellites :: MsgSsrFlagSatellites -> Msg -> SBPMsg SBPMsgSsrFlagTropoGridPoints :: MsgSsrFlagTropoGridPoints -> Msg -> SBPMsg SBPMsgSsrGridDefinitionDepA :: MsgSsrGridDefinitionDepA -> Msg -> SBPMsg SBPMsgSsrGriddedCorrection :: MsgSsrGriddedCorrection -> Msg -> SBPMsg SBPMsgSsrGriddedCorrectionBounds :: MsgSsrGriddedCorrectionBounds -> Msg -> SBPMsg SBPMsgSsrGriddedCorrectionDepA :: MsgSsrGriddedCorrectionDepA -> Msg -> SBPMsg SBPMsgSsrGriddedCorrectionNoStdDepA :: MsgSsrGriddedCorrectionNoStdDepA -> Msg -> SBPMsg SBPMsgSsrOrbitClock :: MsgSsrOrbitClock -> Msg -> SBPMsg SBPMsgSsrOrbitClockBounds :: MsgSsrOrbitClockBounds -> Msg -> SBPMsg SBPMsgSsrOrbitClockBoundsDegradation :: MsgSsrOrbitClockBoundsDegradation -> Msg -> SBPMsg SBPMsgSsrOrbitClockDepA :: MsgSsrOrbitClockDepA -> Msg -> SBPMsg SBPMsgSsrPhaseBiases :: MsgSsrPhaseBiases -> Msg -> SBPMsg SBPMsgSsrSatelliteApc :: MsgSsrSatelliteApc -> Msg -> SBPMsg SBPMsgSsrStecCorrection :: MsgSsrStecCorrection -> Msg -> SBPMsg SBPMsgSsrStecCorrectionDep :: MsgSsrStecCorrectionDep -> Msg -> SBPMsg SBPMsgSsrStecCorrectionDepA :: MsgSsrStecCorrectionDepA -> Msg -> SBPMsg SBPMsgSsrTileDefinition :: MsgSsrTileDefinition -> Msg -> SBPMsg SBPMsgSsrTileDefinitionDep :: MsgSsrTileDefinitionDep -> Msg -> SBPMsg SBPMsgStartup :: MsgStartup -> Msg -> SBPMsg SBPMsgStatusJournal :: MsgStatusJournal -> Msg -> SBPMsg SBPMsgStatusReport :: MsgStatusReport -> Msg -> SBPMsg SBPMsgStmFlashLockSector :: MsgStmFlashLockSector -> Msg -> SBPMsg SBPMsgStmFlashUnlockSector :: MsgStmFlashUnlockSector -> Msg -> SBPMsg SBPMsgStmUniqueIdReq :: MsgStmUniqueIdReq -> Msg -> SBPMsg SBPMsgStmUniqueIdResp :: MsgStmUniqueIdResp -> Msg -> SBPMsg SBPMsgSvAzEl :: MsgSvAzEl -> Msg -> SBPMsg SBPMsgSvConfigurationGpsDep :: MsgSvConfigurationGpsDep -> Msg -> SBPMsg SBPMsgThreadState :: MsgThreadState -> Msg -> SBPMsg SBPMsgTrackingIq :: MsgTrackingIq -> Msg -> SBPMsg SBPMsgTrackingIqDepA :: MsgTrackingIqDepA -> Msg -> SBPMsg SBPMsgTrackingIqDepB :: MsgTrackingIqDepB -> Msg -> SBPMsg SBPMsgTrackingState :: MsgTrackingState -> Msg -> SBPMsg SBPMsgTrackingStateDepA :: MsgTrackingStateDepA -> Msg -> SBPMsg SBPMsgTrackingStateDepB :: MsgTrackingStateDepB -> Msg -> SBPMsg SBPMsgTrackingStateDetailedDep :: MsgTrackingStateDetailedDep -> Msg -> SBPMsg SBPMsgTrackingStateDetailedDepA :: MsgTrackingStateDetailedDepA -> Msg -> SBPMsg SBPMsgUartState :: MsgUartState -> Msg -> SBPMsg SBPMsgUartStateDepa :: MsgUartStateDepa -> Msg -> SBPMsg SBPMsgUserData :: MsgUserData -> Msg -> SBPMsg SBPMsgUtcTime :: MsgUtcTime -> Msg -> SBPMsg SBPMsgUtcTimeGnss :: MsgUtcTimeGnss -> Msg -> SBPMsg SBPMsgVelBody :: MsgVelBody -> Msg -> SBPMsg SBPMsgVelCog :: MsgVelCog -> Msg -> SBPMsg SBPMsgVelEcef :: MsgVelEcef -> Msg -> SBPMsg SBPMsgVelEcefCov :: MsgVelEcefCov -> Msg -> SBPMsg SBPMsgVelEcefCovGnss :: MsgVelEcefCovGnss -> Msg -> SBPMsg SBPMsgVelEcefDepA :: MsgVelEcefDepA -> Msg -> SBPMsg SBPMsgVelEcefGnss :: MsgVelEcefGnss -> Msg -> SBPMsg SBPMsgVelNed :: MsgVelNed -> Msg -> SBPMsg SBPMsgVelNedCov :: MsgVelNedCov -> Msg -> SBPMsg SBPMsgVelNedCovGnss :: MsgVelNedCovGnss -> Msg -> SBPMsg SBPMsgVelNedDepA :: MsgVelNedDepA -> Msg -> SBPMsg SBPMsgVelNedGnss :: MsgVelNedGnss -> Msg -> SBPMsg SBPMsgWheeltick :: MsgWheeltick -> Msg -> SBPMsg SBPMsgBadCrc :: Msg -> SBPMsg SBPMsgUnknown :: Msg -> SBPMsg _SBPMsgAcqResult :: Prism' SBPMsg (MsgAcqResult, Msg) _SBPMsgAcqResultDepA :: Prism' SBPMsg (MsgAcqResultDepA, Msg) _SBPMsgAcqResultDepB :: Prism' SBPMsg (MsgAcqResultDepB, Msg) _SBPMsgAcqResultDepC :: Prism' SBPMsg (MsgAcqResultDepC, Msg) _SBPMsgAcqSvProfile :: Prism' SBPMsg (MsgAcqSvProfile, Msg) _SBPMsgAcqSvProfileDep :: Prism' SBPMsg (MsgAcqSvProfileDep, Msg) _SBPMsgAgeCorrections :: Prism' SBPMsg (MsgAgeCorrections, Msg) _SBPMsgAlmanac :: Prism' SBPMsg (MsgAlmanac, Msg) _SBPMsgAlmanacGlo :: Prism' SBPMsg (MsgAlmanacGlo, Msg) _SBPMsgAlmanacGloDep :: Prism' SBPMsg (MsgAlmanacGloDep, Msg) _SBPMsgAlmanacGps :: Prism' SBPMsg (MsgAlmanacGps, Msg) _SBPMsgAlmanacGpsDep :: Prism' SBPMsg (MsgAlmanacGpsDep, Msg) _SBPMsgAngularRate :: Prism' SBPMsg (MsgAngularRate, Msg) _SBPMsgBasePosEcef :: Prism' SBPMsg (MsgBasePosEcef, Msg) _SBPMsgBasePosLlh :: Prism' SBPMsg (MsgBasePosLlh, Msg) _SBPMsgBaselineEcef :: Prism' SBPMsg (MsgBaselineEcef, Msg) _SBPMsgBaselineEcefDepA :: Prism' SBPMsg (MsgBaselineEcefDepA, Msg) _SBPMsgBaselineHeading :: Prism' SBPMsg (MsgBaselineHeading, Msg) _SBPMsgBaselineHeadingDepA :: Prism' SBPMsg (MsgBaselineHeadingDepA, Msg) _SBPMsgBaselineNed :: Prism' SBPMsg (MsgBaselineNed, Msg) _SBPMsgBaselineNedDepA :: Prism' SBPMsg (MsgBaselineNedDepA, Msg) _SBPMsgBootloaderHandshakeDepA :: Prism' SBPMsg (MsgBootloaderHandshakeDepA, Msg) _SBPMsgBootloaderHandshakeReq :: Prism' SBPMsg (MsgBootloaderHandshakeReq, Msg) _SBPMsgBootloaderHandshakeResp :: Prism' SBPMsg (MsgBootloaderHandshakeResp, Msg) _SBPMsgBootloaderJumpToApp :: Prism' SBPMsg (MsgBootloaderJumpToApp, Msg) _SBPMsgCellModemStatus :: Prism' SBPMsg (MsgCellModemStatus, Msg) _SBPMsgCommandOutput :: Prism' SBPMsg (MsgCommandOutput, Msg) _SBPMsgCommandReq :: Prism' SBPMsg (MsgCommandReq, Msg) _SBPMsgCommandResp :: Prism' SBPMsg (MsgCommandResp, Msg) _SBPMsgCsacTelemetry :: Prism' SBPMsg (MsgCsacTelemetry, Msg) _SBPMsgCsacTelemetryLabels :: Prism' SBPMsg (MsgCsacTelemetryLabels, Msg) _SBPMsgCwResults :: Prism' SBPMsg (MsgCwResults, Msg) _SBPMsgCwStart :: Prism' SBPMsg (MsgCwStart, Msg) _SBPMsgDeviceMonitor :: Prism' SBPMsg (MsgDeviceMonitor, Msg) _SBPMsgDgnssStatus :: Prism' SBPMsg (MsgDgnssStatus, Msg) _SBPMsgDops :: Prism' SBPMsg (MsgDops, Msg) _SBPMsgDopsDepA :: Prism' SBPMsg (MsgDopsDepA, Msg) _SBPMsgEphemerisBds :: Prism' SBPMsg (MsgEphemerisBds, Msg) _SBPMsgEphemerisDepA :: Prism' SBPMsg (MsgEphemerisDepA, Msg) _SBPMsgEphemerisDepB :: Prism' SBPMsg (MsgEphemerisDepB, Msg) _SBPMsgEphemerisDepC :: Prism' SBPMsg (MsgEphemerisDepC, Msg) _SBPMsgEphemerisDepD :: Prism' SBPMsg (MsgEphemerisDepD, Msg) _SBPMsgEphemerisGal :: Prism' SBPMsg (MsgEphemerisGal, Msg) _SBPMsgEphemerisGalDepA :: Prism' SBPMsg (MsgEphemerisGalDepA, Msg) _SBPMsgEphemerisGlo :: Prism' SBPMsg (MsgEphemerisGlo, Msg) _SBPMsgEphemerisGloDepA :: Prism' SBPMsg (MsgEphemerisGloDepA, Msg) _SBPMsgEphemerisGloDepB :: Prism' SBPMsg (MsgEphemerisGloDepB, Msg) _SBPMsgEphemerisGloDepC :: Prism' SBPMsg (MsgEphemerisGloDepC, Msg) _SBPMsgEphemerisGloDepD :: Prism' SBPMsg (MsgEphemerisGloDepD, Msg) _SBPMsgEphemerisGps :: Prism' SBPMsg (MsgEphemerisGps, Msg) _SBPMsgEphemerisGpsDepE :: Prism' SBPMsg (MsgEphemerisGpsDepE, Msg) _SBPMsgEphemerisGpsDepF :: Prism' SBPMsg (MsgEphemerisGpsDepF, Msg) _SBPMsgEphemerisQzss :: Prism' SBPMsg (MsgEphemerisQzss, Msg) _SBPMsgEphemerisSbas :: Prism' SBPMsg (MsgEphemerisSbas, Msg) _SBPMsgEphemerisSbasDepA :: Prism' SBPMsg (MsgEphemerisSbasDepA, Msg) _SBPMsgEphemerisSbasDepB :: Prism' SBPMsg (MsgEphemerisSbasDepB, Msg) _SBPMsgExtEvent :: Prism' SBPMsg (MsgExtEvent, Msg) _SBPMsgFileioConfigReq :: Prism' SBPMsg (MsgFileioConfigReq, Msg) _SBPMsgFileioConfigResp :: Prism' SBPMsg (MsgFileioConfigResp, Msg) _SBPMsgFileioReadDirReq :: Prism' SBPMsg (MsgFileioReadDirReq, Msg) _SBPMsgFileioReadDirResp :: Prism' SBPMsg (MsgFileioReadDirResp, Msg) _SBPMsgFileioReadReq :: Prism' SBPMsg (MsgFileioReadReq, Msg) _SBPMsgFileioReadResp :: Prism' SBPMsg (MsgFileioReadResp, Msg) _SBPMsgFileioRemove :: Prism' SBPMsg (MsgFileioRemove, Msg) _SBPMsgFileioWriteReq :: Prism' SBPMsg (MsgFileioWriteReq, Msg) _SBPMsgFileioWriteResp :: Prism' SBPMsg (MsgFileioWriteResp, Msg) _SBPMsgFlashDone :: Prism' SBPMsg (MsgFlashDone, Msg) _SBPMsgFlashErase :: Prism' SBPMsg (MsgFlashErase, Msg) _SBPMsgFlashProgram :: Prism' SBPMsg (MsgFlashProgram, Msg) _SBPMsgFlashReadReq :: Prism' SBPMsg (MsgFlashReadReq, Msg) _SBPMsgFlashReadResp :: Prism' SBPMsg (MsgFlashReadResp, Msg) _SBPMsgFrontEndGain :: Prism' SBPMsg (MsgFrontEndGain, Msg) _SBPMsgFwd :: Prism' SBPMsg (MsgFwd, Msg) _SBPMsgGloBiases :: Prism' SBPMsg (MsgGloBiases, Msg) _SBPMsgGnssCapb :: Prism' SBPMsg (MsgGnssCapb, Msg) _SBPMsgGnssTimeOffset :: Prism' SBPMsg (MsgGnssTimeOffset, Msg) _SBPMsgGpsLeapSecond :: Prism' SBPMsg (MsgGpsLeapSecond, Msg) _SBPMsgGpsTime :: Prism' SBPMsg (MsgGpsTime, Msg) _SBPMsgGpsTimeDepA :: Prism' SBPMsg (MsgGpsTimeDepA, Msg) _SBPMsgGpsTimeGnss :: Prism' SBPMsg (MsgGpsTimeGnss, Msg) _SBPMsgGroupDelay :: Prism' SBPMsg (MsgGroupDelay, Msg) _SBPMsgGroupDelayDepA :: Prism' SBPMsg (MsgGroupDelayDepA, Msg) _SBPMsgGroupDelayDepB :: Prism' SBPMsg (MsgGroupDelayDepB, Msg) _SBPMsgGroupMeta :: Prism' SBPMsg (MsgGroupMeta, Msg) _SBPMsgHeartbeat :: Prism' SBPMsg (MsgHeartbeat, Msg) _SBPMsgIarState :: Prism' SBPMsg (MsgIarState, Msg) _SBPMsgImuAux :: Prism' SBPMsg (MsgImuAux, Msg) _SBPMsgImuRaw :: Prism' SBPMsg (MsgImuRaw, Msg) _SBPMsgInitBaseDep :: Prism' SBPMsg (MsgInitBaseDep, Msg) _SBPMsgInsStatus :: Prism' SBPMsg (MsgInsStatus, Msg) _SBPMsgInsUpdates :: Prism' SBPMsg (MsgInsUpdates, Msg) _SBPMsgIono :: Prism' SBPMsg (MsgIono, Msg) _SBPMsgItrf :: Prism' SBPMsg (MsgItrf, Msg) _SBPMsgLinuxCpuState :: Prism' SBPMsg (MsgLinuxCpuState, Msg) _SBPMsgLinuxCpuStateDepA :: Prism' SBPMsg (MsgLinuxCpuStateDepA, Msg) _SBPMsgLinuxMemState :: Prism' SBPMsg (MsgLinuxMemState, Msg) _SBPMsgLinuxMemStateDepA :: Prism' SBPMsg (MsgLinuxMemStateDepA, Msg) _SBPMsgLinuxProcessFdCount :: Prism' SBPMsg (MsgLinuxProcessFdCount, Msg) _SBPMsgLinuxProcessFdSummary :: Prism' SBPMsg (MsgLinuxProcessFdSummary, Msg) _SBPMsgLinuxProcessSocketCounts :: Prism' SBPMsg (MsgLinuxProcessSocketCounts, Msg) _SBPMsgLinuxProcessSocketQueues :: Prism' SBPMsg (MsgLinuxProcessSocketQueues, Msg) _SBPMsgLinuxSocketUsage :: Prism' SBPMsg (MsgLinuxSocketUsage, Msg) _SBPMsgLinuxSysState :: Prism' SBPMsg (MsgLinuxSysState, Msg) _SBPMsgLinuxSysStateDepA :: Prism' SBPMsg (MsgLinuxSysStateDepA, Msg) _SBPMsgLog :: Prism' SBPMsg (MsgLog, Msg) _SBPMsgM25FlashWriteStatus :: Prism' SBPMsg (MsgM25FlashWriteStatus, Msg) _SBPMsgMagRaw :: Prism' SBPMsg (MsgMagRaw, Msg) _SBPMsgMaskSatellite :: Prism' SBPMsg (MsgMaskSatellite, Msg) _SBPMsgMaskSatelliteDep :: Prism' SBPMsg (MsgMaskSatelliteDep, Msg) _SBPMsgMeasurementState :: Prism' SBPMsg (MsgMeasurementState, Msg) _SBPMsgNapDeviceDnaReq :: Prism' SBPMsg (MsgNapDeviceDnaReq, Msg) _SBPMsgNapDeviceDnaResp :: Prism' SBPMsg (MsgNapDeviceDnaResp, Msg) _SBPMsgNdbEvent :: Prism' SBPMsg (MsgNdbEvent, Msg) _SBPMsgNetworkBandwidthUsage :: Prism' SBPMsg (MsgNetworkBandwidthUsage, Msg) _SBPMsgNetworkStateReq :: Prism' SBPMsg (MsgNetworkStateReq, Msg) _SBPMsgNetworkStateResp :: Prism' SBPMsg (MsgNetworkStateResp, Msg) _SBPMsgObs :: Prism' SBPMsg (MsgObs, Msg) _SBPMsgObsDepA :: Prism' SBPMsg (MsgObsDepA, Msg) _SBPMsgObsDepB :: Prism' SBPMsg (MsgObsDepB, Msg) _SBPMsgObsDepC :: Prism' SBPMsg (MsgObsDepC, Msg) _SBPMsgOdometry :: Prism' SBPMsg (MsgOdometry, Msg) _SBPMsgOrientEuler :: Prism' SBPMsg (MsgOrientEuler, Msg) _SBPMsgOrientQuat :: Prism' SBPMsg (MsgOrientQuat, Msg) _SBPMsgOsr :: Prism' SBPMsg (MsgOsr, Msg) _SBPMsgPosEcef :: Prism' SBPMsg (MsgPosEcef, Msg) _SBPMsgPosEcefCov :: Prism' SBPMsg (MsgPosEcefCov, Msg) _SBPMsgPosEcefCovGnss :: Prism' SBPMsg (MsgPosEcefCovGnss, Msg) _SBPMsgPosEcefDepA :: Prism' SBPMsg (MsgPosEcefDepA, Msg) _SBPMsgPosEcefGnss :: Prism' SBPMsg (MsgPosEcefGnss, Msg) _SBPMsgPosLlh :: Prism' SBPMsg (MsgPosLlh, Msg) _SBPMsgPosLlhAcc :: Prism' SBPMsg (MsgPosLlhAcc, Msg) _SBPMsgPosLlhCov :: Prism' SBPMsg (MsgPosLlhCov, Msg) _SBPMsgPosLlhCovGnss :: Prism' SBPMsg (MsgPosLlhCovGnss, Msg) _SBPMsgPosLlhDepA :: Prism' SBPMsg (MsgPosLlhDepA, Msg) _SBPMsgPosLlhGnss :: Prism' SBPMsg (MsgPosLlhGnss, Msg) _SBPMsgPpsTime :: Prism' SBPMsg (MsgPpsTime, Msg) _SBPMsgPrintDep :: Prism' SBPMsg (MsgPrintDep, Msg) _SBPMsgProtectionLevel :: Prism' SBPMsg (MsgProtectionLevel, Msg) _SBPMsgProtectionLevelDepA :: Prism' SBPMsg (MsgProtectionLevelDepA, Msg) _SBPMsgReset :: Prism' SBPMsg (MsgReset, Msg) _SBPMsgResetDep :: Prism' SBPMsg (MsgResetDep, Msg) _SBPMsgResetFilters :: Prism' SBPMsg (MsgResetFilters, Msg) _SBPMsgSbasRaw :: Prism' SBPMsg (MsgSbasRaw, Msg) _SBPMsgSensorAidEvent :: Prism' SBPMsg (MsgSensorAidEvent, Msg) _SBPMsgSetTime :: Prism' SBPMsg (MsgSetTime, Msg) _SBPMsgSettingsReadByIndexDone :: Prism' SBPMsg (MsgSettingsReadByIndexDone, Msg) _SBPMsgSettingsReadByIndexReq :: Prism' SBPMsg (MsgSettingsReadByIndexReq, Msg) _SBPMsgSettingsReadByIndexResp :: Prism' SBPMsg (MsgSettingsReadByIndexResp, Msg) _SBPMsgSettingsReadReq :: Prism' SBPMsg (MsgSettingsReadReq, Msg) _SBPMsgSettingsReadResp :: Prism' SBPMsg (MsgSettingsReadResp, Msg) _SBPMsgSettingsRegister :: Prism' SBPMsg (MsgSettingsRegister, Msg) _SBPMsgSettingsRegisterResp :: Prism' SBPMsg (MsgSettingsRegisterResp, Msg) _SBPMsgSettingsSave :: Prism' SBPMsg (MsgSettingsSave, Msg) _SBPMsgSettingsWrite :: Prism' SBPMsg (MsgSettingsWrite, Msg) _SBPMsgSettingsWriteResp :: Prism' SBPMsg (MsgSettingsWriteResp, Msg) _SBPMsgSolnMeta :: Prism' SBPMsg (MsgSolnMeta, Msg) _SBPMsgSolnMetaDepA :: Prism' SBPMsg (MsgSolnMetaDepA, Msg) _SBPMsgSpecan :: Prism' SBPMsg (MsgSpecan, Msg) _SBPMsgSpecanDep :: Prism' SBPMsg (MsgSpecanDep, Msg) _SBPMsgSsrCodeBiases :: Prism' SBPMsg (MsgSsrCodeBiases, Msg) _SBPMsgSsrCodePhaseBiasesBounds :: Prism' SBPMsg (MsgSsrCodePhaseBiasesBounds, Msg) _SBPMsgSsrFlagHighLevel :: Prism' SBPMsg (MsgSsrFlagHighLevel, Msg) _SBPMsgSsrFlagIonoGridPointSatLos :: Prism' SBPMsg (MsgSsrFlagIonoGridPointSatLos, Msg) _SBPMsgSsrFlagIonoGridPoints :: Prism' SBPMsg (MsgSsrFlagIonoGridPoints, Msg) _SBPMsgSsrFlagIonoTileSatLos :: Prism' SBPMsg (MsgSsrFlagIonoTileSatLos, Msg) _SBPMsgSsrFlagSatellites :: Prism' SBPMsg (MsgSsrFlagSatellites, Msg) _SBPMsgSsrFlagTropoGridPoints :: Prism' SBPMsg (MsgSsrFlagTropoGridPoints, Msg) _SBPMsgSsrGridDefinitionDepA :: Prism' SBPMsg (MsgSsrGridDefinitionDepA, Msg) _SBPMsgSsrGriddedCorrection :: Prism' SBPMsg (MsgSsrGriddedCorrection, Msg) _SBPMsgSsrGriddedCorrectionBounds :: Prism' SBPMsg (MsgSsrGriddedCorrectionBounds, Msg) _SBPMsgSsrGriddedCorrectionDepA :: Prism' SBPMsg (MsgSsrGriddedCorrectionDepA, Msg) _SBPMsgSsrGriddedCorrectionNoStdDepA :: Prism' SBPMsg (MsgSsrGriddedCorrectionNoStdDepA, Msg) _SBPMsgSsrOrbitClock :: Prism' SBPMsg (MsgSsrOrbitClock, Msg) _SBPMsgSsrOrbitClockBounds :: Prism' SBPMsg (MsgSsrOrbitClockBounds, Msg) _SBPMsgSsrOrbitClockBoundsDegradation :: Prism' SBPMsg (MsgSsrOrbitClockBoundsDegradation, Msg) _SBPMsgSsrOrbitClockDepA :: Prism' SBPMsg (MsgSsrOrbitClockDepA, Msg) _SBPMsgSsrPhaseBiases :: Prism' SBPMsg (MsgSsrPhaseBiases, Msg) _SBPMsgSsrSatelliteApc :: Prism' SBPMsg (MsgSsrSatelliteApc, Msg) _SBPMsgSsrStecCorrection :: Prism' SBPMsg (MsgSsrStecCorrection, Msg) _SBPMsgSsrStecCorrectionDep :: Prism' SBPMsg (MsgSsrStecCorrectionDep, Msg) _SBPMsgSsrStecCorrectionDepA :: Prism' SBPMsg (MsgSsrStecCorrectionDepA, Msg) _SBPMsgSsrTileDefinition :: Prism' SBPMsg (MsgSsrTileDefinition, Msg) _SBPMsgSsrTileDefinitionDep :: Prism' SBPMsg (MsgSsrTileDefinitionDep, Msg) _SBPMsgStartup :: Prism' SBPMsg (MsgStartup, Msg) _SBPMsgStatusJournal :: Prism' SBPMsg (MsgStatusJournal, Msg) _SBPMsgStatusReport :: Prism' SBPMsg (MsgStatusReport, Msg) _SBPMsgStmFlashLockSector :: Prism' SBPMsg (MsgStmFlashLockSector, Msg) _SBPMsgStmFlashUnlockSector :: Prism' SBPMsg (MsgStmFlashUnlockSector, Msg) _SBPMsgStmUniqueIdReq :: Prism' SBPMsg (MsgStmUniqueIdReq, Msg) _SBPMsgStmUniqueIdResp :: Prism' SBPMsg (MsgStmUniqueIdResp, Msg) _SBPMsgSvAzEl :: Prism' SBPMsg (MsgSvAzEl, Msg) _SBPMsgSvConfigurationGpsDep :: Prism' SBPMsg (MsgSvConfigurationGpsDep, Msg) _SBPMsgThreadState :: Prism' SBPMsg (MsgThreadState, Msg) _SBPMsgTrackingIq :: Prism' SBPMsg (MsgTrackingIq, Msg) _SBPMsgTrackingIqDepA :: Prism' SBPMsg (MsgTrackingIqDepA, Msg) _SBPMsgTrackingIqDepB :: Prism' SBPMsg (MsgTrackingIqDepB, Msg) _SBPMsgTrackingState :: Prism' SBPMsg (MsgTrackingState, Msg) _SBPMsgTrackingStateDepA :: Prism' SBPMsg (MsgTrackingStateDepA, Msg) _SBPMsgTrackingStateDepB :: Prism' SBPMsg (MsgTrackingStateDepB, Msg) _SBPMsgTrackingStateDetailedDep :: Prism' SBPMsg (MsgTrackingStateDetailedDep, Msg) _SBPMsgTrackingStateDetailedDepA :: Prism' SBPMsg (MsgTrackingStateDetailedDepA, Msg) _SBPMsgUartState :: Prism' SBPMsg (MsgUartState, Msg) _SBPMsgUartStateDepa :: Prism' SBPMsg (MsgUartStateDepa, Msg) _SBPMsgUserData :: Prism' SBPMsg (MsgUserData, Msg) _SBPMsgUtcTime :: Prism' SBPMsg (MsgUtcTime, Msg) _SBPMsgUtcTimeGnss :: Prism' SBPMsg (MsgUtcTimeGnss, Msg) _SBPMsgVelBody :: Prism' SBPMsg (MsgVelBody, Msg) _SBPMsgVelCog :: Prism' SBPMsg (MsgVelCog, Msg) _SBPMsgVelEcef :: Prism' SBPMsg (MsgVelEcef, Msg) _SBPMsgVelEcefCov :: Prism' SBPMsg (MsgVelEcefCov, Msg) _SBPMsgVelEcefCovGnss :: Prism' SBPMsg (MsgVelEcefCovGnss, Msg) _SBPMsgVelEcefDepA :: Prism' SBPMsg (MsgVelEcefDepA, Msg) _SBPMsgVelEcefGnss :: Prism' SBPMsg (MsgVelEcefGnss, Msg) _SBPMsgVelNed :: Prism' SBPMsg (MsgVelNed, Msg) _SBPMsgVelNedCov :: Prism' SBPMsg (MsgVelNedCov, Msg) _SBPMsgVelNedCovGnss :: Prism' SBPMsg (MsgVelNedCovGnss, Msg) _SBPMsgVelNedDepA :: Prism' SBPMsg (MsgVelNedDepA, Msg) _SBPMsgVelNedGnss :: Prism' SBPMsg (MsgVelNedGnss, Msg) _SBPMsgWheeltick :: Prism' SBPMsg (MsgWheeltick, Msg) _SBPMsgBadCrc :: Prism' SBPMsg Msg _SBPMsgUnknown :: Prism' SBPMsg Msg (<<>>) :: Value -> Value -> Value