This page lists the different WattNode® Modbus® meter (WNC series) firmware versions and release notes. The WattNode Modbus meter is not field upgradable and must be returned to the factory for firmware updates. We recommend against firmware upgrades unless necessary to fix a bug or for an essential new feature. There is a nominal charge for firmware updates unless they are needed to fix a bug under warranty. This page does not list every firmware change, but only those likely to affect customers. Some changes are to enhance production or internal diagnostics.

Firmware Version 22

Released: 03/15/2015

Firmware version 22 is only used for the Option FP (Fast Power) version of the WattNode meter. It provides fast power registers that update five times per second. Firmware version 21 was a beta version that was never publicly released.

  • UPDATE: Added CalOptions option, OPT_FP bit (weight 16384), to indicate that the meter has option Fast Power firmware enabled.
  • UPDATE: Added OptRevenueGrade customer diagnostics register 1737, that reads 1 or 0 to indicate that the meter is or is not a revenue-grade model, respectively.
  • UPDATE: Added OptFastPower customer diagnostics register 1738, that reads 1 or 0 to indicate that the meter does or does not have option Fast Power enabled, respectively.
  • UPDATE: Added PowerSecondsFast Basic Float register 1035, that reports the timestamp of the most recent update for the PowerFast registers and increments by 0.2 seconds at 5 hz. This rolls over to zero every 24 hours.
  • UPDATE: Added PowerSumFast Basic Float register 1037, that reports the sum of the fast power readings for all phases and is updated at 5 hz. Averaging does not apply.
  • UPDATE: Added PowerAFast Basic Float register 1039, that reports the power for phase A and is updated at 5 hz. Averaging does not apply
  • UPDATE: Added PowerBFast Basic Float register 1041, that reports the power for phase B and is updated at 5 hz. Averaging does not apply
  • UPDATE: Added PowerCFast Basic Float register 1043, that reports the power for phase C and is updated at 5 hz. Averaging does not apply
  • UPDATE: During startup, before valid readings are available, previous versions would respond with zero values. This firmware version waits to respond to measurement queries until valid readings are available (1-2 seconds).

Firmware Version 20

Released: 12/17/2013

Firmware version 20 is only used with special versions of the WattNode meter that do not include LEDs and the DIP switches.

  • UPDATE: Updated the CalOptions register to include option OPT_NO_LED (weight 4096), which disables the LEDs (status and COM). This may be used for power saving or cost reduction.
  • UPDATE: Updated the CalOptions register to include option OPT_NO_DIP (weight 8192), to disable the DIP switch hardware. Instead, the baud rate will default to 19,200 and the Modbus address to 127. Generally this option will be used in conjunction with factory options to specify the desired baud rate and Modbus address. Enabling this option will disable the feature to restore factory communication settings by setting all DIP switches to the OFF position for 10 seconds.
  • UPDATE: Enabled the hardware watchdog timer with a 1.0 second timeout interval.

Firmware Version 19

Released: 3/18/2013

Manual Supplement: MS-23-WNC-Modbus-Revenue.pdf (PDF, 2 pages)

This release is used for both standard and revenue models of the WattNode Modbus. WattNode Revenue models are configured with the factory lock features below during calibration, while standard models are left with these fields unlocked.

  • UPDATE: Add WattNode Revenue feature to lock CtAmps, CtAmpsA, CtAmpsB, CtAmpsC at the time of calibration. The CT models and rated amperage must be specified when the meter is ordered for Revenue models.
  • UPDATE: Add WattNode Revenue feature to factory lock any configuration registers that could affect energy readings: GainAdjustA, GainAdjustB, GainAdjustC, PhaseAdjustA, PhaseAdjustB, PhaseAdjustC, CreepLimit, and CtDirections.

Firmware Version 18

Released: 11/26/2011

Manual: WNC-Modbus-Manual-V18.pdf

Register List: WNC-Modbus-Register-List-V18.xls – Same as the V16 register list.

  • UPDATE: Implement double-buffering for all timestamps, floating point registers, and 32 bit integer registers so they all correspond to the same set of measurements. This facilitates synchronized accuracy testing by polling all energies and the timestamp with a single Modbus transaction.
  • UPDATE: Eliminated yellow (low power factor) and yellow/red (low power factor, negative power) LED flashing patterns on the phase status LEDs.

Firmware Version 17

Released: 06/15/2011

Manual: File:WNC-MODBUS-Manual-V16.pdf – The V16 manual still applies

Register List: File:WNC-Modbus-Register-List-V16.xls – The V16 register list still applies

