EmStat4 firmware

1.6.01

  • Added support for '#' format specifier

  • Fixed ES4T RTC loses time when battery depletes

  • Fixed crash when using string formatting

1.6.00

  • Updated to MethodSCRIPT 1.10

  • Added string slicing

  • Added format specifiers for f-strings

  • Removed limitation on array index nesting

  • Conditional blocks (if, loop, etc.) can now take string operands

  • Added commands:

  • display_filebrowse to display an interactive file browser on the screen

  • droplet_detect_loop to enable droplet detection without additional hardware

  • Added string handling and parsing (str_find, str_length, str_parse_float, str_parse_int)

  • Added float_to_int_round

  • Added optional arguments:

  • Added optional argument keep_on to specify which electrode remains connected on cell_off.

  • Added optional argument avg_cnt to specify the amount of samples averaged

  • Added optional argument font_size support to display_scroll_get

  • Added VT_POTENTIAL_BIPOT variable type

  • The timer used by command timer_get optional argument time is no longer reset when running MethodSCRIPT, only at device startup and with timer_start

  • Reduced HW sync wait time

  • Improved EIS autoranging for scans from low to high frequency

  • Removed extra autoranging step at the start of an EIS scan to make behavior more predictable. meas_loop_eis will now always start at the selected range. This allows a meas_loop_eis autoranging step to be added before the main EIS measurement, which offers more control.

1.5.01

  • Fixed AIN0 ADC sign flipped above 1.5 V

  • Fixed opening encrypted MScript’s from a file did not work

1.5.00

  • Updated to MethodSCRIPT 1.9

  • Implemented support for add_meas

  • Implemented support for filter_type

  • Added full screen low battery warning for EmStat4T

  • Added MethodSCRIPT string variables (str and store_str, usable in f-strings)

  • Added output_str MethodSCRIPT optional command for qr_scan and display_keyboard

  • Added font_size MethodSCRIPT optional command to specify font size for display commands

  • Added MethodSCRIPT commands to save and load MethodSCRIPT data to and from the filesystem

    • load_saved_start

    • load_saved_var

    • load_saved_str

    • load_saved_end

    • save_var

    • save_str

  • Added time MethodSCRIPT optional command, used to get an accurate time for meas_loop iterations

  • Added new "Claimed" mode for notify_led

  • Size argument of array command can now be a variable

  • Removed limitation on total size of variable names

  • Added support for redirection LED’s and HW sync lines to GPIO pins

  • Added HW sync Master/Slave switching based on GPIO pin

1.4.06

  • Fixed some ES4’s hanging on startup due to RNG init

  • Fixed non-beta versions showing as beta on ES4T screen

1.4.05

  • Improve error messages during encrypted operations

  • Fix missing interrupts for I2C in the Cube generation, which could cause deadlocks on misbehaving I2C lines

  • Fix autoshutdown only running on short durations, instead of long durations

  • Improve error codes during aborts during display commands on the 4T

1.4.04

  • Renamed this MethodSCRIPT version to 1.8 to be in line with other devices.
    Available commands not changed.

1.4.03

  • Fixed crash when using screen on ES4T

  • Prevent invalid "comm lock" states from occurring

1.4.02

  • Added EmStat4T support

  • Updated to MethodSCRIPT 1.7, new commands are:

    • smooth

    • peak_detect

    • pow_var

    • subarray

    • rtc_get (On ES4 based devices without RTC, time resets on device reset)

    • add_meas (not implemented yet)

    • filter_type (not implemented yet)

    • beep (ES4T only)

    • battery_perc (ES4T only)

    • get_progress

    • qr_scan (ES4T only)

    • display_text (ES4T only)

    • display_btns (ES4T only)

    • display_clear (ES4T only)

    • display_progress (ES4T only)

    • display_icon (ES4T only)

    • display_draw (ES4T only)

    • display_inp_num (ES4T only)

    • display_scroll_add (ES4T only)

    • display_scroll_get (ES4T only)

    • display_keyboard (ES4T only)

  • Added ability to load MethodSCRIPT from device file storage

  • Added ability to disable filesystem commands

  • Removed deprecated s command, use MethodSCRIPT hibernate instead

  • Increased max line length to 256

  • Added "Allowed pin modes" register

  • Added register to define RTC time time zone

  • Fixed error sometimes thrown on measurement abort

  • Made register "Multi-channel role (0x0D)" settable by (advanced) user

  • Fixed CRC16 in combination with file transfers

  • Improved error/NACK handling of I2C

  • mscript wait command is now abortable

  • Ensure all variables are initialized in every meas_loop_ command

  • Changed behavior of returned set potential per mode to be consistent with other devices

  • Added an RTOS to support background tasks

  • Removed 10 bit addressing for I2C

