-
-
Finished Robot with all 4 ultrasonic sensors and wheels, alongside the remote controller
-
Custom-build remote controller with headphones connection
-
Complete assesmbled hardware prior to building full interior.
-
All connected Hardware within the Robot's interior
-
Two of our team members working on debugging hardware.
-
Fron side of the Robot
Inspiration
The robot was inspired by headsets used to present environmental data as spatial sound, allowing users to effectively hear their surroundings.
What it does
Sonar-bot uses ultrasonic sensors to read in data on its surroundings. This data is then sent to the Rasberry Pi which converts this information into spatial sound which manifest as ticks with varying frequency and pitch based on the direction and proximity of the object. In addition to the ability to translate surroundings into sound, the sonar-bot is able to be remotely driven and designed to collect metal samples as it drives around.
How we built it
Sonar-bot was built using a laser-cut plywood chassis designed to house all electronic components securely while remaining lightweight and modular. The system consists of two main software components: a Raspberry Pi and an ESP32. The Raspberry Pi handles remote control input and processes ultrasonic sensor data, converting distance and direction information into spatial audio. The ESP32 acts as the receiver, interfacing with the sensors and motors to execute movement commands. We assembled the hardware using a combination of WAGO connectors and soldered connections to ensure both flexibility and reliability. To manage power demands, the motors were powered by a dedicated battery source, while the sensors and microcontrollers were powered by a separate supply. This separation helped reduce electrical noise and improved overall system stability.
Challenges we ran into
One of the biggest challenges we faced was managing loose wiring, which led to intermittent connections and required frequent troubleshooting. We also encountered software crashes and unstable Bluetooth connections between the Raspberry Pi and ESP32, making debugging particularly time-consuming. Tuning the motor control was another significant challenge. Finding the correct speed ratio between the left and right motors was critical for achieving smooth forward and backward movement. Additionally, we had to experiment extensively to determine the most efficient way to distribute current from the 9V battery sources across all hardware components without causing brownouts or performance issues.
Accomplishments that we're proud of
What we learned
Through building sonar-bot, we learned how to integrate hardware and software across multiple microcontrollers and manage communication between a Raspberry Pi and an ESP32. We gained hands-on experience working with ultrasonic sensors, motor control, and spatial audio processing, translating real-world sensor data into meaningful auditory feedback. We also learned the importance of power management and wiring organization, especially when working with multiple voltage sources and current-hungry components. Debugging Bluetooth connectivity issues and tuning motor speed ratios taught us patience, systematic testing, and the value of incremental changes. Overall, the project strengthened our skills in embedded systems, rapid prototyping, and collaborative problem-solving under time constraints.
What's next for sonar-bot
Our next plans for sonar-bot include the addition of hands or a more sophisticated sample collection method, and additional sensors.
Built With
- bluetooth
- c++
- esp32
- openal
- python
- raspberry-pi
Log in or sign up for Devpost to join the conversation.