Python driver for fixposition gps
Project description
fixposition
Python driver for fixposition gps
NOTE: work-in-progress
Currently these messages are supported: GGA,HDT,ODOMETRY
Functionality overview
parser.parse(msg: str, ignore: List[str] = []) -> FPX_Message | None:
- parse NMEA message to a NamedTuple- record and replay messages with
fixposition
cli - use
gps_node.FpxNode
class as async node to interface with fixposition device over socket.
Usage
Message parsing:
from fixposition import parser
msg = "$GPHDT,61.7,T*05\r\n"
data = parser.parse(msg)
CLI tool
This package provides a command-line tool fixposition
:
Usage: fixposition [OPTIONS] COMMAND [ARGS]...
Options:
--version Show the version and exit.
--help Show this message and exit.
Commands:
listen Listen to messages and print them to stdout
node Start the gps node
record Record messages to file
replay Replay messages from a file or default data if not provided.
How it works
- message definitions are in
fixposition.messages
. Each submodule contains aparse()
function. @validate_checksum
decorator adds nmea checksum to parse function.parser.parse(msg)
returnsNamedTuple
of a message
See .messages
code, extending this should be easy.
References
Development
- develop and test in devcontainer (VSCode)
- trigger ci builds by bumping version with a tag. (see
.gitlab-ci.yml
)
Tooling
- Verisoning :
bump2version
- Linting :
pylint
- Formatting:
black
- Typechecking:
mypy
- scripting:
invoke
: seetasks.py
What goes where
src/fixposition
app code.pip install .
.tasks.py
automates common tasks withinvoke
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
fixposition-0.5.3.tar.gz
(14.0 kB
view hashes)
Built Distribution
Close
Hashes for fixposition-0.5.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c9dfdf5698c9df21f3f0da9b8645e6d78d9b5e6912a387dca3f612d74e28c442 |
|
MD5 | b4449af32ada4df2ad352596954800e0 |
|
BLAKE2b-256 | c70bc5ce7577aaad2ae82ec05dedeeb94c9f435839ebcf26fe0f86ec9917e303 |