1.3.07

  • Added support for ES4_MUX8R2

1.3.06

  • Fixed MUX8-R2 did not work with more than 14 Muxes. Now works with up to 16.

  • Increased maximum "pck_add" variables to 129 from 33

1.3.05

  • Fixed MethodSCRIPT variable metadata was not reset every meas_loop iteration

  • Decreased applied potential noise

  • Fixed DOI output pins ignored output config for ES4R

1.3.04

  • Increased USB timeout to 30 s and reconnect delay to 1s

1.3.03

  • Fixed AC current in ACV could become NaN

1.3.02

  • Fixed runtimes for versus time techniques could not exceed 4294 seconds.

  • Fixed wrong ADC3 clock selection affecting FCA measurements.

1.3.01

  • Limit current to max ~75 mA on ES4HR in order to protect Mux8R2

1.3.00

  • Significantly improved measurement timing

  • Increased averaging sample rate to 1 MSPS

  • Made faster fast fixed-frequency EIS time-scans possible

  • Added new MethodSCRIPT commands:

    • Mux commands: mux_config , mux_get_channel_count , and mux_set_channel

    • AC Voltammetry (ACV) measurement technique: meas_loop_acv

    • Multi-Sine EIS (MSEIS) measurement technique: meas_ms_eis

    • Fast CA (FCA) measurement technique: meas_fast_ca

    • Alternating mux measurement techniques:

    • CA: meas_loop_ca_alt_mux

    • CP: meas_loop_cp_alt_mux

    • OCP: meas_loop_ocp_alt_mux

    • iR compensation: set_ir_comp

    • Modulo operation: mod_var

    • Alter the VarType of a MethodSCRIPT variable: alter_vartype

    • Output user notifications using the device LED: notify_led

    • Set scan direction for Cyclic Voltammetry (CV): set_scan_dir

  • Added support for limited string formatting

  • Added support for array access syntax

  • Disallowed commands that would interfere with measurment in meas_loop commands

  • Increased total mscript array entries from 32767 to 50000

  • Script execution no longer blocks when uncomplete line is received

  • Added mod_var command to calculate the modulo

  • Added CV reverse functionality

  • Implemented USB watchdog to recover from some Windows USB errors

  • MethodSCRIPT errors are now logged to file before if output to file was enabled

  • Added command to alter variable VarType

  • Added support for auto-incrementing number in file

  • Added EmStat4X support

  • Added support for multicharacter variable names

  • Various minor bugfixes

1.2.03

  • Fixed D0 toggles when potential is set

1.2.02

  • Changed pullups to be default on (was changed to default off unintentionally in 1.2.00)

1.2.00

  • "set_gpio_cfg" command now returns error if configuration is invalid

  • Added configurable UART baudrate

  • Added support for limiting UART datarate

  • Default UART baudrate increased to 921600

  • Line number in error messages are now maintained when comments are used

  • Added "set_acquisition_frac_autoadjust" MethodSCRIPT command for filtering 50/60 Hz noise

  • MethodSCRIPT data packages are now buffered and only sent on the "pck_end" command

  • Added register to retrieve warnings

  • Fixed hibernate command

  • Added meas_fast_cv MethodSCRIPT command

  • Updated MethodSCRIPT version format to be consistent with documentation

  • EmStat4R support

  • Various bugfixes

1.1.00

  • Added support for alternate USB PID of ES4

  • Added RMS noise readout for measured MethodSCRIPT vars

  • Enhanced ranging algorithm to take noise into account

  • Added MES4 support (set_channel_sync command), multi device serial.

  • Added MUX8-R2 support

  • Added set_gpio_msk and, get_gpio_msk MethodSCRIPT commands

  • Added set_e_aux MethodSCRIPT command

  • Added lock to Non-Volatile-Memory for extra protection of factory settings

  • Fixed timing of first point for time based techniques

  • Added set_acquisition_frac command that allows more control over measurement timing

  • Added EIS MethodSCRIPT optional commands "eis_tdd", "eis_acdc"

  • Minor fixes