sbp-2.3.15: SwiftNav's SBP Library

CopyrightCopyright (C) 2015 Swift Navigation Inc.
LicenseLGPL-3
MaintainerMark Fine <dev@swiftnav.com>
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

SwiftNav.SBP.Types

Description

Common SBP type requirements, containers, and serialization utilities.

Synopsis

Documentation

msgSBPPreamble :: Word8 Source #

Denotes the start of frame transmission. For v1.0, always 0x55.

defaultSender :: Word16 Source #

Default sender ID. Intended for messages sent from the host to the device.

newtype Bytes Source #

Wrapper around ByteString for *JSON and Binary typeclass instances.

Constructors

Bytes 

Fields

data Msg Source #

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.

Constructors

Msg 

Fields

  • _msgSBPType :: !Word16

    Uniquely identifies the type of the payload contents

  • _msgSBPSender :: !Word16

    A unique identifier of the sending hardware. For v1.0, set to the 2 least significant bytes of the device serial number

  • _msgSBPLen :: !Word8

    Byte-length of the payload field

  • _msgSBPPayload :: !Bytes

    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)

  • _msgSBPCrc :: !Word16

    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)

class Binary a => ToSBP a where Source #

Class of generic representation of specialized SBP messages into SBP message frames.

Minimal complete definition

toSBP

Methods

toSBP :: a -> Word16 -> Msg Source #

Convert an SBP message record that is serializable and a two-byte senderID to a binary into an SBP message frame.

Instances

ToSBP MsgBaselineHeading Source # 
ToSBP MsgOrientQuat Source # 
ToSBP MsgOrientEuler Source # 
ToSBP MsgAngularRate Source # 
ToSBP MsgStartup Source # 

Methods

toSBP :: MsgStartup -> Word16 -> Msg Source #

ToSBP MsgDgnssStatus Source # 
ToSBP MsgHeartbeat Source # 
ToSBP MsgInsStatus Source # 
ToSBP MsgSettingsSave Source # 
ToSBP MsgSettingsWrite Source # 
ToSBP MsgSettingsWriteResp Source # 
ToSBP MsgSettingsReadReq Source # 
ToSBP MsgSettingsReadResp Source # 
ToSBP MsgSettingsReadByIndexReq Source # 
ToSBP MsgSettingsReadByIndexResp Source # 
ToSBP MsgSettingsReadByIndexDone Source # 
ToSBP MsgSettingsRegister Source # 
ToSBP MsgGpsTime Source # 

Methods

toSBP :: MsgGpsTime -> Word16 -> Msg Source #

ToSBP MsgUtcTime Source # 

Methods

toSBP :: MsgUtcTime -> Word16 -> Msg Source #

ToSBP MsgDops Source # 

Methods

toSBP :: MsgDops -> Word16 -> Msg Source #

ToSBP MsgPosEcef Source # 

Methods

toSBP :: MsgPosEcef -> Word16 -> Msg Source #

ToSBP MsgPosEcefCov Source # 
ToSBP MsgPosLlh Source # 

Methods

toSBP :: MsgPosLlh -> Word16 -> Msg Source #

ToSBP MsgPosLlhCov Source # 
ToSBP MsgBaselineEcef Source # 
ToSBP MsgBaselineNed Source # 
ToSBP MsgVelEcef Source # 

Methods

toSBP :: MsgVelEcef -> Word16 -> Msg Source #

ToSBP MsgVelEcefCov Source # 
ToSBP MsgVelNed Source # 

Methods

toSBP :: MsgVelNed -> Word16 -> Msg Source #

ToSBP MsgVelNedCov Source # 
ToSBP MsgVelBody Source # 

Methods

toSBP :: MsgVelBody -> Word16 -> Msg Source #

ToSBP MsgAgeCorrections Source # 
ToSBP MsgGpsTimeDepA Source # 
ToSBP MsgDopsDepA Source # 
ToSBP MsgPosEcefDepA Source # 
ToSBP MsgPosLlhDepA Source # 
ToSBP MsgBaselineEcefDepA Source # 
ToSBP MsgBaselineNedDepA Source # 
ToSBP MsgVelEcefDepA Source # 
ToSBP MsgVelNedDepA Source # 
ToSBP MsgBaselineHeadingDepA Source # 
ToSBP MsgMagRaw Source # 

Methods

toSBP :: MsgMagRaw -> Word16 -> Msg Source #

ToSBP MsgLog Source # 

Methods

toSBP :: MsgLog -> Word16 -> Msg Source #

ToSBP MsgFwd Source # 

Methods

toSBP :: MsgFwd -> Word16 -> Msg Source #

ToSBP MsgTweet Source # 

Methods

toSBP :: MsgTweet -> Word16 -> Msg Source #

ToSBP MsgPrintDep Source # 
ToSBP MsgImuRaw Source # 

Methods

toSBP :: MsgImuRaw -> Word16 -> Msg Source #

ToSBP MsgImuAux Source # 

Methods

toSBP :: MsgImuAux -> Word16 -> Msg Source #

ToSBP MsgTrackingStateDetailedDepA Source # 
ToSBP MsgTrackingStateDetailedDep Source # 
ToSBP MsgTrackingState Source # 
ToSBP MsgTrackingIq Source # 
ToSBP MsgTrackingIqDep Source # 
ToSBP MsgTrackingStateDepA Source # 
ToSBP MsgTrackingStateDepB Source # 
ToSBP MsgSsrOrbitClock Source # 
ToSBP MsgSsrCodeBiases Source # 
ToSBP MsgSsrPhaseBiases Source # 
ToSBP MsgSbasRaw Source # 

