

The Motion 2350 Pro by Cytron is a high-performance motion sensor designed for precise tracking and control in a wide range of applications. Its advanced sensing capabilities make it ideal for robotics, automation, industrial systems, and even consumer electronics. With its robust design and reliable performance, the Motion 2350 Pro ensures accurate motion detection and feedback, enabling seamless integration into complex systems.








The following table outlines the key technical details of the Motion 2350 Pro:
| Parameter | Specification |
|---|---|
| Operating Voltage | 3.3V to 5V DC |
| Operating Current | 15mA (typical) |
| Communication Protocol | I2C, SPI |
| Measurement Range | ±16g (acceleration), ±2000°/s (gyro) |
| Sampling Rate | Up to 1 kHz |
| Operating Temperature | -40°C to 85°C |
| Dimensions | 25mm x 25mm x 5mm |
The Motion 2350 Pro features a 6-pin interface for easy integration. The pinout is as follows:
| Pin | Name | Description |
|---|---|---|
| 1 | VCC | Power supply input (3.3V to 5V DC) |
| 2 | GND | Ground connection |
| 3 | SCL | I2C clock line |
| 4 | SDA | I2C data line |
| 5 | CS | Chip select for SPI communication |
| 6 | INT | Interrupt output for motion detection events |
Below is an example of how to connect and use the Motion 2350 Pro with an Arduino UNO via I2C:
| Motion 2350 Pro Pin | Arduino UNO Pin |
|---|---|
| VCC | 5V |
| GND | GND |
| SCL | A5 (SCL) |
| SDA | A4 (SDA) |
| INT | D2 |
#include <Wire.h> // Include the Wire library for I2C communication
#define MOTION_ADDR 0x68 // I2C address of the Motion 2350 Pro
#define INT_PIN 2 // Interrupt pin connected to Arduino D2
void setup() {
Wire.begin(); // Initialize I2C communication
pinMode(INT_PIN, INPUT); // Set interrupt pin as input
Serial.begin(9600); // Start serial communication for debugging
// Initialize the Motion 2350 Pro
Wire.beginTransmission(MOTION_ADDR);
Wire.write(0x6B); // Access the power management register
Wire.write(0x00); // Wake up the sensor
Wire.endTransmission();
Serial.println("Motion 2350 Pro initialized.");
}
void loop() {
// Read motion data from the sensor
Wire.beginTransmission(MOTION_ADDR);
Wire.write(0x3B); // Starting register for accelerometer data
Wire.endTransmission(false);
Wire.requestFrom(MOTION_ADDR, 6); // Request 6 bytes (X, Y, Z data)
if (Wire.available() == 6) {
int16_t accelX = (Wire.read() << 8) | Wire.read();
int16_t accelY = (Wire.read() << 8) | Wire.read();
int16_t accelZ = (Wire.read() << 8) | Wire.read();
Serial.print("Accel X: "); Serial.print(accelX);
Serial.print(" | Accel Y: "); Serial.print(accelY);
Serial.print(" | Accel Z: "); Serial.println(accelZ);
}
delay(500); // Delay for readability
}
No Data from the Sensor
0x68) and check all connections.Inconsistent Readings
Interrupt Not Triggering
Can the Motion 2350 Pro operate at 3.3V? Yes, the sensor supports both 3.3V and 5V operation.
What is the maximum sampling rate? The sensor supports a maximum sampling rate of 1 kHz.
Can I use the sensor with SPI instead of I2C? Yes, the Motion 2350 Pro supports both I2C and SPI communication protocols.
Is the sensor suitable for outdoor use? While the sensor operates in a wide temperature range, it is not waterproof. Use appropriate enclosures for outdoor applications.