ve.can:changing_nmea2000_instances
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
ve.can:changing_nmea2000_instances [2020-06-28 21:36] – [5.2 New method - changing Data instance] mvader | ve.can:changing_nmea2000_instances [2025-02-06 22:04] (current) – [1.3 Considerations before changing instances] mvader | ||
---|---|---|---|
Line 3: | Line 3: | ||
===== 1. Introduction ===== | ===== 1. Introduction ===== | ||
- | Instances are used in an NMEA2000 | + | ==== 1.1 Purpose of NMEA 2000 instances ==== |
+ | Instances are used in an NMEA 2000 network to identify multiple similar products connected on the same network. | ||
- | As an example, take a system with two battery monitors (one for the main battery bank, and another for the hydraulic-thruster bank) and also a Quattro inverter/ | + | As an example, take a system with two battery monitors (one for the main battery bank, and another for the hydraulic-thruster bank) and also a Quattro inverter/ |
- | For the displays to show these values at the right place, they need to know which voltage belongs to what battery. | ||
- | Before going ahead and change | + | ==== 1.2 Different types of instances |
- | === How can I change the instances? === | + | There various types of instances, and for marine systems are two that matter: the Device instance and the Data instance. The data instance goes by various different names, like Fluid instance, Battery instance and DC instance. |
- | This document describes three options: | + | Details and differences of each type are explained in detail in the [[https:// |
- | - Use [[http:// | + | ==== 1.3 Considerations before |
- | - Use [[https:// | + | |
- | - From the commandline of a [[venus-os: | + | |
- | === Device instance, data instances and other instances === | + | First of all, note that it is only rarely necessary to change either device or data instances |
- | There various types of instances, and for marine systems are two that matter in most cases: the Device instance as well as the Data instance. Please make sure to study [[https:// | + | When it is necessary or required to change |
- | === Related information === | + | **GX devices, NMEA2000-out feature** |
- | For more detailed information, see also the FAQ in our [[https:// | + | All instances of the transmitted by a GX device can be set to any value, there is no related functionality. Includes device instances, and data instances. |
- | And the main [[ve.can:nmea-2000: | + | **Other products: Device instance** |
- | ===== 2. Changing | + | The NMEA 2000 device instance, which is the same as the VE.Can device instance, is by default set to 0 on all Victron products. |
+ | |||
+ | Some products, such as Lynx Smart BMS, Solar chargers with a VE.Can port and Battery chargers with a VE.Can port, have functionality that relates to the device instance. Therefore make sure to read the manual of that product before changing the device instance. | ||
+ | |||
+ | **Battery chargers: Data instances (Battery- and DC instance)** | ||
+ | |||
+ | Whilst it is possible to change the Battery and DC instances on a Skylla-i battery charger, changing those will render it impossible for a GX device to properly read the data. This is because the GX device expects the charger' | ||
+ | |||
+ | ==== 1.4 Recommend instancing setup for main MFD brands | ||
+ | |||
+ | The only common use case we encounter in testing and support where it is necessary to change instances is with older Raymarine hardware & software: | ||
+ | |||
+ | * Raymarine i70: max number of tank levels is 5; fluid instance 0-4 and type must be fuel. | ||
+ | * Raymarine i70s: max number of tank levels is 5; fluid instance 0-4 and type must be fuel. | ||
+ | * Axiom MFDs: per Lighthouse version 4.1.75, a maximum of 16 tanks can be connected; fluid instance 0-15. | ||
+ | |||
+ | Further details per brand are in these documents: | ||
+ | |||
+ | * [[venus-os: | ||
+ | * [[venus-os: | ||
+ | * [[venus-os: | ||
+ | * [[venus-os: | ||
+ | |||
+ | ==== 1.5 Different methods for setting up instances ==== | ||
+ | |||
+ | As the NMEA2000 protocol prescribes commands to change an instance | ||
+ | |||
+ | Besides the here described methods there are more, for example some MFDs allow changing instances as well. | ||
+ | |||
+ | - GX Device: Device- instances only | ||
+ | - Actisense software + NGT-1 USB: Device- as well as data-instances | ||
+ | - Maretron software + USB adapter: Unknown | ||
+ | - Commandline of a [[venus-os: | ||
+ | |||
+ | Chapter 2, 3, 4, 5 and 6 explain these methods in detail. | ||
+ | |||
+ | ==== 1.6 Further reading on Victron and NMEA 2000 ==== | ||
+ | |||
+ | * [[ve.can: | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | ===== 2. GX Device: changing device instances ===== | ||
+ | |||
+ | The Settings -> Services -> VE.Can -> Devices menu shows a list of all devices on the N2K / VE.Can network: | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | By clicking the right button, a detailed menu is shown: | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | |||
+ | ===== 3. Actisense: changing device instances | ||
Note: make sure to use a recent Actisense driver. Otherwise the instance might not ‘stick’. | Note: make sure to use a recent Actisense driver. Otherwise the instance might not ‘stick’. | ||
Line 44: | Line 96: | ||
{{: | {{: | ||
- | ===== 3. Changing a data instance with Actisense ===== | + | ===== 4. Actisense: changing data instances |
Requires the [[http:// | Requires the [[http:// | ||
- | Changing a data instance: | + | Step by step instructions: |
- Open Actisense NMEA Reader | - Open Actisense NMEA Reader | ||
- Select data view (tab selection is at the bottom left) | - Select data view (tab selection is at the bottom left) | ||
- | - Right click on the PGN number. Note that this will only work on PGNs that allow changing their data instance: \\ {{: | + | - Right click on the PGN number. Note that this will only work on PGNs that allow changing their data instance |
- | - And change the value: \\ {{: | + | - And change the value (second screenshot below) |
- | Notes for BMVs, Lynx Shunt and the Lynx Ion + Shunt: | + | Notes: |
- | + | * The Battery Instance and the DC instance are the same value within Victron products. Changing one of them, will also change the other one. | |
- | * The Battery Instance and the DC Detailed | + | |
* Since the BMV sends out two voltages, the main voltage and the aux- or starter-voltage, | * Since the BMV sends out two voltages, the main voltage and the aux- or starter-voltage, | ||
+ | * Changing the fluid level instance using Actisense has a bug. Probably due Actisense seeing it as 8 bit number; while in the definition it is a 4 bit number. Work around: using the GX, set the fluid type to Fuel (0), then using Actisense change the fluid instance to the desired value, and then using your GX, set the type back to the desired type. | ||
+ | |||
+ | {{: | ||
- | ===== 4. Changing Instance Using Maretron N2KAnalyzer ===== | + | {{:ve.can: |
- | Maretron uses a term called " | ||
- | WARNING: At Victron we do not understand what and how the Maretron software works with regards to this. We advise to use another tool, not Maretron, so that you know what you are doing, ie know what instance you are changing. So far, we have not been able to use Maretron software to change a data instance. And changing the other instance, the device instance can also be done straight from the Victron GX device its user interface. To change a data instance, for example to fix instance conflicts as reported by the Maretron software, we recommend to use Actisense. Not Maretron. | ||
- | This procedure requires a Maretron USB adapter. | + | ===== 5. Maretron N2KAnalyzer ===== |
- | Open N2KAnalyzer and make sure that the " | + | Maretron uses a term called |
- | {{:ve.can: | + | WARNING: At Victron we do not understand what and how the Maretron software works with regards to this. We advise to use another tool, not Maretron, so that you know what you are doing, ie know what instance you are changing. |
+ | So far, we have not been able to use Maretron software to change a data instance. And changing the other instance, the device instance | ||
- | Within | + | ===== 6. Changing |
- | {{: | + | ==== 6.1 Introduction ==== |
- | + | ||
- | ===== 5. Changing the instances from the GX command line ===== | + | |
- | + | ||
- | ==== 5.1 Introduction ==== | + | |
Instead of using Actisense or Maretron software, it is also possible to change the VE.Can aka N2K Device instance from the GX Device shell. To get root access, follow these instructions: | Instead of using Actisense or Maretron software, it is also possible to change the VE.Can aka N2K Device instance from the GX Device shell. To get root access, follow these instructions: | ||
Once logged into the shell, follow below instructions. More back ground information of the used commands such as dbus and dbus-spy is found by reading about root access document. | Once logged into the shell, follow below instructions. More back ground information of the used commands such as dbus and dbus-spy is found by reading about root access document. | ||
- | ==== 5.1 New method - changing a Device instance ==== | + | ==== 6.2 Warning: better use an Actisense! ==== |
+ | |||
+ | Note that the methods explained in this Chapter 6 are usually not recommended. Use an Actisense instead, see chapters 3 and 4 instead. | ||
+ | |||
+ | ==== 6.3 New method - changing a Device instance ==== | ||
All devices available on the canbus are enumerated under the com.victronenergy.vecan service. And for all devices that support the necessary can-bus commands, the Device instance can be changed. All Victron products support changing their Device instance; and most or all non-Victron products as well. | All devices available on the canbus are enumerated under the com.victronenergy.vecan service. And for all devices that support the necessary can-bus commands, the Device instance can be changed. All Victron products support changing their Device instance; and most or all non-Victron products as well. | ||
Line 91: | Line 144: | ||
value = { | value = { | ||
' | ' | ||
- | ' | + | ' |
' | ' | ||
' | ' | ||
Line 123: | Line 176: | ||
</ | </ | ||
- | ==== 5.2 New method - changing Data instance ==== | + | ==== 6.4 New method - changing Data instance ==== |
This applies only the NMEA2000-out feature. See links on top of page for what the NMEA2000 out feature is. | This applies only the NMEA2000-out feature. See links on top of page for what the NMEA2000 out feature is. | ||
Line 161: | Line 214: | ||
Settings/ | Settings/ | ||
</ | </ | ||
- | ==== 5.3 Old method ==== | + | |
+ | ==== 6.5 Old method ==== | ||
(Only allows changing Device instances - not data instances as used in the NMEA2000-out function) | (Only allows changing Device instances - not data instances as used in the NMEA2000-out function) |
ve.can/changing_nmea2000_instances.1593372973.txt.gz · Last modified: 2020-06-28 21:36 by mvader