Firmware-830 Function-114

From I-CubeX Wiki
Jump to: navigation, search

REACHOND (114, 72h)

The REACHOND function enables output of the ReachOnD sensor data in both host and stand-alone mode. In host mode the sensor data is output in I2C DATA messages. In stand-alone mode the sensor data is output according to the stand-alone mode settings of the input number that equals the I2C port number. The following methods can be selected using the FUNCTION command’s method/parameter FP:

ReachOnD v1.0, v1.1

FP Data output in host mode Data output in stand-alone mode
0 Touch Status [0..1] of each input; 12 unsigned 8-bit values, each representing [not touching .. touching], sent as 12 bytes Touch Status [0..127] or [0..16383] of each of the first 8 inputs; 8 unsigned 7-bit or 14-bit values, each representing [high..low], sent as 8 times one or two bytes (LSB, MSB)
1..12 Touch Status [0..1] of the input specified by FP; an unsigned 8-bit value, representing [not touching .. touching], sent as one byte Touch Status [0..127] or [0..16383] of the input specified by FP; an unsigned 7-bit or 14-bit value, representing [high..low], sent as one or two bytes (LSB, MSB)
13 Capacitance [0..1023] of each input; 12 signed 16-bit values, each representing a [low..high] attached capacitance, sent as 12 bytes Capacitance [0..127] or [0..16383] of each of the first 8 inputs; 8 unsigned 7-bit or 14-bit values, each representing [low..high] attached capacitance, sent as 8 times one or two bytes (LSB, MSB)
14..25 Capacitance [0..1023] of the input specified by FP - 14; a signed 16-bit value, representing [low..high] attached capacitance, sent as one byte Capacitance [0..127] or [0..16383] of the input specified by FP - 14; an unsigned 7-bit or 14-bit value, representing [low..high] attached capacitance, sent as one or two bytes (LSB, MSB)
26 Capacitance [0..1023] averaged over all 12 inputs; a signed 16-bit value, representing [low..high] attached capacitance, sent as one byte Capacitance [0..127] or [0..16383] averaged over all 12 inputs; an unsigned 7-bit or 14-bit value, representing [low..high] attached capacitance, sent as one or two bytes (LSB, MSB)
27 Capacitance [0..1023] averaged over all 12 inputs with a value greater than zero; a signed 16-bit value, representing [low..high] attached capacitance, sent as one byte Capacitance [0..127] or [0..16383] averaged over all 12 inputs with a value greater than zero; an unsigned 7-bit or 14-bit value, representing [low..high] attached capacitance, sent as one or two bytes (LSB, MSB)
28..126 No data No data
127 Touch Status of each input [0..4095]; a 16-bit value, with each of the bits 1 to 12 representing [not touching .. touching] of the 12 inputs, sent as nibbles in four bytes (MSB .. LSB) No data

Example:

In order to enable the REACHOND function in standalone mode to output the touch status of each input of the ReachOnD sensor with I2C device address 90 (default ReachOnD I2C device address) connected to the 7th I2C port, the following message is sent:

240, 125, 0 {DEV}, 8 {FUNCTION}, 6 {port}, 90 {device address}, 114 {REACHOND function}, 0 {touch status of each input method}, 247 (F0h, 7Dh, 00h, 08h, 06h, 5Ah, 72h, 00h, F7h)

In stand-alone mode a suitable configuration has to be set using the EDIT CONFIG command before any MIDI messages will be output.

In order to enable the REACHOND function in host mode to output the capacitance averaged over all inputs of the ReachOnD sensor with I2C device address 90 (default ReachOnD I2C device address) connected to the 7th I2C port, the following message is sent:

240, 125, 0 {DEV}, 8 {FUNCTION}, 6 {port}, 90 {device address}, 114 {REACHOND function}, 26 {all-inputs-averaged capacitance method}, 247 (F0h, 7Dh, 00h, 08h, 06h, 5Ah, 72h, 7Fh, F7h)

In host mode raw sensor data will be output immediately in I2C DATA messages.

Other settings of the ReachOnD sensor can be effectuated by using I2C commands such as I2C WRITE and I2C READ. See also the datasheet linked from the ReachOnD webpage.