centerisl avatar image

Cerbo GX NMEA 2000 Device Config - In & Out

I hooked up the VE.Can to NMEA 2000 cable between my Cerbo and my boat's bridged N2K-STNG network - and cross-over devices immediately appeared on both systems - but I'm having trouble configuring them on the Victron side.

I'll start with the incoming (to Victron) tank devices - they immediately showed up on VRM:


And when I look in Devices on the Cerbo, they are there - but I am unable to change the parameters. Fuel (2) above is actually Water - when I try to change the type in the Cerbo UX it doesn't take the change and immediately goes back to the device configuration screen. I am able to change the capacity type to gallons and that persists, but if I try to change the capacity (in this case to 60 gallons) and hit the does NOT persist. I also looked at possibly changing the device IDs of the Cerbo pre-defined tanks but they are read only. This isn't the end of the world but it's bugging me and I'd like to get the configurations correct. How can I change the configuration?

On the Victron N2K outbound...I cannot find a way to get the Devices that the documentation shows. Section 11.3 starts with a UI shot and zero context about how that screen was accessed:


My screen (whether I use the Lynx or CAN-Bus profile) is different - it doesn't have "Devices"


The Cerbo manual points to this blog post, which has the same screen as I have:


....and says "In the coming days we’ll be updating the Marine NMEA 2000 and MFD integration documentation; taking out the now deprecated interfaces as well as adding the earlier released MFD App Integration."

So...reading this now at home...I'm thinking that my UX is "correct" and the Cerbo manual did NOT get updated with the current UX. And that the "Devices" isn't to configure just the devices on that interface, but is a redirection to the Devices submenu on Setup.

My Victron devices are showing up on my Raymarine network - the Cerbo looks reasonable:


But the MultiPlus and the SmartShunt need configuring:


I'll try to get to my boat today to verify, but has anyone been able to configure Victron-based N2K devices successfully?

cerbo gxNMEA 2000 - N2K
1641307099448.png (10.5 KiB)
1641307806742.png (118.1 KiB)
1641308063022.png (411.9 KiB)
1641308412115.png (90.0 KiB)
1641308927305.png (912.2 KiB)
1641309000939.png (1.3 MiB)
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

10 Answers
bathnm avatar image
bathnm answered ·

Regarding the tanks always being fuel. I suspect that within N2K, they are set as fuel, one of the parameters is tank type. What are other N2K displays showing the tank details as? If they are also showing as fuel, you will need to configure the N2K device transmitting the data to transmit the correct tank type.

Which version of VenusOS do you have running on your system. Mine under both the latest release (2.73) and the latest betas (2.80~x) has the devices menu, which lists all the devices on the N2K network. If you do not have the menu, then maybe you are running v2.40 which is what the blog post is talking about.


1641311616118.png (128.4 KiB)
1641311656725.png (120.1 KiB)
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

@Bathnm Thanks for the quick response! I'm actually not sure what version I'm running! I don't seem to be able to find that in VRM - will definitely head to my boat today and verify. The install was done around Thanksgiving...I'm pretty sure I updated the SmartShunt...but that is exactly the kind of thing that would give this problem.

Regarding the "Fuel" sensors - you can actually see those three "Fluid Level" devices on the Raymarine screen I posted (a little greeked out but it's also in the attachments). I have a Maretron USB100 so I can run N2KAnalyzer and change many config values - I think these are Simrad sensors but I forget.

On the Cerbo, go to settings; firmeware. That will show the version you are running and if you have internet access the ability to upgrade.

Stefanie avatar image
Stefanie answered ·

In the other screenshot from your MFD it shows the firmware version as 2.56 which I think is the factory default. Once updated, you'll get the N2K configuration screen.

2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

mvader (Victron Energy) avatar image
mvader (Victron Energy) answered ·

Hi all,

to summarize a few things:

1) to disable the tank inputs of the Cerbo GX itself (or a Venus GX) go to Settings -> I/O. Thats a menu in Remote Console or on your GX Touch. This will remove them from the Device list on the Victron GX device, and stop those tank values from being transmitted out on N2K network with the NMEA2000-out function.

