Skip to content

Version 1.3.0

Choose a tag to compare

@mubes mubes released this 27 Jun 22:14
· 27 commits to main since this release

Version 1.3.0

This is the fifth production release of ORBTrace Mini gateware.

This build does not add new functionality but generally improves robustness. No issues or regressions are foreseen.

New Features

  • No new user visible features

Bugfixes and Itchfixes

  • Use correct bits from DAP_TRANSFER for DAP index - fixes multi-DAP operation
  • Handle empty response to block read more elegantly - prevents corruption of follow on packet
  • Simplification of edge detection for parallel TRACE - this allows TRACE to acquire lock on the very first packet so there is no delay before valid data are reported
  • Don't time out TRACE collection when keep-alives aren't seen - this prevents TRACE being lost when there isn't much of it, or it's very busy
  • Significant speed ups in JTAG due to protocol handling improvements
  • Fix multi-device JTAG handling to enable high speed JTAG support for multi-device chains
  • Support a wider range of multi-colour LED manufacturers in assembly

Assets

Gateware set consists of the bootloader and application images. Bootloader targets dfu slot 2, application slot 1. Under normal conditions you will only need the application gateware.

Installation

To install you will need to have established permissions for the device (See the README, or just grab a suitable udev rules file, like this one. A modern Orbuculum install also inserts a suitable udev file. Then hold down the button and power up the ORBTrace Mini. The status LED will turn purple. In a terminal window, enter;

dfu-util -d 1209:3442 -a 1 -D orbtrace_mini_application_1.3.0.bit

Once it has flashed power cycle and you should be running the new version. You can verify that you are running the correct version by checking the interface strings;

$ lsusb -d 1209:3443 -v | grep iInterface
      iInterface              0 
      iInterface              0 
      iInterface              4 Trace
      iInterface              5 Control Proxy
      iInterface              6 CMSIS-DAP v1
      iInterface              7 CMSIS-DAP v2
      iInterface              8 Target power
      iInterface              9 Version: v1.3.0-0-g7d5d341

It is also worth updating your bootloader. To do that, go into bootloader mode again and load the bootloader into slot 2;

dfu-util -d 1209:3442 -a 2 -D orbtrace_mini_bootloader_1.3.0.bit

If you goof this up you'll have to reprogram using the JTAG header and following the instructions here. Be particularly careful not to flash the application gateware into the bootloader slot. If you do that your ORBTrace will work perfectly, but you'll lose the ability to dfu-update.

Help Requested

Please test on a wide variety of targets as possible and report observed issues...ARM CORTEX-M is a broad church and wide testing is essential. Success reports are as important as failure ones, so feel free to raise an issue or ping us in the Discord.

Contributions to both ORBTrace and Orbmortem always gratefully accepted.

Upcoming Work Items

  • Documented interface to the CPU
  • any needed bugfixes :-)

Known Issues

During testing of the release builds, an issue with infrequent USB corruption was observed and tracked down to a combination of signal integrity issues in the test setup and missing error handling in control request handlers. The latter will shortly be addressed by 1.3.1.