This is a minor maintenance release. There are no changes to the manual or the register list. If you are affected by one of the corrected bugs, you should contact CCS about getting a firmware upgrade.

  • BUG: When the Averaging register 1608 was assigned a value higher than the default of 1 (for a 5 second averaging interval), the averaged readings didn’t update properly. The averaged readings alternated between the present averaged value and an older, stale value that was no longer valid. Fixed.
  • BUG: If zero was written to the CreepLimit register (1618), the phase LEDs turned red and the meter reset every 10 seconds. Fixed, a zero value can no longer be written and will cause an exception response.
  • BUG: The OptIoPinMode register didn’t always reflect the factory assigned setting. The IoPinMode register reported the correct value. Now both registers report the correct value.
  • UPDATE: Restrict values written to ModbusMode register 1655 to 0 (RTU) or 1 (TCP-RTU). This prevents invalid values from being written, which could cause communication problems.

Firmware Version 16

Released: 11/16/2010

Manual: File:WNC-MODBUS-Manual-V16.pdf

Register List: File:WNC-Modbus-Register-List-V16.xls

Firmware Enhancements

  • Digital Input/Output Options – Adds support for the new Option IO and Option SSR that configure the WattNode meter X terminal for counting pulses from an external meter, monitoring a digital status signal, or for controlling loads for shedding applications. This support includes the new PulseCount, IoPinData, and IoPinMode registers.
  • Energy Presets – Adds the ability to reset or preset the resettable energy registers on a per-register basis. The preset feature is particularly useful if you are replacing an existing meter and want the reported energy to pick up where the old meter left off. The ConfigPasscode can be configured to ensure this feature isn’t used for tampering.
  • Improved Modbus Response Time – Improves the Modbus message response time. Before the V16 firmware, the worst-case response time was 300 milliseconds. This has improved to less than 25 ms.
  • Configurable Reply DelayReplyDelay (1656) configures a user-defined minimum Modbus reply delay between 5 and 180 milliseconds (the default is 5 milliseconds). This is useful with some Modbus master devices or software that can miss response data if the WattNode meter responds to a request too quickly.
  • Extended Phase Adjustment Limits – Changes the minimum and maximum limits for the PhaseAdjustA, PhaseAdjustB, and PhaseAdjustC registers from ±5000 millidegrees to ±8000 millidegrees (8 degrees).
  • Per-Phase Demand Registers – Adds DemandA, DemandB, and DemandC registers that report the real power demand for each individual phase.
  • Configurable Integer Current Scaling – Adds CurrentIntScale register for scaling the integer current registers. There was previously a virtual (could not be read or written) CurrentIntScale register; now it is a real register that can be changed.
  • Improved Line-to-Line Voltage Estimation – Adds line-to-line voltage estimation for four-wire delta (wild phase) and grounded delta electrical service types.
  • Simplified CtAmps Logic – Updates the functionality of the registers CtAmps, CtAmpsA, CtAmpsB, and CtAmpsC to prevent confusion.
    1. The global CtAmps register changes into a command register that assigns the specified value (amps) to all three phase registers (CtAmpsA, CtAmpsB, or CtAmpsC) whenever it is written.
    2. The global CtAmps register reads back zero unless all three per-phase CtAmps registers are the same, in which case it read backs the common value. This behaves much like it did on previous firmware versions, except that it reads back zero if the per-phase CtAmpsA, CtAmpsB, or CtAmpsC are different, which alerts the user to the fact that the per-phase registers must be read to ascertain the CT rating for each phase.
  • Custom Register Map – Adds a configurable register mapping feature for the following two situations:
    1. You want to read a specific group of registers efficiently, but not all the registers are in the same block, so you would need two or more Modbus frames to read all the data. With a custom mapping, you can combine all the registers you need into a single block.
    2. The custom register map allows you to emulate another device by reorganizing the WattNode Modbus meter registers.
  • Improved Modbus Error Detection – Improves framing error detection and incorrect baud rate detection for communications trouble-shooting indication on the Modbus Com LED. Older firmware versions would sometimes flash the Com LED yellow when the baud rate was incorrect; the new firmware will flash the LED red.

Additional Updates and Bug Fixes

  • UPDATE: Added logic to ensure that any internal error that affects the accuracy of reported data will result in a Modbus exception “slave device failure” in response to commands for reading the data registers.
  • UPDATE: Added code to make the Modbus COM LED follow the same Red-Yellow-Green power-up pattern as the other LEDs.
  • UPDATE: Added OptCtAmpsA, OptCtAmpsB, OptCtAmpsC, OptModbusMode, OptAddress, OptBaudRate, OptParityMode, Opt232, OptTTL, OptIO, OptX5, OptSSR, and OptIoPinMode registers for showing the factory-define options.
  • UPDATE: Added support for RoHS / lead-free hardware revision. All V16 and later WattNode Modbus meters will be fully RoHS compliant.
  • BUG: If the register DemSubInts was set to zero (which should be treated like 1), an internal variable was incorrectly computed so the demand wasn’t computed. Fixed.
  • BUG: If the GainAdjustA, GainAdjustB or GainAdjustC registers were written with zero (which should have been treated like 10000) the WattNode reported error 41 (BadGainAdj), turned the phase LEDs red and rebooted every 10 seconds. Fixed.

