This Tiny Robot Has a Big Personality

MiniSoul is a pocket-sized, ESP32-powered desktop robot with an AI-driven personality engine that evolves based on how you treat it.

nickbild
3 minutes ago Companion Bots
A collection of MiniSoul desktop robots (📷: Sritabh Priyadarshi)

Since desktop companion robots started popping up on social media, makers have been building endless variations of them to suit their own tastes. It’s easy to see why — most designs require only a handful of readily available parts and can be assembled in an evening. Spend a little time putting one together, and you'll end up with a small robotic sidekick that can sit on your desk, react to your surroundings, and provide a welcome distraction when a project isn’t going as planned.

Many of these robots are quite basic and won’t keep your interest for very long. Sritabh Priyadarshi’s creation, on the other hand, has enough personality to keep your attention for the long haul. Called MiniSoul, this desktop companion reacts to your interactions with it through a variety of emotions. It can also be configured to match your own unique preferences.

A closer look at the device (📷: Sritabh Priyadarshi)

MiniSoul is a pocket-sized robot built around an ESP32-S3 SuperMini development board that is paired with a 0.96-inch OLED screen. Priyadarshi selected the SuperMini module largely because of its small footprint, which allowed the entire project to shrink down to keychain size. While the hardware itself is relatively straightforward, the software running on it is what makes the little robot stand out from the growing crowd of desktop companions.

The firmware implements a custom behavior engine that tracks six personality traits: joy, curiosity, fear, anger, sadness, and desire. These values change over time based on how the owner interacts with the robot. Rather than simply responding to a button press or touch with a fixed animation, MiniSoul develops moods and tendencies that evolve through repeated interactions.

The robot senses touch through a capacitive touch surface located on its top side. A small k-nearest neighbors (kNN) machine learning model running directly on the device distinguishes between gentle caresses, playful taps, and more aggressive presses. Those interactions feed back into the behavior engine, influencing MiniSoul's emotional state. A gentle stroke might increase joy and reduce fear, while rough treatment can make the robot irritated or even angry.

MiniSoul can be configured via a web app (📷: Sritabh Priyadarshi)

An OLED display serves as MiniSoul's face, allowing it to express a wide range of emotions. Depending on its current personality state, the robot can appear happy, sad, confused, suspicious, disappointed, bored, tired, or any number of expressions in between.

The project also includes some practical features beyond acting as a companion. A dedicated real-time clock module provides alarm and reminder functionality, and onboard EEPROM storage preserves personality data even when the firmware is updated over the air. This means the robot remembers who it has become, surviving software updates as well as power cycles.

MiniSoul runs entirely on a custom operating system built with MicroPython. Users can connect to a built-in Wi-Fi access point and configure settings through a simple browser interface, allowing them to adjust clock settings, reminders, names, and update the software wirelessly.

If you would like to snag a MiniSoul of your own, you can join the waitlist to purchase one as soon as they become available.

nickbild

R&D, creativity, and building the next big thing you never knew you wanted are my specialties.

Latest Articles