wpietri / simpleais Goto Github PK
View Code? Open in Web Editor NEWA simple Python AIS parser intended for casual use.
License: GNU Lesser General Public License v3.0
A simple Python AIS parser intended for casual use.
License: GNU Lesser General Public License v3.0
Message type 24 comes in two variants, called "part A" and "part B". simpleais always returns both sets of fields.
Example message: !AIVDM,1,1,,B,H5NhCmTN7B=400500000001P0004,0*56
Decoded by simpleais:
type 24
repeat 0
mmsi 367793110
partno 1
shipname G!4#Q@@AP@@@@@@@X
ignored-160 4
shiptype Fishing
vendorid GRM
model 1
serial 5
callsign
to_bow 12
to_stern 0
to_port 0
to_starboard 0
mothership_mmsi 25165824
ignored-162 4
text None
Correct decoding (via Maritec):
type 24
repeat 0
mmsi 367793110
part_no 1
type fishing
vendorid GRMD@@E
callsign @@@@@@@
to_bow 12
to_stern 0
to_port 0
to_starboard 0
spare 4
The output for shipname may be uninitialized memory, at one occasion I got C: DRIVE
- Edit: Never mind, there's a ship with that name :)
This type may require some custom handling as the documentation for AIVDM merged both definitions into the same table:
https://gpsd.gitlab.io/gpsd/AIVDM.html#_type_24_static_data_report
First, thanks for your work on simpleais
, it is quite useful.
I noticed that simpleais
reports bad longitude/latitude values for message 27. The root cause appears to be that _parse_lon
/_parse_lat
use a scale factor of 4 (10^4) regardless of message type, which gives incorrect results for message 27. Message 27 longitude/latitude has a lower resolution (degrees/10) than other AIS message types (degrees/10000).
Excerpt from the standard:
Cheers
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.