This platform was created to allow modular development and experimentation of robotics in python / C++ using the Raspberry Pi and Arduino.

It is currently configured as a bipedal companion robot.


Features
Personality: Variables that are affected by external stimuli affect behaviour.

Facial detection and tracking: using the Raspberry Pi camera. Training algorithm allows the robot to learn new faces.

Servo control: control of up to 9 servos via an arduino serial connection.

Battery monitor: both external and software integrated via the arduino serial connection.

Auto shutdown: GPIO 26 is wired to allow shutdown when brought to ground via a switch.

Buzzer: A buzzer is connected to GPIO 27 to allow for tones to be played.

Braillespeak: The buzzer uses tones to communicate words using a sequence of tones.

Motion Sensor: an RCWL-0516 microwave radar sensor is equipped on GPIO 13.

Stereo MEMS Mics: GPIO 18, 19 and 20 allow stereo MEMS microphones as audio input.

Speech Recognition: enabled whenever a face is visible.

Power saving relay: connected to disable power to servos when not in use.

Neopixel: WS1820B support is included via the Pi GPIO pin 12. Unfortunately to support this you must disable audio on the Pi.