file:///C/Users/mandy.brackley/ /To-Do/DataTaker-Odalog/DataTaker/Firmware/dt80 release notes-9.18-series1.txt

Series 1 Firmware

Software, Firmware, and Drivers | Thermo Fisher Scientific - US

DT80/81/82/85 v9.18.6291 FIRMWARE RELEASE NOTES ===============================================
IMPORTANT: PLEASE READ ALL THE INFORMATION BELOW to ensure a trouble free upgrade occurs.
Documentation ------------The features present in this release of the DT80 firmware are described in the following documents:
- DT8x User's Manual (revised edition, version UM0085-B7). This revision of the User's Manual is applicable to version 9.18 of the DT8x firmware. A copy of this document (PDF format) is not included in this firmware package, and accessible from the product web-site (
Upgrade procedure ----------------Refer to the instructions in the DT80 User's Manual. Upgrades may be performed using a USB memory device, or using DeTransfer via a serial connection, or using FTP.
Note that the upgrade package (.dxf file) will automatically install files onto the logger's internal flash disk during the firmware upgrade process.
** NOTE: Before starting the upgrade, please ensure that there is sufficient free space on the logger's internal disk (type DIR"B:"). In particular: - Upgrading using a USB memory device or FTP will temporarily require 15MB free space during installation. - Depending on the previous firmware version, an additional 5-15MB of free space may be required for the installation of new files.
** NOTE: After the upgrade completes, it is recommended that you clear your web browser's cache, to ensure that the latest version of the dEX web interface is loaded. For example, in Internet Explorer 7 or 8 you would select "Delete browsing history" from the "Tools" menu, then select "Temporary Internet Files".
Modem firmware -------------For DT8xM models with integrated wireless modem, the modem module firmware is also user upgradable and, like the logger firmware, should be kept up to date so that you can take advantage of fixes and performance improvements.
After upgrading your logger firmware, it is recommended that you check your current modem firmware version, by sending the following logger commands (a SIM card is not required): MODEM ON MODEM FIRMWARE which should then return the current modem firmware version.
At the time of writing, the latest available firmware versions are: - for DT8xM3 models (FXT003 2G/3G): R7.45.0.201105250416.FXT003 - for DT8xM3 models (FX100 2G/3G): R7.53.0.201502160745.FX100 - for DT8xM2 models (FXT009 2G only): R7.45.1.201105250600.FXT009

Modem firmware update packages are available for download from
Verifying the upgrade --------------------After the upgrade has completed, check the version displayed on the LCD display. The top line should read "DT80 V9.18". Alternatively, send the TEST0 command, which should indicate "Version 9.18.6291".
Firmware Change History ----------------------Version 9.18.6291, 7 Aug 2015 =============================== Firmware: --------CHANGED: modem.on_detection_delay_s extended from 16 to 22 seconds CHANGED: Channel Variables Table able to hold CV range from 1 to 65535 ADDED: CLEARCV command to do channel variables table cleanup FIXED: Bug 3702 - maintaining variables on power loss FIXED: Bug 3700 - unable to maintain state of the channel table expressions on reset / sleep / power loss FIXED: Bug 3674 - SETMODBUS failed to initialize after reset CHANGED: Improved TCP algorithm including SYNR state timeout introduced CHANGED: number of HTTP watchdog test failures before restart listener is called ADDED: 10 second delay between shutdown of the HTTP server threads and their restart FIXED: Bug 3483 - HTTP Buffer Overflow ADDED: support for the 3.8V relays FIXED: Bug# 3281, HTTP listener restarts the Logger FIXED: P17 timeout must be reset on any modbus data received via serial connection FIXED: Bug 3595 - increase modbus register range to full (1..65535) ADDED: Support for 8Gb+ USB Memory Cards
Version 9.16.5728, 3 Oct 2014 =============================== Firmware: --------FIXED: Bug# 3281, HTTP listener restarts the Logger FIXED: P17 timeout must be reset on any modbus data received via serial connection FIXED: Bug# 3595, Increase the allowed Modbus register range ,Current 1-1000 allowed CHANGED: extended range from int to uint16 for all CV related calls CHANGED: in mapping modbus registers to the internal logger types mapping for CVs made absolute FIXED: E131 illegal address raised for R3:6000 CHANGED: DCCTChanDefnEntry BegValidChanNum and EndValidChanNum field type changed to int32 to support extended range for CV numbers FIXED: modem upgrade command failure leading to changed baud rate on FX100 modems FIXED: HSC problem ADDED: mutex to prevent simultaneous access to the CVHASH table FIXED: saving on reset to be done before disk flushing FIXED: CVHASH has incorrectly formed Key Value Pair entry has hash code instead of entry index ADDED: saveCVTable() call to all software based reset calls ADDED: ensureMapValid() call to support hash map clean up, if corrupted FIXED: Bug 3485 - SignOff command failure FIXED: relaxed formatting requirement insensitive to the extra output lines FIXED: relaxed parsing condition for Kernel Assembly ADDED: incompatible product error

ADDED: error incompatible product raised for DDNSUPDATE command launched on non-modem logger FIXED: unable to send SMTP via modem session FIXED: logger failure with 'An error occurred at dcoutput.c:1106 0' FIXED: bug with non-initialized CV value CHANGED: added support for compact format in storage.c module ADDED: Profile option for the storage file format (normal and compact options are supported) FIXED: unable to change user role for current user when no role changed via JSON RPC call editUser ADDED: USER command into the commands list (of "DT80 Commands.xls" document)
Version 9.13.5325, 6 Nov 2013 ============================== Firmware: --------FIXED: logger crashes on unload FIXED: Bug 3481 crash on upload file to the FTP server caused by DHCP renew ADDED: Mandatory parameter EMAIL for the user's e-mail address passing to USER command being used for user account creation
Version 9.13.5104, 21 Aug 2013 ============================== Firmware: --------FIXED: reset of CV set on program startup
Version 9.13.5091, 15 Aug 2013 ==============================
Firmware: --------- CHANGED: support for new dEX (0.08.001) - CHANGED: Extended range for the Channel Variables - FIXED: Logger crashed on executing unload log command
Version 9.13.4890, 19 Jun 2013 ==============================
Firmware: --------- Fix: stops communications over TCPIP Conduit on poor network connection(#3466) - Change: textMem change to 64k to save memory for heap - ADD: ADD modem FX100 support - ADD: HTTP listener and Socket availability monitoring (watchdog). Notes: Feature can be enabled / disabled by changing profile setting "HTTP_SERVER ENABLE_WDG".
The watchdog is enabled by default and can be disabled via command PROFILE HTTP_SERVER ENABLE_WDG=NO.
- CHANGE: Updated timeouts for FIN_WAIT2 and TIME_WAIT states of a TCP socket (10 and 0 seconds respectively).
- ADD: Timeout for SYNR state of a TCP socket (10 seconds)

- FIX Bug 2358: SW exception raised on invalid trigger / option combination
- FIX: Unit crashed when timestamp is about 1/1/1989 0:00:00
- ADD: Running Averages Channel Option. Notes: Option mnemocode is RAV having sliding window size specified as a parameter (for example: 1TK(RAV(50)) ).
The maximum number of channels with running averages: 100. The maximum number of values in a sliding window of running average: 3600.
To delete collected running averages statistics DELRSTAT command can be used.
- FIX Bug 3395: CRON Schedules do not wake the logger
- FIX Bug 3093: Disabling the USB port is not completing locking the port
- FIX Bug 1872: Logger falls asleep before program is loaded.
- FIX Bug 3367: Text memory overflow when too many alerts are configured
- FIX Bug 3087: Device lockdown and crash on frequent SMSes sent
- CHANGE: Channel variable and string variable values are now optionally maintained across resets and power downs (subject to Li battery being functional). To enable this, set PROFILE STARTUP MAINTAIN_VARS=YES. The INIT (RESET) command will still clear all variables, as will sending a new job from the dEX config builder. (#29)
- FIX: When reading broadcast data from certain serial sensor devices, succcessive data records could have duplicated timestamps (#3325)
- CHANGE: Serial sensor, Modbus and SDI-12 comms errors (codes 75,80,89,124) are no longer logged to event log, as they clutter it up and can cause more relevant entries to be lost. (#2660)
- FIX: Possibly incorrect IBAT sign when battery charge current is low (#3246)
dEX Change History ----------------------v1.72.000 - 12 June 2015(firmware v9.18.x)
- Production Release Build - Greatly improved mimics performance over the last production release - Trend charts contain less data points and thus render dramaticcaly faster than previous versions - Some changes to layouts and UI's to keep the UI consistent with the Android and iPad versions. These versions are available on their respective app stores - Jango menu headings have been rearranged slightly to ultilise the screen real estate better - Scaling UI has been changed to ultilise the screen real estate better and to make editing easier for the user - Ability to assign manual CV's has been added, mainly to support backwards compatibility - Minor translation Changes to the various languages
v1.50.167 - 26 September 2014(firmware v9.15.x) - Production Release Candidate - Translation Changes - Assignable CV ranges have been extended to provide better support for modbus mapping
v1.50.129 - 17 June 2014(firmware v9.15.x) - Beta Release Candidate

- Preserve CV option(default) added when importing old configurations and on conversion on first import - Configure the logger main side menu now has collapsible schedules so the user can maintain everything in the viewing area - Added support for backwards compatibility
v1.50.000 - 1 Nov 2013(firmware v9.14.x) - Production Release - Revised French Translation - UI Fixes for enhanced usability
v1.41.005 - 9 Oct 2013(firmware v9.13.5233) - Beta Release Candidate Released R4 - Actual channel removed from command language when statistics are recorded - Multi-lingual support added for: German, Spanish, Italian, Japanese and Dutch
v1.41.004 - 5 Oct 2013 - Beta Release Candidate Released R3
v1.40.002 - 30 Aug 2013 - Beta Release Candidate Released R2 - Running average now recorded in Firmware - Optional Role Based Security implemented - Multi-lingual support added for: French and Chinese(Simplified) - Added alternate skinning
v1.40.000 - 30 Aug 2013 - Beta Release Candidate Released R1 (Internal Release Only) - Rebuild of dEX in Flex 4.6 spark architecture - Some screens, controls and workflows may be different to the previous version
Version 9.10.4890, 18 Jun 2013 ==============================
Firmware: --------- ADD: ADD modem FX100 support - ADD: HTTP listener and Socket availability monitoring (watchdog). Notes: Feature can be enabled / disabled by changing profile setting "HTTP_SERVER ENABLE_WDG".
The watchdog is enabled by default and can be disabled via command PROFILE HTTP_SERVER ENABLE_WDG=NO.
- CHANGE: Updated timeouts for FIN_WAIT2 and TIME_WAIT states of a TCP socket (10 and 0 seconds respectively).
- ADD: Timeout for SYNR state of a TCP socket (10 seconds)
- FIX Bug 2358: SW exception raised on invalid trigger / option combination
- FIX: Unit crashed when timestamp is about 1/1/1989 0:00:00
- ADD: Running Averages Channel Option. Notes: Option mnemocode is RAV having sliding window size specified as a parameter (for example: 1TK(RAV(50)) ).

The maximum number of channels with running averages: 100. The maximum number of values in a sliding window of running average: 3600.
To delete collected running averages statistics DELRSTAT command can be used.
- FIX Bug 3395: CRON Schedules do not wake the logger
- FIX Bug 3093: Disabling the USB port is not completing locking the port
- FIX Bug 1872: Logger falls asleep before program is loaded.
- FIX Bug 3367: Text memory overflow when too many alerts are configured
- FIX Bug 3087: Device lockdown and crash on frequent SMSes sent
- CHANGE: Channel variable and string variable values are now optionally maintained across resets and power downs (subject to Li battery being functional). To enable this, set PROFILE STARTUP MAINTAIN_VARS=YES. The INIT (RESET) command will still clear all variables, as will sending a new job from the dEX config builder. (#29)
- FIX: When reading broadcast data from certain serial sensor devices, succcessive data records could have duplicated timestamps (#3325)
- CHANGE: Serial sensor, Modbus and SDI-12 comms errors (codes 75,80,89,124) are no longer logged to event log, as they clutter it up and can cause more relevant entries to be lost. (#2660)
- FIX: Possibly incorrect IBAT sign when battery charge current is low (#3246) - Fix: stops communications over TCPIP Conduit on poor network connection(#3466) - Change: textMem change to 64k to save memory for heap
dEX Configuration Builder version 1.30.1949: --------------------------------------------
- CHANGE: Removed "time slider" controls and replaced with a more familiar and more flexible pair of value + units controls. (#3015)
- CHANGE: When "past period's worth" is selected for unload actions, the start time is rounded down to the start of the specified time unit.
- CHANGE: Decluttered FTP/email action screens, added tool tips.
- CHANGE: Replaced the peculiar "checkbox+combo" control on the FTP/email schedule selection tab with a conventional tri-state checkbox.
- CHANGE: streamlined seconds <> val+unit conversion utils. - CHANGE: periodic schedule now uses TimeAndUnit control - CHANGE: set min/max for LCD/unload controls - CHANGE: Renamed counter channel types to "Low speed counter" and "High speed counter", rather than specifying frequency limits (which can vary with input level) (#3296)
- CHANGE: Added control for MAINTAIN_VARS profile setting, and clarified the text on the startup settings page (#29)
- CHANGE: Removed "time slider" controls and replaced with a more familiar and more flexible pair of

value + units controls. (#3015)
- CHANGE: Removed "time slider" controls and replaced with a more familiar and more flexible pair of value + units controls. (#3015) - CHANGE: set min limit on chart mimic TimeAndUnit control - CHANGE: remove seconds conversion function, now done by TimeAndUnit
Version 9.08.3932, 09 Jan 2012 ==============================
Firmware: ---------
Ethernet sessions:
- ADD: FTP/email can now be directed to ethernet or modem. Ethernet items will be sent immediately if an ethernet connection is available (a valid, non-AutoIP IP address exists for the ethernet port). If not then the item remains in the queue and transmission will not be attempted until the ethernet connection is available. Modem and Ethernet items share the same queue.
- ADD: On a modem logger the desired interface can be specified using the following ftp/mailto URI option: interface=modem or interface=ethernet. This option is ignored on a non-modem logger.
- ADD: Add profiles for Ethernet email settings (ETHERNET_SESSION)
- CHANGE: SESSION command now indicates ethernet session status, as well as modem. Ethernet session status is reported as either: Disabled, No cable, Starting (acquiring IP address), Ready (got valid IP but there are no queued items to send, so sleep is possible), Online (eth session in progress, ie queued items are due to be sent), or Limited connectivity (DHCP unavailable so using AutoIP address). Note that the Starting state persists until an IP address is obtained or the first round of DHCP attempts completes (approx 70 sec)
- ADD: New system variable 85SV, indicates state of Ethernet connection: 0=disabled/no cable, 1=starting, 2=online, 3=limited connectivity (link-local IP addr).
- CHANGE: session=yes/no URI option is now ignored
- CHANGE: Priority=low option is now ignored for email/ftp sent using ethernet interface (#3208)
- CHANGE: There is now independent retry timing for queue entries, sessions, and SMTP server connect. Default setting is to retry each of these at 30s intervals (adjustable via MODEM_SESSION/RETRY_DELAY_S and ETHERNET_SESSION/RETRY_DELAY_S), with every 3rd interval 60 times longer. (#2841,#3078)
- CHANGE: Automatically started sessions and SMTP server connects are now retried indefinitely. Manually started sessions are retried 4 times.
- CHANGE: FTP and email unload items are now retried indefinitely by default (adjustable via UNLOAD_FTP_RETRIES)
- CHANGE: SMS and email alarm items are now retried 4 times.

- CHANGE: When no session is active, SESSION command now displays next scheduled session time
- CHANGE: SESSION LIST command now displays next scheduled retry times for queue entries, SMTP server connect, and session.
- ADD: New command SESSION RETRY, which will cause an immediate retry of eth/modem session, SMTP server connection and queue entries. This will also be triggered if Ethernet cable is plugged in.
- CHANGE: If a queue entry is discarded then event log message now states this explicitly (#3183)
- CHANGE: A triple push reset will now cause session processing to be paused indefinitely.
- CHANGE: Increased FTP queue size to 12 and email to 13 (includes one space for queue full message), so that a merge=no unload of 12 schedules can be transmitted. (#3267)
- FIX: It was not possible to connect to logger (using command/web/FTP interface or ping) over Ethernet while the modem was connected (#2989)
- FIX: Clearing a queue while an item was busy could sometimes delete the wrong entries
- FIX: Session failure during email/FTP server connect or transfer is now detected properly
- FIX: If a session failed or was aborted while a time window was active then it was restarting immediately. It now pauses for the retry delay.
- FIX: Possible sw exception if session started immediately after data connection dropped (#3247)
- FIX: Possible software exception following email/SMS queue becoming full (#3237)
- ADD: For non-modem loggers, the MODEM command displays external modem status (absent/offline/online)
- CHANGE: On modem loggers, host port may now be used (eg by production tester) while modem is switched off. When modem is switched on the host port settings are reconfgured for use with modem, and when it switches off the PROFILE HOST_PORT settings are loaded.
- CHANGE: force modem power off before starting session
- CHANGE: Changes to service and frequency band settings no longer cause a modem power cycle (#2931)
- CHANGE: Increased PPP open timeout from 10s to 20s, which may reduce the number of "data dropped" errors on session start.
- CHANGE: Improved modem firmware upgrade function - significantly faster, improved LCD/console messages, and fixed a problem with reinitialising the modem settings at the end of the process.
- CHANGE: Default APN for Telstra is now telstra.internet (#3125)
- CHANGE: Reduced modem power-on delay from 15s to 4s and instead retried initial SIM accesses. This reduces modem startup time and allows modem commands that don't need SIM access to be entered immediately after power on. (#3125)

- CHANGE: Reduced time between network registration polls during modem startup to 5s (was 10s)
- CHANGE: Improved reliability of sending modem commands, especially those that return multiple lines of data.
- CHANGE: Most modem commands are now retried (twice, at 2s intervals) if an error is returned. This reduces the number of SMS and other failures, such as network selection failures. PIN related commands are not retried. (#3235)
- CHANGE: If a session is SMS only, and an SMS transmission fails, then we no longer launch into the "check signal and try other networks" procedure.
- CHANGE: Added state 80SV=12 to indicate that logger is currently checking the user specified PIN
- CHANGE: If SESSION SIGNAL is used while a session is active it will now update the displayed signal strength and operator name. (#3070)
- CHANGE: MODEM ON and MODEM OFF commands will now report an error if used while a modem session is active.
- CHANGE: Replaced the MNnnnnn.ini files with a single file operator.csv, which contains APN and SMTP server details (where known) for approx 350 mobile networks. Removed SIM_DEFAULTS profile section.
- CHANGE: SERVICE, GSM_BANDS and 3G_BANDS profile settings no longer use the "set by SIM" option; fixed default values are now used.
- FIX: Modem power relay was being briefly pulsed when modem was switched on or off. This could cause some modem units to not initialise their control signals correctly (in particular, DCD), which then caused comms sessions to behave erratically. (#3264)
- FIX: Network selection procedure was attempting to register on forbidden networks (#3235)
- FIX: NO CARRIER message was occasionally getting through to command processor.
- FIX: Switching modem power off while we were waiting for a response to a modem command was causing the modem to remain in "closing" state for possibly an extended period. Modem power off will now abort the command.
- FIX: Software exception if MODEM OFF used while session is active (#3265)
- FIX: When returning from command mode (eg after sending SMS) PPP data was sometimes being displayed when P56=16
- FIX: Software exception if signal was inadequate and SIM home network list contained non-GSM, non-UTRAN networks (eg certain US 3G networks) (#3273)
- FIX: With some SIMs email was being sent before the session was fully ready
- ADD: When connecting to an SMTP server, the name of the server is now indicated in the message.

- ADD: If there is no SMTP server set then the error message now states this explicitly.
- FIX: Badly formatted email headers were resulting in emails with data attachment not being sent with some SMTP servers eg (AT&T) (#3231)
- FIX: Invalid ftp URIs (in particular, with the initial "//" missing) were being accepted but not working. These now generate an error (#3220)
- FIX: FTP transfers were sometimes being reported as successful when in fact there was insufficient space on server (#3225)
- FIX: File handle leak when uploading to FTP using COPY command.
- FIX: Possible sw exception when executing email check in dex modem test
- FIX: FTP to loopback address was not working (#3188)
- ADD: SDI12 version may now be specified manually, using the VER channel option, eg 5SDI12(VER10) will restrict the logger to using version 1.0 commands only. (#2846)
- ADD: A-Z and a-z may now be used as SDI12 addresses. However any non-numeric address must be enclosed in quotes eg. 5SDI12(AD"B") (#2664)
- CHANGE: We no longer check whether an SDI12 device is present when an SDI12 channel is defined. Instead, this is done the first time that the channel is sampled. This prevents potentially long delays during job entry in the case where an SDI12 sensor is offline. Slow job entry can cause dEX to report a spurious "job cannot be loaded" error. (#2501)
- CHANGE: We now check whether an offline SDI12 device has come online only once per schedule. Previously this was checked each time one of the device's channels was sampled, which could cause schedule processing time to be significantly longer. (#2501)
- FIX: Incorrect channel number was shown in diagnostic messages when using 4SDI12 on a DT81/82. (#2353)
- FIX: SDI12 data requests were not being retried following a CRC error. This led to a spurious "not yet set" value being inserted into the logged data. (#2298)
- FIX: NTP/SERVER profile may now be set to a symbolic address (#2620)
- CHANGE: Revised NTP default profile settings: (#3230) TIMEOUT=2S (was 200T) MIN_CORRECTION=50T (was 0) MAX_SLEW_CORRECTION=3S (was 1800T)
- ADD: Manual NTP command now indicates whether request was successful
- CHANGE: Improve accuracy of NTP time changes by using server tx rather than rx timestamp, and assuming that the delay in getting the request to the server and having it process it makes up the lion's share of the round trip delay.

- CHANGE: Step time changes are now logged after they are applied rather than before, which improves accuracy of time updates. Event log time update messages are therefore now timestamped with the new time and indicate what the old time was, rather than vice versa.
- CHANGE: Event log now indicates whether a time update was due to dex, a logger command or NTP.
- ADD: PH= and PS= commands may be used with no parameters to reset the port's serial settings to those configured in profile.
- ADD: P56=128 causes diagnostics to be displayed just prior to sleeping
- CHANGE: Added upper limits to most time related profile settings. In most cases the limit is 86400 seconds (1 day). Also added minimum limit of 10s for MODEM_SESSION/ETHERNET_SESSION RETRY_DELAY_S (#3211)
- CHANGE: Time related profiles will now assume seconds if no unit character is specified
- ADD: COPY command now supports downloading from FTP server (as well as uploading) ie. COPY ftp-uri local-file
- ADD: We now perform a dummy DNS lookup after obtaining an Ethernet address, which helps routers discover our location on the local network (#3200)
- CHANGE: updated on-line help files
- ADD: Polar-rectangular conversion functions: (#2666) XY2MAG(x,y) returns magnitude (r) XY2DIR(x,y) returns direction (theta, in radians, 0-2pi) MAGDIR2X(mag,dir) returns x component (dir is in radians) MAGDIR2Y(mag,dir) returns y component (dir is in radians)
- ADD: C-style selection operator (test)?(if_true):(if_false) can now be used in expressions, eg 1CV=(2CV<0)?0:2CV (#3254)
- CHANGE: Power operator (^) is now left associative
- CHANGE: Increased max PPP username length to 79 chars. Password limit remains 19 chars (#3129)
- FIX: Possible sw exception after selecting a command from function menu on LCD (#3097,#3223)
- FIX: TCP listener socket was not being restored following a series of failed connection attempts, resulting in inability to connect to logger until reboot (#3103)
- FIX: Real time data was not being returned on serial sensor port. (#1933)
- FIX: Sleep time was semi-random if required duration exceeded approx 3 days. Long sleep durations will now result in 72 hours sleep.
- FIX: Possible sw exception if ethernet port disabled during operation (#3209)

- FIX: Modbus/TCP did not handle messages split across multiple packets (#3124)
- FIX: System lockup on modem logger (not cleared by reboot) if system time set to certain dates eg. 1/1/2006 (#3189)
- FIX: Spurious error messages if multiple dex Service Logs are requested simultaneously, or while a configuration is saved to the logger (#3166)
- FIX: An immediate DO/ALARM/IF command would sometimes be interpreted as a new one-line job (#3196)
- FIX: When reading unsolicited serial data using a serial triggered schedule, the logged timestamp would sometimes be zero (#3170)
- FIX: Invalid serial sensor channel numbers could be entered as serial schedule triggers (#3259)
- FIX: If the CONFIG job was locked then a timeout was being reported to dEX rather than the actual error, which then caused an exception in dEX. (#3271)
- FIX: DNS cache is now cleared at start and end of modem session, and on Ethernet interface startup, to prevent the wrong DNS server being used after changing interfaces (#3288)
- FIX: Translation of "deg" to degree symbol on LCD was not working for dEX configurations (#3290)
- FIX: Possible sw exception when sending SMS rapidly (#3309)
dEX Configuration Builder version 1.29.1924: --------------------------------------------
- ADD: New "Logger" menu: Set date/time (moved from file menu), Restart (RUNJOB"CONFIG"), Stop (H), Resume (G), Clear all data (DELD j=config)
- ADD: New "Set logger date/time" dialog, which allows the logger time to be set to a specified value, or synced to the PC time. A warning is issued if NTP is enabled on the logger. The dialog is accessible from the Logger menu and the Time&Date settings page.
- CHANGE: New "time and date" settings panel. Moved timezone and NTP settings here. (partial #3112)
- CHANGE: The logger's current configuration and profile settings will now be loaded automatically when the dex configuration builder is started.
- ADD: Channels can now be duplicated using a new "duplicate" button or Edit menu item.
- CHANGE: Newly added channels now appear immediately after the selected channel, rather than at the end of the schedule.
- CHANGE: File->New command will now clear all settings rather than reloading application. A popup dialog gives the user the option to retain logger's current Ethernet and modem settings.
- CHANGE: In generated command language, profiles are now outside the BEGIN-END block, so they will not be reapplied following reset.

- CHANGE: Modem self test overhauled to eliminate several situations where it could get out of sync with the logger (#2935)
- CHANGE: Modem session profiles are now set to values suitable for modem test, rather than user-set values, prior to starting modem test. Also, any job running on the logger is halted.
- CHANGE: Internal errors (assertion failures) now cause an alert dialog to be displayed in non-debug flash players rather than failing silently (#3108)
- ADD: Ethernet email settings page
- ADD: Ethernet can now be selected as a destination for email/FTP actions and alarms
- CHANGE: Updated web links for downloads and training pages (#3134)
- ADD: Link on help menu to online training videos (#3154)
- CHANGE: Comment at start of generated program is now more useful - indicates target device and version of config builder (#2953)
- CHANGE: Span measured values now default to 0-100, like the logger. Also added some text about 4-20mA sensors. (#2766)
- ADD: Added control for selecting SDI12 version. Also, Continuous Mode checkbox is disabled if version is set to 1.0. (#2846)
- CHANGE: A-Z and a-z may now be selected as SDI12 addresses, and quotes are now inserted into generated code. (#2664)
- CHANGE: Removed dial string and command wait time from external modem tab (#3156, #3157)
- CHANGE: unrecognised profiles reported by the firmware will now be ignored rather than causing an assertion failure
- CHANGE: Removed modem session retries control
- CHANGE: Added min/max limits to timing-related profile settings to match firmware
- CHANGE: Storage settings are no longer hidden if you uncheck "enable logging" (#2415)
- CHANGE: Reworked host modem settings page: moved INIT and SEND_BANNER_ON_CONNECT to Advanced and added control for DETECTION. Added tooltips and clarified CD-idle text (#3217)
- CHANGE: P56 no longer gets special treatment in Advanced settings (#2950)
- CHANGE: Function key commands and advanced settings are now limited to 110 chars (#3245)
- CHANGE: Removed P36 and P38 from advanced settings, as they have GUI controls (#3194)
- ADD: Warn user when loading config from logger if a non-dex config (ie one not called CONFIG) was running
- CHANGE: Removed redundant storage of some logger profiles in xml file (#3199)

- CHANGE: Modem self test was not showing all available information in the event of an internet connection failure (#3257) - CHANGE: Removed "set by SIM" option for modem service/band settings - CHANGE: Increased save to logger timeout to 120s (#3234) - ADD: Added support for XY2MAG() etc functions in calculation builder (#2666) - ADD: Added support for ?: operator in calculation builder (#3254) Usability: - CHANGE: Save/activate notification dialog will now close automatically - CHANGE: Replaced the "error loading application" background text with plain grey, as on some browsers it was visible for a while during loading, which was disconcerting. - CHANGE: Added tooltip to Logger Home button to warn that unsaved changes will be lost (#2291) - CHANGE: Simplified timezone control (one timezone per row) - CHANGE: Tweaked Email, Calibration and Site info pages - added tool tips and removed some extraneous text - CHANGE: Removed initial site info text - CHANGE: Simplified number input control; its behaviour is now more consistent with numeric stepper control. - CHANGE: Rearranged span/polynomial fields and removed some extraneous UI elements to improve clarity and recover some vertical space. Also added tooltips. - CHANGE: Switched off menu animations to give the application a slightly zippier feel. - CHANGE: Toned down the lurid yellow tooltips - CHANGE: Removed redundant details (eg last RPC call) from "save to logger" error messages - CHANGE: Clarified some of the wording on schedule and storage settings pages and reduced clutter (#2345) - ADD: Added tooltips to schedule storage page, and email and SMS settings - CHANGE: Removed "details" column from Advanced settings - CHANGE: Enter key can now be used to accept Advanced settings changes - CHANGE: Removed comms warnings from Advanced settings (#3046) - CHANGE: Rearranged part of power control screen (#2910 part) - CHANGE: Default measurement names are now numbered from 1 rather than 0.

Fixes: - FIX: Improve reliability of application startup sequence. Prevents issues which occur with some browsers - FIX: Multiple lines can now be entered for manual channels, and site info now appears correct when you view the internal XML. (#2272) - FIX: Scroll bar in tree pane did not always appear when required (#2157) - FIX: Invalid profile settings read from a config file no longer cause assertion failures (#3174) - FIX: Don't send host modem, hidden and session timing profiles prior to modem test (#3201) - FIX: Correctly import configs containing bridge measurements in the immediate schedule (#3113) - FIX: Freeze when Edit->Rename selected immediately after tree item deletion (#3169) - FIX: Renamed measurements referenced in calculations were not being updated if the old measurement name contained regular expression meta characters eg "+" (#3126) - FIX: HTTP_PORT profile is no longer set by dex (#3165) - FIX: Removed 5..8DSO as external modem power options (#3163) - FIX: Availability of SDI12 and phase encoder channels was incorrect for some models - FIX: Input 3D appeared twice in the list of wirings for logic state output (#3106) - FIX: Assertion failure when reading settings from the logger if logger timezone profile setting did not match any in config builder's list. It will now select the nearest match. (#3107) - FIX: Modem self test was failing if modem did not start immediately - FIX: Incorrect operation of numeric input fields (#3162) - FIX: After loading a new config the navigation tree is now fully expanded. - FIX: RIAtest failure with TimeStepper control (#3171) - FIX: Scaling multiplier was not working for calculations and references (#3242) - FIX: Second schedule number is now 2 rather than 3 (#3229). - FIX: Over-long measurement names could be created in some circumstances (#3253) - FIX: Input strings are now limited to 119 characters, which is the max profile length on the logger (#3245) - FIX: Restricted email "From name", "From email" and "Subject" settings to 99 characters (#3292) - FIX: Large dEX jobs were sometimes reporting an error when saved to the logger (#3234)

- FIX: Email action message text control was not handling newlines properly (#3261) - FIX: Serial schedule trigger was generating 1SERIAL for DT82E rather than 2SERIAL (#3258) - FIX: Serial schedule trigger is no longer shown for models with no serial ports eg DT82EM (#3259) - FIX: If the logger reported a timeout error following "save to logger" then this was causing an exception in dex (#3271) - FIX: "<b>" was appearing in text label that appears when a data manipulation option is selected (#3280) - FIX: Pressing Cancel during a modem test could cause an exception (#3284) - FIX: Pressing Close during a modem test did not stop the test (#3284) - FIX: After running the modem test, the generated configuration could be inconsistent with the GUI (#3285)
dEX Web Interface Version 3.19.1899: ------------------------------------ CHANGE: Increased max number of mimic pages to 20 - CHANGE: Updated web links for downloads and training pages (#3134) - CHANGE: Added link to online training videos (#3154) - FIX: Command window was connecting to the wrong port when Dtusb was used and a web/ftp server is running on PC (which causes Dtusb to shift its port numbers by one) (#3269)
dEX Customiser version 3.11.1719: --------------------------------- CHANGE: Increased max number of mimic pages to 20 - CHANGE: Removed references to on-logger video tutorials (#3154)
Logger Home Page / classic Web UI version 3.14.1741: ---------------------------------------------------- CHANGE: Updated tech support and download links (#3134) - CHANGE: Removed video tutorials menu item in web UI
Other: ------ CHANGE: USB disk firmware upgrade script now checks that there is sufficient free disk space on logger before starting the upgrade.

Version 9.06.3817, 25 Aug 2011 FOR DT8xM MODELS ONLY ============================== Firmware: --------- FIX: Incorrect analog channel selection on DT82EM models
dEX Configuration Builder version 1.21.1519: -------------------------------------------no changes
dEX Web Interface Version 3.15.1480: -----------------------------------no changes
dEX Customiser version 3.10.1475: --------------------------------no changes
Logger Home Page version 3.11.1499: ----------------------------------no changes
Classic web UI version 3.11.1499: --------------------------------no changes
Version 9.04.3795, 20 Jul 2011 FOR DT8xM MODELS ONLY ============================== Firmware: --------- FIX: Spurious "not characterised" warning on startup - FIX: "Auto Ethernet IP" default function key now ensures that Ethernet port is enabled (#3081)

dEX Configuration Builder version 1.21.1519: -------------------------------------------no changes
dEX Web Interface Version 3.15.1480: -----------------------------------no changes
dEX Customiser version 3.10.1475: --------------------------------no changes
Logger Home Page version 3.11.1499: ----------------------------------no changes
Classic web UI version 3.11.1499: --------------------------------no changes
Version 9.02.3788, 30 May 2011 FOR DT8xM MODELS ONLY ============================== Firmware: --------no changes
dEX Configuration Builder version 1.21.1519: -------------------------------------------no changes
dEX Web Interface Version 3.15.1480: -----------------------------------no changes
dEX Customiser version 3.10.1475: ---------------------------------

no changes
Logger Home Page version 3.11.1499: -----------------------------------
no changes
Classic web UI version 3.11.1499: ---------------------------------
no changes
Other: ------
- CHANGE: updated user manual to UM0085-B5
Version 9.00, 16 May 2011 FOR DT8xM MODELS ONLY =========================
Firmware: ---------
* Modem
- ADD: support for integrated cell modem on DT8xM models, including power control, connection management and network routing to provide internet access. DT8xM3 models support 2G/3G, DT8xM2 models support 2G only.
- ADD: new command: MODEM param,param... (diagnostic/maintenance functions for integrated modem): MODEM ON - switch modem power on MODEM OFF - switch modem power off MODEM "at-command" - send specified AT command to modem, wait a short time, and return response MODEM PIN? - report PIN status of SIM card (ie whether PIN, PUK or neither is required) MODEM PIN=nnnn - enter current SIM PIN MODEM PIN_ENABLE,nnnn - enter current SIM PIN and enable SIM PIN checking MODEM PIN_DISABLE,nnnn - enter current SIM PIN and disable SIM PIN checking MODEM PUK=nnnnnnnn,nnnn - enter PUK code for a SIM that has been locked MODEM PIN_CHANGE,nnnn,mmmm - enter current SIM PIN (nnnn) and change it to mmmm MODEM SIGNAL - report signal level (dBm) and quality (bit error rate) MODEM IMSI - report SIM IMSI number (international mobile subscriber ID) MODEM NETWORK - report status of network registration (not registered, searching, registered, roaming etc.) MODEM OPERATOR - report name of network operator with which modem has registered MODEM FIRMWARE - report modem firmware version MODEM UPGRADE - upgrade modem firmware
- ADD: Modem status screen on LCD: shows modem state, signal level, data mode (GPRS/EDGE/3G etc)

operator name and IP address
- ADD: support for entering SIM PIN/PUK on LCD keypad. Displayed at start of communications session only if required.
- ADD: new system variables: 82SV (last last read signal level in dBm) and 83SV (last read network type code), 84SV (last read bit error rate)
- ADD: new profiles for modem configuration PROFILE MODEM PIN= - modem SIM PIN may be set here. PROFILE MODEM PIN_WAIT_S=120 - time allowed for user PIN entry PROFILE MODEM SERVICE=AUTO - mobile service to connect to (3G/GSM) (*) PROFILE MODEM GSM_BANDS=7 - GSM bands to use (default quadband) (*) PROFILE MODEM 3G_BANDS=19 - 3G bands to use (default bands I,II,V) (*) PROFILE MODEM REGISTRATION_WAIT_S=60 - time allowed for mobile network registration PROFILE MODEM MIN_SIGNAL_FOR_DATA_DBM=-93 - minimum signal level (dBm) for attempting Internet connection PROFILE MODEM SMS_ONLY=NO - allow SMS only; no Interet connection PROFILE MODEM APN= - access point name (*) PROFILE MODEM APN_ACCOUNT= - account name for Internet access (*) PROFILE MODEM APN_PASSWORD= - password for Internet access (*) (*) - if recommended SIM used then default value will be to suit carrier
- CHANGE: HOST_PORT and HOST_MODEM profile sections are ignored for integrated modem loggers, which use fixed host port settings, as is the PH= command.
- ADD: Support for dEX config builder modem test feature
* Sessions
- ADD: Communication sessions. Network and SMS comms using integrated modem are now grouped into sessions, in order to better manage modem power. A session is started when either:
- SESSION START command is issued, or - a high priority SMS alarm, email alarm, email unload or FTP unload is triggered, or - the configured session autostart time comes around, or - a session retry is required following an earlier communications failure A session continues until either: - a communications failure is detected, or - the configured maximum session duration is exceeded, or - the configured minimum session duration has elapsed and communications have been idle for the configured minimum idle time A session performs the following activities: - switch on integrated modem - prompt for SIM PIN on LCD if required - connect to mobile network - send any queued SMS alarms - connect to internet - send any queued email alarms, email unloads, FTP unloads and high priority SMS alarms - remain connected until scheduled end of session - switch off modem
- ADD: new command SESSION (manually start/stop/manage a communications session) SESSION START - start a communications session SESSION STOP - immediately terminate a communications session

SESSION LIST - list items queued for transmission SESSION CLEAR - cancel all queued items SESSION - indicate session status
- ADD: New command: SESSION SIGNAL This will enter a mode where the signal strength and BER are continuously updated on modem status screen and command interface. Use SESSION START or SESSION STOP to exit this mode.
- ADD: New default function menu items: Start comms = SESSION START Stop comms = SESSION STOP Check signal = SESSION SIGNAL
- ADD: Check network connectivity periodically by sending a fixed query to the current DNS servers, or to a configured ping server.
- ADD: new system variables: 80SV (code indicating current session state), 81SV (code indicating reason why previous comms session ended)
- ADD: new profiles for configuring communications session timing: PROFILE MODEM_SESSION MIN_DURATION_S=0 - once a session is established, it will stay active for at least this time (seconds) PROFILE MODEM_SESSION MAX_DURATION_S=0 - session will be terminated after it has been active for this time (seconds). A value of 0 indicates no maximum duration. PROFILE MODEM_SESSION MIN_IDLE_S=120 - session will be terminated if no data has been sent for this time (seconds). A value of 0 disables idle checking. PROFILE MODEM_SESSION NUM_RETRIES=5 - number of times that a communications session will be retried in the event of an error PROFILE MODEM_SESSION RETRY_DELAY_S=20 - time delay between session retries (seconds) PROFILE MODEM_SESSION TIMING_CONTROL=OFF - define time window (OFF/CRON/ALWAYS). Session
will be kept active during time window. PROFILE MODEM_SESSION START_CRON=0:0:12:*:*:* - window start time (if TIMING_CONTROL=CRON) PROFILE MODEM_SESSION STOP_CRON=0:0:13:*:*:* - window stop time (if TIMING_CONTROL=CRON) PROFILE MODEM_SESSION NETWORK_CHECK=DDNS - method used to check network connectivity (NONE/DDNS/PING) PROFILE MODEM_SESSION PING_SERVERS= - ping servers to use if NETWORK_CHECK=PING
* Email
- ADD: new profiles for configuring the logger's email client PROFILE MODEM_SESSION SMTP_SERVER= - SMTP server to use when sending email (*) PROFILE MODEM_SESSION SMTP_ACCOUNT= - login name for SMTP server, if required (*) PROFILE MODEM_SESSION SMTP_PASSWORD= - password for SMTP server, if required (*) PROFILE MODEM_SESSION - return address to put in email header PROFILE MODEM_SESSION SENDER_NAME= - sender name to put in email header (default is model and serial number) (*) - if recommended SIM used then default value will be to suit carrier
* Alarms and unload
- ADD: Alarms can trigger an SMS and/or email message by including an one or more URIs in square brackets after the alarm string, eg:

IF(1TK>10)1DSO,3CV"alarm ?v"[sms:+61400123456][,] Optional URI arguments may also be specified:
- priority=low/normal/high: start session immediately or queue until next session starts - subject=string: email message subject (default="dataTaker SN 123456 alarm") - body=string: SMS/email message body (default=alarm string)
- ADD: FTP unloads may now be performed via a communications session using the integrated modem. Optional URI arguments may be specified:
- session=yes/no: If "yes" (default) then the transfer is performed using a communications session over the integrated modem, otherwise FTP is performed in the traditional way via Ethernet or a previously established PPP connection, with 2 retries. - priority=low/normal/high: start session immediately or queue until next session starts
- ADD: Unloads may now be performed to an email destination eg: COPYD,
Optional URI arguments may be specified, as for alarm email.
- CHANGE: The current job's unload start=new pointers are now preserved across a hardware reset. They will still be reset following an "all mem cleared" or firmware upgrade reset, or if a different job is loaded. (#2380)
- CHANGE: Unload data files are now written to a temp file on FTP server, then renamed. This ensures that there will be no incomplete .dbd/.csv file on the server. Note that .tmpNNN files may accumulate on the server in case of failures. (#920,#2838)
- ADD: New profile: PROFILE UNLOAD FTP_RETRIES=10 - max number of FTP retries before giving up
- CHANGE: A longer delay is now inserted after every 3rd FTP retry so that in most cases the session will time out and the retries will be continued in the next session.
- FIX: 29SV is now set to -30 if an unload file cannot be added to ftp/email queue. (#2785)
- CHANGE: Separated unload data files from general temp files. Temp files remain in D:\TMP or B:\TMP and are cleared on reset. Unload data files for transmission by comms session are now written to B:\UNLOAD. On startup, any orphan files in B:\UNLOAD (ie not referenced in any comms queue) are deleted.
- CHANGE: File sequence number is now consistent across all files generated by a single unload command.
- FIX: When creating a temporary unload file (required for ftp/email destination, or dbd-format web destination), we now ensure that the file doesn't already exist in the logger's unload folder. If it does then a new temp file name is chosen eg if myfile.csv exists then we try myfile_01.csv. This will not affect the FTP destination filename, but it will change the name of the email file attachment. (#2778)
- CHANGE: For merge=n unloads, files are no longer written to A,B,C... subdirectories. Instead, an _A,_B,_C... suffix is appended to the filename to indicate the schedule. This makes it compatible with the flat temporary folder used during comms session unloads. Note that the suffix will be added even if a custom destination filename is specified. (#2797)
- CHANGE: It is no longer an error to specify "copyd merge=n dest=filename.csv"

- FIX: corrected "Copy logged data" function so it does not try to copy from A: (#2818)
- FIX: FTP client no longer attempts to change to '/' folder (#2753)
- FIX: Port number in FTP URI is now interpreted correctly (#2551)
- CHANGE: For traditional FTP, reduced retry delay to 30s, added a message to indicate that a retry is pending, and checked for abort request during this delay time.
- CHANGE: Q command now also clears any commands that were blocked pending completion of unload (#2742)
- CHANGE: Unload output file sequence number now wraps around at 999
* Dynamic DNS
- ADD: Dynamic DNS support for modem interface. If the user creates an account at then their specified dyndns subdomain name will be associated with the logger's dynamic IP address. This allows the logger to be accessed from the internet without knowing its actual IP address, subject to the mobile carrier providing a public IP address and not blocking incoming connections.
- ADD: new profiles for configuring dynamic DNS: PROFILE MODEM_SESSION DDNS_ENABLE=NO - enable DDNS client PROFILE MODEM_SESSION - URI that the logger will use when communicating with DDNS server PROFILE MODEM_SESSION DDNS_SERVER_PORT=80 - TCP port number PROFILE MODEM_SESSION DDNS_ACCOUNT= - DDNS account name PROFILE MODEM_SESSION DDNS_PASSWORD= - DDNS account password PROFILE MODEM_SESSION DDNS_HOST_NAME= - configured host name as specified in your dyndns account, eg ""
* Schedule triggering
- ADD: Schedules can now be triggered on specified date/day/time, as follows: (#916) RA[sec:min:hour:day:month:wday]
which is based on the Unix "cron" syntax. Schedule will trigger when the current time matches the sec,min,hour,month fields, and either the day or wday fields. Each field may be either "*", or a list of values (eg "1,3,5"), or a range (eg "1-12"). A field may be suffixed by /n which will trigger every n values, (eg "2-12/3" triggers on 2,5,8,11). Fields may be omitted from the right - "*" is assumed for omitted fields.
* General Communications
- FIX: Network would sometimes become inaccessible if logger is unplugged and connected to a different Ethernet subnet (#1729)
- FIX: Network routing problems with PPP and Ethernet (#2378)
- ADD: new command: PING {TOnnn} destIP Sends a single ping to the symbolic or numeric destination address and reports result. Optional TOnnn parameter specifies a timeout of nnn ms (default 2000ms)
- CHANGE: PPP local/remote IP address profiles (eg. SERSEN_IP_ADDRESS) are now ignored; the default values are always used.

- CHANGE: Changed profile default settings: PPP/USER=DATATAKER, PPP/PASSWORD=DATATAKER
- FIX: IP address was sometimes being lost if system time set backward (#2851)
- CHANGE: Increased web server timeout to cope with possible large delays between parts of a request on a wireless network.
- CHANGE: Reduced maximum number of simultaneous command server, FTP and Modbus TCP/IP connections to 3 apiece
* Other
- FIX: Software exception on changing the NTP settings in the profile (#2690)
- FIX: incorrect filename in error message if unable to write to unload temp file (#2653)
- ADD: new profile: PROFILE USER SITE="" If a string is defined then it will be shown on the LCD home screen instead of the current job name. (#2325)
- FIX: Bug in jsonrpc setup was causing excessive memory usage
- CHANGE: URIs can now contain spaces, provided that the URI is enclosed in quotes
- CHANGE: P56=64 LCD mimic is now only output if the display actually changes
- FIX: COPY command with FTP destination was not closing FTP connection properly
- FIX: Resetting a profile to its default value did not work if current profile value was an empty string (#2739)
- FIX: Changing the case of a profile setting did not work (#2922)
- CHANGE: HTTP_SERVER/DOC_ROOT profile is now hidden (#3011)
- ADD: An ftp URI may now be specified as an argument to the DIR command, which will list files in the specified folder on the FTP server.
- ADD: New command: RENAME src dest - renames a file Src may be a local file or an ftp URI, eg RENAME b:\mydir\x.txt b:\mydir\y.txt or RENAME flintstone.csv (for FTP the dest should be a filename only, no path)
- FIX: Creation of a spurious UNTITLED job due to certain commands being misinterpreted as a one-line job definition (#2791)
- CHANGE: Changed default for certain profiles to "0S" rather than "0" or "0H" so that they don't show up as modified when a Jango-generated config is loaded.
- FIX: Possible crash following invalid login to FTP server (#2936)
- CHANGE: Spaces are now permitted after the = in a PROFILE command (#2894)
- CHANGE: Certain profiles are now "hidden", and will not be displayed by the PROFILE or PROFILE

SECTION commands, unless they are set to a non-default value. These profiles will not be listed in the manual.
- FIX: Day of week as used by http header was often incorrect (#2889)
- FIX: Possible lockup if problem writing to log file on startup (#2764)
- CHANGE: Negative CV values in time specifications (eg T=1CV, copyd start=1CV) are now handled properly (#2795)
- ADD: new profile: FTP_SERVER/PORT=21, specifies FTP server port (0=disabled) (#1516)
- FIX: possible crash and loss of real time clock if invalid modbus messge received (#2683)
- FIX: possible sw exception or invalid value displayed if time/date details for nonexistent storefile are retrieved via SSI directive on a custom web page (#2823)
- FIX: sw exception if invalid CV/SV number specified in SSI directive on custom web page
- FIX: When loading a job from dex, an error could be reported even though the job was successfully loaded (#2393)
- CHANGE: When clearing a job all pending commands generated by the job's alarms are cleared (#2742)
- FIX: Some operations were being done in the wrong order when loading a job from dex (#2742)
- CHANGE: Soft reset (INIT) will no longer delete temporary files or clear queued comms session items. These will only be cleared on hard reset.
- CHANGE: Increased maximum command line length to 1023 characters.
- CHANGE: Removed 127 char limit on alarm URIs (#2698)
- CHANGE: Added checking for the following limits on URI elements: authority: 255 chars, path: 255 chars, query: 511 chars, SMS phone number: 19 chars
- FIX: SETMODBUS data type option is no longer case sensitive (#2529)
- FIX: Default Modbus data type is now signed rather than unsigned (#2528)
- FIX: FACTORYDEFAULTS was not clearing the current job (#2711)
dEX Configuration Builder Version 1.20.1519: --------------------------------------------
- CHANGE: Most profile and other global settings are now set using separate controls rather than a single tabular grid. Controls are grouped into a number of categories, each with its own settings page. These controls are more intuitive and allow proper input validation.
- ADD: Integrated modem profile settings (Modem, Session, Email, DDNS)
- ADD: Modem self test feature. This applies the current modem settings to the logger and performs a number of connectivity checks.

- ADD: SMS and email alarm outputs. These generate the new alarm "communications action" syntax: IF()[sms:...] and IF()[mailto:...]
- ADD: Email logged data and FTP logged data actions can be added to a schedule. These generate COPYD commands with appropriate options.
- ADD: Daily schedule type. This generates a subset of the new "trigger at date/time" schedule syntax: RA[s:m:h:d:m:wd]
- ADD: Warn user if javascript is disabled.
- ADD: Transmit periodic 'heart beat' to prevent modem session timing out.
- ADD: Provide immediate feedback when saving configuration to logger or doing any other operation that communicates with the logger. This avoids apparent lockup if communications were lost. (#2715)
- CHANGE: Check completeness of configuration before attempting to generate command language
- CHANGE: Hidden profiles are now recognised and stored/displayed as appropriate. Non-default hidden profiles are displayed in the "Advanced" settings list, but are read-only.
- CHANGE: Default logger alarm output text is now "Event triggered on Logger ! at @ on #, ?N value is ?V ?U." (#3020).
- FIX: Logger job and data were always being deleted even if new job was identical (#2951)
- FIX: CEM count control was allowing invalid values for some logger types.
dEX Web Interface Version 3.15.1480: ------------------------------------
- ADD: Added support for bar chart mimics.
- ADD: Slide show feature on mimic pages. This will automatically switch between mimic pages, and can be set to auto-start when web interface is loaded.
- CHANGE: removed support for the profiles, parameters and switches pages.
- ADD: Warn user if javascript is disabled.
- ADD: Transmit periodic 'heart beat' to prevent modem session timing out.
- CHANGE: updated the profile description strings.
- FIX: Recalled chart mimics were unaware to which schedule they belonged, causing long load time (#2703).
- FIX: Tooltip for the Update button on the Orphaned mimic dialogue was misleading (#2572).
- FIX: Application failed to run if there was a "-" in the URL.

dEX Customiser Version 3.10.1475: ---------------------------------
- CHANGE: Removed support for the profiles, parameters and switches options.
- ADD: Transmit periodic 'heart beat' to prevent modem session timing out.
- ADD: Added settings page for slide-show mode
- FIX: Application failed to run if there was a "-" in the URL.
Classic web UI version 3.11.1499: ---------------------------------
no changes
Logger Home Page version 3.11.1499: -----------------------------------
- ADD: Warn user if javascript is disabled.
- ADD: Transmit periodic 'heart beat' to prevent modem session timing out.
- CHANGE: extended the "hiding menu items" feature. So now if the user renames /www/jango, /www/flash or /www/needa folders then the menu items will be hidden on the Logger home.
- FIX: Avoid 'unhandled exception' javascript error when net cable unplugged (#2938).
Version 8.08, 16 Nov 2010 =========================
Firmware: ---------
- ADD: COPYD dest= argument can now contain dynamically replaceable parts. The following codes may be inserted into a dest= string: (#1780)
- ?(timestamp) - will be replaced by the time (yyyymmddThhmmss) at which the unload operation started
- ?(seq) - will be replaced by a 3-digit sequence number. Note: this number is not necessarily unique.
- ?(serial) - will be replaced by the 6-digit logger serial number - ?(n$) - will be replaced by the value of string variable #n - ?(nCV) - will be replaced by the value (integer part only) of channel variable #n
For example: COPYD dest=
would create a filename similar to the following on the FTP server: mydata/SN081234/007_20100522T100005.csv
The default filename specification is unchanged, and is equivalent to ?(seq)_?(timestamp)

Note: The above feature is not documented in user manual UM0085-B3
- ADD: Now recognises Series 3 product codes (DT82E-3, DT82I-3, DT80-3, DT80G-3, DT80L-3, DT80GL-3, DT85-3, DT85G-3, DT85L-3, DT85GL-3)
- ADD: New channel PWR5V for controlling isolated 5V output on series 3 hardware (PWR5V=1 to turn on). Note that power output will only be on while the analog section is powered, so if you want power to persist beyond the end of a measurement then P21=1 is required.
- CHANGE: Renamed 1SSPWR channel to PWR12V (1SSPWR will still work, however)
- ADD: Added support for RTD temperature reference, 5..7HSC, 3PE on series 3 hardware
- ADD: New 2-wire measurements for all resistance channel types: 1*R(2W), 1+R(2W), 1-R(2W), 1R(2W). Excitation is fixed at 200uA, so the II channel option is invalid. These wiring configurations will only work on series 3 hardware.
- ADD: HRESET is now accepted as a synonym for SINGLEPUSH (#725)
- ADD: INIT is now accepted as a synonym for RESET (#725)
- CHANGE: CSV unloads to FTP server are now buffered to a temporary file on compact flash card, same as is currently done for DBD format unloads. The FTP transfer is not started until the entire file has been written. This minimises the transfer time.
- ADD: If an FTP unload fails, it will now be retried up to two additional times, with 60 seconds delay between attempts. If all three attempts fail the unload will be abandoned.
- CHANGE: Adjusted the allocation of processing resources so that sampling has higher priority than unloads or web accesses, so that the schedule rate stays closer to the desired value. Continuous schedules will now be throttled if an unload is in progress, ie. some time will be given to the unload after each schedule execution, so the sample rate will decrease during the unload. Note however if you use a very fast timed schedule (eg RA10T) then a background unload may never complete unless you halt or slow the schedule.
- CHANGE: Reduced the delay at the start of an unload.
- ADD: An FTP URI may now be specified as the second argument of the COPY command, which allows an arbitrary file to be pushed to an FTP server. Note however that because COPY is a foreground command, logging will stop for the duration.
- ADD: If the second argument of the COPY command ends in a slash, a file with the same name as the source file will be created.
- FIX: It could sometimes become impossible to connect to command/modbus servers following change to FTP server profiles (#2611)
- FIX: Possible corruption of folder names if an attempt is made to create an invalid file/folder path eg one containing multiple ':' characters (#2691)
- CHANGE: Invalid pathnames now result in an "invalid path" file IO error message, rather than "error code 10"

- FIX: Command server could sometimes become unresponsive if an ethernet connection was closed then immediately reopened. (#2693)
- FIX: COPYD where format = CSV, dest = a location on a USB memory device, and the USB device is not inserted, no longer crashes the logger (#2679)
- FIX: All column headings are now printed for unloads of CSV data where the heading row is longer than 2KB (#2671)
- FIX: Logger could enter a continuous reboot cycle if a dEX configuration was loaded, then an NTP profile setting was changed manually, then the logger was reset (#2657)
- FIX: Incorrect channel shown for SDI12SEND 4 command, on DT81/82E (#2353)
- CHANGE: If a host application such as DeTransfer sends a probe to detect whether a logger is present, the logger will reply to it but the active comms port will NOT change. The active port will only change when a regular character is received. (#2639)
- CHANGE: Job name is now only inserted in COPYD destination path if a) job=* merge=n is specified, or b) dest=b:/a:/d: is specified. (#2632)
- FIX: Crash associated with background NTP update thread (#2614)
- FIX: Web server may stop responding if ethernet interface is reset (eg. following profile or IP address change) in conjunction with heavy web traffic (#2611)
- FIX: With P28=2 (keep 12V output on while asleep), 12V power output was actually switching off briefly following each wakeup (#2343)
- FIX: Possible sw exception if ethernet cable disconnected (or modem powered down) at the same time as logger goes to sleep (#2624)
- FIX: Analog state (AS) channel was always returning 0 (#2613)
- FIX: Serial triggered schedule timestamps were not quite matched properly to serial message data
- FIX: 29SV was being updated for web unloads; it is now only updated for command processor unloads.
- FIX: SW exception if you unload alarms to file but there is no source alarm store (#2633)
dEX Configuration Builder Version 1.12 --------------------------------------
- CHANGE: updated to support series 3 logger models, and DT82I-2.
- ADD: Ability to import dex files between series 2 and 3 variants of the same model.
- FIX: SDI-12 channels were available even if the logger did not support it.
- FIX: Digital out channels available for Logger events (Alarms) now matches the capability of the loggers

- FIX: the default resistance value in RTDs was not updating when switching between measurements - FIX: impossible to remove a logger event action if the application area was to small (mouse could not click the red X). - FIX: DT81-2 loggers were reporting the wrong wiring in the digital bit in/out. - CHANGE: Output the 2W option for 2 wire resistance measurements on series 3 logger. - CHANGE: hide excitation control for 2W wiring configurations - FIX: Error dialog was not being triggered when the configuration loaded from a logger originated on a different logger model. (#2635) - FIX: If a wiring list was too tall for the screen the wiring list now has a scroll bar to view obscured diagrams.
dEX Web Interface Version 3.07 -----------------------------no changes
dEX Customiser Version 3.04 --------------------------no changes
Logger Home Page version 3.04: -----------------------------no changes
Classic web UI version 3.04: ---------------------------no changes
Version 8.06, 20 Jul 2010 ========================= Firmware: --------- CHANGE: Default src option setting for COPYD, DELD and web unload is now src=ABD, i.e. search for source store files on all logger drives. This was preventing display of chart data, and causing an

error when COPYD/DELD used with default options, in the case where the job was configured to log to A:. (#2594)
- FIX: Improved logging speed (#2589)
- FIX: Spurious "no current job" error when DELD used in alarm/if/do statement (#2585)
- FIX: SW exception if REMOVEMEDIA command used while logging to USB memory device (#2586)
- FIX: "Error accessing storefile" message when copyd del=y arc=y command is used to unload (with delete) from an archive file (#2584)
- FIX: COPYD del=y arc=y command was failing to physically delete source archive files (#2593)
- FIX: Incorrect COPYD error message and 29SV status if DNS lookup fails (#2454)
- CHANGE: When doing a merge=N unload, the "Unload complete" or "Unload aborted" message is now generated at the end of the unload command, rather than after each destination file. This is now consistent with the behaviour of 29SV.
- CHANGE: Removed error position indicator ([..<err>...]) from runtime COPYD errors eg "no matching storefiles". Indicator is still present for syntax errors eg "invalid parameter"
- FIX: no error message reported if copyd/deld cmd with invalid params used inside IF/ALARM/DO (#2363)
- FIX: If a change was made to a dEX configuration that logs to A: drive, and the configuration was then activated, then any previously logged data was not being deleted. This caused the logger to reject the new configuration. (#2592)
- FIX: dEX applications were unable to communicate with the logger when Chrome or Safari web browsers were used (JSON-RPC calls were not working). (#2306)
- FIX: Incorrect handling of \ and " characters in JSON-RPC messages (#2457)
- FIX: Possible sw exception if a configuration is activated while a previous configuration is running (#2467)
- FIX: Possible lockup if real time data is returned while an unload is in progress and a network

dropout occurs (#2452)
- FIX: Possible analog measurement fault error if immediate channel or RESET command executed while job is running (#2425)
- FIX: Modbus connections were not being accepted if the logger's modbus server was restarted (eg by changing a modbus related profile setting), while a modbus connection was active (#2469)
- FIX: missing error msg for invalid Modbus-TCPIP packets (#2367)
- FIX: possible eventual refusal to accept incoming web/modbus/ftp connections following Ethernet or PPP interface disconnect (#1692)
- FIX: unable to access FTP links in dEX (eg user's manual) using Google Chrome (#2540)
- FIX: FTP data socket was not being closed if a client accessing the logger's FTP server sent an unexpected QUIT command. This would eventually lead to the logger refusing further network connections (#2541)
- FIX: unable to browse FTP file listing in Firefox (#2548)
- CHANGE: Increased FTP client rx/tx timeouts from 30s to 120s to allow a better chance of recovery from a wireless network dropout. Connect timeout is now 60s.
- FIX: If a temporary network dropout occurs while the logger is navigating and creating directories on an FTP server then commands could be sent out of order, resulting in a failed transfer (#2402)
- FIX: Logger was not disconnecting from the FTP server following an error while navigating and creating directories on an FTP server. (#2402)
- CHANGE: Logger no longer attempts to send a QUIT command to the FTP server after an error occurs. If the error was due to a network timeout then attempting to send a QUIT will just launch a new round of retransmissions. QUIT is now only sent following a successful transfer.
- FIX: Spurious blank lines in FTP diagnostic (P56=8) output
- CHANGE: Logger will now continue to poll for a DHCP server after assigning itself a link-local (169.254.x.x) address. 6 attempts are made at 10s intervals, then it will

continue to check every 5 min. (#2269)
- FIX: Logger will now avoid assigning itself link-local addresses from the reserved ranges (169.254.0.x and 169.254.255.x)
- FIX: Incorrect DHCP renew/rebind timing when DHCP server explicitly specifies renew/rebind times
- FIX: DHCP rebind (broadcast lease renewal request following failure of directed renewal request) was not being performed
- FIX: Incorrect DHCP rx timeout handling
- FIX: sw exception if stats/manip applied to T/D channels
- FIX: fixed some anomalies/inconsistencies in channel option validity checks: - internal meas/SV/SDI12 accept channel factor for scaling - LT disallowed for digitals (hangover from DT800) - R disallowed for CALC/references - SSPWR/SSPORT treated the same as other digital outputs eg DSO/WARN/RELAY - analog options disallowed for kernel-based internal meas eg IBAT - GLxx disallowed for internal meas - BR treated same as TR/TZ
- FIX: spurious error message in if/alarm if T/D channel is used with a >< or <> operator where the first setpoint is specified as just hours, or hours:minutes (#2368)
- FIX: references to time/date channels used in alarm tests will now expect time/date setpoints (#2390)
- FIX: spurious error message if CV and numeric setpoints used eg: if(1cv><2cv,3) (#2392)
- CHANGE: removed battery screen on LCD for models with no internal battery charger; also removed VBAT/IBAT from free format TEST display (#2372)
dEX Configuration Builder Version 1.09 --------------------------------------
- ADD: help menu now has "known issues", "release notes" and "user's manual", plus web and email links (#2405,2550).
- CHANGE: added some helpful instructions next the CEM count when the CEM count is more than zero.

- FIX: Make config editor work in Chrome/Safari browsers (#2335)
- ADD: Measurements and Schedules can now rename using the Rename menu item in the Edit menu.
- CHANGE: Add warning popup that appears when user edits comms settings
- CHANGE: Generate informative error messages when failing to load profiles or version info
- CHANGE: Error messages when loading an incompatible dex file are now more specific (#2514).
- FIX: PT3xx measurements were not being imported properly from old configuration versions.
- FIX: Moving a reference was causing the drop down control to show the wrong channel (#2530).
- FIX: The validation in the units control was marking valid values as invalid (#2543).
- FIX: The scaling multiplier had an incorrect limit applied to it. It was increased to +/-1e37 (#2559).
- FIX: adding a new scaling function will now ensure that it is visible in the list (#2560).
- FIX: Prohibit references and calcs from being used as temp. zero or temp. refs (#2562)
- FIX: Exponential values can now be entered for span/polynomial coefficients (#2558).
- FIX: Span/polynomial selection was being lost when another span was deleted (#2557)
- FIX: A superfluous current type wiring type was removed (#2545).
- FIX: Incorrect logger code generated when triggering a while on a CV (#2301).
- FIX: Autonames for the statistical channels were not allowed to be long enough and so it was possible to generate non-unique names (#2538).
- FIX: Prevent measurements that are referred to, from being moved to immediate schedule (#2483)
- FIX: Prevent a user from deleting measurement referred to by other calcs and refs in the config (#2483)

- FIX: A reference can no longer be moved into the "On logger activation" schedule (#2274).
- CHANGE: Present unconfigured measurements to the user in one list rather than subsequent error messages.
- FIX: Cause CALC channels to be updated when measurements are renamed
- FIX: When moving a tree node up or down the schedule it moves to will be expanded to make it easier to see what has been done (#2465).
- FIX: File save failure was reported as a success (#2525).
- FIX: Make sure the delay measurement names are unique (#2512)
- FIX: Current measurement default units has been reset to "" because it currently shares a channel type with the unrelated Current Loop type (#2254).
- CHANGE: The about dialogue box has been reformatted to more easily "select and copy" the version information making bug reporting that much simpler.
- FIX: Make sure a deleted polynomial/span is removed from all measurements to which it is applied (#2233)
- FIX: Make stats and events mutually exclusive for programmatic "measurements" (#2176)
- FIX: The white space inside matching quotes of channel names in an calculation will now be preserved (#2476).
- FIX: Make delay channels always working channels (#2479)
- FIX: Escape < & > chars in logger error messages (#2480)
- FIX: unique names for measurements enforcement was not working when loading a config from a file (#2482).
- FIX: Units are now added to every config regardless whether or not they are blank (#2396).
- FIX: restriction of extended character set in measurement names has been removed (#2181).
- ADD: CEM count now stored in the configuration.
- FIX: All two wire resistance logger code generation was not correct (#2299).

- FIX: References to manual channels was not generating correct logger code (#2324).
- FIX: Malformed JSON messages were causing the application to crash. (#2412).
- FIX: Reference channel was not transforming properly when saving to the logger (#2324).
- FIX: A text field in the logger event conditions was not read-only (#2436).
- FIX: Removed menu item "Work offline" (#2419).
- FIX: The warning message given to the user when deleting a schedule that has measurement in it was not informative enough as to the consequences of saying "ok" (#2417).
- FIX: the Logger Event's "Condition must be true for" untis was not displaying valid options.
- FIX: Generate correct XML & cmd lang for '+' terminal voltage bridge measurements
- FIX: Ensure that measurement names are unique across the whole configuration.
- FIX: Ensure that poly/span coefficient changes apply to the correct poly/span (#2066)
- FIX: Correct error that prevents importing non-analog channels with alarms (#2384)
- FIX: Ensure unique measurement names when loading a job (#2354)
- FIX: Make profiles for http port and http doc root read only (#2228)
- FIX: Moving a channel across schedules no longer causes a crash (#2332)
- FIX: Overhaul comms and error handling. The config editor now detects all the comms error modes that the flash player can report to it. In addition, error messages contain more information that should be helpful when diagnosing communications problem. See bugs #2102 #2142 #2143.
- FIX: Make it so that immediate schedule with alarms and manual channels can be restored from disk or logger.
- FIX: Channels added to the "on logger activation" were set to log by default. They are now set to not log (#2344).
- FIX: Channels in the "on logger activation" schedule did not have their "log this" checkbox disabled until another channel was added to a triggered schedule.

- FIX: Reference channel drop down list was not limiting its length to a sensible maximum length (#2355).
dEX Web Interface Version 3.07 ------------------------------
- ADD: the mimcs are no longer simply deleted when a change to the logger's configuration is detected (via the SHA1 hash). Instead the user will be presented with a dialogue box to allow them to choose remapping/deletion options for the data sources of non-chart mimics and chart traces. Addtionally, if the user has changed the configuration, but it has not changed the channel table names, then the user will not be prompted with a dialogue box - instead the remapping of the mimics will occur automatically using the channel name as the matching criteria.
- ADD: If the mimics are in a READ_ONLY state, then a user will now be notified that the configuration has changed and any automatic changes that are possible will happen, but the user will not be presented with the "orphaned mimics" dialogue. Instead a simple message popup will inform the user that they should get their administrator to fix the problem.
- CHANGE: updated the status bar error messages for some communications errors (#2539).
- ADD: When the mimics are "read only" the mimic's page title will state "read only".
- FIX: corrected a spelling error in the add mimic dialogue box (#2502).
- FIX: exponent values were not converted properly in a mimics (#2513).
- FIX: Slow chart data re-load if the user moves away from the mimic screen for time longer than the time-window for a chart (#2464). Note: this bug will still be a problem if the logger's time and the PCs time is not synchronised.
- FIX: Chart mimics were not using start=yyyy-mm-ddThh:mm:ss when loading the initial data if using recalled mimics (#2464).
- FIX: Chart backfilling now uses a relative time to optimise data retrieval times (#2255).
- FIX: a race condition existed when the application starts resulting in the application's main

screen remaining invisible. The user was not prompted as the failure.
- CHANGE: various changes to the text in the application to now refer to the "logger monitor" rather than the "web-interface".
- ADD: "Delete all mimics..." button added.
- CHANGE: added extra information system to the About dialogue box.
- FIX: Mimic custom label could be lost during mimic remapping (#2610).
- CHANGE: Disabled custom labels for charts (#2610)
dEX Customiser Version 3.04 ---------------------------
- FIX: An IO error message was displaying during startup when no _mimics.txt file was found.
- FIX: the index.html file was not displaying the customiser when it loaded.
Logger Home Page version 3.04: ------------------------------
- CHANGE: the background image is now fixed (won't scroll with the content).
- CHANGE: the low speed connection is now titled "Monitor the logger" to match the high speed connection.
Classic web UI version 3.04: ----------------------------
no changes
Version 8.02, 01 Apr 2010 =========================
Firmware: ---------
- CHANGE: Fixed format real time and logged data will now use the old numeric values (99999.9, -9e9 etc.) for "error" data values. This works around a Delogger crash when reading textual error values (OverRange etc.). (#2307)
- FIX: Delogger "program change" messages were not being sent for DELDATA,

DELALARMS and DELJOB commands (#2321)
- FIX: Commands following an unload command on the same line were not waiting until completion of the unload (#2305)
- CHANGE: Various improvements to P56=32 packet capture facility
- FIX: When deleting data, we no longer return an error if no storefiles exist. This prevents Delogger warnings when changing a schedule with no loggable channels. (#2321)
- FIX: SW exception if 29SV changed during unload (#2329)
dEX Configuration Builder Version 1.01 --------------------------------------
no changes
dEX Web Interface Version 3.02 ------------------------------
- CHANGE: small reorganisation of the computer settings for the Service log.
- CHANGE: Mimic dialogues now get scroll bars if the screen size of the computer is small instead of losing access to the whole dialogue.
- FIX: port number is now sent with a retrieve data request (#2315).
dEX Customiser Version 3.02 ---------------------------
- FIX: Full screen disable option was not working properly when changed in dEX settings (#2297).
Version 8.00, 17 Mar 2010 =========================
Firmware: ---------
- ADD: COPYD command - extract data from dbd file(s), possibly convert format, and output to comms/file/ftp. See user manual for details.

- ADD: LISTD command - show logged record counts and other information. See user manual for details.
- ADD: DELD command - delete data from DBD file. See user manual for details.
- CHANGE: COPYDATA, MOVEDATA, ARCHIVE, U, A, DIRJOB, DELDATA, DELALARMS commands now work as alternative (deprecated) front ends to the COPYD/LISTD/DELD commands
- CHANGE: storefiles are now always created on job entry, even if logging is not enabled, unless a zero size is set eg RA(DATA:0R)1S (#1315)
- CHANGE: Format of auto-generated unload destination filenames is now sightly different eg 005_20100219T110046.DBD. The 005_ is a sequence number whose main purpose is to avoid the slow directory searching that occurs when there are many similarly named files (#1020)
- CHANGE: textual error values are now returned in realtime and logged data: OverRange, UnderRange, RefError, Error, OpenCircuit, NotYetSet replaces 99999.9, -99999.9, 8e9, -8e9, 9e9, -9e9 respectively.
- CHANGE: web unloads may now proceed in parallel with a command processor unload and/or other web unloads. Note that command processor unloads will still be processed sequentially.
- ADD: new web unload options to support multi-format unload and chart mimics
- CHANGE: web unload estimate now works for dbd/fixed/free format web unloads, and is more accurate for CSV unloads. (#1639)
- CHANGE: P38 (decimal point char) and P41 (number of decimal places in timestamps) now affect CSV format unload data. If P38 is set to 44 (comma) then the CSV separator is changed to semi-colon. This allows CSV format data to be opened when running in a European locale. (#1946)
- CHANGE: for MIXED format output (includes CSV/fixed format) the maximum number of digits after the decimal point is now 6 (was 12). Note that the number of significant digits is still limited to P32 (default 8). This reduces the number of times inexact floating point values such as 1.3 are represented as 1.3000002 or similar in the data, while still preserving 8 significant digits for large integers.

- CHANGE: 29SV now represents the status of the last command processor unload (to any destination), rather than the status of the last FTP transfer. Added a couple of error codes for local file errors.
- ADD: new profile settings (n=1..10) - FUNCTION Fn_LABEL="label text" - FUNCTION Fn_COMMAND="command text"
- CHANGE: FUNCTION= command is now deprecated but still works as a front end to the new function key profile settings.
- ADD: new profile settings: - DISPLAY/AUTOSCROLL_INTERVAL=0 - interval between autoscroll of channel screens (0=disable) - DISPLAY/AUTOSCROLL_DELAY=30S - delay after last keypress before autoscroll starts - DISPLAY/AUTOACK_DELAY=0 - timeout before auto-acknowledging popups that are normally persistent (0=disable)
- CHANGE: P18 (autoscroll interval) and P19 (status screen display) are now ignored. When autoscroll is enabled using the profile settings only the channel screens are displayed.
- ADD: additional default function key: "Auto Ethernet IP"
- CHANGE: extended ASCII degree and mu symbols (176,181) are now mapped onto the corresponding LCD characters when displaying on the LCD
- CHANGE: progress indicator is now shown on LCD only for unloads to USB device
- CHANGE: LCD progress indicator now shows source store progress numerically eg. 1/3 indicates store 1 of 3 is being unloaded. Bar graph shows progress of the store being unloaded.
- CHANGE: LCD bargraphs now have single pixel resolution (80 pixels total)
- CHANGE: LCD now indicates "Aborted" for aborted unload, and for failed unload gives an error code. Also blinks Attn for the duration of the error popup.
- ADD: added "Run ONINSERT?" prompt when a memory stick containing an oninsert job is inserted. Default is Yes (5s timeout). Pressing any key other than OK will prevent oninsert being loaded. (#853)

- ADD: now supports SNTP (simple network time protocol) for synchronising the DT80 system time to an NTP server.
- ADD: new profile settings for configuring background NTP clock adjustment.
- ADD: new command: NTP This will perform an immediate NTP query and if necessary a time adjustment.
- CHANGE: 26SV and 27SV are now used to indicate NTP request status and time discrepancy between logger's time and source clock time as at the last successful NTP request.
- FIX: on wake or bootup, when time is restored from RTC it is no longer truncated to the nearest second.
- ADD: any jump in system time, due to T/D command or NTP jump correction, will now be recorded in event log.
- CHANGE: new profile setting: STARTUP/RUN (#1270,#1254) This controls auto-loading of jobs on cold reset. Possible settings are: - CURRENT_JOB - reload the job that was active at the time of reset, if any. This is the default - NONE - do not load any job - <jobname> - load the specified job. This could be used if you have a multi-job setup and you want the logger to revert to the "home" job on reset.
- CHANGE: RUNJOBONRESET"job" command is now deprecated. It will perform the equivalent of PROFILE STARTUP RUN=job
- CHANGE: DELONRESET command is now deprecated. It will perform the equivalent of PROFILE STARTUP RUN=NONE
- CHANGE: onreset job and profile settings are no longer backed up to flash memory (#674)
- ADD: "reference channels" may now be defined (&chan) - see user manual for details.
- ADD: new channel type: CALC(opts)=expr This is similar to a CV except that it does not read or write to any particular CV location. It

can however be logged and referenced like any other channel. An expression must be specified.
- CHANGE: Error values eg OverRange now propagate through expressions so that if any input is overrange then the result is overrange. Also, integer expressions now produce an integer result, although if the result is assigned to a CV it will still end up as floating point.
- CHANGE: arguments to the mod (%) operator are no longer converted to integers, eg 7.5%2 now returns 1.5 rather than 1.0
- FIX: if an expression error was detected it would sometimes cause a spurious error to be reported for a subsequent valid expression (#1636)
- FIX: expression parser now correctly indicates the position in the expression where the error was detected (#1550)
---Modbus Master
- ADD: new channel type: nMODBUS - see user manual for details
- CHANGE: the FUNCTION profile setting for serial ports can now also be set to MODBUS_MASTER
- CHANGE: data format parameters for the SETMODBUS command changed slightly
- ADD: new channel options for MODBUS: (see user manual for details) - ADn or AD"addr" (device address) - Rt:rrr:b (register number) - MBxx (data type) - MEx (word order) - TOn (timeout) - RTn (retries) - MUIDn (Modbus unit id) - =m..nCV (set block of CVs)
- ADD: new expression format (MODBUS only): =m..nCV (read block of CVs and write to device)
- ADD: == (equal) and != (not equal) can now be used in alarm expressions eg if(3st==7) rather than if(3st><6.5,7.5). Should normally only be used with an integer value on the RHS as floating point representation may approximate non-integer values.
- ADD: alarm channels may now include an expression, provided that the whole channel definition is

enclosed in brackets, eg. IF((CALC=&2CV+3)>10)"boo"
- ADD: new channel option: LM (log measurement) - if set for an alarm channel eg IF(1V(LM)>2) then the alarm value will be logged and returned
- CHANGE: for alarms, the W and NL options no longer prevent alarm text being logged. They do prevent the alarm value being logged, although note that for alarms the default is to not log the value anyway. (#602)
- ADD: added support for DT82E product
- CHANGE: updated help files, added new help files: UNLOAD, SYSTEMVARS, EXPRESSIONS
- CHANGE: job text is no longer preprocessed into uppercase
- CHANGE: quotes are now optional for pathname and profile parameters, eg: DIR b:\\jobs; profile ethernet ip_address=auto
- ADD: you can now reset all profile keys in a section to defaults using PROFILE SECT= (cf. PROFILE SECT KEY= to set a single key to default)
- CHANGE: channel names may now be up to 24 characters long, schedule names up to 20 characters.
- ADD: new channel option: SRn - applies span n in reverse. May also be used in expressions eg. 1CV=SR1(2CV)
- FIX: DSO delay now works the same as DELAY/PAUSE, ie delays longer than 20ms do a background wait so other threads can run. (#2042)
- CHANGE: minimum DSO delay is now 1ms rather than 10ms (#1925)
- ADD: new channel option: PT (precise timing), valid for DELAY, DSO, WARN and RELAY channel types. If specified then a precise delay (+/- 1ms) will always be performed, at the expense of locking up the logger for the duration. If not specified then behaviour is as currently,

ie. precise delay for times of 20ms or less, otherwise a background delay (+/- 16ms) is performed (#2200)
- CHANGE: Logger will now make up to 10 attempts to contact DHCP server (40 seconds total), rather than 2. This can help in certain network configurations where a DHCP server is not available until some time after startup. (#1916)
- CHANGE: command server UDP port is now fixed (port 7700) so that logger can be detected regardless of profile settings. TCP port is still configurable. (#2185)
- CHANGE: actions taken when profiles are set (eg Ethernet port reset when Ethernet profiles set) will now only occur if the value is actually changed (#2188)
- CHANGE: RESET command will now also reset comms overrides (PH/PS), comms password and SETMODBUS settings (#1738)
- FIX: Ethernet port sometimes did not work following reset ("No cable" indicated on display) (#2018)
- FIX: SW exception on receipt of invalid HTTP request line (#1911)
- FIX: Under some circumstances web server was not responding to HTTP requests (#2079)
- CHANGE: PPP connections via USB port no longer require username/password
- FIX: PASSWORD command is now accepted even if user is not logged in (#1604)
- FIX: password timeout is now independent of system time changes and sleep
- CHANGE: improved SERVICEDATA "chkdsk" output, and added information about largest contiguous free block. This gives an indication of how fragmented the disk is.
- CHANGE: the schedule timestamp that is reported and logged is now, for serial triggered schedules ONLY, the time at which the trigger data was added to the serial sensor buffer, as opposed to the time at which the schedule is actually processed. (#1934)
- FIX: if more than one serial-triggered schedule is present then they will now be processed according to whose trigger string occurred first. (#900)
- FIX: serial triggered schedules were sometimes not running if there were multiple copies of the trigger string in the buffer (#1943)

- FIX: a serial-triggered schedule could sometimes be triggered twice, leading to a spurious timeout error (#1797) - FIX: ST channels were being returned as floating point rather than integer
dEX Configuration Builder Version 1.01 -------------------------------------Initial release
dEX Web Interface Version 3.01 ------------------------------ ADD: chart mimic type added - CHANGE: minor updates to other mimic configuration dialogs - ADD: unload format (DBD/CSV) can be selected on Retrieve screen - CHANGE: added port shifting algorithm to support DtUsb - ADD: Flash player version is now in the About dialogue. - CHANGE: added a default second mimic page for charts - CHANGE: estimated retrieval time now uses whole minutes when less than 60 minutes remaining except for the last 30 seconds. - ADD: Navigation bar added to the application. - FIX: The auto update of an out of date FlashPlayer will now work with Windows, Mac and Linux or browser (#2259). - ADD: Created front page menu option to launch configuration builder - CHANGE: Updated the page title. - ADD: updated profile list to include DISPLAY, FUNCTION, NTP, STARTUP, LOCALE - CHANGE: updated company name in HTML UI footers
Version 7.14, 11 Feb 2010 =========================

Firmware: ---------
- ADD: added support for DT82 product, in particular: - 2 analog channels - 3 o/d digitals, 1 active/SDI12 digital - no serial sensor port - no phase encoder - no CEM20 support - AS1231 terminal and AS1229 kernel assembly numbers
- ADD: now recognises DT85L product type and assembly numbers (AS1232/AS1233 for kernel/terminal)
- ADD: 'E' or 'L' product option suffixes will now be interpreted as indicating the "low power" hardware variant (no internal battery charger)
- FIX: SW exception on receipt of invalid HTTP request line (#1911)
- FIX: Under some circumstances web server was not responding to HTTP requests (#2079)
- CHANGE: EEPROM write buffer reduced to 16 bytes to work around apparent bug in CAT25080VI part
Web UI (version M2.15, N1.15): ------------------------------
no changes
Version 7.12, 20 Nov 2009 =========================
Firmware: ---------
- FIX: On some units, Ethernet port sometimes did not work following reset ("No cable" indicated on display) (#2018)
Web UI (version M2.15, N1.15): ------------------------------
no changes
Version 7.10, 17 Sep 2009 =========================

- FIX: a response is now sent for every DEL character received, including back to back DELs. This issue was causing Deload unloads to fail. (#1947)
- FIX: PASSWORD command is now accepted even if user is not logged in (#1604)
- FIX: password timeout is now independent of system time changes and sleep
- CHANGE: Logger will now make up to 10 attempts to contact DHCP server (40 seconds total), rather than 2. This can help in certain network configurations where a DHCP server is not available until some time after startup. (#1916)
- FIX: memory leak for any command (eg DIRJOB, DELDATA) where the specified job does not exist. This could eventually cause a software exception. (#1975)
Web UI (version M2.15, N1.15): ------------------------------
no changes
Version 7.08, 26 June 2009 ==========================
- ADD: Ethernet interface now supports automatic configuration via DHCP. This is controlled via the ETHERNET/IP_ADDRESS profile, which may be set to either: aaa.bbb.ccc.ddd (an IP address):
- IP address, subnet mask, gateway and DNS server settings are set from profile AUTO: (new default setting) - Ethernet interface is always powered up (except sleep) - On startup, wake and cable connect, logger will attempt to contact a DHCP server and request IP address and other parameters. - If successful, these values will be used, overriding any profile settings. - If DHCP fails then logger will give itself a link-local IP address (169.254.x.y), subnet =, no gateway, DNS servers as per profile. In this mode the logger cannot communicate beyond the local subnet.
- ADD: There is now a fourth status screen on LCD which shows current Ethernet mode (auto/manual/disabled), IP address and cable state
- ADD: new profile setting: ETHERNET/ENABLE=YES,NO (default=YES). (Setting the IP address to will also disable the port.)
- CHANGE: serial sensor, host and USB ports now offer mostly equivalent functions. Port function is controlled by the following profile settings
- SERSEN_PORT/FUNCTION: serial sensor port function (default=SERIAL)

- HOST_PORT/FUNCTION: host port function (default=COMMAND) - USB_PORT/FUNCTION: USB port function (default=COMMAND) Each of the above may be set to either: - COMMAND: accepts ASCII commands or PPP connections - PPP: accepts PPP connections only (improved security for dial-in modems) (#245) - SERIAL: for use with nSERIAL channel only; port is powered down if no nSERIAL channel defined - MODBUS: accepts modbus requests (MODBUS_SERVER/SERSEN_ADDRESS, MODBUS_SERVER/HOST_ADDRESS or MODBUS_SERVER/USB_ADDRESS must also be set) - DISABLE: port is powered down Ports are numbered 1 (sersen), 2 (host) and 3 (USB), for the purpose of nSERIAL and nSSPORT channels, and SSDIRECT n and CLOSEDIRECTPPP n commands, and also default PPP IP addresses (see below).
- CHANGE: each serial port now has fixed default serial settings. Previously the default settings changed depending on the port function, which was found to be confusing. The defaults are: Serial sensor port: RS232,1200,8,N,1,NOFC Host port: RS232,57600,8,N,1,SWFC USB port: not applicable
- ADD: PPP is now supported on serial sensor and USB ports, as well as the host RS232 port. Added profiles to allow logger and remote IP addresses to be set for each port; default settings are as follows:
- PPP/SERSEN_IP_ADDRESS = (new) - PPP/SERSEN_REMOTE_IP_ADDRESS = (new) - PPP/HOST_IP_ADDRESS = (renamed - was PPP/IP_ADDRESS; default was - PPP/HOST_REMOTE_IP_ADDRESS = (renamed - was PPP/REMOTE_IP_ADDRESS; default was - PPP/USB_IP_ADDRESS = - PPP/USB_REMOTE_IP_ADDRESS = Note that host port default PPP addresses have changed. Existing host port PPP users will therefore need to either change their Detransfer etc connection to point to, or change the logger profile to point back to No changes are required to the Windows PPP network connection setup. The three ports all use the same username/password, set using PPP/USER and PPP/PASSWORD profiles.
- CHANGE: improved the process of switching in and out of PPP mode (for ports with FUNCTION=COMMAND); it is no longer necessary to set up a login script to send "CLIENT" on connection. The logger will now begin the PPP connection process if it sees something that looks like a PPP packet, or it sees "CLIENT" at any time. (#898)
- CHANGE: host port is now powered down if disabled, which saves a few mA
- FIX: PPP connection will now be closed in the event of USB cable disconnect or modem carrier loss (#1106)
- FIX: USB cable connect/disconnect was not always being detected properly (it should turn on backlight when connected)

- FIX: host port was always initialising RTS ON. It is now only turned on if HWFC is enabled.
- FIX: possible web server lockup if connections are terminated unexpectedly (#1525)
- FIX: added timeout to reclaim sockets following unexpected disconnections, preventing situations where the web server could eventually begin refusing requests. (#1708)
- FIX: SS port in RS485 mode would stop responding to Modbus polls (due to transmitter stuck on) after a couple of hours' operation. (#1709)
- FIX: failed PPP uart transmissions (eg due to hwfc timeout following rs232 cable disconnect) were sometimes preventing any further PPP transmissions
- CHANGE: on receipt of "CLIENT" or any PPP packet, logger will now begin PPP connection negotiations actively; previously it waited for the other side to make the first move. This helps the two ends resync following an unexpected logger reset.
- FIX: FTP client sockets will now be freed even if extra input is received after they are closed. This prevents socket leak. (#866)
- FIX: serial sensor rx timeout was not reverting to default value (10s)
- FIX: logger output was not being suppressed when a modem was connected but not online (#1842)
- FIX: possible truncation of long USB output strings following wake (#1678)
- CHANGE: changes to profile settings now take effect immediately; SINGLEPUSH is no longer required. The following are some things to be aware of when changing particular settings: - ETHERNET/xxx: All open sockets on Ethernet port will be disconnected and Ethernet port will be restarted (possibly launching a new DHCP query) - SERSEN_PORT/xxx, HOST_PORT/xxx, USB_PORT/xxx: PPP session if any is terminated, then setting is changed. Port will be disabled (powered down if possible) if FUNCTION is set to SERIAL or DISABLED, otherwise it will be enabled (for SERIAL, the port will be enabled if and when a nSERIAL channel is subsequently defined). - FTP_SERVER/xxx, COMMAND_SERVER/xxx, HTTP_SERVER/xxx, MODBUS_SERVER/xxx: All TCPIP connections to the relevant server will be terminated and the server will be stopped then restarted (or not, if SUPPORTED=NO or PORT=0 was set). - PARAMETERS/xx, SWITCHES/xxx: the indicated parameter/switch is set immediately. So if you want to set a parameter temporarily (until next RESET or reboot) then send Pxx=yy. If you want to set a parameter permanently, send PROFILE "PARAMETERS" "xx"="yy".
- CHANGE: profile listing no longer indicates changed (*) if a profile is explicitly set to the default value. Previously it did, which could be confusing.

- ADD: new profile setting STARTUP/MAINTAIN_OUTPUTS (default=NO). If set to YES then digital outputs 1..8DSO and 1RELAY will retain their state (and, for 5..8DSO, their output-enable state) across cold start (SINGLEPUSH, firmware upgrade, exception). If logger power is lost (external and main battery), or the hardware reset button is pressed, then digital outputs will revert to default states but will be restored when power is restored. If lithium battery power is lost then the digital states will not be restored. RESET command will reset outputs to default values.
- CHANGE: default setting for P15 parameter is now 0 (allow sleep if battery powered AND usb not connected AND ethernet is disabled)
- CHANGE: P51 (time interval format) default changed to 6 (hhh:mm:ss.ttt).
- CHANGE: default setting for HOST_MODEM/INIT profile is now "AT". It is recommended that a modem be pre-configured before connecting it to the DT80.
- CHANGE: default setting for HOST_MODEM/SEND_BANNER_ON_CONNECT profile is now "NO"
- ADD: increased number of channels and channel variables to 1000 each (#1466,#1469)
- ADD: increased number of string variables to 50 (ie 1..50$) (#1655)
- CHANGE: /r switch no longer applies to channels in the immediate schedule they will now always be returned unless NR or W channel option is used.
- CHANGE: 29SV can now be manually set to a value. This allows you to reset 29SV to 0 before starting an FTP operation, which can simplify the code required to test it.
- FIX: scaling options eg polynomials were not working for SERIAL and SDI12 channel types (#1854)
- FIX: LT channel option is now valid for HSC and PE channel types only (#1694)
- FIX: LM135/235/335 channels no longer accept 3W/4W channel options
- FIX: data/digital manipulation options now work with sysmon channel types eg VBAT (#1668)
- FIX: removed the restriction which prevented 1F(2V). This restriction related to DT80 Series 1 hardware characteristics. (#1715)
- CHANGE: removed OLE and DDE channel options
- CHANGE: removed P45 (add DDE/OLE prefix)
- ADD: A single channel variable reference may now be used wherever a date or time string is expected, eg:

T=1CV D=2CV DT=[2CV,1CV] U(1CV)(1CV,2CV) U[2CV,1CV] IF(T>1CV)"boo" CV value is in seconds since midnight for time values, seconds since base date for date values (#1804)
- FIX: Error is now reported if time/date values have trailing erroneous characters eg. T=12:09xxx
- FIX: CVs were being set to incorrect values when set via Modbus Write Coils command (#1835)
- FIX: initial reading with DF option was sometimes incorrect (#1676)
- FIX: possible incorrect initial relay state on geologger units, leading to increased power consumption prior to a measurement (#1691)
- FIX: incorrect REFT reading if P36 set to units other than degC (#1703)
- FIX: OR/XOR/AND/NOT now have lower precedence than relational operators in expressions (#1885)
- FIX: SW exceptions in the event of an analog subsystem fault.
- ADD: TCP/IP loopback interface enabled. Logger can now talk to itself (eg FTP) using address; note this provides a way of unloading to a file on internal or USB drive.
- CHANGE: SSI #reading command now outputs just the text (timestamp, value, units); it no longer includes <pre> HTML tags.
- FIX: %nn sequences in URIs are now handled properly. These are required where FTP usernames/filenames contain special chars such as '@' and ' ' (#1666)
- FIX: FTP server now reports file time instead of year if the file is less than one year old. (#838)
- FIX: large event and error log files were not being returned properly via the web interface (#1818)
- FIX: event and error logs returned via the web interface now have their MIME type set to "text/plain" so that the browser displays them correctly if you enter the request directly into the browser. (#1818)
- FIX: continuous reboots if http server port set to 0 (#1712)
- FIX: HTML "HEAD" requests are now handled properly, ie. identically to "GET" except that only headers are returned (no body)

- FIX: crash if a HTTP_SERVER profile setting is changed in the web UI command window (#1727, #1897)
- CHANGE: U "ftp-uri" syntax (unload current job to ftp) now works. (Previously the URI would have been interpreted as a job name, so to do an ftp unload you needed to specify U"job" "ftp-uri".) The rule is now that to be interpreted as an FTP URI the string must either a) be preceded by a job and/or schedule spec, or b) contain at least one "/" character.
- FIX: possible lockup while copying large data file to USB memory device (#1792, #1323, #994)
- FIX: errors and file system corruption if data copied to USB stick while doing web accesses (#1687)
- FIX: incorrect rounding when outputting numeric values in text format (#1734)
- FIX: when P41=0, time values were showing one decimal place rather than none (#1711)
- ADD: ISO format time values for unload U[] or date/time setting DT=[] can now be specifed in either existing format (yyyy/mm/dd,hh:mm:ss,0.ttt), regular format (yyyy/mm/dd,hh:mm:ss.ttt), or true ISO8601 format (yyyy-mm-ddThh:mm:ss.ttt). (#653)
- ADD: BEGIN and END can be used for ISO format unload specifiers (#328)
- CHANGE: all error messages (those beginning with Exx) are now also written to event log
- CHANGE: significantly reduced overall memory usage; prevents problems which coud arise when unloading jobs with many hundreds of channels, for example.
- FIX: the DIRTREE command now reports long filenames in both fixed and free format modes (#1471)
- ADD: Allow leading + in output redirection file name (eg SERVICEDATA "+file.txt"), which will append to the specified file rather than overwriting it.
- FIX: incorrect formatted mode output for ?n/?ALL commands
- FIX: incorrect free space listed following format of B: (#1702)
- FIX: improved the mechanisms for preventing possible disk corruption (lost clusters etc) if the power is interrupted during a disk write operation. A message is now written to the event log in the event that a file system auto-restore occurs. (#1714)
- CHANGE: erroneous command sequences sent by DeTransfer during firmware upgrade

are now silently ignored. This prevents an error in event log on Detransfer firmware upgrade. (#748) - FIX: firmware upgrade failure when DeTransfer "control message/date return" option is switched off. (#748)
Web UI (version M2.15, N1.15): ---General - ADD: Added a control to hide/restore the main menu - ADD: Created a graphical configuration tool for customising the functionality of the web UI. Settings will be saved to the logger. - CHANGE: Menu items can be disabled, using the configuration tool. - CHANGE: Some images and text can be customised, for re-branding purposes. - FIX: Improved error messages for invalid "macros.txt" file (#1726). - FIX: Older versions of the Flashplayer will now be prompted for upgrading instead of a grey screen (#1853). ---Status - CHANGE: new profile settings are now recognised ---Retrieve - FIX: now works with version 10 of the Flash player. ---Measurement - ADD: up to 5 mimic pages can be defined. - ADD: the layout (number of rows and columns) of a mimic page can be defined (min 1 x 1, max 4 x 4) - ADD: mimics can now be locked to prevent modification by users. - FIX: compass mimic needle was representing increasing angles as a anti-clockwise movement. This is now clock-wise (#1654). - FIX: units available in a mimic now change if the used changes the mimic's source channel variable (#1640). - CHANGE: units display on a mimic is now more prominent (#1589). - CHANGE: saved mimics reload is not more robust if the mimic definition file is corrupted.

- ADD: The threshold checkbox, when activated, now reveals a "variance" number entry field. This will default to zero, ie., any change will be recorded. If a value other than zero is entered as the variance changes to the channel variable will not be recorded until the variance has been reached (either plus or minus) (#1624).
- CHANGE: increased the relative size of the arrow on the compass mimic.
- ADD: The command port value will now be read from the logger. Note that there is a limitation in the Flashplayer that will not allow port values below 1024 (#1862).
- CHANGE: updated the error message for failing to connect to the logger when there is a network problem.
- ADD: Custom help pages can be added.
- CHANGE: videos wait for 5 seconds before play back begins to make playback better for slower network connections.
- CHANGE: updated introduction video
---Logger home
- CHANGE: Updated the look of the interface selector page. Allows selection of new web UI configuration tool
Version 7.06, 29 September 2008 ===============================
- FIX: data logged immediately prior to entering sleep mode was sometimes not being written correctly to 128M internal compact flash card (#1723)
Web UI (version 1.16):
- no changes
Version 7.04, 1 May 2008 ========================
- ADD: channels on attached CEM20 channel expansion modules can now be measured

(DT80/85 series 2 only) - see user's manual
- ADD: FW channel type for vibrating wire sensors (DT80G/85G only)
- ADD: new command: HELP "topic" Displays contents of a help file, of which there are currently five (commands, schedules, channels, alarms, settings) (#1344)
- CHANGE: We now allow resistance measurements on * terminal eg 1*R. For example, on DT85G/DT80G this allows a vibrating wire input on +/- and a thermistor input on */# (#1326)
- ADD: new parameter P28 for controlling 12V output on DT85 & DT80/81 Series 2: P28=0 Auto CEM power (default). Logger ensures that 12V output is on prior to CEM measurements and switches it off when measurements are comoplete. P28=1 12V on all the time P28=2 12V on all the time including while asleep P28=3 12V status not changed. CEMs if used are assumed to be externally powered. (#1543)
- ADD: SSDIRECT may now be used on the host port when the port function is set to COMMAND (as well as SERIAL). This allows you to connect via USB or Ethernet, type SSDIRECT 2, and then interact with a modem connected to the host port (eg send AT commands, assuming the modem is in command mode)
- ADD: new functions & constants (for use in expressions): - R2D(rad) - converts radians to degrees - D2R(deg) - converts degrees to radians - PI (=3.1415927) - E (=2.7182818)
- ADD: hex (eg 0x3FF) constants may now be included in expressions
- CHANGE: Discontinuity records are no longer logged (#524, #627, #823, #1424)
- CHANGE: Significantly improved unload speed on USB/Ethernet (#1493)
- CHANGE: Significantly improved update rate for web UI mimics and channel list (#1585)
- CHANGE: changed command processing to allow commands to execute during background commands. The new rules are as follows: - 1. A sequence of commands *on the same command line* always executes sequentially. So if you enter U HA A SATTN all on the one line (or include them all in a single alarm eg DO{U HA A SATTN} then the HA A SATTN commands will be blocked (held on a "pending" queue) until the U completes. - 2. If a background command (U/A/COPYDATA/MOVEDATA/ARCHIVE) is in progress and you attempt to execute another background command then the new command will be blocked until the first command completes. Because of Rule 1, any commands that occur after the new command on the same command line will also be blocked. (#1456)

- CHANGE: when P8=1 (echo text received by cmd processor) and a command line is read from the pending queue, its source is indicated with a "P-" prefix, eg #P-USB<SATTN>
- CHANGE: Changed the way single ended channel sequences work: only terminals between the start and end terminal (inclusive) will now be generated, eg 1+..3-V will now generate 1+V,1-V,2+V,2-V,3+V,3-V and 3#..1#I will generate 3#I,2#I,1#I
- CHANGE: setting /H will now have no effect on other switches or parameters. Previously, setting /H would set /e/r/n/u P22=',' P24=CR P38='.' then restore them when /h was set, which was complicated and could cause unexpected behaviour depending on the logger's previous state. Now, if /H is set then: - all subsequent unloaded and realtime data will be in fixed format. All formatting params/switches will be ignored. - command echo and command prompt will be inhibited In particular, note that if data returns are on (/R) then they will stay on when /H is set. Note that Delogger, Detransfer and Deload all send /H/r so there should be no change to their operation. (#471)
- CHANGE: unloading to active comms port will now have no effect on other switches or parameters. Previously, /e/m/r/z would be set before the unload, then restored when it completed. We now explicitly inhibit command echo and messages while an unload is in progress. Note that if data and alarm returns are on (/R/Z) then they will remain on during unload. This allows Delogger to update its views during unload (#1454)
- CHANGE: removed P31=4,5 and P39=4,5 formatting options, which had been deprecated for some time.
- CHANGE: text output formatting options now work a little differently: - for FFn, exactly n digits are printed after the decimal point (Previously the number of decimal places could vary depending on P32 setting.) No more than P32 significant digits are printed. - for FEn, exactly n digits are printed after the decimal point, and the exponent uses a lower case 'e' and always includes the exponent sign (+ or -) and two exponent digits. No more than P32 significant digits are printed. - for FMn, n significant digits are printed (P32 is ignored). Exponential notation is used if the exponent is < -4 or >= n, otherwise floating point. Any trailing zeroes after the decimal point are trimmed. In other words, numbers are displayed more or less as they would in a calculator. (Previously mixed format output was quite erratic.) (#417)
- CHANGE: P33 is now interpreted as the minimum field width. It will never cause values to be truncated; it will just add padding to short values
- CHANGE: error values are now output as strings rather than numbers. So an overrange value will always output "99999.9" and a not-yet-set value "-9e9", regardless of any formatting settings.
- CHANGE: RefError data state (ie error measuring thermocouple/bridge ref channel) is now returned as "8e9" (was "99999.9"). This makes it distinguishable from overrange (99999.9) value.
- ADD: new command: DELVIDEOS - deletes b:\www\videoHelp directory

- CHANGE: FTP server no longer converts arguments to upper case. This was causing any file uploaded to the logger (which didn't already exist) to have its filename stored as all uppercase.
- FIX: Detransfer connection failures when using modem. (#1280)
- FIX: Logger was blocking for up to 60s when USB cable connected but no active Detransfer connection on the PC. (#1236)
- FIX: ^ operator now has higher precedence than multiplicative operators (*,/,%) (#884)
- FIX: unnecessary parentheses no longer required in logical expressions (#1518)
- FIX: when commands are sent one char at a time, command processor would sometimes start interpreting the command before CR was entered (#1494)
- FIX: incorrect sign for R100 channel (internal shunt R) (#1501)
- FIX: spurious newline output after formatted mode real time alarm records
- FIX: if ^M or \13 was placed in an alarm string CRLF was being output rather than just CR.
- FIX: added 5ms delay prior to starting measurement delay for analog measurements, to allow for break before make pulse generation
- FIX: event/error log files are now backed up when their size reaches 32k, rather than 500 lines. This prevents a potential problem in the case where the memory backup battery is not functional (#1473)
- FIX: sw exception when processing an invalid http header (#1497)
- FIX: incorrect time values displayed with P39=2,3 (#964)
- FIX: maximum negative integer value not displayed properly (#172)
- FIX: Attn LED was not being turned off on RESET command (#930)
- FIX: SW exception on certain invalid web request headers (#1528)
- FIX: web unloads were sometimes returning no data in cases where a fast schedule had many channels (#1581)
- CHANGE: Unloads via HTTP now come with content-type header value of "text/csv". This would commonly cause the user agent to ask whether to save the unload to disk or open with the default spreadsheet app. (#1506)
- FIX: <policy-file-request/> message was appearing in the web UI command window when it is enabled (#1534)
- FIX: SW exception when very long pathnames reported via web interface (#1443)

- FIX: #measure SSI directive was not working for non-analog channels (#1533)
Web UI (Ver 1.16):
- CHANGE: The "Please wait" dialogue has been largely replaced with a "pulsator" (browser like) which shows activity by animation. The "Please wait" dialogue will now come up after 30 seconds. This will give the user an opportunity to cancel any pending communications. Additionally, the menu is now disabled during most communications (#1449 and #1498).
- CHANGE: Rather than loading the mimics and macros during start up, they are now loaded when their respective screens are selected. (#1576).
- ADD: "Deep-linking" has been implemented. As a result any screen in Montecito can now be bookmarked and thus the application can be started on any screen (#1489).
- CHANGE: Storage - USB stick now uses "Free" and "Used" (#1429).
- CHANGE: Storage - Updating the Storage screen does not change the selected drive to B: (#1428).
- CHANGE: Status items (except Diagnostics) now "update" each time their menu is selected (#1368).
- FIX: Download timer now uses the system clock (#1514).
- CHANGE: Remove Transfer rate from Download status dialog, added time remaining and total bytes downloaded (#1513).
- FIX: the "Get" column check-boxes on the Advanced data grid were misbehaving. Now they aren't (#1512).
- FIX: if the retrieve data was ready to go and the job was changed, the job change will now abort any retrieval attempted.
- FIX: the download timer was not showing sensible numbers. Now it is (#1524).
- FIX: Incorrect unload request sent if "Select all" & "Select none" buttons were used (#1592).
- CHANGE: default units for the mimics are now those defined in the program, ie., logger's (#1434).
- FIX: mimics that support threshold values have the threshold values displayed

be default.
- CHANGE: For mimics that support colour: - Colour changes for any mimic that has a colour option is now done using the palette selection control. - Inactive colour is now grey be default. (#1435, #1432)
- CHANGE: The saved mimics are not deleted when the logger job changes. This enables a job to restart without losing the mimics (#1446).
- CHANGE: All mimics now handle strings as measurement values. (The only places the strings will be useful is the History and the Digital mimic.) (#1313).
- CHANGE: Update rate now added as tool tip to the mimic title-bar (#1458).
- CHANGE: Channel list and mimic channel selector now support numerical ordering eg. 9CV before 10CV (#1378).
- FIX: When history list mimic became full the newest entries were being deleted rather than the oldest. (#1479)
- CHANGE: Channel can now be changed in mimic configuration dialog (#1478).
- CHANGE: Removed mimic "Multiplier" field (#1433).
- CHANGE: Mimics now support a custom label to replace the channel name (#1482)
- CHANGE: all mimics now support fixed decimal places (#1487).
- CHANGE: Dial meter measured value now located in the top-left corner of the mimic, as with other mimics (#1504).
- FIX: significantly improved channel list processing time (#1510).
- CHANGE: All mimic types now have a tool-tip containing the measured value, the logger's time stamp and the data state on their current value control (#1530).
- CHANGE: The history list will now optionally: 1. show the time stamp for each value in the list (default: On). 2. only update when a value differs from the top of the history list (default: Off). (#1531)
- CHANGE: State indicator layout has been changed to make the active state be less ambiguous (#1529).
- CHANGE: The thermometer, bar graph and dial meter mimics now have a consistent control called "Label steps" to set how many steps are on each scale. Also note that to have a mimic that has 0, 10, 20, 30, 40, 50, 60, 70, 80, 90 and 100 as the labels the step count is 10 (#1537).
- CHANGE: The thermometer, bar graph and dial meter mimics now support three ranges. These are set by four values: Maximum, Upper threshold, Lower

threshold, Minimum. The three ranges are (each with a colour): * between Maximum and the Upper threshold; * between the Upper and Lower thresholds; and * betweem the Lower threshold and the Minimum (#1532).
- CHANGE: the threshold logic in the State mimic has been reversed, so the config dialogue layout matches the mimic layout. Should be more intuitive to configure.
- FIX: Extra "\r"s are now stripped out from the mimics and channel list variables (#1545).
- CHANGE: Changed the term "variable" to "channel" in some dialogue boxes (#1629).
- FIX: closing the add mimic dialogue when the drop-down list is still active was causing erroneous behaviour (#1631).
- CHANGE: command window now uses code page "ISO 8859-1" to allow display of extended ASCII characters (#1442).
- CHANGE: rearranged controls to a more logical fashion.
- CHANGE: better feedback for the user if the command window cannot connect to the logger (#1555).
- ADD: on-line help videos for the enhanced web interface.
Version 7.02, 20 December 2007 ==============================
- ADD: all new enhanced (Flash) web interface (Series 2 loggers only) - see user's manual. Existing (HTML) web interface is still supported.
- ADD: support for Series 2 hardware
- CHANGE: default TCP/UDP port for command interface is now 7700 (was 8)
- CHANGE: To format the internal drive it is now necessary to enter FORMAT"B:" DELETEALL
which is aimed at discouraging users from routinely reformatting their drive. Formatting the internal drive will delete the web interface files and event logs. To quickly clean out all jobs and their data, the DELALLJOBS command is now provided.
- ADD: new command: DELALLJOBS - unconditionally delete all jobs and data This command will (1) halt and delete the current job, (2) delete all stored jobs and logged data, ie. everything under b:\jobs, and (3) delete the ONRESET

job, if any.
- ADD: new command: SERVICEDATA "filename" Generates a report containing various useful data and writes it to the specified file (if no filename specified then data will be returned via the active comms conduit). The report includes: - TEST - CHARAC - STATUS - parameters - PROFILE - event log - error log - current job - logged data (DIRJOB*) - DIRTREE - file system check - comms settings and statistics - task details - memory usage - TCP/IP socket usage Note that this report is intended for human consumption, so we select /h mode for the duration of the report generation.
- ADD: if ?nn$ is included in alarm text string the value of nn$ will be substituted. (It is therefore no longer possible to output a CV value followed immediately by a $ symbol) (#886)
- ADD: If an error occurs when the logger connects to an FTP server then the error message is now also written to the event log (#922)
- ADD: new system variable 29SV - status of last FTP attempt (#922) 0 = no FTP transfers have been attempted 1 = FTP in progress 2 = last FTP transfer was successful -1..-9 = connection error on last FTP attempt -10..-19 = transfer error on last FTP attempt
- ADD: new system variable 5SV: 1 if externally powered, 0 if battery
- ADD: TEST comand now displays the product number, options and series just above the serial number. In /H mode this string is returned as TEST29.
- CHANGE: Firmware loader may now install files onto the internal disk during the firmware upgrade process. These include user manual, release notes nad web interface files.
- CHANGE: If an error occurs during firmware upgrade, the Sample and Attn LEDs will now turn on for 5s before logger restarts (in conjunction with the error msg on the display). This is mostly for the benefit of display-less DT81 users.
- CHANGE: Logger will now restart in the event of a timeout during a firmware upgrade. Previously the logger would continue to wait indefinitely. This state could be hard to break out of if you don't have physical access to the logger.

The restart will also give you a chance to connect/disconnect the USB cable in order to change the port used for the upgrade.
- CHANGE: Following a successful upgrade, if there are any loader.s/firmware.bin files present then they will be deleted. This helps prevent surprises if bootstrap mode is entered some time in the future. (#656)
- CHANGE: The default drive for all file commands is now B: so you no longer need to specify it in filename strings.
- CHANGE: If logger wakes from FORCED sleep mode then this will now cause a COLD start rather than a sleep wakeup (warm start). This is not an unreasonable thing to do because schedule execution will have already been disrupted by the extended forced sleep period. Trying to resume a job with interdependent schedules may cause unexpected behaviour unless the job is carefully coded to tolerate large unexpected time gaps. (#1269)
- CHANGE: alarm text string syntax is now checked on entry (previously any string would be accepted, but could cause unexpected results when the alarm was activated). The aim is to make the syntax a little less ambiguous. In particular: - error if ? is followed by a letter [A-Za-z] other than [CNRUVcnruv]. So if you use the old DT500 syntax (? rather than ?v) then you need to have a space or symbol after the ?. - error if CV/string index out of range eg "?999" - error if CV index is followed by a letter [A-Za-z] other than [FEMfem] - error if the number after the F/E/M (if any) is outside the range 0-7
- CHANGE: SWITCHES/H profile setting is no longer supported. This means that SINGLEPUSH, RESET or // cmd will now always set /h mode. Setting /H in the profile was always problematic, given its semantics (changing /H affects other switches and parameters).
- CHANGE: default DOC_ROOT profile setting is now "B:\WWW\"
- CHANGE: removed ROM disk (C:); web interface files are now stored on B:
- CHANGE: HTTP server now supports persisistent connections (up to 4 simultaneous connections)
- CHANGE: the REMOVEMEDIA command will now pause for 2s before removing power to the stick. Some devices (eg Transcend 2G) appear to do some internal write caching, and require some extra time to complete a write operation. It should now be possible to include REMOVEMEDIA immediately after a write command eg COPYDATA; REMOVEMEDIA (#1264)
- FIX: Added workaround for Promotional USB memory stick (VID/PID=0x1516/0x1603) which was returning a spurious "Write Protect" error (#1266)
- FIX: Added workaround for Kingston DataTraveller 1G memory stick (VID/PID=0x8ec/0x16) which requires a substantial amount of time following insertion (typ. 3-4 sec) before it can be successfully detected. (#1266)
- CHANGE: timezone field in .dbd file header (contains timezone offset in

minutes) is now initialised to the special value -1 to indicate "local time". A value of 0 indicates that the timezone is GMT. This field is not yet used by anything, however.
- FIX: string variables were not being displayed properly in web interface channel list (#1154)
- FIX: possible lockup during "File" firmware upgrade if USB cable plugged in but Detransfer not connected (#1048)
- FIX: multiple error messages would sometimes be generated if there was an error in an alarm command string
- FIX: logger was going to sleep before reading ONRESET job if a memory stick was present at reset and the time taken to read it exceeded P17 sec (#1267)
- CHANGE: Improved reliability of detection of internal vs external power (#1278)
- FIX: /k setting was not being preserved across sleep (#1085)
- FIX: immediate schedule alarm channels were not being cleared in the event of an error
- FIX: incorrect value for AS channel when above threshold (#1265)
- FIX: incorrect STATUS4 output (#1279)
- FIX: SSI #include directive was not working if file was not located in DOC_ROOT directory
- FIX: memory allocation failures with 800-channel job when creating storefiles and unloading (#1282)
- FIX: profile strings set to "" were not being read correctly on startup (#1295)
- FIX: error reported if you COPYDATA a storefile which does not have both data and alarms (#1319)
- FIX: FTP server was reporting an error when browsing to an empty root directory (#1300)
- FIX: "SW Exception" would sometimes be incorrectly displayed for resets where no exception occurred.
- FIX: A page containing error message text is now generated in the event of a server error (#1283)
- FIX: browsing to a directory without appending a / to the URL now works. (#1284)
- FIX: Text output was not being copied to other open TCPIP connections if the active connection was closed.

- CHANGE: /B, /V and P6 are no longer returned (#1372, #474)
Version 6.22, 20 September 2007 ===============================
- FIX: Spurious "external power disconnected" messages were sometimes appearing in the event log, particularly on DT85 units (#1249)
- FIX: Logger would sometimes fail to sleep, particularly on DT85 units (#1249)
Version 6.20, 5 September 2007 ==============================
- CHANGE: Lower power consumption, due to additional settings for disabling unused hardware (described below), and reducing the time taken to wake from sleep.
- CHANGE: Ethernet port will not be enabled if the IP address is set to (which is the default)
- CHANGE: The IP, IPSN and IPGW commands will now all return if the Ethernet port is not enabled.
- CHANGE: Removed parameter P5 (max sleep time). DT80 will now sleep indefinitely if there are no timed schedules.
- CHANGE: Parameters P3 (min sleep time) and P4 (start up time) are now specified in milliseconds. Defaults for DT80 are P3=1500, P4=800.
- ADD: New parameter P20 (backlight control) - see user manual
- ADD: New parameter P21 (analog power control) - see user manual
- CHANGE: Added extra conditions which will cause sleep to be inhibited: serial comms transmission in progress; PPP session active; within P17 sec of a Modbus request; partially entered job. (#217, #946)
- CHANGE: If P15=0/1 then we stay awake if Ethernet port is enabled (ie an IP address is set), regardless of whether or not a cable is actually connected. This avoids having the logger unexpectedly go to sleep if the Ethernet cable is temporarily disconnected for service.
- CHANGE: LCD is blanked if the logger wakes up due to a time based schedule, as it will usually be going straight back to sleep.
- ADD: Added an optional second parameter to SSDIRECT command: a string containing the character(s) to be sent at the end of each line (#1133)
- ADD: The message "Job cleared" is now output (if /h) if current job was

cleared due to an error during entry of a new job.
- CHANGE: If there is an error in the BEGIN statement (eg /F set or job locked) then the remainder of job is ignored (until END or RESET). This now works the same as single-line jobs, where we ignore the remainder of the line if one of the above conditions are true.
- CHANGE: For temperature channels, the P36 setting at the time of channel definition is recorded and that is what the channel will measure in. Any subsequent changes to P36 will be ignored, at least as far as that channel is concerned.
- CHANGE: Units strings for some time/date formats (P31=0, P39=1/2/3) are no longer generated
- CHANGE: Max length of poly/span units is now 10 chars (same as channel units); was 8 chars
- CHANGE: Format for ISO date set cmd (DT=) is now DT=[y/m/d,h:m:s] regardless of P40 setting
- CHANGE: Fixed format data records now have fixed format. All format-related parameter settings (eg P22/P24/P31/P33/P39/P40/P41/P45/P50/P51) are now ignored when in /H mode. The default values of these parameters will be used, except for P31. We now always use ISO format for date/time channels (P31=3). Note that Delogger currently forces P31=3 so there will be no change here. Also note that P32 is still respected - data values in fixed format records will have no more than P32 significant digits included (default=8). (#462)
- CHANGE: Fixed format data values no longer contain trailing zeroes, which can make them considerably more compact
- CHANGE: Improved representation of error values. For example the NotYetSet value will appear in a fixed format record as "-9e9" rather than "-8.9999995e+09"
- CHANGE: PROFILE commands are now error-checked (#421)
- CHANGE: The PROFILE command with no arguments will now display *all* profile settings, including SWITCHES and PARAMETERS sections
- CHANGE: When displaying profile settings, any key that has been explicitly set will be prefixed by a * character. This should remove the need for users to use TYPE "B:\\INI\\USER.INI" to see which settings have been changed.
- CHANGE: Default serial parameters for both host & sersen ports are now set according to configured port function:
Command: RS232,57600,8,N,1,SWFC (default profile settings for host port) Serial: RS232,1200,8,N,1,NOFC (default profile settings for sersen port) Modbus: RS232,19200,8,E,1,NOFC The above settings are what you will get if you have no profile settings in the HOST_PORT/SERSEN_PORT section, or if you just have a FUNCTION=xxx setting. If you have an explicit profile setting eg BPS=38400 then this will override the default baud rate listed above. PS= and PH= can still be used to modify settings

at the job level.
- CHANGE: If a profile key is set using the PROFILE "sect" "key"="value" command then it will be entered into user.ini and marked as having been set, even if the value to which it is set is identical to the default value. To un-set a profile setting you need to delete the setting, using PROFILE "sect" "key"=
- ADD: New profile setting: [COMMAND_SERVER] PORT=n Sets the port to use for TCP and UDP connections to the logger command server (default=8) (#1012)
- ADD: New profile setting: [FTP_SERVER] ALLOW_ANONYMOUS=YES/NO If YES (default) then read-only anonymous FTP login is allowed; if NO then all logins must use configured username/password. (#1049)
- CHANGE: If a DEL character is received then all buffered characters for that port will be deleted. This is useful for the case where a host application is trying to automatically determine the host port baud rate by sending DEL characters at varying baud rates. This process can cause junk characters to be received; when the correct rate is found and a valid DEL character is received which will then cause the junk characters to be deleted. (#936, #722)
- CHANGE: Running schedules will now be halted (causing a discontinuity record to be written) prior to operations which cause storefiles to be forcibly closed, including various resets and forced sleep. (#1157)
- CHANGE: Max alarm text length is now 245 chars (was 200), which matches max alarm width in .dbd file.
- CHANGE: Attempting to set the alarm width schedule option greater than 245 is now an error; previously it was silently truncated
- CHANGE: Attempting to set alarm number greater than 255 is now an error. DBD file format stores alarm ID as a single byte; previously a larger alarm ID would be silently truncated to 8 bits when logged.
- FIX: Incorrect metadata was being written to .dbd file in some cases. (#863, #984)
- FIX: SW Exception on unload for certain channel option combinations eg 1V(TRR,AV) (#1149)
- FIX: If end timestamp is unspecified in an unload cmd then it now defaults to the timestamp of the latest stored record (as at the time that the cmd is issued). Previously it defaulted to the current time, which made it awkward to unload from a storefile whose timestamps were in the future. (#1111)
- FIX: Logger was staying awake for P17 sec following a timer wakeup if the USB cable was connected
- FIX: SW Exception if a single / character entered (#1215)
- FIX: File upload to logger FTP server was sometimes failing with some fast FTP clients (#1202)

- FIX: An over-long command line during job entry will now prevent the job being created (as does any other error) (#1205)
- FIX: If there was an error during job entry then any schedules/channels created after the error would still exist in memory even though the job file was not created. We now clear the job once job entry is complete. (#1209)
- FIX: After operating for some time the web server would sometimes stop accepting connections (#1208)
- FIX: Large field width or precision values in serial sensor strings were causing a sw exception. Width/precision values > 99 will now be ignored and the default value (0) will be used (#1188)
- FIX: An error was being returned for do{DT=[2007/03/13,11:11:00]} (#1056)
- FIX: Invalid trailing characters on profile settings (other than whitespace) will now return an error (#1156)
- FIX: SW exception if CURJOB entered following output of an error message in formatted mode (#1152)
- FIX: OLE/DDE options no longer require user channel name (#496)
- FIX: Channel pairs such as 1V()(AV) now work in a more logical way - the first report value (ie the 1V() part) will return the value as at the last stats scan, or NotYetSet if there have been no stats scans since the last report scan. (#780)
- CHANGE: Improved output of realtime data so that incomplete schedule records are never generated (#20)
- FIX: Random characters on the end of logged alarm strings for some alarm width settings (#1130)
- FIX: In /H mode, a formatted mode record was not being output when PROFILE "sect" "key" command was entered (#1126)
- FIX: Commands from different sources were getting mixed up in some circumstances (#1063, #946)
- FIX: RESET command will now only disable the serial sensor port if its function is set to "serial" (#1121)
- FIX: Logger FTP client was sending extraneous text on the end of some commands (#1127)
- FIX: If a USB device was present then momentary accesses to it were being made even though the job was setup to log to the internal drive. This was causing "no media on A:" errors if a stick was present during wakeup.
- FIX: Power on self test was sometimes failing when internal battery was flat.

Version 6.18, 11 May 2007 =========================
- ADD: support for new DT85 logger (16 analog channels, more flexible input switching, general purpose power outputs, longer battery life)
- ADD: new SVs: (#40141) 20SV returns current day of month (1-31) 21SV returns current month (1-12) 22SV returns current year (1989-5999)
- ADD: allow 2SERIAL channel definition for serial sensor operations over the host RS232 port
- ADD: allow 2SERIAL schedule trigger
- ADD: SSDIRECT now accepts an optional serial port number (1 or 2).
- ADD: default serial sensor port settings can now be entered into the profile. Section name is "SERSEN_PORT", all key names are as for the host port, with one additional one: MODE=RS232/RS422/RS485
- ADD: 1SSPWR channel type for controlling DT85 switched 12V power output
- CHANGE: the function of the host or serial sensor port (command, serial sensor or Modbus) is now specified using the new FUNCTION profile key in the HOST_PORT/SERSEN_PORT section (see manual)
- CHANGE: SSDIRECT n command, nSERIAL channel definition and nSERIAL schedule trigger will now return an error if the indicated port has not been configured with FUNCTION=SERIAL in the profile (this setting is the default for sersen port but not for host)
- CHANGE: if SSDIRECT command is received while defining a job then the serial sensor commands that follow plus the ENDSSDIRECT are written to the job program file so that they will be processed if the job is reloaded from the file.
- CHANGE: ENDSSDIRECT command no longer takes a parameter. It will cancel passthrough mode on whichever conduit it was established on.
- CHANGE: Default setting for P0 (microvolts drift before recalibration) is now 3
- CHANGE: Attenuators now default to OFF for the L (current loop) channel type
- CHANGE: P8=1 now also indicates the conduit on which the command was received, using a 3-letter code eg "TC2" (TCPIP connection #2), "HST" (host port), "FIL" (file) etc.
- CHANGE: command processor error messages are no longer written to event log.

- CHANGE: if an error is detected during job entry, we now continue to process the job text. Previously, all job text following the error was ignored, which was sometimes confusing. (When END is seen, the job will still only be saved and run if there were no errors.)
- CHANGE: in the ? (alarm poll) command, for DO alarms the condition is shown as "DO" rather than "NULL" and the current value column is not shown (#40377)
- CHANGE: added column for schedule in free-format ? command output
- CHANGE: ?0 is now accepted and will display all unnumbered alarms (#41091)
- CHANGE: Enabled 1SSPWR for modem power control (HOST_MODEM/EXT_POWER_SWITCH profile setting)
- FIX: Startup message (eg "Power loss") was getting stuck on the display if a "Cannot log" message was displayed before the startup message was acknowledged. Startup messages now have priority over "cannot log" messages. (#40784)
- FIX: Occasional assertion failure if logger sleeps while Ethernet connected (#41102)
- FIX: Calibration measurements VosShunt and Vos# had incorrect sign, leading to offset errors for shunt R calibration and # terminal measurements.
- FIX: logger was reporting "not characterised" if the MAC address contained any FF bytes (#41097)
- FIX: missing characters in uploaded file following FTP unload (#41093)
- FIX: lockup during RS232 or File firmware upgrade (not USB) if host port was previously set to HWFC (#41051)
- FIX: bootstrap/loader LCD display now says "DT8x" rather than "DT80"
- FIX: better error detection and reporting for commands that use storefile-spec eg. U (#41028)
- FIX: now displays the correct model number in "DT80 restarted" or "DT80 not characterised" LCD messages
- FIX: when P56=1, the "Triggered Schedule x" message was sometimes being output multiple times for one trigger
- FIX: error if FUNCTIONx= command strings contained a '}' character (#41100)
- FIX: incorrect data or crash if digital IOs accessed as registers via Modbus (#40947)
- FIX: Duplicated string values logged/returned when fast schedule used (#41101)
- FIX: passwords longer than 10 characters were being truncated differently when being set and tested (#41029)

- FIX: concatenated alarm statements (AND/OR/XOR) were not working properly (#41058)
- FIX: no error was being reported for certain incorrect schedule options (#41054)
- FIX: /k setting was not being preserved across sleep (#41085)
- FIX: LM135/235/335 sensors were reading incorrectly if temperature units set to other than Kelvin (#41089)
- FIX: Attn LED will now blink and LCD will display appropriate message if logger tries to log new records to a store that is full and has NOV option set. (#40508)
- FIX: potential problem where logger could incorrectly determine initial power status if real time clock had been reset
- FIX: maximum alarm text length is now 200 chars, as stated in manual, rather than 130
- FIX: alarm text exceeding the configured alarm width was not being truncated properly when unloading alarms (#41039)
- FIX: FF0 option was not being recognised during free format unload (#40987)
- FIX: "(nul)" was being displayed during free format unload of an empty string (#41071)
- FIX: channel name was not being displayed during free format unload of string channel (#41070)
- FIX: counter schedule triggers were not working (#40875)
- FIX: when loading a job from a file, an error was being reported if the last line of the file was not terminated by a CR character (#40971)
- FIX: incorrect timestamp was displayed on web page for second and subsequent option sets eg. REFT(TMN)(TMX) (#41067)
- FIX: user defined poly/span units were not being displayed on web interface (#40907)
- FIX: E98 error on RUNJOBONRESET on DT80 when job is over 8kbyte (#40879)
- FIX: assertion failure if measured cold or hot junction thermocouple voltage is exactly equal to the underrange threshold value (#40877)
- FIX: immediate schedule alarms will now be displayed in ?ALL
- FIX: an error will now be generated if a channel modifier is used with a non-analog channel type (eg 1*DS) (#41090)

- FIX: assertion failure if the calibration channel number (99) is used with a non-analog channel type (eg 99C). An error will now be generated (#40876)
- FIX: assertion failure if MODBUS_SERVER/TCPIP_PORT profile set to 8
- FIX: assertion failure under certain circumstances when unloading alarms (#41110)
Version 6.16, 21 March 2007 ===========================
- FIX: high speed counter rollovers which occur while the logger is asleep were not being detected, leading to possible incorrect count values for HSC channels. (#41079)
- FIX: no automatic recalibrations were being performed following sleep (#41079)
- FIX: previous /u/n/e/r,P22,P24,P38 settings were not being restored properly on exit from /H mode if the logger had gone to sleep while in /H mode (#41079)
- FIX: if a 1SERIAL channel was configured to return the scanned value (as opposed to a status value) then when the channel was unloaded the data value and units were incorrect (#41066)
- FIX: potential problems if channel definitions change during a web access
- FIX: crash if web accesses a string variable before it has been scanned for the first time (#41068)
- CHANGE: web interface (#measure, #reading and #channeltable SSI directives) will now return "---" (not yet set), "OverRange", "UnderRange", "OpenCircuit" or "RefError" if the channel is in an error state, similar to what is shown on the LCD.
- FIX: possible lockup if many alarm actions are executed at the same time as entering commands via a comms port.
- FIX: triple push reset was not working correctly (#41074)
- FIX: possible memory corruption when web interface status page was displayed (#41059)
- FIX: if there were http accesses during a long unload then sampling/logging was stopping until the unload finished (#41060)
- CHANGE: added check to prevent custom web pages nesting SSI #include directives more than 3 deep
- FIX: alarm action commands were being discarded if a password was set (#41061)

- FIX: possible lockup during unload to FTP (#41062)
- CHANGE: X commands within a job definition are now buffered and will be actioned when END is seen, similar to the way G,H,LOGON,LOGOFF currently work. Previously, X commands were carried out immediately, which didn't do anything because the associated schedule was not yet active. (#41064)
- FIX: when running on battery power, logger was staying awake for P17 sec after waking to take a measurement, rather than immediately going to sleep (#41065)
Version 6.10, 9 March 2007 ==========================
- ADD: an FTP URI (eg "") now be specified as a 2nd argument to the U, A, COPYDATA, MOVEDATA, and ARCHIVE commands (see user manual)
- ADD: new profile settings [NETWORK] DNS_SERVER_1 and [NETWORK] DNS_SERVER_2 for specifying a primary and secondary Domain Name Service (DNS) server (see user manual).
- ADD: U and A can now unload in unformatted mode. (#40812)
- ADD: LCD display will now auto-scroll if up/down key is held down for 2 sec (see user manual) (#40795)
- ADD: Serial sensor port now supports hardware and software flow control for RS232 mode.
- ADD: New commands: SSDIRECT and ENDSSDIRECT. These commands allow direct interactive control of a serial sensor device for configuration and testing purposes (see user manual).
- ADD: P56=8 will display FTP diagnostic messages; P56=16 will display modem diagnostics. P56 output will be returned regardless of /H or /m settings.
- ADD: if Func/Cancel key held down while a USB memory device is inserted, the logger will not attempt to mount the drive so it will report unrecognised". This allows a badly formatted device to be reformatted or examined.
- CHANGE: EXT_POWER_SWITCH profile setting can now be set to: NONE, 1RELAY or 1DSO-4DSO. The old numeric values are also retained for compatibility. (#40903)
- CHANGE: For consistency with PH command, "HWFC", "SWFC" and "SWHW" are now accepted as synonyms for "HARDWARE", "SOFTWARE" and "BOTH" in HOST_PORT/FLOW profile setting
- CHANGE: default value of P26 is now 60 (previously 30) (#40908)
- CHANGE: host or Ethernet port is now assumed "disconnected" if data cannot be sent for P26 seconds. This prevents the logger locking up in the event of cable

disconnection or other communications problem. (#40908)
- CHANGE: changed some of the automatic calibration measurements to improve accuracy of measurements when attenuators are used
- CHANGE: changed format of TEST command output to include extra calibration meaurements. Note that the definitions of the TEST record identifiers returned in formatted mode have not changed (eg. the overall pass/fail record is still TEST23).
- CHANGE: enabled "keepalives" for FTP server, which helps alleviate problems which may occur if a client program does not properly close the connection (keepalives were already enabled for Modbus and Cmdpro servers) (#40869)
- CHANGE: modem is no longer re-initialised on sleep wakeup.
- CHANGE: all command error messages are now saved to event log
- CHANGE: Following a reset which may have involved power loss (power-on reset, reset button, or wakeup), OR if USB cable is disconnected, we now suspend all output on the USB port until a character is received on USB. This works around the problem of Windows interpreting the DT80's unsolicited transmissions as being a mouse. (#40682)
- CHANGE: " may now be inserted in a string (eg profile value or serial sensor string) using \" notation. Also fixed a couple of cases where other escape sequences eg \} were not being handled properly.
- CHANGE: control characters (ASCII 1-31) in profile strings are no longer stripped out. Control chars and " are escaped when writing to user.ini (#40887)
- FIX: USB memory devices of size 1-2GB were not being formatted correctly by the logger, resulting in them not being able to be read by Windows. Also changed the parameters used when formatting large media to minimise the start-up delay.
- FIX: if two separate SDI-12 devices were sampled in the same schedule, the returned values for the second one would be duplicates of the first (#40925)
- FIX: Repeatedly issuing LOGON caused store files to be repeatedly opened. This resulted in E109 errors and then eventually an assertion failure. (#40945)
- FIX: unpartitioned USB memory devices can now be mounted
- FIX: automatically attempt to re-mount drive after formatting a previously unrecognised card/stick
- FIX: free space on drives > 2GB is now reported correctly (#40753)
- FIX: analog input termination will now default OFF if attenuators are on (HV)
- FIX: ARCHIVE and COPYDATA commands were only transferring one alarm record (#40888)

- FIX: Correct units are now stored for channels with Poly/Span/Thermistor applied to them. (#40759)
- FIX: AS and digital channels are now unloaded correctly when poly/span/thermistor has been applied to them. (#40863)
- FIX: Logged text strings are now unloaded correctly. (#40595)
- FIX: Unload of schedules with long records was causing DT80 to crash (#40912)
- FIX: incorrect free/used disk space in 1-4SV and STATUS6-7
- FIX: When using U(fromTime) command, the DT80 occasionally returned all data in memory, rather than just requested records (#40941)
- FIX: The logger would attempt to create storage for schedules that contained no loggable channels, resulting in E118, E109 and E106 error messages. (#40929)
- FIX: Time constrained unload within alarm action command eg. DO{U(9:00)} was not working (#40969)
- FIX: Statistical functions were not working for integer channel types (C,HSC,DS etc) (#40962)
- FIX: the output used to control modem power is no longer reset by RESET command
- FIX: profile values are no longer automatically uppercased (section and key names are still uppercased on entry)
- FIX: possible erroneous behaviour if ^ or \ is the last char in a string parameter
- FIX: modified the way CD/DSR transitions are handled to improve reliability
- FIX: logger will report "not characterised" if MAC address is set to default value (00902dffffff) (#40948)
- FIX: Setting 19SV should now work correctly and cause the appropriate change to the serial sensor's RTS line. (#41011)
- FIX: Work around spurious serial sensor comms overrun errors which may occur (resulting in possible loss of received data) when operating at 115200 baud. Note that the maximum recommended baud rate for the serial sensor port is 57600 baud.
- FIX: error if trailing backslash in PROFILE cmd (#40973)
- FIX: incorrect handling of %s serial sensor input action was sometimes causing duplicated characters in received string (#40880)
- FIX: serial sensor strings containing \r (set RTS state) were not working properly in some cases

- FIX: \c[nnn] in serial sensor string: timeout value (nnn) was being interpreted as seconds rather than ms (#40989)
- FIX: serial sensor %Ms input action eg "%3s" was not working in some cases
- CHANGE: Alarm action command strings will now be discarded if the command processor input buffer is full. This prevents a deadlock situation where the schedule can't proceed because it is waiting to write a command to the command buffer, and the command processor can't read and process a command because the schedule has not yet completed. This can arise if a schedule is issuing frequent commands, and you then do a long unload or copy operation. Note that this only affects alarm action commands, because these are the only ones where deadlock is possible. Commands received on a comms port, or read from a file, or generated by a function key will never be discarded.
- FIX: Server Side Include (SSI) directive #measure would only report 99999.9. This was because it reported the value of the sample channel prematurely. (#40995)
- FIX: SSI directive #reading channel="<chn>" now works (#40996)
- FIX: crash if invalid DT= command entered (#41026)
- FIX: erroneous behaviour including crashes during copy/move operation, particularly if a large number of alarms were logged (#41035)
- FIX: possible assertion failure (uart.c) if comms problem occurs while using PPP
- FIX: data manip (DF/DT/RC/RS/IB) and digital manip (TRR/TRF/TFR/TFF/TOR/TOF) channel options were being accepted in second and subsequent option sets. This is now an error. (#41034)
- FIX: when moving multiple files, if one failed then source data would not be removed for any subsequent file, even if the move succeeded.
- FIX: when an archive file was copied to A: or FTP and the destination file already existed, the destination file would be extended in size each time, effectively doubling the file size with each copy. (#41046)
- FIX: PS= and PH= commands were not accepted in a DO{} block (#41044)
- FIX: invalid storefile metadata was generated (leading to crash on unload) for channels where the channel factor is not a scaling factor and a manipulation option was used, eg 2R(TMN) (#41037)
Version 6.06, 16 June 2006 ==========================
- FIX: HTTP server was sometimes causing memory corruption and crashes. (#40857)
- FIX: channel timestamps (as reported on web page channel list) were incorrect

- FIX: serial sensor was hanging rather than timing out if it received a numeric value with no terminating character (#40854)
- FIX: digital/relay outputs are no longer reset on wake
- FIX: Web interface: added leading zero to the hour, minute and seconds of Update timestamp display on the Channels page.
- FIX: Web interface: added a conditional check for data and alarm stores on the Status page. The data and alarms store will only be displayed if a data or alarm store has been defined. Previously this was being displayed with -1 records.
- CHANGE: Web interface: revised the Help page.
- CHANGE: user.ini (profile settings) and onreset.dxc (ONRESET job) files are now restored from flash on wake or reset, if they don't already exist on B: Previously, this check was done on reset only, which caused loss of profile settings on wake if the user.ini file had been cleared (eg by format"b:") (#40860)
- FIX: crash when going to sleep following wake following clearing user.ini (#40860)
- FIX: LCD backlight was not turning off when external power was removed (#40855)
- ADD: additional event log messages: - if user.ini/onreset.dxc are restored from flash - if starting due to triple push - if external power is connected or disconnected
- CHANGE: SDI12 - if the aI! (get information) command fails, we now try sending the a! (acknowledge active) command. If this succeeds we assume that the sensor is present and supports SDI12 version 1.0 only.
- FIX: certain USB memory devices were unable to be formatted and/or accessed in the DT80 (#40867, #40811)
- FIX: adjusted TCP parameters to avoid issues which may arise with heavy TCP/IP traffic over unreliable links (eg WiFi) (#40865)
Version 6.02, 04 May 2006 =========================
- ADD: DT81 support (1 analog channel, 4 digital, 1 phase encoder, no serial sensor, Power LED)
- ADD: Modbus server. The DT80 can now accept connections from a Modbus client (master) system via Ethernet, host port (PPP or RS232) and/or serial sensor port

(RS232/422/485). The client system is able to read/write any DT80 channel variable or digital IO channel.
- ADD: command to setup non-default Modbus data formats and scaling factor: SETMODBUS m..nCV {format} {scaling}
- ADD: P56=4 debug setting; displays Modbus traffic
- ADD: new profile setting: [MODBUS_SERVER] TCPIP_PORT = 502 Specifies the TCP port on which to listen for modbus connections, which is normally port 502. If set to 0 then the TCPIP modbus server is disabled.
- ADD: new profile setting: [MODBUS_SERVER] SERSEN_ADDRESS = 0 If non-zero then the logger will listen for serial modbus messages (RTU format only, not ASCII) arriving on the serial sensor port, which are addressed to the specified address (1-247) or the broadcast address (0).
- ADD: new profile setting: [MODBUS_SERVER] HOST_ADDRESS = 0 Same as SERSEN_ADDRESS except that the host RS232 port is used.
- ADD: HTML pages for built-in web interface, which are stored on DT80 ROM disk (C:)
- ADD: support in web server for server side include (SSI) directives for inserting dynamic information into web pages
- ADD: files can now be retrieved from the logger's file system via HTTP using a URL of the form http://ip-addr/anyfile.cmd?b:/doc/man.pdf
- ADD: new profile setting [HTTP_SERVER] DOC_ROOT = C:\\WWW\\ to specify where web pages are located (allows custom web interface to be loaded onto B: drive)
- ADD: new profile setting [HTTP_SERVER] PORT = 80 to specify TCP port used by web server; disables server if set to 0.
- ADD: U* and A* syntax is now legal (unload all jobs)
- CHANGE: changed the way high volume unsolicited serial sensor traffic is handled to reduce the chance of getting out of sync when incoming data needs to be discarded. (#40792)
- CHANGE: Battery screen now displays NC if battery is not connected (#40642)
- CHANGE: Disabled file system "failsafe" mode for removable drive (A:); this allows a write-protected memory device to be mounted properly (#40783)
- CHANGE: FTP diagnostic output is now disabled by default. To enable, set P56=8 (#40799)
- CHANGE: COPYDATA/MOVEDATA/ARCHIVE/U/A are now background operations. Acquisition and logging will continue while they are in progress, but any further *commands* (except Q) will be blocked until the operation completes. (#40583, #40803)

- CHANGE: ARCHIVE/COPYDATA/MOVEDATA will now report "FAILED" on LCD (rather than "Done") if they fail or are cancelled. If this occurs the timeout on the LCD message is extended to 10s (rather than 3s) (partial #40572)
- CHANGE: most profile settings are now case-insensitive.
- CHANGE: Literal { and } characters can now be included in serial sensor control string using \{ and \}. Also added \% for consistency (%% still works) (#40841)
- FIX: syntax error if COPYDATA/MOVEDATA/ARCHIVE/U/A in an alarm action string is followed by whitespace then another command (#40776)
- FIX: serial sensor input actions were not timing out if non-matching data continued to arrive (#40793)
- FIX: MOVEDATA will now ensure that only those records that were copied will be deleted. Previously records that were logged during the move operation would be sometimes not copied but deleted.
- FIX: Serial sensor input was being incorrectly parsed when inter-character gaps occurred at certain points in the string
- FIX: shutdown PPP interface gracefully before going to sleep and on CLOSEDIRECTPPP so that the other end will disconnect
- FIX: duplicated text output if logger went to sleep while Ethernet session connected (#40772)
- FIX: syntax error if comment char (' or `) immediately followed a command (#40806)
- FIX: digital input while condition not working for continuous schedules (eg RA:1~W) (#40804)
- FIX: crash if continuous schedule with while condition was redefined such that the while condition was removed (#40807)
- FIX: possible storefile corruption if data manip or digital manip options (eg DT) used (#40798)
- FIX: unnecessarily long pause before performing a storefile read operation (copy/unload) (#40808)
- FIX: a one-line job containing just REFT was not being recognised as a new job (#40802)
- FIX: E31 error was being generated when doing a COPYDATA/ARCHIVE operation and there was no data in the storefile (#40801)
- FIX: DELDATA/DELALARMS were failing if the storefile had no space allocated for data/alarms (#40820)
- FIX: for MOVEDATA, records are now only removed from storefile if the copy

- FIX: if ARCHIVE/COPYDATA/MOVEDATA fails (or is cancelled), the destination file that was being written to is now deleted
- FIX: INT channel option is now calculated over the whole report interval (n stats samples); it used to only use n-1 samples. (#40788)
- FIX: assertion failure if usb stick removed while logging to stick and there is an attention message on the LCD (#40779)
- FIX: no or few records would sometimes be returned when unloading from a storefile that is being rapidly logged to (#40594)
- FIX: DELDATA will now delete records from any storefile it finds in the specified job's directory, even if the storefile was not generated by the current version of the job. (#40817)
- FIX: spurious serial schedule triggers were occurring if null string specified eg RA1SERIAL"" (#40829)
- FIX: archive files are now deleted following a successful MOVEDATA (#40831)
- FIX: incorrect hash value was being written to storefile for some jobs, causing spurious "no data files" errors (#40840)
- FIX: COPYDATA"job"sched was not copying archive files (#40832)
Version 5.08, 01 Mar 2006 =========================
- ADD: new channel type SDI12, plus three new channel options ADn, Rn and CM. This channel type automatically queries an SDI-12 device and returns a single data value. See user manual (rev A1) for more details.
- ADD: new command SDI12SEND n "string". This sends the indicated string on SDI-12 channel n (5-8) and displays (if /M/h) what was sent and what the response was.
- ADD: P56=2 debug param will display all SDI-12 transfers as they occur, in a similar format to that used by SDI12SEND.
- ADD: Increased number of CVs to 800 (#40348)
- ADD: Numeric input conversions in a SERIAL channel control string may now optionally be specified without a "destination" [nCV] spec. This will cause the converted value to become the return value of the SERIAL channel (#40699)
- ADD: Error msg context information (<err> indicator) is now also returned in fmt mode error msg strings so Delogger users can see it (double quotes are replaced by single quotes)

- ADD: Added support for 5th analog channel and LM35 temperature sensor on A0 and later board sets (#40735, #40707)
- ADD: serial port mode (RS232/RS485/RS422) can now be specified in the PS= string, which is a more logical place than as a channel option. Also the PS= (and PH=) parameters can now be specified in any order, and all are optional.
- ADD: new command PAUSE ms. This does the same thing as DELAY=ms except it is a command rather than a channel, so it can be used to insert a delay between two commands.
- ADD: certain command parameters can now optionally be preceded by whitespace (#40604). Also, a semicolon (;) can now optionally be used as a command delimiter.
- ADD: A degree of parameter checking is now performed on commands in an ALARM/DO statement when the job is entered. Previously parameters were not parsed until the command was actually executed (ie when the ALARM tests true).
- ADD: extended ascii open and close single and double quote characters (ascii 0x91-0x94) are translated to standard ' and " characters. Helps when pasting code that has been accidentally subjected to auto-formatting in Word etc.
- ADD: write message to event log when entering and waking from forced sleep (the logger enters forced sleep mode if the power supply becomes critically low)
- CHANGE: Remove \x0 and \x1 serial sensor input & output actions. If used, these would upset the operation of half duplex mode (RS485).
- CHANGE: \p serial sensor input & output action (print input buffer and erase) is now equivalent to \e, ie. it no longer prints anything. The whole serial sensor diagnostic output has been reworked, see below.
- CHANGE: serial sensor %G, %E input actions would previously only match input with an uppercase E (exponent) and %X would only match uppercase hex. Input conversions %f,g,G,e,E are now all synonyms (match either case), as are %x,X.
- CHANGE: simplified serial sensor diagnostic output and hopefully made it a bit clearer. There is now only one setting to enable, P56=1. See user manual (rev A1) for more details.
- CHANGE: Modify the way auto-calibration is done for 3W resistance measurements, to improve accuracy (#40750)
- CHANGE: In text strings, \c (where c is not a digit) is now translated to c (previously \c, except if c=\). This is for consistency with the behaviour of ^c (where c is not in the range A-~).
- CHANGE: Serial schedule triggers are now checked (by searching the SS rx buffer) after completion of any schedule containing a SERIAL channel (as well as on receipt of SS data). This means that if the SERIAL channels don't remove all data from the buffer then the schedule may be immediately re-triggered (if the remaining data matches the trigger condition). So if multiple back-to-back

messages are received, a serial-trigger schedule will be triggered multiple times until all buffered messages have been processed. (#40767)
- CHANGE: if DT80 enters forced sleep mode it will now sleep indefinitely (until woken by event) rather than waking every P5 mins
- CHANGE: commands are now echoed just prior to being executed, rather than as each character is received. This means that commands are displayed immediately before the output they produce, and when sending a large program the "job>" and "DT80>" prompts and any error messages appear at a point that you would expect, rather than being all jumbled up (#40621).
- CHANGE: extended ASCII chars (128-255) in the command stream are no longer converted to spaces. This allows them to be entered directly (eg using ALT-nnnn or a non-US keyboard), as an alternative to using escape sequences (\nnn or ^x) (#40701).
- CHANGE: Logger will now execute a TEST command (no output) on every cold start. If it fails then "Self test failed" is displayed on the LCD.
- CHANGE: default P32 setting (# significant digits in unloaded/returned data) from 7 to 8
- FIX: Histogram option was dividing range into n-1 buckets rather than n. Also, if the value is *equal to* the upper limit it is now placed in the overrange bucket. This also prevents a division by zero crash which used to occur if the upper and lower limits were equal. (#40745)
- FIX: Assertion failure if RS defined at the end of the job rather than the beginning (#40729)
- FIX: schedules >=24 hours (when sync to midnight enabled ie /S) would run continuously. (#40739)
- FIX: SERIAL channel input conversions will read chars until a terminating char is seen, or specified/default width is reached, or 80 chars have been read, whichever happens first. So even if width is specified as %90s, it will still stop after 80, leaving remaining chars in rxbuf. (#40312)
- FIX: lockup if control characters in serial sensor \m[] match string (#40672)
- FIX: floating point values starting with "." are now recognised by serial sensor "%f" input action (#40274)
- FIX: serial sensor scansets containing control characters, and negated scansets containing only a single character (#40277)
- FIX: serial sensor string output action eg "%.9s" now truncates the string correctly (#40280)
- FIX: serial sensor "0" output flag eg "%09.3f" now works correctly (#40281)
- FIX: Does not now clear job if you format A: (part #40736)

- FIX: logger was not calculating sleep time correctly if no time schedules were defined or if the time to next schedule execution was long (>1 hour). This caused the logger not to sleep when it should. (#40761)
- FIX: incorrect alarm text was being logged on falling edge of alarm, should be "ALARMn FALSE"
- FIX: serial sensor was not capturing latest rx data (including the data that triggered a serial schedule) when rx buffer was full. Newly arrived SS data will now overwrite old data. (#40766)
- FIX: channel factor was not being recognised for CV channel type (#40763)
- FIX: now returns overrange (99999.9) if R is too large to measure (ie R>10500 for I excitation, R>700 for II excitation) (#40744)
- FIX: problem with char following / in an expression not being uppercased
- FIX: problem with heavy ethernet traffic (especially UDP) disrupting memory stick operations (#40442)
- FIX: RESET command will now reset the job entry state (#40664)
- FIX: logger will now output a P24 char (CRLF) after schedule ID when /I selected (#40468)
- FIX: adjusted gain settings for F channel type to allow for the fact that only one amplifier stage is used. F(GL30MV) and F(A,GL300MV) will now give channel option error (#40651)
- FIX: crash when channel displayed on LCD and P33 (field width) is non-zero (#40666)
- FIX: discontinuity records are no longer logged when schedule rate is changed (#40678)
- FIX: widened DT80 100R shunt test limits to +/- 5% (#40688)
- FIX: Subseconds are now preserved when time/date values are converted to floating point values, eg assignment to CVs (#40547)
- FIX: DeTransfer unload command now works (#40665)
- FIX: Serial sensor port mode was reverting to RS232 on wakeup (#40773)

Version 5.06, 27 Sep 2005 =========================

First release for DT80

Authorised distributor


In Australia: For customer service, call 1300-735-292 To email an order, To order online:

In New Zealand: For customer service, call 0800-933-966 To email an order, To order online:

Adobe Acrobat 19.0 Acrobat Web Capture 15.0