-- 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 2.2.7
-- | Encoding utilities.
module SwiftNav.SBP.Encoding
instance Data.Aeson.Types.ToJSON.ToJSON Data.ByteString.Internal.ByteString
instance Data.Aeson.Types.FromJSON.FromJSON Data.ByteString.Internal.ByteString
-- | Error detection functions.
module SwiftNav.CRC16
-- | Calculate CCITT 16-bit Cyclical Redundancy Check (CRC16).
crc16 :: ByteString -> Word16
-- | 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
SBPMsgAcqSvProfile :: MsgAcqSvProfile -> Msg -> SBPMsg
SBPMsgAgeCorrections :: MsgAgeCorrections -> Msg -> SBPMsg
SBPMsgAlmanac :: MsgAlmanac -> Msg -> SBPMsg
SBPMsgAlmanacGlo :: MsgAlmanacGlo -> Msg -> SBPMsg
SBPMsgAlmanacGps :: MsgAlmanacGps -> 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
SBPMsgCommandOutput :: MsgCommandOutput -> Msg -> SBPMsg
SBPMsgCommandReq :: MsgCommandReq -> Msg -> SBPMsg
SBPMsgCommandResp :: MsgCommandResp -> 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
SBPMsgEphemerisDepA :: MsgEphemerisDepA -> Msg -> SBPMsg
SBPMsgEphemerisDepB :: MsgEphemerisDepB -> Msg -> SBPMsg
SBPMsgEphemerisDepC :: MsgEphemerisDepC -> Msg -> SBPMsg
SBPMsgEphemerisDepD :: MsgEphemerisDepD -> Msg -> SBPMsg
SBPMsgEphemerisGlo :: MsgEphemerisGlo -> Msg -> SBPMsg
SBPMsgEphemerisGloDepA :: MsgEphemerisGloDepA -> Msg -> SBPMsg
SBPMsgEphemerisGloDepB :: MsgEphemerisGloDepB -> Msg -> SBPMsg
SBPMsgEphemerisGloDepC :: MsgEphemerisGloDepC -> Msg -> SBPMsg
SBPMsgEphemerisGps :: MsgEphemerisGps -> Msg -> SBPMsg
SBPMsgEphemerisGpsDepE :: MsgEphemerisGpsDepE -> Msg -> SBPMsg
SBPMsgEphemerisSbas :: MsgEphemerisSbas -> Msg -> SBPMsg
SBPMsgEphemerisSbasDepA :: MsgEphemerisSbasDepA -> Msg -> SBPMsg
SBPMsgExtEvent :: MsgExtEvent -> Msg -> SBPMsg
SBPMsgFcnsGlo :: MsgFcnsGlo -> 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
SBPMsgFwd :: MsgFwd -> Msg -> SBPMsg
SBPMsgGpsTime :: MsgGpsTime -> Msg -> SBPMsg
SBPMsgGpsTimeDepA :: MsgGpsTimeDepA -> Msg -> SBPMsg
SBPMsgGroupDelay :: MsgGroupDelay -> Msg -> SBPMsg
SBPMsgGroupDelayDepA :: MsgGroupDelayDepA -> Msg -> SBPMsg
SBPMsgHeartbeat :: MsgHeartbeat -> Msg -> SBPMsg
SBPMsgIarState :: MsgIarState -> Msg -> SBPMsg
SBPMsgImuAux :: MsgImuAux -> Msg -> SBPMsg
SBPMsgImuRaw :: MsgImuRaw -> Msg -> SBPMsg
SBPMsgInitBase :: MsgInitBase -> Msg -> SBPMsg
SBPMsgIono :: MsgIono -> Msg -> SBPMsg
SBPMsgLog :: MsgLog -> Msg -> SBPMsg
SBPMsgM25FlashWriteStatus :: MsgM25FlashWriteStatus -> Msg -> SBPMsg
SBPMsgMaskSatellite :: MsgMaskSatellite -> Msg -> SBPMsg
SBPMsgNapDeviceDnaReq :: MsgNapDeviceDnaReq -> Msg -> SBPMsg
SBPMsgNapDeviceDnaResp :: MsgNapDeviceDnaResp -> Msg -> SBPMsg
SBPMsgNdbEvent :: MsgNdbEvent -> 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
SBPMsgPosEcef :: MsgPosEcef -> Msg -> SBPMsg
SBPMsgPosEcefDepA :: MsgPosEcefDepA -> Msg -> SBPMsg
SBPMsgPosLlh :: MsgPosLlh -> Msg -> SBPMsg
SBPMsgPosLlhDepA :: MsgPosLlhDepA -> Msg -> SBPMsg
SBPMsgPrintDep :: MsgPrintDep -> Msg -> SBPMsg
SBPMsgReset :: MsgReset -> Msg -> SBPMsg
SBPMsgResetDep :: MsgResetDep -> Msg -> SBPMsg
SBPMsgResetFilters :: MsgResetFilters -> 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
SBPMsgSettingsSave :: MsgSettingsSave -> Msg -> SBPMsg
SBPMsgSettingsWrite :: MsgSettingsWrite -> Msg -> SBPMsg
SBPMsgSpecan :: MsgSpecan -> Msg -> SBPMsg
SBPMsgStartup :: MsgStartup -> Msg -> SBPMsg
SBPMsgStmFlashLockSector :: MsgStmFlashLockSector -> Msg -> SBPMsg
SBPMsgStmFlashUnlockSector :: MsgStmFlashUnlockSector -> Msg -> SBPMsg
SBPMsgStmUniqueIdReq :: MsgStmUniqueIdReq -> Msg -> SBPMsg
SBPMsgStmUniqueIdResp :: MsgStmUniqueIdResp -> Msg -> SBPMsg
SBPMsgSvConfigurationGps :: MsgSvConfigurationGps -> Msg -> SBPMsg
SBPMsgThreadState :: MsgThreadState -> Msg -> SBPMsg
SBPMsgTrackingIq :: MsgTrackingIq -> Msg -> SBPMsg
SBPMsgTrackingState :: MsgTrackingState -> Msg -> SBPMsg
SBPMsgTrackingStateDepA :: MsgTrackingStateDepA -> Msg -> SBPMsg
SBPMsgTrackingStateDepB :: MsgTrackingStateDepB -> Msg -> SBPMsg
SBPMsgTrackingStateDetailed :: MsgTrackingStateDetailed -> Msg -> SBPMsg
SBPMsgTweet :: MsgTweet -> Msg -> SBPMsg
SBPMsgUartState :: MsgUartState -> Msg -> SBPMsg
SBPMsgUartStateDepa :: MsgUartStateDepa -> Msg -> SBPMsg
SBPMsgUserData :: MsgUserData -> Msg -> SBPMsg
SBPMsgUtcTime :: MsgUtcTime -> Msg -> SBPMsg
SBPMsgVelEcef :: MsgVelEcef -> Msg -> SBPMsg
SBPMsgVelEcefDepA :: MsgVelEcefDepA -> Msg -> SBPMsg
SBPMsgVelNed :: MsgVelNed -> Msg -> SBPMsg
SBPMsgVelNedDepA :: MsgVelNedDepA -> Msg -> SBPMsg
SBPMsgBadCrc :: Msg -> SBPMsg
SBPMsgUnknown :: Msg -> SBPMsg
_SBPMsgUnknown :: Prism' SBPMsg Msg
_SBPMsgBadCrc :: Prism' SBPMsg Msg
_SBPMsgVelNedDepA :: Prism' SBPMsg (MsgVelNedDepA, Msg)
_SBPMsgVelNed :: Prism' SBPMsg (MsgVelNed, Msg)
_SBPMsgVelEcefDepA :: Prism' SBPMsg (MsgVelEcefDepA, Msg)
_SBPMsgVelEcef :: Prism' SBPMsg (MsgVelEcef, Msg)
_SBPMsgUtcTime :: Prism' SBPMsg (MsgUtcTime, Msg)
_SBPMsgUserData :: Prism' SBPMsg (MsgUserData, Msg)
_SBPMsgUartStateDepa :: Prism' SBPMsg (MsgUartStateDepa, Msg)
_SBPMsgUartState :: Prism' SBPMsg (MsgUartState, Msg)
_SBPMsgTweet :: Prism' SBPMsg (MsgTweet, Msg)
_SBPMsgTrackingStateDetailed :: Prism' SBPMsg (MsgTrackingStateDetailed, Msg)
_SBPMsgTrackingStateDepB :: Prism' SBPMsg (MsgTrackingStateDepB, Msg)
_SBPMsgTrackingStateDepA :: Prism' SBPMsg (MsgTrackingStateDepA, Msg)
_SBPMsgTrackingState :: Prism' SBPMsg (MsgTrackingState, Msg)
_SBPMsgTrackingIq :: Prism' SBPMsg (MsgTrackingIq, Msg)
_SBPMsgThreadState :: Prism' SBPMsg (MsgThreadState, Msg)
_SBPMsgSvConfigurationGps :: Prism' SBPMsg (MsgSvConfigurationGps, Msg)
_SBPMsgStmUniqueIdResp :: Prism' SBPMsg (MsgStmUniqueIdResp, Msg)
_SBPMsgStmUniqueIdReq :: Prism' SBPMsg (MsgStmUniqueIdReq, Msg)
_SBPMsgStmFlashUnlockSector :: Prism' SBPMsg (MsgStmFlashUnlockSector, Msg)
_SBPMsgStmFlashLockSector :: Prism' SBPMsg (MsgStmFlashLockSector, Msg)
_SBPMsgStartup :: Prism' SBPMsg (MsgStartup, Msg)
_SBPMsgSpecan :: Prism' SBPMsg (MsgSpecan, Msg)
_SBPMsgSettingsWrite :: Prism' SBPMsg (MsgSettingsWrite, Msg)
_SBPMsgSettingsSave :: Prism' SBPMsg (MsgSettingsSave, Msg)
_SBPMsgSettingsRegister :: Prism' SBPMsg (MsgSettingsRegister, Msg)
_SBPMsgSettingsReadResp :: Prism' SBPMsg (MsgSettingsReadResp, Msg)
_SBPMsgSettingsReadReq :: Prism' SBPMsg (MsgSettingsReadReq, Msg)
_SBPMsgSettingsReadByIndexResp :: Prism' SBPMsg (MsgSettingsReadByIndexResp, Msg)
_SBPMsgSettingsReadByIndexReq :: Prism' SBPMsg (MsgSettingsReadByIndexReq, Msg)
_SBPMsgSettingsReadByIndexDone :: Prism' SBPMsg (MsgSettingsReadByIndexDone, Msg)
_SBPMsgSetTime :: Prism' SBPMsg (MsgSetTime, Msg)
_SBPMsgResetFilters :: Prism' SBPMsg (MsgResetFilters, Msg)
_SBPMsgResetDep :: Prism' SBPMsg (MsgResetDep, Msg)
_SBPMsgReset :: Prism' SBPMsg (MsgReset, Msg)
_SBPMsgPrintDep :: Prism' SBPMsg (MsgPrintDep, Msg)
_SBPMsgPosLlhDepA :: Prism' SBPMsg (MsgPosLlhDepA, Msg)
_SBPMsgPosLlh :: Prism' SBPMsg (MsgPosLlh, Msg)
_SBPMsgPosEcefDepA :: Prism' SBPMsg (MsgPosEcefDepA, Msg)
_SBPMsgPosEcef :: Prism' SBPMsg (MsgPosEcef, Msg)
_SBPMsgObsDepC :: Prism' SBPMsg (MsgObsDepC, Msg)
_SBPMsgObsDepB :: Prism' SBPMsg (MsgObsDepB, Msg)
_SBPMsgObsDepA :: Prism' SBPMsg (MsgObsDepA, Msg)
_SBPMsgObs :: Prism' SBPMsg (MsgObs, Msg)
_SBPMsgNetworkStateResp :: Prism' SBPMsg (MsgNetworkStateResp, Msg)
_SBPMsgNetworkStateReq :: Prism' SBPMsg (MsgNetworkStateReq, Msg)
_SBPMsgNdbEvent :: Prism' SBPMsg (MsgNdbEvent, Msg)
_SBPMsgNapDeviceDnaResp :: Prism' SBPMsg (MsgNapDeviceDnaResp, Msg)
_SBPMsgNapDeviceDnaReq :: Prism' SBPMsg (MsgNapDeviceDnaReq, Msg)
_SBPMsgMaskSatellite :: Prism' SBPMsg (MsgMaskSatellite, Msg)
_SBPMsgM25FlashWriteStatus :: Prism' SBPMsg (MsgM25FlashWriteStatus, Msg)
_SBPMsgLog :: Prism' SBPMsg (MsgLog, Msg)
_SBPMsgIono :: Prism' SBPMsg (MsgIono, Msg)
_SBPMsgInitBase :: Prism' SBPMsg (MsgInitBase, Msg)
_SBPMsgImuRaw :: Prism' SBPMsg (MsgImuRaw, Msg)
_SBPMsgImuAux :: Prism' SBPMsg (MsgImuAux, Msg)
_SBPMsgIarState :: Prism' SBPMsg (MsgIarState, Msg)
_SBPMsgHeartbeat :: Prism' SBPMsg (MsgHeartbeat, Msg)
_SBPMsgGroupDelayDepA :: Prism' SBPMsg (MsgGroupDelayDepA, Msg)
_SBPMsgGroupDelay :: Prism' SBPMsg (MsgGroupDelay, Msg)
_SBPMsgGpsTimeDepA :: Prism' SBPMsg (MsgGpsTimeDepA, Msg)
_SBPMsgGpsTime :: Prism' SBPMsg (MsgGpsTime, Msg)
_SBPMsgFwd :: Prism' SBPMsg (MsgFwd, Msg)
_SBPMsgFlashReadResp :: Prism' SBPMsg (MsgFlashReadResp, Msg)
_SBPMsgFlashReadReq :: Prism' SBPMsg (MsgFlashReadReq, Msg)
_SBPMsgFlashProgram :: Prism' SBPMsg (MsgFlashProgram, Msg)
_SBPMsgFlashErase :: Prism' SBPMsg (MsgFlashErase, Msg)
_SBPMsgFlashDone :: Prism' SBPMsg (MsgFlashDone, Msg)
_SBPMsgFileioWriteResp :: Prism' SBPMsg (MsgFileioWriteResp, Msg)
_SBPMsgFileioWriteReq :: Prism' SBPMsg (MsgFileioWriteReq, Msg)
_SBPMsgFileioRemove :: Prism' SBPMsg (MsgFileioRemove, Msg)
_SBPMsgFileioReadResp :: Prism' SBPMsg (MsgFileioReadResp, Msg)
_SBPMsgFileioReadReq :: Prism' SBPMsg (MsgFileioReadReq, Msg)
_SBPMsgFileioReadDirResp :: Prism' SBPMsg (MsgFileioReadDirResp, Msg)
_SBPMsgFileioReadDirReq :: Prism' SBPMsg (MsgFileioReadDirReq, Msg)
_SBPMsgFcnsGlo :: Prism' SBPMsg (MsgFcnsGlo, Msg)
_SBPMsgExtEvent :: Prism' SBPMsg (MsgExtEvent, Msg)
_SBPMsgEphemerisSbasDepA :: Prism' SBPMsg (MsgEphemerisSbasDepA, Msg)
_SBPMsgEphemerisSbas :: Prism' SBPMsg (MsgEphemerisSbas, Msg)
_SBPMsgEphemerisGpsDepE :: Prism' SBPMsg (MsgEphemerisGpsDepE, Msg)
_SBPMsgEphemerisGps :: Prism' SBPMsg (MsgEphemerisGps, Msg)
_SBPMsgEphemerisGloDepC :: Prism' SBPMsg (MsgEphemerisGloDepC, Msg)
_SBPMsgEphemerisGloDepB :: Prism' SBPMsg (MsgEphemerisGloDepB, Msg)
_SBPMsgEphemerisGloDepA :: Prism' SBPMsg (MsgEphemerisGloDepA, Msg)
_SBPMsgEphemerisGlo :: Prism' SBPMsg (MsgEphemerisGlo, Msg)
_SBPMsgEphemerisDepD :: Prism' SBPMsg (MsgEphemerisDepD, Msg)
_SBPMsgEphemerisDepC :: Prism' SBPMsg (MsgEphemerisDepC, Msg)
_SBPMsgEphemerisDepB :: Prism' SBPMsg (MsgEphemerisDepB, Msg)
_SBPMsgEphemerisDepA :: Prism' SBPMsg (MsgEphemerisDepA, Msg)
_SBPMsgDopsDepA :: Prism' SBPMsg (MsgDopsDepA, Msg)
_SBPMsgDops :: Prism' SBPMsg (MsgDops, Msg)
_SBPMsgDgnssStatus :: Prism' SBPMsg (MsgDgnssStatus, Msg)
_SBPMsgDeviceMonitor :: Prism' SBPMsg (MsgDeviceMonitor, Msg)
_SBPMsgCwStart :: Prism' SBPMsg (MsgCwStart, Msg)
_SBPMsgCwResults :: Prism' SBPMsg (MsgCwResults, Msg)
_SBPMsgCommandResp :: Prism' SBPMsg (MsgCommandResp, Msg)
_SBPMsgCommandReq :: Prism' SBPMsg (MsgCommandReq, Msg)
_SBPMsgCommandOutput :: Prism' SBPMsg (MsgCommandOutput, Msg)
_SBPMsgBootloaderJumpToApp :: Prism' SBPMsg (MsgBootloaderJumpToApp, Msg)
_SBPMsgBootloaderHandshakeResp :: Prism' SBPMsg (MsgBootloaderHandshakeResp, Msg)
_SBPMsgBootloaderHandshakeReq :: Prism' SBPMsg (MsgBootloaderHandshakeReq, Msg)
_SBPMsgBootloaderHandshakeDepA :: Prism' SBPMsg (MsgBootloaderHandshakeDepA, Msg)
_SBPMsgBaselineNedDepA :: Prism' SBPMsg (MsgBaselineNedDepA, Msg)
_SBPMsgBaselineNed :: Prism' SBPMsg (MsgBaselineNed, Msg)
_SBPMsgBaselineHeadingDepA :: Prism' SBPMsg (MsgBaselineHeadingDepA, Msg)
_SBPMsgBaselineHeading :: Prism' SBPMsg (MsgBaselineHeading, Msg)
_SBPMsgBaselineEcefDepA :: Prism' SBPMsg (MsgBaselineEcefDepA, Msg)
_SBPMsgBaselineEcef :: Prism' SBPMsg (MsgBaselineEcef, Msg)
_SBPMsgBasePosLlh :: Prism' SBPMsg (MsgBasePosLlh, Msg)
_SBPMsgBasePosEcef :: Prism' SBPMsg (MsgBasePosEcef, Msg)
_SBPMsgAlmanacGps :: Prism' SBPMsg (MsgAlmanacGps, Msg)
_SBPMsgAlmanacGlo :: Prism' SBPMsg (MsgAlmanacGlo, Msg)
_SBPMsgAlmanac :: Prism' SBPMsg (MsgAlmanac, Msg)
_SBPMsgAgeCorrections :: Prism' SBPMsg (MsgAgeCorrections, Msg)
_SBPMsgAcqSvProfile :: Prism' SBPMsg (MsgAcqSvProfile, Msg)
_SBPMsgAcqResultDepB :: Prism' SBPMsg (MsgAcqResultDepB, Msg)
_SBPMsgAcqResultDepA :: Prism' SBPMsg (MsgAcqResultDepA, Msg)
_SBPMsgAcqResult :: Prism' SBPMsg (MsgAcqResult, Msg)
mergeValues :: Value -> Value -> Value
-- | 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
-- | 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 -> !ByteString -> !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 -> !ByteString
-- | 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
class HasMsg c_arCE where msgSBPCrc = (.) msg msgSBPCrc msgSBPLen = (.) msg msgSBPLen msgSBPPayload = (.) msg msgSBPPayload msgSBPSender = (.) msg msgSBPSender msgSBPType = (.) msg msgSBPType
msg :: HasMsg c_arCE => Lens' c_arCE Msg
msgSBPCrc :: HasMsg c_arCE => Lens' c_arCE Word16
msgSBPLen :: HasMsg c_arCE => Lens' c_arCE Word8
msgSBPPayload :: HasMsg c_arCE => Lens' c_arCE ByteString
msgSBPSender :: HasMsg c_arCE => Lens' c_arCE Word16
msgSBPType :: HasMsg c_arCE => Lens' c_arCE Word16
checkCrc :: Msg -> 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
msgAcqResult :: Word16
-- | SBP class for message MSG_ACQ_RESULT (0x001F).
--
-- 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_sid :: Lens' MsgAcqResult GnssSignal
msgAcqResult_cp :: Lens' MsgAcqResult Float
msgAcqResult_cn0 :: Lens' MsgAcqResult Float
msgAcqResult_cf :: Lens' MsgAcqResult Float
msgAcqResultDepB :: Word16
-- | SBP class for message MSG_ACQ_RESULT_DEP_B (0x0014).
--
-- Deprecated.
data MsgAcqResultDepB
MsgAcqResultDepB :: !Float -> !Float -> !Float -> !GnssSignal -> 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 -> !GnssSignal
msgAcqResultDepB_snr :: Lens' MsgAcqResultDepB Float
msgAcqResultDepB_sid :: Lens' MsgAcqResultDepB GnssSignal
msgAcqResultDepB_cp :: Lens' MsgAcqResultDepB Float
msgAcqResultDepB_cf :: Lens' MsgAcqResultDepB Float
msgAcqResultDepA :: 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 dimensonless, 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
msgAcqResultDepA_snr :: Lens' MsgAcqResultDepA Float
msgAcqResultDepA_prn :: Lens' MsgAcqResultDepA Word8
msgAcqResultDepA_cp :: Lens' MsgAcqResultDepA Float
msgAcqResultDepA_cf :: Lens' MsgAcqResultDepA Float
-- | 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
acqSvProfile_timestamp :: Lens' AcqSvProfile Word32
acqSvProfile_time_spent :: Lens' AcqSvProfile Word32
acqSvProfile_status :: Lens' AcqSvProfile Word8
acqSvProfile_sid :: Lens' AcqSvProfile GnssSignal
acqSvProfile_job_type :: Lens' AcqSvProfile Word8
acqSvProfile_int_time :: Lens' AcqSvProfile Word8
acqSvProfile_cp :: Lens' AcqSvProfile Word32
acqSvProfile_cn0 :: Lens' AcqSvProfile Word16
acqSvProfile_cf_min :: Lens' AcqSvProfile Int32
acqSvProfile_cf_max :: Lens' AcqSvProfile Int32
acqSvProfile_cf :: Lens' AcqSvProfile Int32
acqSvProfile_bin_width :: Lens' AcqSvProfile Word16
msgAcqSvProfile :: Word16
-- | SBP class for message MSG_ACQ_SV_PROFILE (0x001E).
--
-- 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]
msgAcqSvProfile_acq_sv_profile :: Iso' MsgAcqSvProfile [AcqSvProfile]
msgBootloaderHandshakeReq :: Word16
-- | 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
msgBootloaderHandshakeResp :: 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_version :: Lens' MsgBootloaderHandshakeResp Text
msgBootloaderHandshakeResp_flags :: Lens' MsgBootloaderHandshakeResp Word32
msgBootloaderJumpToApp :: 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
msgBootloaderJumpToApp_jump :: Iso' MsgBootloaderJumpToApp Word8
msgNapDeviceDnaReq :: 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
msgNapDeviceDnaResp :: 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 messagage 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_dna :: Iso' MsgNapDeviceDnaResp [Word8]
msgBootloaderHandshakeDepA :: 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]
msgBootloaderHandshakeDepA_handshake :: Iso' MsgBootloaderHandshakeDepA [Word8]
msgExtEvent :: Word16
-- | 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_wn :: Lens' MsgExtEvent Word16
msgExtEvent_tow :: Lens' MsgExtEvent Word32
msgExtEvent_pin :: Lens' MsgExtEvent Word8
msgExtEvent_ns_residual :: Lens' MsgExtEvent Int32
msgExtEvent_flags :: Lens' MsgExtEvent Word8
msgFileioReadReq :: Word16
-- | 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 succesfully 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_sequence :: Lens' MsgFileioReadReq Word32
msgFileioReadReq_offset :: Lens' MsgFileioReadReq Word32
msgFileioReadReq_filename :: Lens' MsgFileioReadReq Text
msgFileioReadReq_chunk_size :: Lens' MsgFileioReadReq Word8
msgFileioReadResp :: 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 succesfully 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]
msgFileioReadResp_sequence :: Lens' MsgFileioReadResp Word32
msgFileioReadResp_contents :: Lens' MsgFileioReadResp [Word8]
msgFileioReadDirReq :: 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
msgFileioReadDirReq_sequence :: Lens' MsgFileioReadDirReq Word32
msgFileioReadDirReq_offset :: Lens' MsgFileioReadDirReq Word32
msgFileioReadDirReq_dirname :: Lens' MsgFileioReadDirReq Text
msgFileioReadDirResp :: 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 entry
-- containing just the character 0xFF. 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]
msgFileioReadDirResp_sequence :: Lens' MsgFileioReadDirResp Word32
msgFileioReadDirResp_contents :: Lens' MsgFileioReadDirResp [Word8]
msgFileioRemove :: 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
msgFileioRemove_filename :: Iso' MsgFileioRemove Text
msgFileioWriteReq :: 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]
msgFileioWriteReq_sequence :: Lens' MsgFileioWriteReq Word32
msgFileioWriteReq_offset :: Lens' MsgFileioWriteReq Word32
msgFileioWriteReq_filename :: Lens' MsgFileioWriteReq Text
msgFileioWriteReq_data :: Lens' MsgFileioWriteReq [Word8]
msgFileioWriteResp :: 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
msgFileioWriteResp_sequence :: Iso' MsgFileioWriteResp Word32
msgFlashProgram :: Word16
-- | 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_target :: Lens' MsgFlashProgram Word8
msgFlashProgram_data :: Lens' MsgFlashProgram [Word8]
msgFlashProgram_addr_start :: Lens' MsgFlashProgram [Word8]
msgFlashProgram_addr_len :: Lens' MsgFlashProgram Word8
msgFlashDone :: 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
msgFlashDone_response :: Iso' MsgFlashDone Word8
msgFlashReadReq :: 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
msgFlashReadReq_target :: Lens' MsgFlashReadReq Word8
msgFlashReadReq_addr_start :: Lens' MsgFlashReadReq [Word8]
msgFlashReadReq_addr_len :: Lens' MsgFlashReadReq Word8
msgFlashReadResp :: 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
msgFlashReadResp_target :: Lens' MsgFlashReadResp Word8
msgFlashReadResp_addr_start :: Lens' MsgFlashReadResp [Word8]
msgFlashReadResp_addr_len :: Lens' MsgFlashReadResp Word8
msgFlashErase :: 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
msgFlashErase_target :: Lens' MsgFlashErase Word8
msgFlashErase_sector_num :: Lens' MsgFlashErase Word32
msgStmFlashLockSector :: 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
msgStmFlashLockSector_sector :: Iso' MsgStmFlashLockSector Word32
msgStmFlashUnlockSector :: 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
msgStmFlashUnlockSector_sector :: Iso' MsgStmFlashUnlockSector Word32
msgStmUniqueIdReq :: Word16
-- | SBP class for message MSG_STM_UNIQUE_ID_REQ (0x00E8).
--
-- This message reads the device's hardcoded 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
msgStmUniqueIdResp :: Word16
-- | SBP class for message MSG_STM_UNIQUE_ID_RESP (0x00E5).
--
-- This message reads the device's hardcoded 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_stm_id :: Iso' MsgStmUniqueIdResp [Word8]
msgM25FlashWriteStatus :: 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]
msgM25FlashWriteStatus_status :: Iso' MsgM25FlashWriteStatus [Word8]
-- | GnssSignal16.
--
-- Signal identifier containing constellation, band, and satellite
-- identifier
data GnssSignal16
GnssSignal16 :: !Word8 -> !Word8 -> GnssSignal16
-- | Constellation-specific satellite identifier
[_gnssSignal16_sat] :: GnssSignal16 -> !Word8
-- | Signal constellation, band and code
[_gnssSignal16_code] :: GnssSignal16 -> !Word8
gnssSignal16_sat :: Lens' GnssSignal16 Word8
gnssSignal16_code :: Lens' GnssSignal16 Word8
-- | GnssSignal.
--
-- Signal identifier containing constellation, band, and satellite
-- identifier
data GnssSignal
GnssSignal :: !Word16 -> !Word8 -> !Word8 -> GnssSignal
-- | Constellation-specific satellite identifier. Note: unlike
-- GnssSignal16, GPS satellites are encoded as (PRN - 1). Other
-- constellations do not have this offset.
[_gnssSignal_sat] :: GnssSignal -> !Word16
-- | Signal constellation, band and code
[_gnssSignal_code] :: GnssSignal -> !Word8
-- | Reserved
[_gnssSignal_reserved] :: GnssSignal -> !Word8
gnssSignal_sat :: Lens' GnssSignal Word16
gnssSignal_reserved :: Lens' GnssSignal Word8
gnssSignal_code :: Lens' GnssSignal Word8
-- | GPSTime.
--
-- A wire-appropriate GPS time, defined as the number of milliseconds
-- since beginning of the week on the Saturday/Sunday transition.
data GpsTime
GpsTime :: !Word32 -> !Word16 -> GpsTime
-- | Milliseconds since start of GPS week
[_gpsTime_tow] :: GpsTime -> !Word32
-- | GPS week number
[_gpsTime_wn] :: GpsTime -> !Word16
gpsTime_wn :: Lens' GpsTime Word16
gpsTime_tow :: Lens' GpsTime Word32
-- | 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
gpsTimeSec_wn :: Lens' GpsTimeSec Word16
gpsTimeSec_tow :: Lens' GpsTimeSec Word32
-- | GPSTimeNano.
--
-- 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 GpsTimeNano
GpsTimeNano :: !Word32 -> !Int32 -> !Word16 -> GpsTimeNano
-- | Milliseconds since start of GPS week
[_gpsTimeNano_tow] :: GpsTimeNano -> !Word32
-- | Nanosecond residual of millisecond-rounded TOW (ranges from -500000 to
-- 500000)
[_gpsTimeNano_ns_residual] :: GpsTimeNano -> !Int32
-- | GPS week number
[_gpsTimeNano_wn] :: GpsTimeNano -> !Word16
gpsTimeNano_wn :: Lens' GpsTimeNano Word16
gpsTimeNano_tow :: Lens' GpsTimeNano Word32
gpsTimeNano_ns_residual :: Lens' GpsTimeNano Int32
-- | 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
carrierPhase_i :: Lens' CarrierPhase Int32
carrierPhase_f :: Lens' CarrierPhase Word8
msgImuRaw :: Word16
-- | SBP class for message MSG_IMU_RAW (0x0900).
--
-- Raw data from the Inertial Measurement Unit, containing accelerometer
-- and gyroscope readings.
data MsgImuRaw
MsgImuRaw :: !Word32 -> !Word8 -> !Int16 -> !Int16 -> !Int16 -> !Int16 -> !Int16 -> !Int16 -> MsgImuRaw
-- | Milliseconds since start of GPS week. If the high bit is set, the time
-- is unknown or invalid.
[_msgImuRaw_tow] :: MsgImuRaw -> !Word32
-- | Milliseconds since start of GPS week, fractional part
[_msgImuRaw_tow_f] :: MsgImuRaw -> !Word8
-- | Acceleration in the body frame X axis
[_msgImuRaw_acc_x] :: MsgImuRaw -> !Int16
-- | Acceleration in the body frame Y axis
[_msgImuRaw_acc_y] :: MsgImuRaw -> !Int16
-- | Acceleration in the body frame Z axis
[_msgImuRaw_acc_z] :: MsgImuRaw -> !Int16
-- | Angular rate around the body frame X axis
[_msgImuRaw_gyr_x] :: MsgImuRaw -> !Int16
-- | Angular rate around the body frame Y axis
[_msgImuRaw_gyr_y] :: MsgImuRaw -> !Int16
-- | Angular rate around the body frame Z axis
[_msgImuRaw_gyr_z] :: MsgImuRaw -> !Int16
msgImuRaw_tow_f :: Lens' MsgImuRaw Word8
msgImuRaw_tow :: Lens' MsgImuRaw Word32
msgImuRaw_gyr_z :: Lens' MsgImuRaw Int16
msgImuRaw_gyr_y :: Lens' MsgImuRaw Int16
msgImuRaw_gyr_x :: Lens' MsgImuRaw Int16
msgImuRaw_acc_z :: Lens' MsgImuRaw Int16
msgImuRaw_acc_y :: Lens' MsgImuRaw Int16
msgImuRaw_acc_x :: Lens' MsgImuRaw Int16
msgImuAux :: 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
msgImuAux_temp :: Lens' MsgImuAux Int16
msgImuAux_imu_type :: Lens' MsgImuAux Word8
msgImuAux_imu_conf :: Lens' MsgImuAux Word8
msgLog :: Word16
-- | 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_text :: Lens' MsgLog Text
msgLog_level :: Lens' MsgLog Word8
msgFwd :: 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 -> !Text -> MsgFwd
-- | source identifier
[_msgFwd_source] :: MsgFwd -> !Word8
-- | protocol identifier
[_msgFwd_protocol] :: MsgFwd -> !Word8
-- | variable length wrapped binary message
[_msgFwd_fwd_payload] :: MsgFwd -> !Text
msgFwd_source :: Lens' MsgFwd Word8
msgFwd_protocol :: Lens' MsgFwd Word8
msgFwd_fwd_payload :: Lens' MsgFwd Text
msgTweet :: Word16
-- | SBP class for message MSG_TWEET (0x0012).
--
-- All the news fit to tweet.
data MsgTweet
MsgTweet :: !Text -> MsgTweet
-- | Human-readable string
[_msgTweet_tweet] :: MsgTweet -> !Text
msgTweet_tweet :: Iso' MsgTweet Text
msgPrintDep :: Word16
-- | SBP class for message MSG_PRINT_DEP (0x0010).
--
-- Deprecated.
data MsgPrintDep
MsgPrintDep :: !Text -> MsgPrintDep
-- | Human-readable string
[_msgPrintDep_text] :: MsgPrintDep -> !Text
msgPrintDep_text :: Iso' MsgPrintDep Text
msgGpsTime :: Word16
-- | 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_wn :: Lens' MsgGpsTime Word16
msgGpsTime_tow :: Lens' MsgGpsTime Word32
msgGpsTime_ns_residual :: Lens' MsgGpsTime Int32
msgGpsTime_flags :: Lens' MsgGpsTime Word8
msgUtcTime :: 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
msgUtcTime_year :: Lens' MsgUtcTime Word16
msgUtcTime_tow :: Lens' MsgUtcTime Word32
msgUtcTime_seconds :: Lens' MsgUtcTime Word8
msgUtcTime_ns :: Lens' MsgUtcTime Word32
msgUtcTime_month :: Lens' MsgUtcTime Word8
msgUtcTime_minutes :: Lens' MsgUtcTime Word8
msgUtcTime_hours :: Lens' MsgUtcTime Word8
msgUtcTime_flags :: Lens' MsgUtcTime Word8
msgUtcTime_day :: Lens' MsgUtcTime Word8
msgDops :: 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
msgDops_vdop :: Lens' MsgDops Word16
msgDops_tow :: Lens' MsgDops Word32
msgDops_tdop :: Lens' MsgDops Word16
msgDops_pdop :: Lens' MsgDops Word16
msgDops_hdop :: Lens' MsgDops Word16
msgDops_gdop :: Lens' MsgDops Word16
msgDops_flags :: Lens' MsgDops Word8
msgPosEcef :: 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 accuracy estimate.
[_msgPosEcef_accuracy] :: MsgPosEcef -> !Word16
-- | Number of satellites used in solution
[_msgPosEcef_n_sats] :: MsgPosEcef -> !Word8
-- | Status flags
[_msgPosEcef_flags] :: MsgPosEcef -> !Word8
msgPosEcef_z :: Lens' MsgPosEcef Double
msgPosEcef_y :: Lens' MsgPosEcef Double
msgPosEcef_x :: Lens' MsgPosEcef Double
msgPosEcef_tow :: Lens' MsgPosEcef Word32
msgPosEcef_n_sats :: Lens' MsgPosEcef Word8
msgPosEcef_flags :: Lens' MsgPosEcef Word8
msgPosEcef_accuracy :: Lens' MsgPosEcef Word16
msgPosLlh :: 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 accuracy estimate.
[_msgPosLlh_h_accuracy] :: MsgPosLlh -> !Word16
-- | Vertical position accuracy estimate.
[_msgPosLlh_v_accuracy] :: MsgPosLlh -> !Word16
-- | Number of satellites used in solution.
[_msgPosLlh_n_sats] :: MsgPosLlh -> !Word8
-- | Status flags
[_msgPosLlh_flags] :: MsgPosLlh -> !Word8
msgPosLlh_v_accuracy :: Lens' MsgPosLlh Word16
msgPosLlh_tow :: Lens' MsgPosLlh Word32
msgPosLlh_n_sats :: Lens' MsgPosLlh Word8
msgPosLlh_lon :: Lens' MsgPosLlh Double
msgPosLlh_lat :: Lens' MsgPosLlh Double
msgPosLlh_height :: Lens' MsgPosLlh Double
msgPosLlh_h_accuracy :: Lens' MsgPosLlh Word16
msgPosLlh_flags :: Lens' MsgPosLlh Word8
msgBaselineEcef :: 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 accuracy estimate
[_msgBaselineEcef_accuracy] :: MsgBaselineEcef -> !Word16
-- | Number of satellites used in solution
[_msgBaselineEcef_n_sats] :: MsgBaselineEcef -> !Word8
-- | Status flags
[_msgBaselineEcef_flags] :: MsgBaselineEcef -> !Word8
msgBaselineEcef_z :: Lens' MsgBaselineEcef Int32
msgBaselineEcef_y :: Lens' MsgBaselineEcef Int32
msgBaselineEcef_x :: Lens' MsgBaselineEcef Int32
msgBaselineEcef_tow :: Lens' MsgBaselineEcef Word32
msgBaselineEcef_n_sats :: Lens' MsgBaselineEcef Word8
msgBaselineEcef_flags :: Lens' MsgBaselineEcef Word8
msgBaselineEcef_accuracy :: Lens' MsgBaselineEcef Word16
msgBaselineNed :: 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 accuracy estimate
[_msgBaselineNed_h_accuracy] :: MsgBaselineNed -> !Word16
-- | Vertical position accuracy estimate
[_msgBaselineNed_v_accuracy] :: MsgBaselineNed -> !Word16
-- | Number of satellites used in solution
[_msgBaselineNed_n_sats] :: MsgBaselineNed -> !Word8
-- | Status flags
[_msgBaselineNed_flags] :: MsgBaselineNed -> !Word8
msgBaselineNed_v_accuracy :: Lens' MsgBaselineNed Word16
msgBaselineNed_tow :: Lens' MsgBaselineNed Word32
msgBaselineNed_n_sats :: Lens' MsgBaselineNed Word8
msgBaselineNed_n :: Lens' MsgBaselineNed Int32
msgBaselineNed_h_accuracy :: Lens' MsgBaselineNed Word16
msgBaselineNed_flags :: Lens' MsgBaselineNed Word8
msgBaselineNed_e :: Lens' MsgBaselineNed Int32
msgBaselineNed_d :: Lens' MsgBaselineNed Int32
msgVelEcef :: 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 accuracy estimate
[_msgVelEcef_accuracy] :: MsgVelEcef -> !Word16
-- | Number of satellites used in solution
[_msgVelEcef_n_sats] :: MsgVelEcef -> !Word8
-- | Status flags
[_msgVelEcef_flags] :: MsgVelEcef -> !Word8
msgVelEcef_z :: Lens' MsgVelEcef Int32
msgVelEcef_y :: Lens' MsgVelEcef Int32
msgVelEcef_x :: Lens' MsgVelEcef Int32
msgVelEcef_tow :: Lens' MsgVelEcef Word32
msgVelEcef_n_sats :: Lens' MsgVelEcef Word8
msgVelEcef_flags :: Lens' MsgVelEcef Word8
msgVelEcef_accuracy :: Lens' MsgVelEcef Word16
msgVelNed :: 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 accuracy estimate
[_msgVelNed_h_accuracy] :: MsgVelNed -> !Word16
-- | Vertical velocity accuracy estimate
[_msgVelNed_v_accuracy] :: MsgVelNed -> !Word16
-- | Number of satellites used in solution
[_msgVelNed_n_sats] :: MsgVelNed -> !Word8
-- | Status flags
[_msgVelNed_flags] :: MsgVelNed -> !Word8
msgVelNed_v_accuracy :: Lens' MsgVelNed Word16
msgVelNed_tow :: Lens' MsgVelNed Word32
msgVelNed_n_sats :: Lens' MsgVelNed Word8
msgVelNed_n :: Lens' MsgVelNed Int32
msgVelNed_h_accuracy :: Lens' MsgVelNed Word16
msgVelNed_flags :: Lens' MsgVelNed Word8
msgVelNed_e :: Lens' MsgVelNed Int32
msgVelNed_d :: Lens' MsgVelNed Int32
msgBaselineHeading :: Word16
-- | 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_tow :: Lens' MsgBaselineHeading Word32
msgBaselineHeading_n_sats :: Lens' MsgBaselineHeading Word8
msgBaselineHeading_heading :: Lens' MsgBaselineHeading Word32
msgBaselineHeading_flags :: Lens' MsgBaselineHeading Word8
msgAgeCorrections :: 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
msgAgeCorrections_tow :: Lens' MsgAgeCorrections Word32
msgAgeCorrections_age :: Lens' MsgAgeCorrections Word16
msgGpsTimeDepA :: 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
msgGpsTimeDepA_wn :: Lens' MsgGpsTimeDepA Word16
msgGpsTimeDepA_tow :: Lens' MsgGpsTimeDepA Word32
msgGpsTimeDepA_ns_residual :: Lens' MsgGpsTimeDepA Int32
msgGpsTimeDepA_flags :: Lens' MsgGpsTimeDepA Word8
msgDopsDepA :: 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
msgDopsDepA_vdop :: Lens' MsgDopsDepA Word16
msgDopsDepA_tow :: Lens' MsgDopsDepA Word32
msgDopsDepA_tdop :: Lens' MsgDopsDepA Word16
msgDopsDepA_pdop :: Lens' MsgDopsDepA Word16
msgDopsDepA_hdop :: Lens' MsgDopsDepA Word16
msgDopsDepA_gdop :: Lens' MsgDopsDepA Word16
msgPosEcefDepA :: 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
msgPosEcefDepA_z :: Lens' MsgPosEcefDepA Double
msgPosEcefDepA_y :: Lens' MsgPosEcefDepA Double
msgPosEcefDepA_x :: Lens' MsgPosEcefDepA Double
msgPosEcefDepA_tow :: Lens' MsgPosEcefDepA Word32
msgPosEcefDepA_n_sats :: Lens' MsgPosEcefDepA Word8
msgPosEcefDepA_flags :: Lens' MsgPosEcefDepA Word8
msgPosEcefDepA_accuracy :: Lens' MsgPosEcefDepA Word16
msgPosLlhDepA :: 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
msgPosLlhDepA_v_accuracy :: Lens' MsgPosLlhDepA Word16
msgPosLlhDepA_tow :: Lens' MsgPosLlhDepA Word32
msgPosLlhDepA_n_sats :: Lens' MsgPosLlhDepA Word8
msgPosLlhDepA_lon :: Lens' MsgPosLlhDepA Double
msgPosLlhDepA_lat :: Lens' MsgPosLlhDepA Double
msgPosLlhDepA_height :: Lens' MsgPosLlhDepA Double
msgPosLlhDepA_h_accuracy :: Lens' MsgPosLlhDepA Word16
msgPosLlhDepA_flags :: Lens' MsgPosLlhDepA Word8
msgBaselineEcefDepA :: 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
msgBaselineEcefDepA_z :: Lens' MsgBaselineEcefDepA Int32
msgBaselineEcefDepA_y :: Lens' MsgBaselineEcefDepA Int32
msgBaselineEcefDepA_x :: Lens' MsgBaselineEcefDepA Int32
msgBaselineEcefDepA_tow :: Lens' MsgBaselineEcefDepA Word32
msgBaselineEcefDepA_n_sats :: Lens' MsgBaselineEcefDepA Word8
msgBaselineEcefDepA_flags :: Lens' MsgBaselineEcefDepA Word8
msgBaselineEcefDepA_accuracy :: Lens' MsgBaselineEcefDepA Word16
msgBaselineNedDepA :: 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
msgBaselineNedDepA_v_accuracy :: Lens' MsgBaselineNedDepA Word16
msgBaselineNedDepA_tow :: Lens' MsgBaselineNedDepA Word32
msgBaselineNedDepA_n_sats :: Lens' MsgBaselineNedDepA Word8
msgBaselineNedDepA_n :: Lens' MsgBaselineNedDepA Int32
msgBaselineNedDepA_h_accuracy :: Lens' MsgBaselineNedDepA Word16
msgBaselineNedDepA_flags :: Lens' MsgBaselineNedDepA Word8
msgBaselineNedDepA_e :: Lens' MsgBaselineNedDepA Int32
msgBaselineNedDepA_d :: Lens' MsgBaselineNedDepA Int32
msgVelEcefDepA :: 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
msgVelEcefDepA_z :: Lens' MsgVelEcefDepA Int32
msgVelEcefDepA_y :: Lens' MsgVelEcefDepA Int32
msgVelEcefDepA_x :: Lens' MsgVelEcefDepA Int32
msgVelEcefDepA_tow :: Lens' MsgVelEcefDepA Word32
msgVelEcefDepA_n_sats :: Lens' MsgVelEcefDepA Word8
msgVelEcefDepA_flags :: Lens' MsgVelEcefDepA Word8
msgVelEcefDepA_accuracy :: Lens' MsgVelEcefDepA Word16
msgVelNedDepA :: 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
msgVelNedDepA_v_accuracy :: Lens' MsgVelNedDepA Word16
msgVelNedDepA_tow :: Lens' MsgVelNedDepA Word32
msgVelNedDepA_n_sats :: Lens' MsgVelNedDepA Word8
msgVelNedDepA_n :: Lens' MsgVelNedDepA Int32
msgVelNedDepA_h_accuracy :: Lens' MsgVelNedDepA Word16
msgVelNedDepA_flags :: Lens' MsgVelNedDepA Word8
msgVelNedDepA_e :: Lens' MsgVelNedDepA Int32
msgVelNedDepA_d :: Lens' MsgVelNedDepA Int32
msgBaselineHeadingDepA :: 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
msgBaselineHeadingDepA_tow :: Lens' MsgBaselineHeadingDepA Word32
msgBaselineHeadingDepA_n_sats :: Lens' MsgBaselineHeadingDepA Word8
msgBaselineHeadingDepA_heading :: Lens' MsgBaselineHeadingDepA Word32
msgBaselineHeadingDepA_flags :: Lens' MsgBaselineHeadingDepA Word8
msgNdbEvent :: Word16
-- | 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 -> !GnssSignal16 -> !GnssSignal16 -> !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 -> !GnssSignal16
-- | 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 -> !GnssSignal16
-- | 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_src_sid :: Lens' MsgNdbEvent GnssSignal16
msgNdbEvent_result :: Lens' MsgNdbEvent Word8
msgNdbEvent_recv_time :: Lens' MsgNdbEvent Word64
msgNdbEvent_original_sender :: Lens' MsgNdbEvent Word16
msgNdbEvent_object_type :: Lens' MsgNdbEvent Word8
msgNdbEvent_object_sid :: Lens' MsgNdbEvent GnssSignal16
msgNdbEvent_event :: Lens' MsgNdbEvent Word8
msgNdbEvent_data_source :: Lens' MsgNdbEvent Word8
-- | ObservationHeader.
--
-- Header of a GNSS observation message.
data ObservationHeader
ObservationHeader :: !GpsTimeNano -> !Word8 -> ObservationHeader
-- | GNSS time of this observation
[_observationHeader_t] :: ObservationHeader -> !GpsTimeNano
-- | 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
observationHeader_t :: Lens' ObservationHeader GpsTimeNano
observationHeader_n_obs :: Lens' 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
doppler_i :: Lens' Doppler Int16
doppler_f :: Lens' Doppler Word8
-- | PackedObsContent.
--
-- Pseudorange and carrier phase observation for a satellite being
-- tracked. The observations are interoperable with 3rd party receivers
-- and conform with typical RTCMv3 GNSS observations.
data PackedObsContent
PackedObsContent :: !Word32 -> !CarrierPhase -> !Doppler -> !Word8 -> !Word8 -> !Word8 -> !GnssSignal16 -> 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 -> !GnssSignal16
packedObsContent_sid :: Lens' PackedObsContent GnssSignal16
packedObsContent_lock :: Lens' PackedObsContent Word8
packedObsContent_flags :: Lens' PackedObsContent Word8
packedObsContent_cn0 :: Lens' PackedObsContent Word8
packedObsContent_P :: Lens' PackedObsContent Word32
packedObsContent_L :: Lens' PackedObsContent CarrierPhase
packedObsContent_D :: Lens' PackedObsContent Doppler
msgObs :: Word16
-- | 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]
msgObs_obs :: Lens' MsgObs [PackedObsContent]
msgObs_header :: Lens' MsgObs ObservationHeader
msgBasePosLlh :: 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
msgBasePosLlh_lon :: Lens' MsgBasePosLlh Double
msgBasePosLlh_lat :: Lens' MsgBasePosLlh Double
msgBasePosLlh_height :: Lens' MsgBasePosLlh Double
msgBasePosEcef :: 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 coodinate
[_msgBasePosEcef_x] :: MsgBasePosEcef -> !Double
-- | ECEF Y coordinate
[_msgBasePosEcef_y] :: MsgBasePosEcef -> !Double
-- | ECEF Z coordinate
[_msgBasePosEcef_z] :: MsgBasePosEcef -> !Double
msgBasePosEcef_z :: Lens' MsgBasePosEcef Double
msgBasePosEcef_y :: Lens' MsgBasePosEcef Double
msgBasePosEcef_x :: Lens' MsgBasePosEcef Double
data EphemerisCommonContent
EphemerisCommonContent :: !GnssSignal16 -> !GpsTimeSec -> !Double -> !Word32 -> !Word8 -> !Word8 -> EphemerisCommonContent
-- | GNSS signal identifier (16 bit)
[_ephemerisCommonContent_sid] :: EphemerisCommonContent -> !GnssSignal16
-- | Time of Ephemerides
[_ephemerisCommonContent_toe] :: EphemerisCommonContent -> !GpsTimeSec
-- | User Range Accuracy
[_ephemerisCommonContent_ura] :: EphemerisCommonContent -> !Double
-- | 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
ephemerisCommonContent_valid :: Lens' EphemerisCommonContent Word8
ephemerisCommonContent_ura :: Lens' EphemerisCommonContent Double
ephemerisCommonContent_toe :: Lens' EphemerisCommonContent GpsTimeSec
ephemerisCommonContent_sid :: Lens' EphemerisCommonContent GnssSignal16
ephemerisCommonContent_health_bits :: Lens' EphemerisCommonContent Word8
ephemerisCommonContent_fit_interval :: Lens' EphemerisCommonContent Word32
data EphemerisCommonContentDepA
EphemerisCommonContentDepA :: !GnssSignal -> !GpsTime -> !Double -> !Word32 -> !Word8 -> !Word8 -> EphemerisCommonContentDepA
-- | GNSS signal identifier
[_ephemerisCommonContentDepA_sid] :: EphemerisCommonContentDepA -> !GnssSignal
-- | Time of Ephemerides
[_ephemerisCommonContentDepA_toe] :: EphemerisCommonContentDepA -> !GpsTime
-- | 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
ephemerisCommonContentDepA_valid :: Lens' EphemerisCommonContentDepA Word8
ephemerisCommonContentDepA_ura :: Lens' EphemerisCommonContentDepA Double
ephemerisCommonContentDepA_toe :: Lens' EphemerisCommonContentDepA GpsTime
ephemerisCommonContentDepA_sid :: Lens' EphemerisCommonContentDepA GnssSignal
ephemerisCommonContentDepA_health_bits :: Lens' EphemerisCommonContentDepA Word8
ephemerisCommonContentDepA_fit_interval :: Lens' EphemerisCommonContentDepA Word32
msgEphemerisGpsDepE :: Word16
-- | 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 -> !GpsTime -> !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 -> !GpsTime
-- | Issue of ephemeris data
[_msgEphemerisGpsDepE_iode] :: MsgEphemerisGpsDepE -> !Word8
-- | Issue of clock data
[_msgEphemerisGpsDepE_iodc] :: MsgEphemerisGpsDepE -> !Word16
msgEphemerisGpsDepE_w :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_toc :: Lens' MsgEphemerisGpsDepE GpsTime
msgEphemerisGpsDepE_tgd :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_sqrta :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_omegadot :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_omega0 :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_m0 :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_iode :: Lens' MsgEphemerisGpsDepE Word8
msgEphemerisGpsDepE_iodc :: Lens' MsgEphemerisGpsDepE Word16
msgEphemerisGpsDepE_inc_dot :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_inc :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_ecc :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_dn :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_common :: Lens' MsgEphemerisGpsDepE EphemerisCommonContentDepA
msgEphemerisGpsDepE_c_us :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_c_uc :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_c_rs :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_c_rc :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_c_is :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_c_ic :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_af2 :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_af1 :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGpsDepE_af0 :: Lens' MsgEphemerisGpsDepE Double
msgEphemerisGps :: Word16
-- | SBP class for message MSG_EPHEMERIS_GPS (0x0086).
--
-- 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 -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !Double -> !GpsTimeSec -> !Word8 -> !Word16 -> MsgEphemerisGps
-- | Values common for all ephemeris types
[_msgEphemerisGps_common] :: MsgEphemerisGps -> !EphemerisCommonContent
-- | Group delay differential between L1 and L2
[_msgEphemerisGps_tgd] :: MsgEphemerisGps -> !Double
-- | Amplitude of the sine harmonic correction term to the orbit radius
[_msgEphemerisGps_c_rs] :: MsgEphemerisGps -> !Double
-- | Amplitude of the cosine harmonic correction term to the orbit radius
[_msgEphemerisGps_c_rc] :: MsgEphemerisGps -> !Double
-- | Amplitude of the cosine harmonic correction term to the argument of
-- latitude
[_msgEphemerisGps_c_uc] :: MsgEphemerisGps -> !Double
-- | Amplitude of the sine harmonic correction term to the argument of
-- latitude
[_msgEphemerisGps_c_us] :: MsgEphemerisGps -> !Double
-- | Amplitude of the cosine harmonic correction term to the angle of
-- inclination
[_msgEphemerisGps_c_ic] :: MsgEphemerisGps -> !Double
-- | Amplitude of the sine harmonic correction term to the angle of
-- inclination
[_msgEphemerisGps_c_is] :: MsgEphemerisGps -> !Double
-- | 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 -> !Double
-- | Polynomial clock correction coefficient (clock drift)
[_msgEphemerisGps_af1] :: MsgEphemerisGps -> !Double
-- | Polynomial clock correction coefficient (rate of clock drift)
[_msgEphemerisGps_af2] :: MsgEphemerisGps -> !Double
-- | Clock reference
[_msgEphemerisGps_toc] :: MsgEphemerisGps -> !GpsTimeSec
-- | Issue of ephemeris data
[_msgEphemerisGps_iode] :: MsgEphemerisGps -> !Word8
-- | Issue of clock data
[_msgEphemerisGps_iodc] :: MsgEphemerisGps -> !Word16
msgEphemerisGps_w :: Lens' MsgEphemerisGps Double
msgEphemerisGps_toc :: Lens' MsgEphemerisGps GpsTimeSec
msgEphemerisGps_tgd :: Lens' MsgEphemerisGps Double
msgEphemerisGps_sqrta :: Lens' MsgEphemerisGps Double
msgEphemerisGps_omegadot :: Lens' MsgEphemerisGps Double
msgEphemerisGps_omega0 :: Lens' MsgEphemerisGps Double
msgEphemerisGps_m0 :: Lens' MsgEphemerisGps Double
msgEphemerisGps_iode :: Lens' MsgEphemerisGps Word8
msgEphemerisGps_iodc :: Lens' MsgEphemerisGps Word16
msgEphemerisGps_inc_dot :: Lens' MsgEphemerisGps Double
msgEphemerisGps_inc :: Lens' MsgEphemerisGps Double
msgEphemerisGps_ecc :: Lens' MsgEphemerisGps Double
msgEphemerisGps_dn :: Lens' MsgEphemerisGps Double
msgEphemerisGps_common :: Lens' MsgEphemerisGps EphemerisCommonContent
msgEphemerisGps_c_us :: Lens' MsgEphemerisGps Double
msgEphemerisGps_c_uc :: Lens' MsgEphemerisGps Double
msgEphemerisGps_c_rs :: Lens' MsgEphemerisGps Double
msgEphemerisGps_c_rc :: Lens' MsgEphemerisGps Double
msgEphemerisGps_c_is :: Lens' MsgEphemerisGps Double
msgEphemerisGps_c_ic :: Lens' MsgEphemerisGps Double
msgEphemerisGps_af2 :: Lens' MsgEphemerisGps Double
msgEphemerisGps_af1 :: Lens' MsgEphemerisGps Double
msgEphemerisGps_af0 :: Lens' MsgEphemerisGps Double
msgEphemerisSbasDepA :: 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
msgEphemerisSbasDepA_vel :: Lens' MsgEphemerisSbasDepA [Double]
msgEphemerisSbasDepA_pos :: Lens' MsgEphemerisSbasDepA [Double]
msgEphemerisSbasDepA_common :: Lens' MsgEphemerisSbasDepA EphemerisCommonContentDepA
msgEphemerisSbasDepA_acc :: Lens' MsgEphemerisSbasDepA [Double]
msgEphemerisSbasDepA_a_gf1 :: Lens' MsgEphemerisSbasDepA Double
msgEphemerisSbasDepA_a_gf0 :: Lens' MsgEphemerisSbasDepA Double
msgEphemerisGloDepA :: 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]
msgEphemerisGloDepA_vel :: Lens' MsgEphemerisGloDepA [Double]
msgEphemerisGloDepA_tau :: Lens' MsgEphemerisGloDepA Double
msgEphemerisGloDepA_pos :: Lens' MsgEphemerisGloDepA [Double]
msgEphemerisGloDepA_gamma :: Lens' MsgEphemerisGloDepA Double
msgEphemerisGloDepA_common :: Lens' MsgEphemerisGloDepA EphemerisCommonContentDepA
msgEphemerisGloDepA_acc :: Lens' MsgEphemerisGloDepA [Double]
msgEphemerisSbas :: Word16
data MsgEphemerisSbas
MsgEphemerisSbas :: !EphemerisCommonContent -> ![Double] -> ![Double] -> ![Double] -> !Double -> !Double -> 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 -> ![Double]
-- | Acceleration of the GEO at time toe
[_msgEphemerisSbas_acc] :: MsgEphemerisSbas -> ![Double]
-- | Time offset of the GEO clock w.r.t. SBAS Network Time
[_msgEphemerisSbas_a_gf0] :: MsgEphemerisSbas -> !Double
-- | Drift of the GEO clock w.r.t. SBAS Network Time
[_msgEphemerisSbas_a_gf1] :: MsgEphemerisSbas -> !Double
msgEphemerisSbas_vel :: Lens' MsgEphemerisSbas [Double]
msgEphemerisSbas_pos :: Lens' MsgEphemerisSbas [Double]
msgEphemerisSbas_common :: Lens' MsgEphemerisSbas EphemerisCommonContent
msgEphemerisSbas_acc :: Lens' MsgEphemerisSbas [Double]
msgEphemerisSbas_a_gf1 :: Lens' MsgEphemerisSbas Double
msgEphemerisSbas_a_gf0 :: Lens' MsgEphemerisSbas Double
msgEphemerisGloDepB :: 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 :: !EphemerisCommonContent -> !Double -> !Double -> ![Double] -> ![Double] -> ![Double] -> MsgEphemerisGloDepB
-- | Values common for all ephemeris types
[_msgEphemerisGloDepB_common] :: MsgEphemerisGloDepB -> !EphemerisCommonContent
-- | 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]
msgEphemerisGloDepB_vel :: Lens' MsgEphemerisGloDepB [Double]
msgEphemerisGloDepB_tau :: Lens' MsgEphemerisGloDepB Double
msgEphemerisGloDepB_pos :: Lens' MsgEphemerisGloDepB [Double]
msgEphemerisGloDepB_gamma :: Lens' MsgEphemerisGloDepB Double
msgEphemerisGloDepB_common :: Lens' MsgEphemerisGloDepB EphemerisCommonContent
msgEphemerisGloDepB_acc :: Lens' MsgEphemerisGloDepB [Double]
msgEphemerisGloDepC :: 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 :: !EphemerisCommonContent -> !Double -> !Double -> !Double -> ![Double] -> ![Double] -> ![Double] -> !Word8 -> MsgEphemerisGloDepC
-- | Values common for all ephemeris types
[_msgEphemerisGloDepC_common] :: MsgEphemerisGloDepC -> !EphemerisCommonContent
-- | 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
msgEphemerisGloDepC_vel :: Lens' MsgEphemerisGloDepC [Double]
msgEphemerisGloDepC_tau :: Lens' MsgEphemerisGloDepC Double
msgEphemerisGloDepC_pos :: Lens' MsgEphemerisGloDepC [Double]
msgEphemerisGloDepC_gamma :: Lens' MsgEphemerisGloDepC Double
msgEphemerisGloDepC_fcn :: Lens' MsgEphemerisGloDepC Word8
msgEphemerisGloDepC_d_tau :: Lens' MsgEphemerisGloDepC Double
msgEphemerisGloDepC_common :: Lens' MsgEphemerisGloDepC EphemerisCommonContent
msgEphemerisGloDepC_acc :: Lens' MsgEphemerisGloDepC [Double]
msgEphemerisGlo :: Word16
-- | SBP class for message MSG_EPHEMERIS_GLO (0x0088).
--
-- 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 -> !Double -> !Double -> !Double -> ![Double] -> ![Double] -> ![Double] -> !Word8 -> !Word8 -> MsgEphemerisGlo
-- | Values common for all ephemeris types
[_msgEphemerisGlo_common] :: MsgEphemerisGlo -> !EphemerisCommonContent
-- | Relative deviation of predicted carrier frequency from nominal
[_msgEphemerisGlo_gamma] :: MsgEphemerisGlo -> !Double
-- | Correction to the SV time
[_msgEphemerisGlo_tau] :: MsgEphemerisGlo -> !Double
-- | Equipment delay between L1 and L2
[_msgEphemerisGlo_d_tau] :: MsgEphemerisGlo -> !Double
-- | 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 -> ![Double]
-- | Frequency slot. FCN+8 (that is [1..14]). 0 or 0xFF for invalid
[_msgEphemerisGlo_fcn] :: MsgEphemerisGlo -> !Word8
-- | Issue of ephemeris data
[_msgEphemerisGlo_iod] :: MsgEphemerisGlo -> !Word8
msgEphemerisGlo_vel :: Lens' MsgEphemerisGlo [Double]
msgEphemerisGlo_tau :: Lens' MsgEphemerisGlo Double
msgEphemerisGlo_pos :: Lens' MsgEphemerisGlo [Double]
msgEphemerisGlo_iod :: Lens' MsgEphemerisGlo Word8
msgEphemerisGlo_gamma :: Lens' MsgEphemerisGlo Double
msgEphemerisGlo_fcn :: Lens' MsgEphemerisGlo Word8
msgEphemerisGlo_d_tau :: Lens' MsgEphemerisGlo Double
msgEphemerisGlo_common :: Lens' MsgEphemerisGlo EphemerisCommonContent
msgEphemerisGlo_acc :: Lens' MsgEphemerisGlo [Double]
msgEphemerisDepD :: 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 -> !GnssSignal -> !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 -> !GnssSignal
-- | Issue of ephemeris data
[_msgEphemerisDepD_iode] :: MsgEphemerisDepD -> !Word8
-- | Issue of clock data
[_msgEphemerisDepD_iodc] :: MsgEphemerisDepD -> !Word16
-- | Reserved field
[_msgEphemerisDepD_reserved] :: MsgEphemerisDepD -> !Word32
msgEphemerisDepD_w :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_valid :: Lens' MsgEphemerisDepD Word8
msgEphemerisDepD_toe_wn :: Lens' MsgEphemerisDepD Word16
msgEphemerisDepD_toe_tow :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_toc_wn :: Lens' MsgEphemerisDepD Word16
msgEphemerisDepD_toc_tow :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_tgd :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_sqrta :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_sid :: Lens' MsgEphemerisDepD GnssSignal
msgEphemerisDepD_reserved :: Lens' MsgEphemerisDepD Word32
msgEphemerisDepD_omegadot :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_omega0 :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_m0 :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_iode :: Lens' MsgEphemerisDepD Word8
msgEphemerisDepD_iodc :: Lens' MsgEphemerisDepD Word16
msgEphemerisDepD_inc_dot :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_inc :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_healthy :: Lens' MsgEphemerisDepD Word8
msgEphemerisDepD_ecc :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_dn :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_c_us :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_c_uc :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_c_rs :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_c_rc :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_c_is :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_c_ic :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_af2 :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_af1 :: Lens' MsgEphemerisDepD Double
msgEphemerisDepD_af0 :: Lens' MsgEphemerisDepD Double
msgEphemerisDepA :: 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
msgEphemerisDepA_w :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_valid :: Lens' MsgEphemerisDepA Word8
msgEphemerisDepA_toe_wn :: Lens' MsgEphemerisDepA Word16
msgEphemerisDepA_toe_tow :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_toc_wn :: Lens' MsgEphemerisDepA Word16
msgEphemerisDepA_toc_tow :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_tgd :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_sqrta :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_prn :: Lens' MsgEphemerisDepA Word8
msgEphemerisDepA_omegadot :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_omega0 :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_m0 :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_inc_dot :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_inc :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_healthy :: Lens' MsgEphemerisDepA Word8
msgEphemerisDepA_ecc :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_dn :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_c_us :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_c_uc :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_c_rs :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_c_rc :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_c_is :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_c_ic :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_af2 :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_af1 :: Lens' MsgEphemerisDepA Double
msgEphemerisDepA_af0 :: Lens' MsgEphemerisDepA Double
msgEphemerisDepB :: 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
msgEphemerisDepB_w :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_valid :: Lens' MsgEphemerisDepB Word8
msgEphemerisDepB_toe_wn :: Lens' MsgEphemerisDepB Word16
msgEphemerisDepB_toe_tow :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_toc_wn :: Lens' MsgEphemerisDepB Word16
msgEphemerisDepB_toc_tow :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_tgd :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_sqrta :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_prn :: Lens' MsgEphemerisDepB Word8
msgEphemerisDepB_omegadot :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_omega0 :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_m0 :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_iode :: Lens' MsgEphemerisDepB Word8
msgEphemerisDepB_inc_dot :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_inc :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_healthy :: Lens' MsgEphemerisDepB Word8
msgEphemerisDepB_ecc :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_dn :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_c_us :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_c_uc :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_c_rs :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_c_rc :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_c_is :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_c_ic :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_af2 :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_af1 :: Lens' MsgEphemerisDepB Double
msgEphemerisDepB_af0 :: Lens' MsgEphemerisDepB Double
msgEphemerisDepC :: 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 -> !GnssSignal -> !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 -> !GnssSignal
-- | Issue of ephemeris data
[_msgEphemerisDepC_iode] :: MsgEphemerisDepC -> !Word8
-- | Issue of clock data
[_msgEphemerisDepC_iodc] :: MsgEphemerisDepC -> !Word16
-- | Reserved field
[_msgEphemerisDepC_reserved] :: MsgEphemerisDepC -> !Word32
msgEphemerisDepC_w :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_valid :: Lens' MsgEphemerisDepC Word8
msgEphemerisDepC_toe_wn :: Lens' MsgEphemerisDepC Word16
msgEphemerisDepC_toe_tow :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_toc_wn :: Lens' MsgEphemerisDepC Word16
msgEphemerisDepC_toc_tow :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_tgd :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_sqrta :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_sid :: Lens' MsgEphemerisDepC GnssSignal
msgEphemerisDepC_reserved :: Lens' MsgEphemerisDepC Word32
msgEphemerisDepC_omegadot :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_omega0 :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_m0 :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_iode :: Lens' MsgEphemerisDepC Word8
msgEphemerisDepC_iodc :: Lens' MsgEphemerisDepC Word16
msgEphemerisDepC_inc_dot :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_inc :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_healthy :: Lens' MsgEphemerisDepC Word8
msgEphemerisDepC_ecc :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_dn :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_c_us :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_c_uc :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_c_rs :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_c_rc :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_c_is :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_c_ic :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_af2 :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_af1 :: Lens' MsgEphemerisDepC Double
msgEphemerisDepC_af0 :: Lens' MsgEphemerisDepC Double
-- | ObservationHeaderDep.
--
-- Header of a GPS observation message.
data ObservationHeaderDep
ObservationHeaderDep :: !GpsTime -> !Word8 -> ObservationHeaderDep
-- | GPS time of this observation
[_observationHeaderDep_t] :: ObservationHeaderDep -> !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)
[_observationHeaderDep_n_obs] :: ObservationHeaderDep -> !Word8
observationHeaderDep_t :: Lens' ObservationHeaderDep GpsTime
observationHeaderDep_n_obs :: Lens' ObservationHeaderDep Word8
-- | 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
carrierPhaseDepA_i :: Lens' CarrierPhaseDepA Int32
carrierPhaseDepA_f :: Lens' CarrierPhaseDepA Word8
-- | 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
packedObsContentDepA_prn :: Lens' PackedObsContentDepA Word8
packedObsContentDepA_lock :: Lens' PackedObsContentDepA Word16
packedObsContentDepA_cn0 :: Lens' PackedObsContentDepA Word8
packedObsContentDepA_P :: Lens' PackedObsContentDepA Word32
packedObsContentDepA_L :: Lens' PackedObsContentDepA CarrierPhaseDepA
-- | 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 -> !GnssSignal -> 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 -> !GnssSignal
packedObsContentDepB_sid :: Lens' PackedObsContentDepB GnssSignal
packedObsContentDepB_lock :: Lens' PackedObsContentDepB Word16
packedObsContentDepB_cn0 :: Lens' PackedObsContentDepB Word8
packedObsContentDepB_P :: Lens' PackedObsContentDepB Word32
packedObsContentDepB_L :: Lens' PackedObsContentDepB CarrierPhaseDepA
-- | 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 -> !GnssSignal -> 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 -> !GnssSignal
packedObsContentDepC_sid :: Lens' PackedObsContentDepC GnssSignal
packedObsContentDepC_lock :: Lens' PackedObsContentDepC Word16
packedObsContentDepC_cn0 :: Lens' PackedObsContentDepC Word8
packedObsContentDepC_P :: Lens' PackedObsContentDepC Word32
packedObsContentDepC_L :: Lens' PackedObsContentDepC CarrierPhase
msgObsDepA :: Word16
-- | 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]
msgObsDepA_obs :: Lens' MsgObsDepA [PackedObsContentDepA]
msgObsDepA_header :: Lens' MsgObsDepA ObservationHeaderDep
msgObsDepB :: 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 receievers 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]
msgObsDepB_obs :: Lens' MsgObsDepB [PackedObsContentDepB]
msgObsDepB_header :: Lens' MsgObsDepB ObservationHeaderDep
msgObsDepC :: 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]
msgObsDepC_obs :: Lens' MsgObsDepC [PackedObsContentDepC]
msgObsDepC_header :: Lens' MsgObsDepC ObservationHeaderDep
msgIono :: 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 Valitidy 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
msgIono_t_nmct :: Lens' MsgIono GpsTimeSec
msgIono_b3 :: Lens' MsgIono Double
msgIono_b2 :: Lens' MsgIono Double
msgIono_b1 :: Lens' MsgIono Double
msgIono_b0 :: Lens' MsgIono Double
msgIono_a3 :: Lens' MsgIono Double
msgIono_a2 :: Lens' MsgIono Double
msgIono_a1 :: Lens' MsgIono Double
msgIono_a0 :: Lens' MsgIono Double
msgSvConfigurationGps :: Word16
-- | SBP class for message MSG_SV_CONFIGURATION_GPS (0x0091).
--
-- Please see ICD-GPS-200 (Chapter 20.3.3.5.1.4) for more details.
data MsgSvConfigurationGps
MsgSvConfigurationGps :: !GpsTimeSec -> !Word32 -> MsgSvConfigurationGps
-- | Navigation Message Correction Table Valitidy Time
[_msgSvConfigurationGps_t_nmct] :: MsgSvConfigurationGps -> !GpsTimeSec
-- | L2C capability mask, SV32 bit being MSB, SV1 bit being LSB
[_msgSvConfigurationGps_l2c_mask] :: MsgSvConfigurationGps -> !Word32
msgSvConfigurationGps_t_nmct :: Lens' MsgSvConfigurationGps GpsTimeSec
msgSvConfigurationGps_l2c_mask :: Lens' MsgSvConfigurationGps Word32
msgGroupDelayDepA :: 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 :: !GpsTime -> !Word8 -> !Word8 -> !Int16 -> !Int16 -> !Int16 -> MsgGroupDelayDepA
-- | Data Predict Time of Week
[_msgGroupDelayDepA_t_op] :: MsgGroupDelayDepA -> !GpsTime
-- | 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
msgGroupDelayDepA_valid :: Lens' MsgGroupDelayDepA Word8
msgGroupDelayDepA_tgd :: Lens' MsgGroupDelayDepA Int16
msgGroupDelayDepA_t_op :: Lens' MsgGroupDelayDepA GpsTime
msgGroupDelayDepA_prn :: Lens' MsgGroupDelayDepA Word8
msgGroupDelayDepA_isc_l2c :: Lens' MsgGroupDelayDepA Int16
msgGroupDelayDepA_isc_l1ca :: Lens' MsgGroupDelayDepA Int16
msgGroupDelay :: Word16
-- | SBP class for message MSG_GROUP_DELAY (0x0093).
--
-- 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
msgGroupDelay_valid :: Lens' MsgGroupDelay Word8
msgGroupDelay_tgd :: Lens' MsgGroupDelay Int16
msgGroupDelay_t_op :: Lens' MsgGroupDelay GpsTimeSec
msgGroupDelay_sid :: Lens' MsgGroupDelay GnssSignal
msgGroupDelay_isc_l2c :: Lens' MsgGroupDelay Int16
msgGroupDelay_isc_l1ca :: Lens' MsgGroupDelay Int16
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
almanacCommonContent_valid :: Lens' AlmanacCommonContent Word8
almanacCommonContent_ura :: Lens' AlmanacCommonContent Double
almanacCommonContent_toa :: Lens' AlmanacCommonContent GpsTimeSec
almanacCommonContent_sid :: Lens' AlmanacCommonContent GnssSignal
almanacCommonContent_health_bits :: Lens' AlmanacCommonContent Word8
almanacCommonContent_fit_interval :: Lens' AlmanacCommonContent Word32
msgAlmanacGps :: Word16
-- | SBP class for message MSG_ALMANAC_GPS (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 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
msgAlmanacGps_w :: Lens' MsgAlmanacGps Double
msgAlmanacGps_sqrta :: Lens' MsgAlmanacGps Double
msgAlmanacGps_omegadot :: Lens' MsgAlmanacGps Double
msgAlmanacGps_omega0 :: Lens' MsgAlmanacGps Double
msgAlmanacGps_m0 :: Lens' MsgAlmanacGps Double
msgAlmanacGps_inc :: Lens' MsgAlmanacGps Double
msgAlmanacGps_ecc :: Lens' MsgAlmanacGps Double
msgAlmanacGps_common :: Lens' MsgAlmanacGps AlmanacCommonContent
msgAlmanacGps_af1 :: Lens' MsgAlmanacGps Double
msgAlmanacGps_af0 :: Lens' MsgAlmanacGps Double
msgAlmanacGlo :: Word16
-- | SBP class for message MSG_ALMANAC_GLO (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 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
msgAlmanacGlo_t_lambda_na :: Lens' MsgAlmanacGlo Double
msgAlmanacGlo_t_dot :: Lens' MsgAlmanacGlo Double
msgAlmanacGlo_t :: Lens' MsgAlmanacGlo Double
msgAlmanacGlo_omega :: Lens' MsgAlmanacGlo Double
msgAlmanacGlo_lambda_na :: Lens' MsgAlmanacGlo Double
msgAlmanacGlo_i :: Lens' MsgAlmanacGlo Double
msgAlmanacGlo_epsilon :: Lens' MsgAlmanacGlo Double
msgAlmanacGlo_common :: Lens' MsgAlmanacGlo AlmanacCommonContent
msgFcnsGlo :: Word16
-- | SBP class for message MSG_FCNS_GLO (0x0072).
--
-- The message reports mapping information regarding GLONASS SV orbital
-- and frequency slots. Mapped as follow: index (SV orbital slot)
-- fcns[index] 0 0xFF 1 FCN for SV orbital slot 1 ... ... 28 FCN for SV
-- orbital slot 28 29 0xFF 30 0xFF 31 0xFF
data MsgFcnsGlo
MsgFcnsGlo :: !Word16 -> !Word32 -> ![Word8] -> MsgFcnsGlo
-- | GPS Week number
[_msgFcnsGlo_wn] :: MsgFcnsGlo -> !Word16
-- | GPS Time of week
[_msgFcnsGlo_tow_ms] :: MsgFcnsGlo -> !Word32
-- | GLONASS fequency number per orbital slot
[_msgFcnsGlo_fcns] :: MsgFcnsGlo -> ![Word8]
msgFcnsGlo_wn :: Lens' MsgFcnsGlo Word16
msgFcnsGlo_tow_ms :: Lens' MsgFcnsGlo Word32
msgFcnsGlo_fcns :: Lens' MsgFcnsGlo [Word8]
msgAlmanac :: Word16
-- | 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
msgSetTime :: 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
msgReset :: 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_flags :: Iso' MsgReset Word32
msgResetDep :: 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
msgCwResults :: 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
msgCwStart :: 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
msgResetFilters :: 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_filter :: Iso' MsgResetFilters Word8
msgInitBase :: Word16
-- | SBP class for message MSG_INIT_BASE (0x0023).
--
-- This message initializes the integer ambiguity resolution (IAR)
-- process on the Piksi to use an assumed baseline position between the
-- base station and rover receivers. Warns via MSG_PRINT if there aren't
-- a shared minimum number (4) of satellite observations between the two.
data MsgInitBase
MsgInitBase :: MsgInitBase
msgThreadState :: 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_stack_free :: Lens' MsgThreadState Word32
msgThreadState_name :: Lens' MsgThreadState Text
msgThreadState_cpu :: Lens' 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
uARTChannel_tx_throughput :: Lens' UARTChannel Float
uARTChannel_tx_buffer_level :: Lens' UARTChannel Word8
uARTChannel_rx_throughput :: Lens' UARTChannel Float
uARTChannel_rx_buffer_level :: Lens' UARTChannel Word8
uARTChannel_io_error_count :: Lens' UARTChannel Word16
uARTChannel_crc_error_count :: Lens' UARTChannel Word16
-- | 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
period_pmin :: Lens' Period Int32
period_pmax :: Lens' Period Int32
period_current :: Lens' Period Int32
period_avg :: Lens' Period Int32
-- | 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
latency_lmin :: Lens' Latency Int32
latency_lmax :: Lens' Latency Int32
latency_current :: Lens' Latency Int32
latency_avg :: Lens' Latency Int32
msgUartState :: Word16
-- | 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
msgUartState_uart_ftdi :: Lens' MsgUartState UARTChannel
msgUartState_uart_b :: Lens' MsgUartState UARTChannel
msgUartState_uart_a :: Lens' MsgUartState UARTChannel
msgUartState_obs_period :: Lens' MsgUartState Period
msgUartState_latency :: Lens' MsgUartState Latency
msgUartStateDepa :: 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
msgUartStateDepa_uart_ftdi :: Lens' MsgUartStateDepa UARTChannel
msgUartStateDepa_uart_b :: Lens' MsgUartStateDepa UARTChannel
msgUartStateDepa_uart_a :: Lens' MsgUartStateDepa UARTChannel
msgUartStateDepa_latency :: Lens' MsgUartStateDepa Latency
msgIarState :: 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
msgIarState_num_hyps :: Iso' MsgIarState Word32
msgMaskSatellite :: Word16
-- | SBP class for message MSG_MASK_SATELLITE (0x001B).
--
-- 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
msgMaskSatellite_sid :: Lens' MsgMaskSatellite GnssSignal
msgMaskSatellite_mask :: Lens' MsgMaskSatellite Word8
msgDeviceMonitor :: 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
msgDeviceMonitor_fe_temperature :: Lens' MsgDeviceMonitor Int16
msgDeviceMonitor_dev_vin :: Lens' MsgDeviceMonitor Int16
msgDeviceMonitor_cpu_vint :: Lens' MsgDeviceMonitor Int16
msgDeviceMonitor_cpu_vaux :: Lens' MsgDeviceMonitor Int16
msgDeviceMonitor_cpu_temperature :: Lens' MsgDeviceMonitor Int16
msgCommandReq :: 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
msgCommandReq_sequence :: Lens' MsgCommandReq Word32
msgCommandReq_command :: Lens' MsgCommandReq Text
msgCommandResp :: 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
msgCommandResp_sequence :: Lens' MsgCommandResp Word32
msgCommandResp_code :: Lens' MsgCommandResp Int32
msgCommandOutput :: 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
msgCommandOutput_sequence :: Lens' MsgCommandOutput Word32
msgCommandOutput_line :: Lens' MsgCommandOutput Text
msgNetworkStateReq :: 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
msgNetworkStateResp :: 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_tx_bytes :: Lens' MsgNetworkStateResp Word32
msgNetworkStateResp_rx_bytes :: Lens' MsgNetworkStateResp Word32
msgNetworkStateResp_ipv6_mask_size :: Lens' MsgNetworkStateResp Word8
msgNetworkStateResp_ipv6_address :: Lens' MsgNetworkStateResp [Word8]
msgNetworkStateResp_ipv4_mask_size :: Lens' MsgNetworkStateResp Word8
msgNetworkStateResp_ipv4_address :: Lens' MsgNetworkStateResp [Word8]
msgNetworkStateResp_interface_name :: Lens' MsgNetworkStateResp Text
msgNetworkStateResp_flags :: Lens' MsgNetworkStateResp Word32
msgSpecan :: Word16
-- | SBP class for message MSG_SPECAN (0x0050).
--
-- 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]
msgSpecan_t :: Lens' MsgSpecan GpsTime
msgSpecan_freq_step :: Lens' MsgSpecan Float
msgSpecan_freq_ref :: Lens' MsgSpecan Float
msgSpecan_channel_tag :: Lens' MsgSpecan Word16
msgSpecan_amplitude_value :: Lens' MsgSpecan [Word8]
msgSpecan_amplitude_unit :: Lens' MsgSpecan Float
msgSpecan_amplitude_ref :: Lens' MsgSpecan Float
msgSettingsSave :: Word16
-- | 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
msgSettingsWrite :: Word16
-- | SBP class for message MSG_SETTINGS_WRITE (0x00A0).
--
-- The setting message writes the device configuration.
data MsgSettingsWrite
MsgSettingsWrite :: !Text -> MsgSettingsWrite
-- | A NULL-terminated and delimited string with contents [SECTION_SETTING,
-- SETTING, VALUE]. A device will only process to this message when it is
-- received from sender ID 0x42.
[_msgSettingsWrite_setting] :: MsgSettingsWrite -> !Text
msgSettingsWrite_setting :: Iso' MsgSettingsWrite Text
msgSettingsReadReq :: Word16
-- | SBP class for message MSG_SETTINGS_READ_REQ (0x00A4).
--
-- The setting message reads the device configuration.
data MsgSettingsReadReq
MsgSettingsReadReq :: !Text -> MsgSettingsReadReq
-- | A NULL-terminated and delimited string with contents [SECTION_SETTING,
-- SETTING]. A device will only respond to this message when it is
-- received from sender ID 0x42.
[_msgSettingsReadReq_setting] :: MsgSettingsReadReq -> !Text
msgSettingsReadReq_setting :: Iso' MsgSettingsReadReq Text
msgSettingsReadResp :: Word16
-- | SBP class for message MSG_SETTINGS_READ_RESP (0x00A5).
--
-- The setting message reads the device configuration.
data MsgSettingsReadResp
MsgSettingsReadResp :: !Text -> MsgSettingsReadResp
-- | A NULL-terminated and delimited string with contents [SECTION_SETTING,
-- SETTING, VALUE].
[_msgSettingsReadResp_setting] :: MsgSettingsReadResp -> !Text
msgSettingsReadResp_setting :: Iso' MsgSettingsReadResp Text
msgSettingsReadByIndexReq :: Word16
-- | SBP class for message MSG_SETTINGS_READ_BY_INDEX_REQ (0x00A2).
--
-- The settings message for iterating through the settings values. It
-- will read the setting at an index, returning a NULL-terminated and
-- delimited string with contents [SECTION_SETTING, SETTING, VALUE]. A
-- device will only respond to this message when it is received from
-- sender ID 0x42.
data MsgSettingsReadByIndexReq
MsgSettingsReadByIndexReq :: !Word16 -> MsgSettingsReadByIndexReq
-- | An index into the device settings, with values ranging from 0 to
-- length(settings)
[_msgSettingsReadByIndexReq_index] :: MsgSettingsReadByIndexReq -> !Word16
msgSettingsReadByIndexReq_index :: Iso' MsgSettingsReadByIndexReq Word16
msgSettingsReadByIndexResp :: Word16
-- | SBP class for message MSG_SETTINGS_READ_BY_INDEX_RESP (0x00A7).
--
-- The settings message for iterating through the settings values. It
-- will read the setting at an index, returning a NULL-terminated and
-- delimited string with contents [SECTION_SETTING, SETTING, VALUE].
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,
-- SETTING, VALUE].
[_msgSettingsReadByIndexResp_setting] :: MsgSettingsReadByIndexResp -> !Text
msgSettingsReadByIndexResp_setting :: Lens' MsgSettingsReadByIndexResp Text
msgSettingsReadByIndexResp_index :: Lens' MsgSettingsReadByIndexResp Word16
msgSettingsReadByIndexDone :: 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
msgSettingsRegister :: 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,
-- SETTING, VALUE].
[_msgSettingsRegister_setting] :: MsgSettingsRegister -> !Text
msgSettingsRegister_setting :: Iso' MsgSettingsRegister Text
msgStartup :: Word16
-- | 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_startup_type :: Lens' MsgStartup Word8
msgStartup_reserved :: Lens' MsgStartup Word16
msgStartup_cause :: Lens' MsgStartup Word8
msgDgnssStatus :: 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
msgDgnssStatus_source :: Lens' MsgDgnssStatus Text
msgDgnssStatus_num_signals :: Lens' MsgDgnssStatus Word8
msgDgnssStatus_latency :: Lens' MsgDgnssStatus Word16
msgDgnssStatus_flags :: Lens' MsgDgnssStatus Word8
msgHeartbeat :: 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
msgHeartbeat_flags :: Iso' MsgHeartbeat Word32
msgTrackingStateDetailed :: Word16
-- | SBP class for message MSG_TRACKING_STATE_DETAILED (0x0011).
--
-- The tracking message returns a set tracking channel parameters for a
-- single tracking channel useful for debugging issues.
data MsgTrackingStateDetailed
MsgTrackingStateDetailed :: !Word64 -> !GpsTime -> !Word32 -> !Word16 -> !CarrierPhase -> !Word8 -> !Word16 -> !GnssSignal -> !Int32 -> !Word16 -> !Word32 -> !Int16 -> !Int16 -> !Word16 -> !Int8 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> !Word8 -> MsgTrackingStateDetailed
-- | Receiver clock time.
[_msgTrackingStateDetailed_recv_time] :: MsgTrackingStateDetailed -> !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.
[_msgTrackingStateDetailed_tot] :: MsgTrackingStateDetailed -> !GpsTime
-- | Pseudorange observation. Valid only when pseudorange valid flag is
-- set.
[_msgTrackingStateDetailed_P] :: MsgTrackingStateDetailed -> !Word32
-- | Pseudorange observation standard deviation. Valid only when
-- pseudorange valid flag is set.
[_msgTrackingStateDetailed_P_std] :: MsgTrackingStateDetailed -> !Word16
-- | Carrier phase observation with typical sign convention. Valid only
-- when PLL pessimistic lock is achieved.
[_msgTrackingStateDetailed_L] :: MsgTrackingStateDetailed -> !CarrierPhase
-- | Carrier-to-Noise density
[_msgTrackingStateDetailed_cn0] :: MsgTrackingStateDetailed -> !Word8
-- | Lock time. It is encoded according to DF402 from the RTCM 10403.2
-- Amendment 2 specification. Valid values range from 0 to 15.
[_msgTrackingStateDetailed_lock] :: MsgTrackingStateDetailed -> !Word16
-- | GNSS signal identifier.
[_msgTrackingStateDetailed_sid] :: MsgTrackingStateDetailed -> !GnssSignal
-- | Carrier Doppler frequency.
[_msgTrackingStateDetailed_doppler] :: MsgTrackingStateDetailed -> !Int32
-- | Carrier Doppler frequency standard deviation.
[_msgTrackingStateDetailed_doppler_std] :: MsgTrackingStateDetailed -> !Word16
-- | Number of seconds of continuous tracking. Specifies how much time
-- signal is in continuous track.
[_msgTrackingStateDetailed_uptime] :: MsgTrackingStateDetailed -> !Word32
-- | TCXO clock offset. Valid only when valid clock valid flag is set.
[_msgTrackingStateDetailed_clock_offset] :: MsgTrackingStateDetailed -> !Int16
-- | TCXO clock drift. Valid only when valid clock valid flag is set.
[_msgTrackingStateDetailed_clock_drift] :: MsgTrackingStateDetailed -> !Int16
-- | Early-Prompt (EP) and Prompt-Late (PL) correlators spacing.
[_msgTrackingStateDetailed_corr_spacing] :: MsgTrackingStateDetailed -> !Word16
-- | Acceleration. Valid only when acceleration valid flag is set.
[_msgTrackingStateDetailed_acceleration] :: MsgTrackingStateDetailed -> !Int8
-- | Synchronization status flags.
[_msgTrackingStateDetailed_sync_flags] :: MsgTrackingStateDetailed -> !Word8
-- | TOW status flags.
[_msgTrackingStateDetailed_tow_flags] :: MsgTrackingStateDetailed -> !Word8
-- | Tracking loop status flags.
[_msgTrackingStateDetailed_track_flags] :: MsgTrackingStateDetailed -> !Word8
-- | Navigation data status flags.
[_msgTrackingStateDetailed_nav_flags] :: MsgTrackingStateDetailed -> !Word8
-- | Parameters sets flags.
[_msgTrackingStateDetailed_pset_flags] :: MsgTrackingStateDetailed -> !Word8
-- | Miscellaneous flags.
[_msgTrackingStateDetailed_misc_flags] :: MsgTrackingStateDetailed -> !Word8
msgTrackingStateDetailed_uptime :: Lens' MsgTrackingStateDetailed Word32
msgTrackingStateDetailed_track_flags :: Lens' MsgTrackingStateDetailed Word8
msgTrackingStateDetailed_tow_flags :: Lens' MsgTrackingStateDetailed Word8
msgTrackingStateDetailed_tot :: Lens' MsgTrackingStateDetailed GpsTime
msgTrackingStateDetailed_sync_flags :: Lens' MsgTrackingStateDetailed Word8
msgTrackingStateDetailed_sid :: Lens' MsgTrackingStateDetailed GnssSignal
msgTrackingStateDetailed_recv_time :: Lens' MsgTrackingStateDetailed Word64
msgTrackingStateDetailed_pset_flags :: Lens' MsgTrackingStateDetailed Word8
msgTrackingStateDetailed_nav_flags :: Lens' MsgTrackingStateDetailed Word8
msgTrackingStateDetailed_misc_flags :: Lens' MsgTrackingStateDetailed Word8
msgTrackingStateDetailed_lock :: Lens' MsgTrackingStateDetailed Word16
msgTrackingStateDetailed_doppler_std :: Lens' MsgTrackingStateDetailed Word16
msgTrackingStateDetailed_doppler :: Lens' MsgTrackingStateDetailed Int32
msgTrackingStateDetailed_corr_spacing :: Lens' MsgTrackingStateDetailed Word16
msgTrackingStateDetailed_cn0 :: Lens' MsgTrackingStateDetailed Word8
msgTrackingStateDetailed_clock_offset :: Lens' MsgTrackingStateDetailed Int16
msgTrackingStateDetailed_clock_drift :: Lens' MsgTrackingStateDetailed Int16
msgTrackingStateDetailed_acceleration :: Lens' MsgTrackingStateDetailed Int8
msgTrackingStateDetailed_P_std :: Lens' MsgTrackingStateDetailed Word16
msgTrackingStateDetailed_P :: Lens' MsgTrackingStateDetailed Word32
msgTrackingStateDetailed_L :: Lens' MsgTrackingStateDetailed CarrierPhase
-- | TrackingChannelState.
--
-- Tracking channel state for a specific satellite signal and measured
-- signal power.
data TrackingChannelState
TrackingChannelState :: !GnssSignal16 -> !Word8 -> !Word8 -> TrackingChannelState
-- | GNSS signal being tracked
[_trackingChannelState_sid] :: TrackingChannelState -> !GnssSignal16
-- | Frequency channel number (GLONASS only)
[_trackingChannelState_fcn] :: TrackingChannelState -> !Word8
-- | Carrier-to-Noise density. Zero implies invalid cn0.
[_trackingChannelState_cn0] :: TrackingChannelState -> !Word8
trackingChannelState_sid :: Lens' TrackingChannelState GnssSignal16
trackingChannelState_fcn :: Lens' TrackingChannelState Word8
trackingChannelState_cn0 :: Lens' TrackingChannelState Word8
msgTrackingState :: Word16
-- | 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]
msgTrackingState_states :: Iso' MsgTrackingState [TrackingChannelState]
-- | TrackingChannelCorrelation.
--
-- Structure containing in-phase and quadrature correlation components.
data TrackingChannelCorrelation
TrackingChannelCorrelation :: !Int32 -> !Int32 -> TrackingChannelCorrelation
-- | In-phase correlation
[_trackingChannelCorrelation_I] :: TrackingChannelCorrelation -> !Int32
-- | Quadrature correlation
[_trackingChannelCorrelation_Q] :: TrackingChannelCorrelation -> !Int32
trackingChannelCorrelation_Q :: Lens' TrackingChannelCorrelation Int32
trackingChannelCorrelation_I :: Lens' TrackingChannelCorrelation Int32
msgTrackingIq :: Word16
-- | SBP class for message MSG_TRACKING_IQ (0x001C).
--
-- 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]
msgTrackingIq_sid :: Lens' MsgTrackingIq GnssSignal
msgTrackingIq_corrs :: Lens' MsgTrackingIq [TrackingChannelCorrelation]
msgTrackingIq_channel :: Lens' MsgTrackingIq Word8
-- | 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
trackingChannelStateDepA_state :: Lens' TrackingChannelStateDepA Word8
trackingChannelStateDepA_prn :: Lens' TrackingChannelStateDepA Word8
trackingChannelStateDepA_cn0 :: Lens' TrackingChannelStateDepA Float
msgTrackingStateDepA :: Word16
-- | SBP class for message MSG_TRACKING_STATE_DEP_A (0x0016).
--
-- Deprecated.
data MsgTrackingStateDepA
MsgTrackingStateDepA :: ![TrackingChannelStateDepA] -> MsgTrackingStateDepA
-- | Satellite tracking channel state
[_msgTrackingStateDepA_states] :: MsgTrackingStateDepA -> ![TrackingChannelStateDepA]
msgTrackingStateDepA_states :: Iso' MsgTrackingStateDepA [TrackingChannelStateDepA]
-- | TrackingChannelStateDepB.
--
-- Deprecated.
data TrackingChannelStateDepB
TrackingChannelStateDepB :: !Word8 -> !GnssSignal -> !Float -> TrackingChannelStateDepB
-- | Status of tracking channel
[_trackingChannelStateDepB_state] :: TrackingChannelStateDepB -> !Word8
-- | GNSS signal being tracked
[_trackingChannelStateDepB_sid] :: TrackingChannelStateDepB -> !GnssSignal
-- | Carrier-to-noise density
[_trackingChannelStateDepB_cn0] :: TrackingChannelStateDepB -> !Float
trackingChannelStateDepB_state :: Lens' TrackingChannelStateDepB Word8
trackingChannelStateDepB_sid :: Lens' TrackingChannelStateDepB GnssSignal
trackingChannelStateDepB_cn0 :: Lens' TrackingChannelStateDepB Float
msgTrackingStateDepB :: Word16
-- | SBP class for message MSG_TRACKING_STATE_DEP_B (0x0013).
--
-- Deprecated.
data MsgTrackingStateDepB
MsgTrackingStateDepB :: ![TrackingChannelStateDepB] -> MsgTrackingStateDepB
-- | Signal tracking channel state
[_msgTrackingStateDepB_states] :: MsgTrackingStateDepB -> ![TrackingChannelStateDepB]
msgTrackingStateDepB_states :: Iso' MsgTrackingStateDepB [TrackingChannelStateDepB]
msgUserData :: Word16
-- | 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_contents :: Iso' MsgUserData [Word8]