Head tracker release notes

Firmware images

image-0.60 (2020-09-20)

  • fixed a status return bug that was reporting the compass calibrating forever.
  • improved integration of central accelerometer.
  • improved sensor fusion so the drifting-about-in-a-square bug is fixed, and the magnetometer drift seems to be too.
  • travel mode now works with the magnetometer on.

image-0.59 (2020-07-05)

  • fixed magnetometer calibration bug that caused it to drift.

image-0.58 (2020-04-29)

  • IDM303DAC driver works properly now I’ve actually seen one.
  • verbose mode produces an initial data point when it is turned on, and magnetometer calibration is no longer interrupted by data quality messages.

image-0.57 (2020-04-20)

  • fixed bug in non-volatile RAM: when it filled up, it stayed full, and wouldn’t accept new data.
  • slightly remodelled USB driver.

image-0.56 (2020-03-29)

  • universal firmware, so that a single build supports all head tracker hardware from v2 onwards.
  • fixes multiple issues in pre-production v2 units running later firmware.

image-0.55 (2020-02-18)

  • fixed a potential bricking issue when changing certain configuration settings once too often.
  • FORCE_CAL has been fixed.
  • quaternion output conversion has been improved.

image-0.54 (2020-01-28)

  • chipageddon: LSM303AGR (accelerometer / eCompass chip) may now be a ISM303DAC, which does the same thing more expensively, and is mostly compatible.

image-0.53 (2020-12-23)

  • fixed bug in non-volatile memory storage/saving.
  • added LED driver for factory testing.
  • added power-on self test mode for factory programming.

image-0.52 (2020-10-06)

  • fixed bug in MIDI Device Inquiry that made the message terminate erroneously.
  • reinstated travel mode.

image-0.51 (2020-10-01)

  • added gyroscope drift calibration.

image-0.50 (2020-09-23)

  • complete processing pipeline overhaul, with many bug fixes.
  • control gestures added as a replacement for physical buttons.
  • feature-complete apart from travel mode.
  • large version increment to imply readiness for pre-production evaluation.

image-0.14 (2020-06-06)

  • elaborated UART mode so as not to disturb performance with Dell XPS 15 laptop.
  • fixed UART mode to work with the headphone amplifier.

image-0.13 (2020-03-22)

  • UART mode.
  • minor improvements to USB handling.

image-0.12 (2020-02-21)

  • fixed a race condition that could corrupt operation, degrading data and drastically slowing response times.
  • made some changes to improve MIDI parsing.

image-0.11 (2020-01-15)

  • compatible with version 3 hardware.
  • updated CMSIS library.

image-0.10 (2020-01-08)

  • fixed travel mode bug (starting in the wrong state).
  • fixed compatibility issues when upgrading over previous versions (magnetometer incorrectly switched on).
  • button protocol changed.

image-0.09 (2019-12-04)

  • probably the last major feature upgrade to the version 2 head tracker.
  • added working travel (fast, slow) and 6DOF (data-driven, neck, and spine) modes.
  • fully compatible with what will become version 3 hardware, including its two buttons.
  • supports MIDI Device Inquiry, for simple remote hardware/firmware version detection.
  • improved accuracy of zeroing, and initial zeroing has been properly instated.
  • experimental data-driven 6DOF code exists, but is currently unusable.
  • trigonometry now has better interpolation.
  • interrupt pins are pulled down properly, simplifying the diagnosis of unreliable sensors.

image-0.08 (2019-10-14)

  • breaking change: moved from Q3.10 arithmetic to Q2.11, adding a bit of precision.
  • new extended protocol, which should not constitute other breaking changes.
  • added experimental quaternion and orthogonal modes.
  • button MIDI and magnetometer on/off settings are now saveable.
  • magnetometer calibration mode runs on the head tracker.
  • added a read-back function for saveable parameters, which replaces the message that provided remote control of magnetometer calibration.
  • many smaller dynamic improvements to head tracker performance.

image-0.07 (2019-08-23)

  • experimental build of a work-in-progress.
  • completely rewritten processing pipeline: fixes wander caused by complex head movements.
  • new magnetometer calibration required.
  • a few known issues to be fixed and features to be documented.

image-0.06 (2019-07-09)

  • suppresses the first two samples of data from each sensor, as it’s always bad data.
  • upped gyroscope activity threshold to attempt to fix drift seen in unit 03W.
  • output is now in the range 0..2π for yaw, pitch, and roll.

image-0.05 (2019-06-25)

  • tightened up filters to improve responsiveness.
  • changed internal calculation of pitch and roll orientation.
  • further magnetometer performance improvements.
  • vestiges of 6DOF pipeline used to tighten up accelerometer data.

image-0.04 (2019-06-13)

  • improved the magnetometer and gyroscope logic by making angular compensation work a little better.
  • improved handling of magnetometer on/off toggling.
  • bug fix: gyroscope drift correction (it now works in both directions).

image-0.03 (2019-06-12)

  • bug fix: Holds off sending output and zeros head tracker first, to prevent erratic behaviour.

image-0.02 (2019-06-10)

  • first release.