Methods

toSBP :: MsgSbasRaw -> Word16 -> Msg Source #

ToSBP MsgAlmanac Source # 

Methods

toSBP :: MsgAlmanac -> Word16 -> Msg Source #

ToSBP MsgSetTime Source # 

Methods

toSBP :: MsgSetTime -> Word16 -> Msg Source #

ToSBP MsgReset Source # 

Methods

toSBP :: MsgReset -> Word16 -> Msg Source #

ToSBP MsgResetDep Source # 
ToSBP MsgCwResults Source # 
ToSBP MsgCwStart Source # 

Methods

toSBP :: MsgCwStart -> Word16 -> Msg Source #

ToSBP MsgResetFilters Source # 
ToSBP MsgInitBase Source # 
ToSBP MsgThreadState Source # 
ToSBP MsgUartState Source # 
ToSBP MsgUartStateDepa Source # 
ToSBP MsgIarState Source # 
ToSBP MsgMaskSatellite Source # 
ToSBP MsgMaskSatelliteDep Source # 
ToSBP MsgDeviceMonitor Source # 
ToSBP MsgCommandReq Source # 
ToSBP MsgCommandResp Source # 
ToSBP MsgCommandOutput Source # 
ToSBP MsgNetworkStateReq Source # 
ToSBP MsgNetworkStateResp Source # 
ToSBP MsgNetworkBandwidthUsage Source # 
ToSBP MsgCellModemStatus Source # 
ToSBP MsgSpecanDep Source # 
ToSBP MsgSpecan Source # 

Methods

toSBP :: MsgSpecan -> Word16 -> Msg Source #

ToSBP MsgObs Source # 

Methods

toSBP :: MsgObs -> Word16 -> Msg Source #

ToSBP MsgBasePosLlh Source # 
ToSBP MsgBasePosEcef Source # 
ToSBP MsgEphemerisGpsDepE Source # 
ToSBP MsgEphemerisGps Source # 
ToSBP MsgEphemerisSbasDepA Source # 
ToSBP MsgEphemerisGloDepA Source # 
ToSBP MsgEphemerisSbas Source # 
ToSBP MsgEphemerisGloDepB Source # 
ToSBP MsgEphemerisGloDepC Source # 
ToSBP MsgEphemerisGlo Source # 
ToSBP MsgEphemerisDepD Source # 
ToSBP MsgEphemerisDepA Source # 
ToSBP MsgEphemerisDepB Source # 
ToSBP MsgEphemerisDepC Source # 
ToSBP MsgObsDepA Source # 

Methods

toSBP :: MsgObsDepA -> Word16 -> Msg Source #

ToSBP MsgObsDepB Source # 

Methods

toSBP :: MsgObsDepB -> Word16 -> Msg Source #

ToSBP MsgObsDepC Source # 

Methods

toSBP :: MsgObsDepC -> Word16 -> Msg Source #

ToSBP MsgIono Source # 

Methods

toSBP :: MsgIono -> Word16 -> Msg Source #

ToSBP MsgSvConfigurationGps Source # 
ToSBP MsgGroupDelayDepA Source # 
ToSBP MsgGroupDelayDepB Source # 
ToSBP MsgGroupDelay Source # 
ToSBP MsgAlmanacGpsDep Source # 
ToSBP MsgAlmanacGps Source # 
ToSBP MsgAlmanacGloDep Source # 
ToSBP MsgAlmanacGlo Source # 
ToSBP MsgGloBiases Source # 
ToSBP MsgNdbEvent Source # 
ToSBP MsgFlashProgram Source # 
ToSBP MsgFlashDone Source # 
ToSBP MsgFlashReadReq Source # 
ToSBP MsgFlashReadResp Source # 
ToSBP MsgFlashErase Source # 
ToSBP MsgStmFlashLockSector Source # 
ToSBP MsgStmFlashUnlockSector Source # 
ToSBP MsgStmUniqueIdReq Source # 
ToSBP MsgStmUniqueIdResp Source # 
ToSBP MsgM25FlashWriteStatus Source # 
ToSBP MsgFileioReadReq Source # 
ToSBP MsgFileioReadResp Source # 
ToSBP MsgFileioReadDirReq Source # 
ToSBP MsgFileioReadDirResp Source # 
ToSBP MsgFileioRemove Source # 
ToSBP MsgFileioWriteReq Source # 
ToSBP MsgFileioWriteResp Source # 
ToSBP MsgExtEvent Source # 
ToSBP MsgBootloaderHandshakeReq Source # 
ToSBP MsgBootloaderHandshakeResp Source # 
ToSBP MsgBootloaderJumpToApp Source # 
ToSBP MsgNapDeviceDnaReq Source # 
ToSBP MsgNapDeviceDnaResp Source # 
ToSBP MsgBootloaderHandshakeDepA Source # 
ToSBP MsgAcqResult Source # 
ToSBP MsgAcqResultDepC Source # 
ToSBP MsgAcqResultDepB Source # 
ToSBP MsgAcqResultDepA Source # 
ToSBP MsgAcqSvProfile Source # 
ToSBP MsgAcqSvProfileDep Source # 
ToSBP MsgUserData Source # 
ToSBP MsgOdometry Source #