I have many existing NMEA 2000 devices on my boat's network, including DC and AC monitors, inverter/charger, DC digital switching, and more. I'm new to the Venus OS environment, but am quite familiar with embedded firmware development, and NMEA 2000 in particular. Looks pretty simple to create a driver that listens to the vecan port that is connected to my NMEA 2000 network, and parse the PGNs. Right now I can ssh into my Cerbo GX's console and run "candump vecan0" to see all the raw CAN frames, so writing a C/C++ app to interpret the frames is not hard. My question is how do I extend Venus OS to recognize 3rd party devices. For example, I have a two Maretron DCM100's that monitor my engine start and genset start batteries, and I'd like to have Venus OS be able to recognize that they are "attached", and show them as battery monitors in the UI. Ultimately, I'd like to extend the OS to recognize a 3rd party inverter/charger that is connected via NMEA 2000, and monitor and control it in a similar manner to the Multiplus/Quattro.
Any pointers, especially to any existing 3rd party drivers that could help me understand the environment better, would be much appreciated...