Resource Center

NL240 Firmware

Software applications, data logger operating systems, firmware, and drivers for Campbell Scientific products

NL240 Firmware

v10.03

Current NL240 firmware. Requires the Device Configuration Utility and a USB micro cable. 

Note: When updating to OS 10.03 from OS 6 or previous, settings will be reinitialized to factory defaults. When updating to OS 10.03 from OS 7, settings will be retained.

Revision History

v10.03September 4, 2018
Download unavailable
  • Changed ping and telnet to be disabled by default.
  • Enabled the http server on port 80, and added a generic web page that shows if a user attempts to directly connect to the Nl240 with a web browser.
  • Disable IPv6 ping response if ICMP(ping) has been disabled.
  • Added functionality to report SDC Info string to logger so it can be displayed in the ComPorts Settings.
  • Fixed minor bug that caused the device to miss the very first SDC address issued by the logger.
v8.01December 5, 2016
Download unavailable
  • Boot loader bug fix.
v8October 7, 2016
Download unavailable
  • NOTE: When updating to OS 8 from OS 6 or previous, settings will be reinitialized to factory defaults. When updating to OS 8 from OS 7, settings will be retained.
  • Improved handling of the TCP transmit queue to continue transmitting once the queue fills up. This fixes an issue that led to TCP communications to quit under a heavy traffic load.
  • Changed the DNS server to ignore preceding "www." on WLAN domain name and DNS queries. Allows DNS server to answer queries that do or do not have www.
  • Changed default WLAN domain name to “example.com”
  • Increased supported TCP connections from 20 to 50.
  • Changed PakBus to send TCP broadcast messages as link-state rather than control group (capabilities) if the unquoted protocol is not supported.
  • Changed PakBus to not send a delivery failure notification for BMP messages that don't expect a response.
  • Changed it so the device is still able to communicate over USB when in bridge mode power-down.
  • Updated PakBus BroadCast() function to act the same as datalogger's. Now will broadcast to all neighbors including those on TCP links.
  • Added ability to DHCP server to handle fully qualified domain name option and store it in the DHCP cache. The DNS server will be able to resolve these hostnames in the cache and return the associated TCP/IP address.
  • Updated the Redpine firmware to version 4.8.0.
  • Changed Wi-Fi initialization to detect if a network already exists with the same name as the one the device is configured to create. If so, the device is configured to joiner mode rather than creator mode. This avoids issues that were causing the device to not join/maintain the ad-hoc network properly.
  • Improved active PakBus/TCP connection check in ad-hoc join mode that was added in OS 7.This check prevents device from disassociating from the network if there are active Pakbus/TCP client or server connections present.
v7October 19, 2015
Download unavailable
  • Added the ability to act as DHCP server when configured to create a Wi-Fi network. Device will now give out addresses to devices that connect instead of relying on Auto IP addressing.
  • Improved handling of TLS services to allow for the extra time that a 2048-bit encrypted connection takes. Fixes the issue where TLS with a 2048-bit key was not working.
  • Updated TLS stack (axtls 1.5.2)
  • Fixed functionality in bridge mode to intercept TCP traffic destined for the "TCP Configuration Port Number" (setting in Settings Editor). This allows the NL240 to be configured remotely by DevConfig when the device is configured in bridge mode.
  • Changed the IP address setting to always display 0.0.0.0 when in bridge mode rather than showing "OK" if the IP/MAC info has been obtained from the datalogger. All pertinent IP information is displayed to the user in the TCP/IP Info (Status) window.
  • Added netmask, & gateway to the IP Info displayed in the Device Configuration Utility when in bridge mode.
  • Added WLAN Domain Name (hostname that DNS server will respond to) as a user setting.
  • Improved the power-save feature when joined to an existing ad-hoc network. Presently as a power-save measure, when the network goes quiet (no activity), the NL240 will disconnect then immediately try to connect. This way it tests if the network still exists. It will now abort any existing connections before powering off the network to alert the other side of the disconnection.
  • Along with the previously mentioned ad-hoc power-save feature, the NL240 will check if any active TCP connections are Pakbus/TCP. If so, it will send some dummy data to attempt to see if the connection is still active before disconnecting from the network.
  • Changed the device behavior when joined to an existing ad-hoc network with the low-power mode setting set to disabled. If low-power mode is disabled, the device will now stay connected to the ad-hoc network forever and keep it alive even if the original creator leaves the network.
  • Changed the behavior of the red LED to always strobe regardless of the power mode setting in an effort to conserve power.
  • Fixed the issue in bridge mode that was causing two loggers to select the same Auto IP address when on a network with no DHCP server.
  • Improved wrong WEP key error handling. This addresses the issue whereupon supplying an incorrect WEP key in join mode, the error message displayed was cycling between "connected" and "Error: Wrong WEP key."
  • Improved the power conservation behavior of the NL240 by immediately powering off the Wi-Fi module when a network disconnect is sensed.
  • Changed the lwip TCP/IP stack IPv6 neighbor discovery code (nd6.c) to ensure at least one router solicitation is sent even if a router advertisement is received prior to having sent a solicitation. This should ensure receiving a full advertisement from all routers.
  • Improved device reset by adding a function to attempt to close all open TCP connections before performing the reset.
  • Added functionality to update the TCP/IP Info in the terminal mode.