2) To configure tank type (fuel, water, etc) and capacity for third party sender, like from Navico, Yacht Devices, or anything else, you can not use the user interface Victron GX Device. Even though it may seem you can. Instead, use instructions from third party manufacturer.

3) Only thing you do can (and have to) configure on the Victron GX device for those senders is the unit (gallons, liters, etc). That setting is *not* stored in the sender, instead its stored on the GX device and affects what level is used to show remaining capacity on the Victron UIs.

4) the above two can be a bit confusing. We could look at hiding tank capacity and type setting some day.

5) GPS data is only picked up by GX Device (NMEA2000-in function in case you want to call it that), in case it matches spec in the manual. There is no need to discuss why that it is. It is what it is and I don’t see us making a priority any time soon on. changing that.

6) Further to (5): What could be useful, to save people time in understanding why their N2K GPS data isn’t picked up & maybe facilitate improving the software around it, is to have a list of GPS-es or situations that don’t work.

hope above helps to get the facts in a row! Have a good Sunday.

2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

centerisl avatar image
centerisl answered ·

@Stefanie and @Bathnm - you were both right, I was indeed on 2.56 - now updated to 2.73 - and my UI matches the Cerbo documentation.

But that didn't affect my ability to update the Fluid Level inputs for capacity type and capacity - any ideas on that? I am set as "user and installer" there some other meta-setting that would allow me to persist these changes? I CAN make those changes on the Cerbo's tanks...which, ironically, I want to hide. that I've updated the Cerbo - I have perhaps a dozen new N2K inputs on the Raymarine device, including all of the Cerbo's built-in tanks which (again) I'm not using. In the Cerbo's N2K Devices I can only assign the ID - I cannot disable. And in the Cerbo's Devices page for each says Status=Disconnected but when I look at the Device settings it says Connected=Yes. Can I truly delete / whack / hide the Cerbo's tanks?

1 comment
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

Glad you have the devices menu available.

If you re not using the tank sensor inputs on the Cerbo then disable them under settings; io; analogue inputs. Each input can be toggled on and off.

Regarding hanging the capacity, type, etc. Is this for sensors coming over the N2K network, or direct on the Cerbo? If the former then you need to set that on the N2K source device, not the Cerbo.

Some further data about the source of the tank data and what is being displayed where would be useful.

Stefanie avatar image
Stefanie answered ·

Hi @centerisl,

glad it works for you now.

For the Fluid Level, this will work with the upcoming 2.80 Venus OS firmware and is already available in the beta firmware.

Have a look here:

And looks as follows on one of my tank sensors:


edit: >>Can I truly delete / whack / hide the Cerbo's tanks?<<

No, unless they are connected physically to the Cerbo. But since they are coming from N2K, you have to deal with them. The only way to hide/delete/whack the tanks is via your N2k network. If that's not possible because you can't program them, then there is no other way but to disconnect them physically.

2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

centerisl avatar image
centerisl answered ·

@Stefanie - ah if only I'd seen your response while I was still on my boat - I grovelled around and found the beta instructions so I'll try that latest RC when I get back today or tomorrow.

The tanks I want to disable/whack/hide are the Cerbo virtual tanks that are now showing up on my N2K network:


1641323668970.png (986.7 KiB)
1 comment
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.


Now I understand what you mean with virtual tanks. How to toggle them on/off see the answer from @Bathnm.

centerisl avatar image
centerisl answered ·

@Stefanie - well I updated to Latest RC V2.80-36 change.

Your screen shots above are slightly different from mine. On the Device you show "Name" (and not "Hardware version" which is probably scrolled). I do not have "Name", but I do have that option on the built-in Fuel tanks. What are your sensors? Mine are Lowrance Navico Fluid Level Sensor [000-11518-001].

Just for grins I tried it with Litres - no joy.

When I try to change Fluid type it immediately goes back (no change). When I change Capacity, click Accept, it goes back but does not change.

Any more ideas?






