- All products
- Sensors & Modules
- Gesture
- Distance and Gesture ZX Sensor (Sparkfun)
- Gesture
Features
- Non contact distance sensing up to twenty centimeters
- Gesture recognition with support for multiple gesture types
- Compact SMD form factor suitable for PCB mounting
- Low power operation for battery powered projects
- Adjustable sensitivity for different lighting conditions
- Integrated ambient light sensor for improved accuracy
- I2C communication interface
- Open source firmware support
Principle of Operation
The sensor operates by emitting infrared light and measuring the reflected signal from nearby objects. Changes in reflection intensity and timing are used to calculate distance and detect motion.
Gesture detection is achieved by tracking movement patterns over time. An internal ambient light sensor automatically adjusts the sensor gain to maintain reliable operation under varying light conditions.
Pinout
Refer to the pinout image for detailed pin identification and wiring information.
- VCC power input from three point three to five volts
- GND ground connection
- DA I2C data line
- CL I2C clock line
- DR data ready output for interrupt signaling
Applications
- Gesture controlled user interfaces
- Proximity sensing systems
- Human machine interfaces
- Interactive art and installations
- Robotics obstacle detection and interaction
- Touch free control panels
Circuit
The sensor connects to a microcontroller using I2C communication. Power and ground must be supplied, and the data ready pin can be used to trigger interrupts when new data is available.
Library
An Arduino compatible library is available from SparkFun which simplifies communication with the sensor and provides functions for reading position and gesture data.
Example Arduino Code
#include "Wire.h"
#include "ZX_Sensor.h"
const int ZX_ADDR = 0x10;
ZX_Sensor zx_sensor = ZX_Sensor(ZX_ADDR);
void setup() {
Serial.begin(9600);
zx_sensor.init();
}
void loop() {
if (zx_sensor.positionAvailable()) {
uint8_t x = zx_sensor.readX();
uint8_t z = zx_sensor.readZ();
Serial.print("X ");
Serial.print(x);
Serial.print(" Z ");
Serial.println(z);
}
}
Technical Specifications
- Operating voltage three point three to five volts DC
- Detection range ten to twenty centimeters
- Gesture recognition up to nine gestures
- Gesture detection rate up to two hundred hertz
- I2C address zero x one zero
- Communication interface I2C and UART
- UART baud rate nine thousand six hundred
- Dimensions approximately thirty by fifteen by ten millimeters
- Weight approximately zero point nine grams
Comparison
Compared to other gesture sensors such as APDS nine nine six zero and CJMCU seven six two zero the SparkFun ZX offers support for both I2C and UART communication and a high gesture detection rate. The choice between sensors depends on size detection range and communication requirements.
Features
- Non contact distance sensing up to twenty centimeters
- Gesture recognition with support for multiple gesture types
- Compact SMD form factor suitable for PCB mounting
- Low power operation for battery powered projects
- Adjustable sensitivity for different lighting conditions
- Integrated ambient light sensor for improved accuracy
- I2C communication interface
- Open source firmware support
Principle of Operation
The sensor operates by emitting infrared light and measuring the reflected signal from nearby objects. Changes in reflection intensity and timing are used to calculate distance and detect motion.
Gesture detection is achieved by tracking movement patterns over time. An internal ambient light sensor automatically adjusts the sensor gain to maintain reliable operation under varying light conditions.
Pinout
Refer to the pinout image for detailed pin identification and wiring information.
- VCC power input from three point three to five volts
- GND ground connection
- DA I2C data line
- CL I2C clock line
- DR data ready output for interrupt signaling
Applications
- Gesture controlled user interfaces
- Proximity sensing systems
- Human machine interfaces
- Interactive art and installations
- Robotics obstacle detection and interaction
- Touch free control panels
Circuit
The sensor connects to a microcontroller using I2C communication. Power and ground must be supplied, and the data ready pin can be used to trigger interrupts when new data is available.
Library
An Arduino compatible library is available from SparkFun which simplifies communication with the sensor and provides functions for reading position and gesture data.
Example Arduino Code
#include "Wire.h"
#include "ZX_Sensor.h"
const int ZX_ADDR = 0x10;
ZX_Sensor zx_sensor = ZX_Sensor(ZX_ADDR);
void setup() {
Serial.begin(9600);
zx_sensor.init();
}
void loop() {
if (zx_sensor.positionAvailable()) {
uint8_t x = zx_sensor.readX();
uint8_t z = zx_sensor.readZ();
Serial.print("X ");
Serial.print(x);
Serial.print(" Z ");
Serial.println(z);
}
}
Technical Specifications
- Operating voltage three point three to five volts DC
- Detection range ten to twenty centimeters
- Gesture recognition up to nine gestures
- Gesture detection rate up to two hundred hertz
- I2C address zero x one zero
- Communication interface I2C and UART
- UART baud rate nine thousand six hundred
- Dimensions approximately thirty by fifteen by ten millimeters
- Weight approximately zero point nine grams
Comparison
Compared to other gesture sensors such as APDS nine nine six zero and CJMCU seven six two zero the SparkFun ZX offers support for both I2C and UART communication and a high gesture detection rate. The choice between sensors depends on size detection range and communication requirements.