Engineer Dorian Todd has built a self-driving mini fridge on tank treads that can autonomously chase or flee a person and reward them with a cold drink if caught. The project replaces the fridge's standard base with a tracked drivetrain powered by Repeat Robotics Ultra Mark II brushless gear motors designed for 12 lb combat robots. Todd 3D scanned both the metal tread assembly and the underside of the fridge to design a printed chassis that matched the two without manually measuring the unusual shape.
For perception, the robot uses Manifold Tech's Odin 1 spatial memory module, which combines solid-state dToF depth sensors, an RGB camera, and an IMU. The module runs Manifold's SLAM onboard to build and remember a map of the space as the robot moves. It also provides live odometry and a point cloud that feeds into navigation, while the front-facing camera is used to find and track a person.
The robot's main computer is an Nvidia Jetson running ROS 2. A nano version of the YOLO vision model handles person tracking, with the model exported to TensorRT so inference runs on the GPU while the CPU remains available for navigation. An ESP32 acts as the low-level controller, communicating with the motor ESC and sending motor commands. The Jetson communicates with the ESP32 over serial using a four-byte message containing a sync byte, left and right motor speeds, and a door command. The system automatically resynchronizes if a byte is dropped, preventing communication noise from causing the fridge to jump or lurch. Todd initially controlled the door servo directly from the ESP32, but added a PCA servo driver after running into the microcontroller's timer limitations.
For navigation, Todd uses the Nav2 ROS navigation stack. It takes the Odin's point cloud and builds a live map of the robot's immediate surroundings, then plans paths around obstacles. A custom positional node sets navigation goals based on the tracked person's position. In follow mode, the robot sets a goal about a meter short of the person. In flee mode, it sets the goal in the opposite direction and updates it as the person moves.
The system supports manual, semi-autonomous, and autonomous modes. In semi-autonomous mode, the front camera is used to chase the person while the rear camera is used to flee from them. Todd also added a velocity smoother between the controller and planner to reduce the aggressive movements of the drivetrain. This smoothing is applied in semi-autonomous and autonomous modes, while manual mode provides direct control.
The fridge can also open its own door and dispense a drink. A linkage driven by a 25 kg servo operates the door, while magnets replace the original latch so the servo can pull it open. Todd also rewired the fridge's internals to run at 12 V, although he normally keeps the cooling system switched off because of its power consumption. The drivetrain's motors are powerful enough to lift the fridge into a wheelie, so Todd added software limits for motor speed and other parameters. He also built a web interface served by the Jetson, allowing him to control the robot from a Steam Deck while viewing live telemetry and the robot's camera feed. A physical stop button on the controller provides an additional way to stop the robot.
Todd plans to add ultra-wideband tracking for a Smart Summon feature that would provide the robot with the user's range and direction even when they are out of line of sight. He also wants to add persistent target identification so the fridge does not switch between people in a crowd. Another planned feature is a global map that could allow destinations such as charging points to be specified.
The project, including its files, source code, and documentation, is available as open source.