Skip to content

technocreatives/n2k-gen

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 

Repository files navigation

n2k-gen

Code generator for NMEA2000 messages from pgns.xml of canboat (https://github.com/canboat/canboat/blob/master/analyzer/pgns.xml) and NMEA2000 CAN bus parsing library based on embedded_hal_can.

n2k-codegen

Code generator for PGN parsers from completed N2K messages.

n2k

Built to transparently handle multi-part n2k messages on top of a CAN bus abstracted by embedded_hal_can. Interfaces with the generated code by the code generator through the PgnRegistry trait.

n2k-test

Parse candump and print decoded messages on the command line.

TODO

  • Interface to identify fast packets and assemble
  • Sending
    • Single frames
    • Fast packets
    • ISO Transport Protocol multi-part messages
  • Receiving and re-assembling of ISO Transport Protocol multi-part messages
  • ISO functions
    • Address claim
    • Product Information
    • Device Information
    • Transmit Messages
  • Example test project
  • Sub-PGN message decoding/proprietary PGNS. Example: PGN 130820 represents multiple possible Fusion messages, the key in the XML disambiguates between different types

Failing PGNs

These PGNs currently don't generate properly for reasons:

  • 129540 / gnssSatsInView: variable length
  • 130820 / Fusion: proprietary PGN
  • 130311 / environmentalParameters: duplicate id name
  • 129029 / gnssPositionData: slices
  • 65288 / seatalkAlarm: duplicate enum names

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages