All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning since version v3.0.0.
[v3.2.0] - 2018-06-13
-
Add a "dump" print format for the
read
command. The output of this format is usable for later input using thewrite fields
command. -
Extend the
write bytes
command to accept a sequence of bytes with different values. The input syntax is:<offset>,<value1>,<value2>,<value3>…
. -
Add the ability to accept input from both the command line and the standard input simultaneously.
-
Support comments in input files using the ';' symbol.
-
Add a "scratchpad" binary field on layout version 4.
-
Change the accepted address range for I2C device to 0x03 - 0x77.
-
Change the
write fields
command to clear fields with empty values, instead of rejecting an input that contains fields with empty values. -
Refine the errors about invalid command line arguments.
[v3.1.0] - 2018-04-18
-
clear
command can also clear byfields
or bybytes
. -
Each field on the current layouts now has an additional short name. For the
write
orclear
commmands, the user can now specify a field by its short name or its full name.
[v3.0.1] - 2018-03-20
[v3.0.0] - 2017-09-19
-
Utility now returns proper return values, instead of mostly returning 0. This makes it suitable for scripting, since the script can now tell if something goes wrong.
-
If an EEPROM field that contains string data has no valid data, a field name with no data is printed.
-
The utility no longer allows partial updates of the EEPROM. If the
write
command contains invalid fields, offsets, or bad syntax, no changes will be made to the EEPROM contents. Previously, the utility would update what it can, and display a warning for what it couldn’t update. -
i2c bus and address values are now limited to 0-256. Any value outside of these boundries will cause an error.
-
Errors are now only printed to stderr.
-
User now notified with a helpful message if there are no usable interfaces for the utility to work with.
-
Support for EEPROM layout version 4.
-
New special layout arguments:
-
raw
layout which produces a formatted hex dump. -
auto
layout. It has the same effect as not specifying any layout value, and is included to improve scriptability.
-
-
clear
command for clearing all EEPROM contents. -
write bytes
can now be told to fill a range of addresses with a specific value. -
list
command now also works with the EEPROM driver. It produces a listing of i2c buses and addresses of only EEPROM devices.
[v2.1] - 2015-04-16
[v2.0] - 2014-11-03
-
This is a major refactor/redesign of the application. One of the goals for the new design was to make it easy for users to port the utility to a non-unix-like system.
-
New user interface. Changes include:
-
User no longer need to choose between i2c and driver I/O. The utility will try i2c first, and fallback to driver if needed.
-
Now all invocations require an i2c bus number and device address, and the syntax for specifying this information has changed.
-
Better format for by-byte changes (offset,byte tuples now separated from one another)
-
WYSIWYG field updates. The data format that is displayed by the
read
command is also the format for writing new data to the field.For example, the following are valid field update arguments:MAC address field=01:02:03:04:05:06 Date field=01/Jan/2010
-
-
Utility banner is now only printed by help and version commands, not on each invocation of utility.
[v1.2] - 2013-01-07
[v1.1] - 2012-09-09
-
Display EEPROM contents with layout information and data formatted in human readable format.
-
Update EEPROM contents by specifying offset,byte pairs, or fieldname=data strings.
-
List bus number and address of i2c accessible devices.
-
Works with both /dev/i2c interface, and with EEPROM driver.