ICube Max Plugin-83 Intro

From I-CubeX Wiki
Jump to: navigation, search

The iCube Max plugin, or external object, provides a user interface for the processing of sensor data received via an I-CubeX digitizer's inputs, and for the configuration of various settings that apply system-wide or (virtual) input-specific to the digitizer. It includes extensive error messaging that help with developing and debugging.

The help patch includes a sensor data viewer, various command examples, a basic getting started patch and various subpatches useful for integration into an interactive media application.


Icube-830 icube demo max patch window.png Icube-830 report max console.png Icube-830 dataviewer analog window.png Icube-830 dataviewer orient5d window.png


Sensor types

Digitizer inputs can process data from analog and digital I2C sensors.

Analog sensors output a voltage. Some sensors only output two voltages representing two captured states such as contact or no contact, motion or no motion, near or far, etc. Other sensors output a very high number of different voltages, limited by the noise level introduced at various stages such as the transmission of the voltage by the cable connecting the sensor to the digitizer, until conversion to a digital representation by the digitizer. The digitizer's resolution limits the number of different voltages and hence sensor states that can be captured. All digitizers have a maximum 10-bit resolution, except for the 32-input Digitizer which has a 12-bit resolution.

I2C sensors are operated by the exchange of pulse trains that represent a series of bytes as commands/messages. Since the sensor data they capture is digitally transmitted the resolution is determined by the sensor and not limited by any cable noise.


Sensor connectors

Analog sensors are connected to a digitizer's sensor inputs using ground (black wire), power (red wire) and the sensor signal (white wire). The sensor signal is connected to the sensor input, available at the 2nd row of the input/output connector, with ground defined as the bottom row and power as the 3rd row.

I2C sensors are connected to a digitizer using four positions of the input/output connector, where ground (bottom or 1st row) is the black wire, power (3rd row) is the red wire, the SCL signal (2nd row) is the white wire, the SDA signal (4th or top row) is the grey wire. WiDigs and recent USB-microDigs require the four positions to be in one column of the input/output connector, whereas older USB-microDigs and the Wi-microDig require the SDA signal (grey wire) to be placed in a separate column to the right (when facing the plug's pins with the ground pin at the bottom) of the SCL wire in the same row as the SCL signal. The 32-input Digitizer is not I2C capable.


iCube ins and outs

The iCube has an inlet for commands and a data outlet for each sensor. It can be configured to have 1 - 32 data outlets. Commands can be sent to the oCube as list messages.

Each data outlet is connected (assigned) to a sensor input of the digitizer, and commands refer to the data outlet, ie. not the sensor input. The iCube can be configured to have 1 - 32 data outlets. By default the iCube is instantiated with 8 data outlets, and each data outlet is connected to the sensor input with the same number.

The iCube has a separate inlet to receive MIDI bytes and a separate outlet to output MIDI bytes. The iCube has a separate outlet for confirmation and error messages.