2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

Hi, for the Navico, and other third party tank senders, the fuel type cannot be configured via the Cerbo GX. You need to study the documentation of that (non-Victron) tank sender for how to change the fuel type that it is reporting. Same for capacity.

Differences in screenshots are because not all tank senders are the same. The ones built in to the Cerbo GX, as well as a GX Tank 140, feature a whole series of configuration options in the Cerbo menus. And for third party senders (in your case the Navico’s) the only thing our code can do is use the information received and show it.

Read the Navico documentation for how to change its fuel type and capacity. Probably it can be done using a Navico MFD or Chartplotter.

centerisl avatar image centerisl mvader (Victron Energy) ♦♦ ·
Thank you @mvader (Victron Energy) - yes, the docs say to use a Lowrance MFD to configure those settings but I was able to configure those settings in Raymarine's Lighthouse software so I figured Victron would be parallel - it's true that virtually everything Raymarine does is a bit proprietary so there's that difference. I will look at whether I can change those values directly using N2KAnalyzer.
You need to check what is being sent over the N2K network for those sensors. If the network is sending tank details including tank types and you change it on the Cerbo, teh next N2K message will over right hat you sent. I would use N2KAnalyser too heck what the sensors are sending on teh network and change it at source.

If N2KAnalyser is showing that the tank is set correctly, and the Cerbo is not reflecting that then I suspect you have hit a bug.

Hi @Bathnm - I previously used N2KAnalyzer to set the instance IDs of the two non-0 sensors - I'll have to fire it back up and see if I can set those other parameters. Stay tuned :)
As I said earlier, it depends in how far those 3rd party devices are programmable.I don't know about your Navico tank sensors.

I'm using Yacht Devices YDTA-01 sensors which are fully configurable.

Thanks @Stefanie - I actually have a couple of those YD sensors NIB in my closet (it took something like 6 months to receive them from Russia - I sourced the Navico ones in the interim) so I might try replacing the non-fuel sensor if nothing else works.
centerisl avatar image
centerisl answered ·

I'm making some progress - for reference here is my configuration as shown on Maretron's N2KAnakyzer:

@mvader (Victron Energy) is right that Fluid type and tank capacity come from the sender in PGN 127505:1641657216315.png

@Stefanie mentions that YD level sensors are configurable - I see there are two ways to do that, a microSD card on the sensor and by putting some "YD:" config lines in "Installation Description 2", and I think this means that YD sensors are likely not configured when these fields are changed in the Cerbo GX UI. If that's true, then I suggest @mvader (Victron Energy) that these fields be marked in the Cerbo UI as read-only since they will immediately be overwritten by the next received PGN. Or add an option to "override received settings" if you want to add some value.

For my Navico / Lowrance fluid level sensors I suspect there is a parallel N2K-based configuration that Lowrance MFDs can accomplish but I haven't discovered the corresponding protocol. My Raymarine MFDs however allow me to set these parameters - they are obviously NOT persisted back to the sensors - hence my confusion when Victron seemed to allow the same configuration but instead throws away the changes. Rather than source a Lowrance MFD or find a buddy with one to temporarily hook up my sensor(s), I'll probably replace the Water sensor with the YD unit I have and simply live with the percentages on the fuel tank rather than gallons.

I also got a chance to look at the N2K output of the Victron gear, after turning off the phantom tank sensors (thank you @Bathnm!) I'm left with the Cerbo, SmartShunt, and two Multiplus devices. The Cerbo itself seems to have nothing useful:


But the SmartShunt has battery status and state of charge information that will be useful. In particular, it appears I can use the second input on the SmartShunt for the "Starter Battery" I was trying to configure in another thread:


I'm not quite sure why there are two Multiplus devices: they share the same useful PGNs except that one has a third PGN 127508 "Battery Status", this time with the Battery Current and Battery Case Temperature. Maybe both the Battery Current in the Multiplus and SmartShunt are correct and it was simply that I snapped them at different times.



