Usually we release our firmware a bit more incrementally, but in this case we were able to pack in a ton of fixes and improvements. Download it now and check out the highlights. We’re working hard to make this the most powerful, open and flexible telemetry system for motorsports!
Improved log file writing reliability
We’ve made a ton of improvements around handing SD card writing- including better retry logic, elimination of blank files, recovering from accidental eject/insert recovery, and better tolerance for variances in SD card brands and sizes. Turns out SD cards vary wildly on performance and reliability. SD cards are kind of crazy to deal with, but we worked through it!
Background streaming
You can now better control how telemetry streams in the background. Disabling background streaming means telemetry is synchronized with SD card logging. This fix prevents the Bluetooth link from being affected.
Lua scripting improvements
We’ve added functions for getting current timestamp & time / date data (sourced from GPS), plus a lower level API for reading/writing data to the auxiliary serial ports. Yes, this means you’ll be able to interface to ECUs that only have a serial interface available, or connect character based displays and other devices! See the serial API in our wiki. What are you going to create?
500 and 1000Hz logging fixes
We fixed a problem where 500 and 1000Hz logging was broken. Now you can – but make sure you use a high speed SD card!
Extended CAN Id fixes
If you were working with CAN bus systems that uses extended (29 bit) IDs, then you’ll appreciate this fix where we’re correctly handling extended IDs.
Full Change log
=== 2.8.4 === * Background streaming switch only affects telemetry link; Wireless (Bluetooth) link always streams * Fixed duplicate log file issue * Fixed filtering of 500 and 1000 Hz sample rates when config is applied * Improved tolerance and recovery to SD card write/eject/reinsertion * Reset CPU after we load factory defaults * Reduce MK1 firmware size by over 15K by removing unneeded symbols in LUA lib. * Fixed handling of extended CAN IDs * Added Lua serial api for initializing serial port and character based reading / writing * Added getUptime LUA method to get system uptime * Added getDateTime LUA method to get date and time info. Returns in format year, month, day, hour, minute, second, millisecond. * Fixed invalid data print out bug during slow SD Card init * Fixed meta fields in log file being corrupted during printout. * Fixed no SPI lock issue on MK1 hardware for f_write call.