Welcome to Hercules—a custom-built, 5-axis robotic arm that seamlessly integrates hardware design, embedded firmware, and intuitive software control. This project serves as a demonstration of my expertise in robotics, electronics, firmware development, and software engineering.
Hercules is designed for smooth and precise movement, offering both local and remote control options. The firmware runs on an ESP32 microcontroller, managing real-time servo control, motion sequences, and Wi-Fi connectivity. The Python-based GUI software provides an intuitive way to program and operate the robotic arm.
- 📟 Firmware – Developed in C for the ESP32, the firmware controls servo movements, processes commands over serial and Wi-Fi, and handles sequence execution with smooth motion interpolation.
- 💻 Control Software – A Python-based GUI that allows manual control via sliders, buttons, and sequence management tools. It supports both Serial (USB) and Wi-Fi control.
- 🎨 3D Modeling – The robotic arm was modeled in Blender, ensuring a functional and aesthetic design.
✅ Dual Control Modes – Operate via Serial (USB) or Wi-Fi (HTTP requests)
✅ Smooth Motion Interpolation – Uses an easing function for fluid servo movement
✅ Interactive GUI – Control the arm via sliders, buttons, and position recording
✅ Motion Sequences – Save, edit, and replay movement sequences for automation
✅ Asynchronous & Threaded Execution – ESP32 FreeRTOS tasks and Python multithreading for smooth operation
✅ 3D Modeled Design – Blender-modeled structure for aesthetics and precision
Below is a screenshot of the Hercules control interface:
🔹 Watch Hercules in action:
Hercules-Crane-2.mp4
- Install Arduino IDE and add the ESP32 Board Support Package.
- Install the required libraries:
- Upload the firmware from the
firmwarefolder to the ESP32.
- Install Python 3.8+ and required dependencies:
- Run the GUI using VSCode.
This project was created as a hands-on demonstration of my ability to integrate hardware and software into a functional robotic system. It showcases my experience in:
- Embedded Systems (ESP32, C++)
- Software Development (Python, Tkinter GUI)
- Electronics & Mechatronics (Servo control, real-time motion processing)
- Networking & IoT (Wi-Fi-controlled robotic systems)
- 3D Modeling & Design (Blender)
Feel free to explore the repository, test out the software, and modify the code to suit your needs! 🚀
If you have any questions, feel free to reach out!
📧 Email: guyjamesjulius@gmail.com 🐙 GitHub: www.github.com/Balanced-Libra 🌐 LinkedIn: www.linkedin.com/in/julius-guy-james
⭐ If you find this project useful, consider giving it a star on GitHub! ⭐