Next time I get to my boat I'm going to attempt to configure the Lowrance sensors via N2KAnalyzer, probably setup the YD fluid sensor, and then tackle getting a N2K GPS (I have...4?) into the Cerbo. I also have several Victron temperature sensors that I'm going to hook up but I think I read that these aren't output to N2K from the Cerbo.

1641657216315.png (80.8 KiB)
1641657273819.png (413.5 KiB)
1641658151976.png (83.6 KiB)
1641658256402.png (108.4 KiB)
1641658781293.png (128.8 KiB)
1641658801939.png (109.7 KiB)
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

@centerisl it should just pick up the NMEA2000 GPS...1641662616336.png

1641662616336.png (197.6 KiB)

One caution is that it appears devices that have a GPS and output NMEA2000 GPS related PGNs will not work unless they are specifically class 60 and device function 145. Just generating the proper PGNs is not enough. I believe this is why I can't get my Vesper Cortex M1's GPS output to show up on my CCGX despite being seen as a device on the n2k bus. I'd love to be wrong. If this is correct it is a shame with the growing number of multi function devices.

From the manual at :

The third party NMEA 2000 GPS sender must meet the following requirements:
• The NMEA 2000 device class must be 60, Navigation.
• The NMEA 2000 device function must be 145, Ownship Position (GNSS).
• Position (latitude, longtitude) must be transmitted in either PGN 129.025.
• Height, which is optional, must be transmitted in PGN 129.029.
• Course and speed (both optional), must be transmitted in PGN 129.026

I could have sworn I found a header file on Victron's github that defined these, but can't find it any more and presume the code actually parsing this isn't open source.

Not Victron's fault I think.

IMO Vesper Marine (now Garmin) is complying with the regulations that state that AIS must have a dedicated GPS. Cortex reports device class Navigation (Class 60) and device function 195, which means dedicated AIS (according to NMEA 2000 Appendix B.6 Class & Function Codes)..."for the purpose of collision avoidance" and not primarily as a navigation device in order to comply with international regulations.

I can understand that Victron is going exactly the same route here and trying to comply as much as possible.with NMEA 2000 specifications. In a common ship setup nowadays this shouldn't be a problem as there are usually more than one device reporting navigation position.


@znep thumbs up for referencing the manual, I wish that was done more often!
znep avatar image znep Stefanie ♦ ·

I am not a NMEA 2000 expert and hope to never become one, so this comment is strictly from a user's perspective. I have two sources of n2k GPS info on my boat, one from the Vesper Cortex and one translated from 0183 by a Rose Point NEMO. Every other device I have that takes GPS input doesn't care what the device type is and will accept either, so this behavior was quite surprising to me when I first figured it out, especially coming from a 0183 world where the concept doesn't even exist.

I'm unlikely to ever add a new standalone device at this point that is *only* a GPS, as that is a poor use of space and money on a small vessel, I see this issue getting worse over time with new builds / upgrades. Worse, I seldom see spec sheets detail what class and device function they output, just the PGNs as that is assumed to be all n2k consumers care about. For example, I can't find that in the specs for Furuno's SCX20 satellite compass (see ). I'm sure I could find out, but the point is Furuno doesn't think there is any need to call that out anywhere I can find. It might work. edit: I just saw Kris's response saying they can't make a SCX20 work, that is a total coincidence. I just picked that as it is on my list of "that would be cool" instruments that are dedicated to providing navigation information to the n2k network.

That said, I do realize that there are a million cool things that Victron could support around NMEA 2000 sensors and display, and I want them all, but that isn't their primary business and it would almost certainly be a bad idea both technically and business wise to devote too many resources to, as that means not devoting resources to the primary reason we buy the products. Building such a feature may be relatively easy, and I'd be happy to give that a shot in this case if that code were open source, but then it has to be both maintained and supported which would be on Victron.

I definitely appreciate the continued slow expansion into tank sensors even though I don't yet use that functionality.

Of course in this case I personally wish they would have better more generic support. :) Or a least another sentence in the manual explicitly saying something along the lines of "Note that many/most multi function devices will not work, check with the manufacturer to confirm if they meet the listed requirements."

