There’s some major internal changes in the latest nightly firmware. The binary mode features are implemented and nearly complete. Several bug fixes and a new macro went into the UART library.

Your help testing this new firmware prior to a final release is greatly appreciated. Please leave a comment if you find bugs, or if you can verify that various protocols and features are working. Download the latest v2.7 nightly, update instructions here (Python updates).

More below the fold.

Major changes

  • Global command structure
  • UART error and overrun handling, new macro
  • Binary mode function changes

Global command structure

This is a long awaited change. All protocol libraries now retrieve commands, values, and repeat values from a central memory location. This memory is defined by a struct in base.h. Future variable additions or changes can be done in a single fine and won’t require updates to every protocol library individually.

This is a major change, there are bound to be a few bugs.

Binary mode function changes

Binary mode handling functions have been integrated into the existing protocol libraries. This eliminates a ton of code we duplicated for custom versions during development. We’ve tested the binmode, SPI EEPROM dumper, and self-test scripts without problems, but there are bound to be some more consequences from this change.

v2.7 also includes an untested binary UART mode.

UART error and overrun handling in terminal mode

See the UART mode updates.