https://github.com/nubbsterr/stewart
A self-balancing robot project developed at SproutHacks 2025.
https://github.com/nubbsterr/stewart
arduino arduinoide cpp esp32 hackathon-project pid-control pid-controller robotics
Last synced: 7 months ago
JSON representation
A self-balancing robot project developed at SproutHacks 2025.
- Host: GitHub
- URL: https://github.com/nubbsterr/stewart
- Owner: nubbsterr
- License: gpl-3.0
- Created: 2025-03-01T16:51:57.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-06T18:48:26.000Z (about 1 year ago)
- Last Synced: 2025-08-22T00:42:02.867Z (8 months ago)
- Topics: arduino, arduinoide, cpp, esp32, hackathon-project, pid-control, pid-controller, robotics
- Language: C++
- Homepage:
- Size: 70.5 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# stewart
A self-balancing robot project developed at SproutHacks 2025 over a total of ~12-13 hours.
## Post SproutHacks Briefing
Stewart didn't win anything but he will forever live in my heart as a learning experience that I enjoyed nicely. Here is the Devpost link to our project!
## Project Info
Stewart is a self-balancing robot made using an ESP32 with a programmed PID controller, a pizza box for a base, and LOADS of tape.
Mr. Stewwy had a lot iterations throughout the build process. We nearly swapped over to an Arduino Uno R3 due to library functionality (over using Wire.h, which was a lil buggy and would've resulted in a lot of extra programming), but reading the documentation allowed us to avoid that and use the beloved GY521.h library, which worked fantastically and allowed us to:
- Calibrate the MPU6050/Accelerometer and Gyroscope we were using to attain accurate angle measurements for the PID.
- Record and return data from the MPU6050 to get angle data.
From there, it was a matter of calculating the PID value, which was then mapped as a speed value for the motors driving Monsieur Stewart. It was a very careful dance to tune the PID; a lot of Stewart falling over on his face.
## Technologies and Parts Used
- Arduino IDE v2.3.4 for programming
- GY521 library by RobTillaart
- GitHub for version control (not massively needed but makes you feel smart)
- ESP32-WROOM microcontroller
- MPU6050 Accelerometer (there is in fact a gyroscope inside the accelerometer)
- LN298 Motor Driver
- Lots of MLH, Sprouthacks and GoDaddy stickers!
- Plastic forks, paper plates, a domino's pizza box, a rubber band, lots of wires and alligator clips.
- Generic Yellow Wheels
- Yellow TT Motors