Firmware Version 15

Released: 09/16/2010

Manual: WattNode Modbus Installation and Operation Manual (PDF, 59 pages)

Register List: WNC Modbus Register List V12 (XLS)

  • BUG: Version 13 introduced an unintended side-effect that caused the WattNode meter to no longer respond to illegal function codes (i.e. function codes that it doesn’t support) with a Modbus exception (01 – Illegal Exception) response. Instead of responding with the exception, the meter would flash the COM LED red and ignore the message. Version 15 reinstates the exception response so that Modbus master controllers can rely on it for slave device discovery purposes.

Firmware Version 14

Released: 06/10/2010

Manual: File:WNC-MODBUS-Manual-V12.pdf

Register List: File:WNC Modbus Register List V12.xls

  • BUG: When a high voltage model (e.g. WNC-3D-480-MB) is used with a large CT amps rating (e.g. 3000 amps) and the meter measures a power level that exceeds one megawatt on one or more phases, a false error code 76 (“impossible power register value”) is reported and the meter stops reporting power. Energies for all three phases then accumulate at half the normal rate for as long as there’s one or more phases measuring power greater than one megawatt.

Firmware Version 13

Beta version, released: 02/22/2010

  • UPDATE: Ignore all RS-485 bus traffic after receiving the last byte of the master’s command message for the first 5 ms. after receiving a message from the master before starting to transmit the response. This makes the WattNode meter more tolerant of misbehaving Modbus masters that glitch the bus after sending the last byte of a command message to the meter. This also makes the meter more fault-tolerant of an electrically noisy (e.g. unbiased) RS-485 bus.

Firmware Version 12

Beta version, released: 02/22/2010

  • UPDATE: Ignore all RS-485 bus traffic after receiving the last byte of the master’s command message for the first 5 ms. after receiving a message from the master before starting to transmit the response. This makes the WattNode meter more tolerant of misbehaving Modbus masters that glitch the bus after sending the last byte of a command message to the meter. This also makes the meter more fault-tolerant of an electrically noisy (e.g. unbiased) RS-485 bus.

Firmware Version 11

Released: 9/23/2009

  • BUG: Although the factory and customer diagnostic registers could be written with a single-register write command, they could not be written with a multi-register write command. Fixed.
  • BUG: ErrorStatus1 to ErrorStatus8 registers were updated in a way that resulted in the same error code being logged multiple times. Fixed.
  • BUG: If bus contention occurred while the WattNode meter was sending a reply, the meter would fire an erroneous eaLPIntSpurTx2 assertion and do a reset. Fixed.
  • BUG: Severe errors were being counted twice in the internal error log. Fixed.
  • UPDATE: Added a register for configuring the unit for even parity and implemented logic to reset this option back to no parity if DIP switches are set to all zero for 10 seconds. Made the framing error count register also count parity errors.
  • UPDATE: Added a factory command to make the unit compute a 16-bit checksum for verifying its program code.
  • UPDATE: Added communications configuration registers for assigning baud rate of 38400, even parity and slave address greater than 127.

Firmware Version 10

Released: 12/29/2008

  • UPDATE: Implemented the new duplicate address and bus contention detection algorithm that gives the new alternating red/yellow LED flashing indication and improved the Modbus LED behavior in general to provide less potentially confusing error/fault indications.
  • UPDATE: Implemented the new automatic RS-485 reverse A/B polarity correction feature.
  • UPDATE: Implemented the new alternate error reporting registers (or 8-register ErrorStack) from 41716 to 41723. Writing a zero to any of the eight registers resets them all.
  • UPDATE: Added code to respond with a Modbus “slave device failure” exception whenever data registers (e.g. energies, power, volts, amps) are read when the WattNode needs calibration (unless the calibration passcode has been entered). This does not affect requests to read errors, configuration or calibration registers.
  • UPDATE: Added new info-only error codes, duplicate address (249) and RS-485 bus contention (248).
  • UPDATE: Implemented on-the-fly message CRC computation and error-checking in the Modbus FSM’s ISR handling code to provide more reliable Modbus error LED indications and assertion reporting when invalid communications parameters are used. These changes also facilitate the duplicate address and bus contention detection algorithm. This also eliminates the long timing latency (several hundred milliseconds) that was previously due to deferral of final error checking to mainline code. This makes the WattNode much more tolerant of minor timing violations by the master and/or other slave devices.
  • BUG: Not all of the energies saved in FRAM were protected by a checksum (CRC) so if a cosmic ray caused a bit to flip while the WattNode was powered down it might not be detected by the WattNode when the unit was powered up. Fixed.

Firmware Version 1-9

Development and limited release versions.