0.6 Feature Release

Released on 2020-04-18



The UI will no longer error upon first poll if no devices are detected.

The upstream chart plugin had poor behaviour when the window was large enough that full date text could be displayed in the labels. This patch forces shorter labels at all resolutions resulting in a performance improvement.

2020-12-09 React Refresh

The template now uses React v16.12.0.

The template now uses React Refresh, a safer and more reliable hot module reload methodology. Applications will now display a loading spinner in the bottom right corner when compiling the hot reload.

2020-12-08 Stricter default codecs

Default codecs will now throw if they receive input payloads that are not null, number or number arrays for encoding.

2020-12-04 Faster dependency downloads

Electron dependencies are now hosted by our CDN instead of GitHub releases. Download speeds should be vastly improved.

2020-11-19 Electron v7.1.1

The template now uses Electron 7.1.1, Chromium 78.0.3905.1, V8 7.8, Node.js 12.8.1.

The chart.js streaming charts plugin has been moved into our build system to fix some bugs with PRs that aren't yet merged upstream.

2020-11-19 Type fixes for integration tests

The correct webdriver types are now included in the template, fixing a bug preventing the integration tests from being able to run.


The dev tools no longer appear in built apps or in e2e tests.

Device metadata is now sent via deltas. Large metadata updates that happen frequently will no longer cause the UI to 'lag behind' the actual state as it catches up.

2020-04-18 Serialport 8.0.6

Serialport is now 8.0.6 across all platforms.

Serialport on Windows will now grab the correct version.

2019-10-04 Device autoconnection UX improvements

When the transport manager boots, it immediately polls for any available devices. Sometimes this would return valid devices before the user interface had finished loading.

When an auto-connect plugin is used, this would start a handshake immediately upon device detection. If everything is fast enough, this can return the device state before the UI has opened its IPC link with the transport manager.

Previously the IPC server on the transport manager side would discard any messages for the clients if no clients existed. This would result in a device that had completed a handshake, without actually sending any data to the UI. Device data isn't stored, and therefore isn't retreivable during the 'full update' stage, so when this combination of events happened, the UI state would be broken.

Messages are now buffered for when the first UI window joins.

Usage requests are now idempotent: Auto-connection plugins will no longer attempt to connect if the device is already connected.

2019-09-20 HITL Tests

Hardware in the loop testing is now in effect.

Release notes for the 0.6.0 template release.

GPU accelerated charts

Bespoke charting implementation offers substantial performance improvements over previous charting approach, with room to grow with fun new features.

Release Notes

Changelogs are now created and published to the website.