Firmware is a kind of operating system software that runs on microcontrollers (tiny computers) such as used in the USB-microDig, Wi-microDig and microDig. It handles the capture of analog signals, communication with digital (I2C) sensors, their translation into MIDI messages and communication with I-CubeX software, in both standalone mode as well as host mode. It adds intelligence to the digitizer hardware in the form of the features described below. Starting with digitizers that use version 5.0 of the I-CubeX firmware, the digitizers' firmware can be updated with newer firmware versions. For information about other (older/newer) versions of the I-CubeX firmware please visit the support resources.
Standalone mode gives you the freedom to operate without a computer and go anywhere with your I-CubeX setup ! Configure the USB-microDig's new features released in firmware v7.3 with EditorX v7.3x and it will remember the settings after power down.
Host mode configurations are edited with Link or SensePlay. For more sensor mapping complexity, use the digitizer with the openFrameworks addon, digitizer Max plugin, iCube & oCube Max plugins or Pd plugin, and apply almost any signal processing algorithm you like.
Firmware v7.33 is available for USB-microDigs with hardware v7.0 or greater. There are two ways to upgrade your USB-microDig to firmware v7.3x. For USB-microDigs with hardware 7.0 (and firmware dated 2018-03-17 or newer) or greater, click the "check firmware" button in Connect (v1.5.1 or higher, only on MacOS for now). If you're on Windows, and for USB-microDigs with hardware 7.0 and firmware dated older than 2018-03-17, run FirmwareX v7.3x after which update you can use Connect for further updates. Access the new features with EditorX v7.3x.
New in v7.33
- Firmware versioning with 4 digits and build date. As a result, firmware versions 7.32x, 7.31x and 7.30x are all the same as version 7.3 and will show in Connect (as of Connect v1.5.0) as firmware version 7.300.
- Improved signal processing for HotSpot2D, Magnetic3D and MoveAround I2C digital sensors.
- Expanded feature list for FeelVibe and SeeRGB I2C digital actuators.
- Improved compatibility with other I-CubeX software.
- Disabled due to memory limitations: support for MoveAlong sensor, support for pulse width modulation output (PWM) to control RC servos, mapping sensor input(s) to an actuator output. Revert back to firmware v7.32 (ie. v7.3) if any of these features are needed.
Firmware v7.3 requires digital (I2C) sensors to use only a single 1x4 column of the digitizer's input / output connector, saving space so that more devices can be connected than with previous firmware versions. To use a digital sensor with a 2x4 plug, use AdaptCableKit or AdaptCable2DtoD. To modify the plug of a digital sensor follow these instructions.
Example of the virtual input feature: You can map the pitch of an Orient3D sensor placed on the back of a hand to a Pitch Bend message but map the roll of that same Orient3D sensor such that it triggers a Note On when rotating the wrist left to eg. 45 degrees and a Note Off when rotating right to 45 degrees. These mappings can be combined with mapping to actuator outputs so that the pitching movement could control an RC servo that moves something (eg. a light pointing into the audience) up/down while the heading could control another servo that moves the same thing but in the horizontal plane (ie. the light rotates). Of course, the roll movement could turn on/off the light as well.
Released in previous versions
- Virtual inputs for digital (I2C) sensors, allowing the separate mapping of each parameter of an I2C sensor.
- Support for I2C actuators (SeeRGB, FeelVibe).
- I2C device plug size reduction: only one column of 4 pins is needed on the input / output connector, instead of 2 columns.
- HotSpot2D support.
- More Orient3D methods.
- Improved plug-and-play management of standalone mode and midi output using a USB-microMIDICable.
- Use lookup tables for analog sensors, eg. for linearization or for setting the response curve.
- Convert signals varying around a center value to a value from zero: useful for eg. GForce3D, BioVolt.
- Measure time between or frequency of signal peaks or each signal peak and its reset threshold: eg. measure heartbeat BPM with a BioVolt, time between taps on a Touch sensor, frequency of jabs with a GForce3D sensor.
- Use digital (I2C) sensors such as the Orient3D in standalone mode.
- More efficient protocol for digital (I2C) sensors in host mode.
- Use multiple digital (I2C) sensors on one USB-microDig.
- Set actuator outputs to PWM signals (eg. for RC servo control, or dimming of LEDs).
- Map (multiple) sensor input(s) to an actuator output: trigger/dim LEDs, control servos or any other device connected to the actuator outputs in standalone mode directly with (analog or digital) sensors; no need for software on a computer to map inputs to outputs.
- Various other communication protocol and signal processing improvements.
- Mapping of sensor values to any MIDI channel voice type message ie. note-on/off, key-pressure, control-change, program-change, after-touch (all 7 bit resolution) or pitch-bend (10 bit resolution). MIDI running status can be turned on or off.
- Sensor data processing: inversion (increasing sensor values result in decreasing MIDI data values), thresholds (the sensor values within the specified range are offset and scaled to the MIDI data output range), zooming (set the sensitivity of an input to a specific voltage range), time averaging (reduce noise by averaging over up to 16 sensor values), differentiation (output only the difference between two successive sensor values), peak/dip detection (detect the largest/smallest value of up to 16 sensor values and output that or a preset value), noise gate (output only when the sensor value changes more than a user-set difference from its current value).
- Gesture recognition: gesture onset detection (through peak or dip detection mapped to e.g. note-on event with velocity value corresponding to peak or dip value), post-onset processing (continuous averaging and/or differentiation, mapped to e.g. after-touch or pitch-bend messages), gesture end detection (sensor value above/below threshold, mapped to e.g. note-off event).
- Factory reset option: allows you to return all digitizer settings to its original settings when it was first shipped to you.
The digitizer MIDI communication as implemented by the firmware is described in the USB-microDig firmware reference documentation.
We are not aware of any bugs at this time. Please notify us if you think you may have encountered one.