@znep - I'm going with Victron's "fault" here - they misunderstand N2K Device Classes.

I do have a Device Class "Navigation systems" - it's my Airmar DST810 depth sensor!

OTOH, my four GPS transmitters are Airmar WX150 with Device Class "Instrumentation/general systems", Raymarine Axioms with Device Class "Internetwork Device", Rosepoint Navigation Nemo with Device Class "Internetwork Device", - and, well, Standard Horizon VHF doesn't publish a Device Class.

Check this - the Victron Cerbo asserts Device Class "Unknown" for itself, the SmartShunt, and Multiplus!

@mvader (Victron Energy) - can you reconsider Victron getting aligned with industry on Device Class?

Hi, @centerisl , yes we will look into it. But know that it might take quite a while before we do.

There is no misunderstanding, its more that, for other reasons, we need to use the device classes, so to get the (from our point of view just a small nice-to-have function) of being able to read position from N2K we needed to use classes as well.

And for such small project we didn't buy many sensors. We bought one, tested it, it worked. Done.

What we'll do first is update the manual to make more clear that it doesn't work for all sensors.

centerisl avatar image centerisl mvader (Victron Energy) ♦♦ ·

Thank you for engaging @mvader (Victron Energy) - but I'm not clear why you are making any decisions based on DD170 "NMEA Device Class" when your devices themselves do not transmit this (required) Request Parameter.

But it's really more than that - today I would say that a dedicated GPS device has probably passed into the rearview mirror - today's devices are multi-function, brokering gateways, and by default GPS-enabled. I suggest taking any 129025 over the alternative which is having a user drag the wave icon to any random location on the map.

129025 - Position, Rapid Update
Category: Navigation
This PGN provides latitude and longitude referenced to WGS84. Being defined as single frame message, as opposed to other PGNs that include latitude and longitude and are defined as fast or multi-packet, this PGN lends itself to being transmitted more frequently without using up excessive bandwidth on the bus for the benefit of receiving equipment that may require rapid position updates.
centerisl avatar image centerisl mvader (Victron Energy) ♦♦ ·

"We bought one, tested it, it worked. Done."

Not so fast. :) Back in the day I was a developer on the .NET Framework - this shirt was on the door of the testing lead:


1641923201214.jpeg (71.9 KiB)


What do you mean with "I think this means that YD sensors are likely not configured when these fields are changed in the Cerbo GX UI"?

The Cerbo GX does not change anything in the configuration of the YD sensors nor does it alter NMEA 2000 messages coming from the sensor. As you correctly mentioned, there are different ways to configure a YD tank sensor, either via MicroSD card or configuration string(s) via CanView app together with a suitable gateway (I use a YDWG to program all my YD devices).

The YD tank sensors are pre-configured (except for the volume). As far as I remember they default to Fuel.

Hi @Stefanie - I was referring to when you said your sensors were "fully configurable" and "this will work with the upcoming 2.80 Venus OS firmware" - I took that to mean that you were using the Victron UI to configure your sensors. As I know now, trying to configure fluid sensors in the Victron UI does not work - for ANY fluid sensors.

kris avatar image
kris answered ·

I have the same problem using GPS 19x everything is from Cerbo is receiving data and it is displayed on the VRM when I am running Furuno SCX-20 Cerbo is not using the data.

I asked about it a few months ago, but did not receive an answer.

2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

centerisl avatar image
centerisl answered ·

A few followup notes: I ended up sourcing a Lowrance HDS7 on Ebay to program my Lowrance fuel senders. They did NOT show up on my Raymarine Axioms so I had to reprogram them based on guidance in this Fuel tank level data is not being populated within an a/c/e/eS/gS-Series MFD article from 5 years ago.

One other point about N2K networks surprised me - while you can have 254 unique Device IDs, "only 50 devices can be simultaneously physically connected to the network." So be careful when you turn on outbound N2K from your Victron Cerbo GX - it starts to publish EVERYTHING and you might inadvertently go past this limit.

2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.