Skip to main content

Week 16 - System Integration Report: AI Horse BOOK – Prototype V1.0

1. Overview

This week marked the successful completion of the first fully integrated hardware prototype of the "AI Horse BOOK" project. The system now realizes a complete signal chain from the remote controller to the mechanical actuator:

ESP32 remote (BLE transmitter) → ESP32-DEV receiver → N20 motor driver → mechanical linkage (pony limbs/head) → on-screen status feedback.

This milestone transitions the project from standalone module testing to full-system collaborative operation.

2. Hardware Architecture & Responsibilities

ModuleModelFunction
Remote ControllerESP32 (with push buttons)Reads button states and broadcasts control commands via BLE
Receiver & DriverESP32-DEV boardReceives BLE signals, drives the motor, and updates the display
ActuatorN20 worm-gear motor + linkageConverts rotational motion into mechanical actions of the pony's limbs/head
Display UnitOnboard OLED (SSD1306 or equivalent)Shows real-time action status (e.g., "Walking", "Head Up")

3. Critical Issues & Resolutions

Issue 1: Excessive Book Thickness

Symptom:

The total thickness exceeded the physical design limit of the book casing when using a straight-shaft N20 motor with a linkage rod.

Root Cause:

The axial length of the straight-shaft motor, combined with the outward extension of the linkage, consumed too much internal space.

Solution:

Replaced with an N20 worm-gear motor, which has a shorter axial dimension and a parallel output shaft, significantly reducing the overall thickness.

Reinforcement:

Added retaining clips at the worm–gear interface to prevent loosening under prolonged vibration.

Issue 2: Insufficient Battery Power – Motor Start-Up Causing System Reset

Symptom:

The ESP32-DEV board experienced voltage droop and rebooted during motor startup due to inrush current.

Root Cause:

The original battery (e.g., 14500 or pouch Li-ion) had limited discharge capacity and could not simultaneously support the motor's peak current and the MCU's operation.

Solution:

Upgraded to an 18650 Li-ion battery (single-cell or parallel configuration) and added a large bypass capacitor (e.g., 1000 µF) to provide transient current compensation, stabilizing the MCU supply voltage during motor starts.

4. Key Lessons & Design Guidelines (Important)

GPIO Pin Selection

Pins used for motor control (PWM, direction, enable) must be true output-capable GPIOs with strong push-pull drive strength. Avoid pins that default to input-mode or are multiplexed with ADC/touch functions, as they may produce unstable logic levels or insufficient drive current.

Recommendation:

Use only pins explicitly labeled as GPIO_MODE_OUTPUT in the datasheet, and explicitly configure them as GPIO_MODE_OUTPUT during initialization.

Power Supply Partitioning

Digital (ESP32, display) and analog/motor power domains should be isolated as much as possible; at minimum, implement a single-point ground connection to prevent motor noise from coupling into BLE reception and display signals.

Mechanical Stops & Overcurrent Protection

Although worm-gear drives are self-locking, mechanical limit stops should be added at the extreme positions of the linkage to prevent stall conditions, which could overload the motor driver IC (e.g., L9110S or MX1508) and cause thermal damage.

5. Next Steps

Enhance BLE protocol:

Introduce heartbeat packets and a retransmission mechanism to improve communication reliability.

Implement motion profiling:

Add acceleration/deceleration curves for smoother and more natural pony movements.

Final integration:

Assemble the inner pages into the book casing and conduct endurance testing with a target of ≥ 2 hours of continuous operation.