# 🧠 Control System
The MICKY control system follows a hybrid architecture, combining high-level processing with low-level embedded control. This section presents the locomotion control system of MICKY. --- ## Communication Communication between the onboard computer and the microcontroller is performed via a serial interface. Velocity commands are transmitted using the following format: ```text ``` This lightweight protocol ensures low-latency communication between high-level and low-level systems. --- ## Microcontroller Firmware The microcontroller firmware is designed for low-latency and non-blocking execution. It uses the `Wire.h` and `AccelStepper.h` libraries to ensure efficient motor control and sensor communication. The main control loop consists of: 1. Serial command reception 2. Safety mechanism (fail-safe) 3. Kinematic processing 4. Sensor acquisition 5. Motor control Telemetry includes: - orientation - acceleration - angular velocity - temperature --- ## ROS 2 Integration The system is integrated with ROS 2 through two main nodes: - **CmdVelToSerial** — converts velocity commands into serial messages - **ImuSerialPublisher** — publishes IMU data This architecture allows seamless integration with higher-level navigation and control frameworks.