Firmware is a kind of operating system software that runs on microcontrollers (tiny computers) such as used in the WiDig. It handles the capture of analog signals, communication with digital (I2C) sensors and actuators, their translation into/from 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 WiDig's new features released in firmware v8.3x with EditorX v8.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 ioCube Touchdesigner node, the iCube / oCube Max externals or the Pd external, or with Python, Processing or openFrameworks, and apply almost any signal processing algorithm you like.
Firmware v8.3x is only available for WiDigs with hardware v8.0 or greater. There are two ways to upgrade your WiDig to the latest firmware v8.3x. The easiest way is to click the "check firmware" button in Connect (v1.5 or higher, only on MacOS for now). if you're on Windows, run FirmwareX v8.3x. Access and configure the new features with EditorX v8.3x.
Upgrading your firmware is fully guaranteed. If after performing the upgrade your digitizer still has the same firmware version (ie. it wasn't upgraded) or became unresponsive, send us the digitizer as per the return instructions. We will upgrade the unit and send it back to you for free !
New in v8.30
- Ghost mode: map (analog or digital) sensor input to multiple MIDI messages via adjacent higher-numbered inputs.
- Skip (don't process nor output) specific ranges of analog sensor values using lookup tables.
- Improved ReachID methods.
New in v8.20
- Map sensor input to 14-bit Control Change MIDI message pairs.
- Support for Orient5D and VoltD sensors.
- Support for CVolt and DriveM actuators.
- Improved and new methods for BioAirD, Magnetic3D, Orient4D and ReachOnD.
- Channel Voice MIDI message mapping to actuators. Send any of the MIDI messages that a sensor is mapped to, while I-O mapping is enabled, to the digitizer and control the actuator even if the sensor is turned off.
- Single pulse actuator output: turn an actuator on and it will turn off after a user-defined time.
New in v8.12
- LED control. Turn on/off the MIDI in/out and power LEDs to save power and for less visible presence of the WiDig on stage or in an installation.
New in v8.11
- Support for Air2D, AngleD, BioAirD, Light2D and ReachOnD sensors.
- Spherical coordinate methods for Magnetic3D, Orient3D, Orient4D.
- Improved compatibility with I-CubeX software.
New in v8.10
- Solo feature: output the data from only one (virtual) sensor input.
- MIDI output range configuration.
- Map to the pitch, ie. note number, of a NoteOn message.
- Support for ReachFarD sensor.
- Improved magnitude method for Magnetic3D sensor.
- Improved compatibility with I-CubeX software.
As of firmware v8.0 digital (I2C) sensors 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 7.3 and lower. 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 first implemented in firmware v7.3: You can map the pitch of an Orient4D 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
- Support for BLE-MIDI.
- Firmware versioning with 4 digits and build date.
- Improved signal processing for BioBeat3D, HotSpot2D, Magnetic3D, MoveAround, Orient4D, ReachCloseD, ReachID and Swipe3D I2C digital sensors.
- Expanded feature list for FeelVibe and SeeRGB I2C digital actuators.
- Support for BioBeat3D, Orient4D, ReachCloseD, ReachID and Swipe3D.
- 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 WiDig firmware reference documentation.
We are not aware of any bugs at this time. Please notify us if you think you may have encountered one.