Project Overseer is a initiative honoring George Orwell and his warnings about the dangers of surveillance. Inspired by his novel 1984, which depicts a world under constant watch, this project aims to materialize the threat of surveillance through a thought-provoking robotic art piece.

Conceptual design drafts for the enclosure.

The core of this project is a robot that tracks human faces in real-time. To achieve this, we developed software to efficiently control the robot’s arm, which involved several key functions.
Software Driver
The control program needed to perform the following sequence:
- Capture a frame from the camera.
- Detect all faces within the frame.
- Isolate the closest face to the camera.
- Calculate the required movement and update the arm’s position.
Setbacks
A major challenge was calculating the precise rotation for the servo motors based on a target’s coordinates. Initially, the software could only determine the camera’s required angle of movement, which wasn’t enough for accurate motor control.

Initial sketches of servo motor motion and arm movement calculations.
The problem was geometric. With only one known angle and one known length of a conceptual triangle between the camera, the target, and the joint, accurate calculations were impossible.
To solve this, we mechanically aligned the motor’s axis with the camera’s rotating axis, ensuring they intersected at the camera’s lens. While this fixed the calculation issue, it significantly increased the mechanical complexity of the device.

Initial drafts of the casing design.
As the project evolved, we added new features, such as adjustable target tolerance, on-screen rectangles to visualize detected faces, and an automated function to center the arm before and after periods of inactivity.

Final concept with dimension calculations and assembly planning.
CPU Compatibility
The original plan was to run everything on a Raspberry Pi Zero W, compact enough to fit inside the main enclosure. However, we chose OpenCV4 (v4.3.0) for facial recognition, which required a more powerful ARMv7+ processor. This forced a switch to the Raspberry Pi 3B+ with its ARMv8 CPU.
The larger size of the Raspberry Pi 3B+ meant we had to add a second enclosure to the assembly. This change also forced us to abandon the original concept of a self-contained, wall-mountable unit.
Assembly

Hand-cutting particleboard and cardboard for the arms and casing.
We built the robot’s frame from lightweight particleboard to ensure the motors could move the arm quickly and smoothly. The wood proved weaker than anticipated, requiring us to reinforce several key parts.
The casings for the electrical components were made from cardboard, while thin, sturdy laminated boards were used for the main technical enclosures. We chose a subtle color scheme to let the project’s message speak for itself.

Assembling the main components of the arm.
Cable management became an issue, as loose wires tangled in the arms and joints. We solved this by securing the wires along the arms with plastic zip ties.

The completed Overseer assembly.
Testing and Refinement
In the final phase, we focused on testing and configuring the robot for optimal performance. We fine-tuned parameters, improved processing speed by lowering the frame rate and image quality, and added a fan to manage the CPU temperature during extended operation.
Conclusion

The completed Overseer project.
Inspired by the insights of George Orwell’s 1984, we created a device that explores the theme of surveillance. The project was a success, and the final robot operates exactly as intended.
Our goal was not to disturb but to provoke thought and offer a different perspective on our reality. We hope this project encourages reflection on the impact of surveillance in the modern world.
Components Used
2x Servo Motors Waveshare MG996R
- Torque: 9 kg/cm (4.8V), 11 kg/cm (6V)
- Speed: 0.19s/60° (4.8V), 0.18s/60° (6V)
- Rotation: 180°
- Voltage: 4.8V ~ 6V
- Weight: 55g
- Dimensions: 40.7 × 19.7 × 42.9mm
Raspberry Pi 3 Model B+
- CPU: 1.4GHz 64-bit quad-core ARM Cortex-A53
- CPU Architecture: ARMv8-A (64/32-bit)
- GPU: Broadcom VideoCore IV @ 250MHz
- SDRAM: 1GB
- Weight: 45g
- Dimensions: 85.60 × 56.5 × 17mm
Raspberry Pi Camera V2
- Video FPS: 1080p30, 720p60
- Sensor: 8MP Sony IMX219 CCD
- Connector: CSI
- Field of View: 62.2° x 48.8°
- Weight: 3g
- Dimensions: 25 × 20 × 9mm
Raspberry Pi Fan with 30cm Cable
- Consumption: 0.35W
- Power: 5V (reduced to 3.3V)
- Noise: 22dBA (5V)
- Dimensions: 35 x 35 x 10mm
Power Supply 5.1V⎓3A
- Power: 15.3W
- Voltage: 5.1V
- Current: 3A