v6August 21, 2014
Download unavailable
  • When updating to OS 6 from OS 4 or previous, settings will be reinitialized to factory defaults. When updating to OS 6 from OS 5, settings will be retained.
  • Fixed a telnet memory leak that was causing units to quit responding to TCP/IP traffic if the telnet port was opened repeatedly. This problem is common in units positioned on the public internet.
  • Fixed a bug in bridge mode mac/ip info exchange. With datalogger OS27 set to a static IP address, the nl2xx wasn't successfully recording the ip info. This bug caused the nl2xx bridge mode to be un-usable with a datalogger OS27 configured with a static IP address.
  • Fixed a bug to properly clear the UART noise and error interrupts. This error was occurring sometimes when trying to communicate at a baud rate that did not match the configured baud rate. The flag was not being cleared which was causing a watchdog.
  • Added functionality in bridge mode to intercept TCP traffic destined for the "TCP Configuration Port Number" (setting in Settings Editor). This allows the NL2xx to be configured remotely by DevConfig when the device is configured in bridge mode.
  • Added a timeout on the SDC cycle. This allows the nl2xx to recover from an error condition on an SDC cycle where the cycle starts and doesn't ever end. This was happening due to a bug discovered in the datalogger OS. It showed up in OS27 (it may be present in previous OSes as well but had not been discovered).
  • Improved RS-232 Receive task to use the baud rate to determine how much data to buffer before sending it to TCP. Now it will buffer up a maximum of ~100ms worth of data before sending to TCP. This improves communications when using slow baud rates because the data is shifted out sooner.
  • Improved the way the TCP task handles emptying the TCP transmit queue. Data will be removed from the queue that has been there for too long without a successful transmission. Data that belongs to connections that are in an invalid state will also be removed.
  • Improved terminal mode by tightening the requirements to start the terminal. Must receive 3 CR(LF) in a row instead of 3 total.
  • Improved terminal mode by adding a timeout to the terminal task. The terminal task uses the "Telnet Timeout" setting (Settings Editor) specified by user as its timeout. If no characters are entered by the user in that time frame, the terminal task will be killed and the other RS-232 tasks will be started.
  • Improved terminal mode by adding an invalid entry counter to the terminal task. If the invalid entry counter gets too high, the terminal task will be killed and the other RS-232 tasks will be started. This will cause the terminal mode to be exited if started in error.
  • Improved some telnet debug info when opening and closing tcp connections to show lcl and rmt ports.
  • Added telnet debug i/o monitoring ability for Modbus RS-232 Tx which was missing
v5September 13, 2013
Download unavailable
  • Changed default RS-232 and CS I/O configurations to PakBus.
  • Added TCP Serial Client service to RS-232 port.
  • Added support for IPv6 networks.
  • Added support for fully qualified host names for PakBus/TCP client and TCP Serial client settings.
  • Added support for DNS query and added DNS server settings. Settings allow a user to specify up to 3 DNS server addresses for resolving fully qualified host names. These settings are overridden by DNS servers obtained by DHCP.
  • Added Modbus TCP Gateway service to CS I/O port.
  • Added Bridge Mode Forward Code setting. This setting allows the user to further reduce the type and amount of packets forwarded to the datalogger over the CS I/O port. For example, a setting of 65531 will forward all relevant packets except UDP Broadcast packets.
  • Fixed Ad Hoc mode so that it works in environments where there are no other Wi-Fi networks present. Previously, the NL240 would not complete the boot sequence when started in the absence of another Wi-Fi network.
  • Improved Telnet terminal service by echoing a single character when entering a password at the prompt.
  • Improved Telnet terminal service by outputting "session closed" when the Telnet session is ended.
  • Improved event log functionality by adding eventloga command to terminal service.
  • Improved configuration via terminal by making all settings always accessible and by adding up/down arrow key navigation of settings.
  • Improved low level traffic monitoring via terminal.
  • Improved refreshing of current IP status information when viewed by Device Configuration Utility.
  • Improved IP status by reporting additional information including the datalogger's IP and MAC address when configured with bridge mode enabled.
  • Improved watchdog task to for enhanced handling of potential stack overflows.
  • Improved handling of full serial buffers that was causing serial port connections to become unresponsive.
  • Changed settings so DHCP is not forced to disable when bridge mode is enabled. DHCP setting only affects device when bridge mode is disabled.
  • Improved PakBus service to send hello request out serial ports configured for PakBus service 4 seconds after boot up.
  • Improved PakBus service by adding support for Central Routers and Central Routers setting.
  • Improved handling of sleep and wakeup commands received from a datalogger using the IPNetPower() instruction to control the power state of the attached NL2xx device.
  • Improved bridge mode enabled behavior to ring logger when communications have not taken place for 8 seconds. This was added to improve discovery of NL2xx device by a datalogger that is already powered up.
  • Changed USB enumeration process so that the device always enumerates as the same com port when possible
  • Improved Modbus TCP Gateway so that Modbus TCP packets can be split across one or more TCP packets.
  • Improved Modbus RTU to properly handle RTU message with function byte error bit set.
  • Changed behavior of red LED so that it will come on solid when searching for or joining networks and will go back to blinking or solid when done depending on the low power mode setting.
  • Changed settings so DHCP is not forced to disable when bridge mode is enabled. DHCP setting only affects device when bridge mode is disabled.Improved PakBus service to send hello request out serial ports configured for PakBus service 4 seconds after boot up.
  • Changed USB enumeration process so that the device always enumerates as the same com port when possible.