Inspiration

Octavius started with a passion for soft robotics. When we saw the demos of the logarithmic spiral robots, we immediately thought of Doctor Octopus from Spider-Man. What if controlling a robot could feel as natural as moving your own arm rather than just being an end effector for a robotic arm? With this curiosity, we were determined to bridge human muscle signals to a tentacle robotic arm that responds to the user’s intent.

What it does

Octavius translates electrical muscle activity (EMG signals) into robotic actions. Our machine-learning model decodes intended movement and maps it to commands for a soft robotic arm. We also use reinforcement learning to explore and learn patterns for controlling the arm.

How we built it

We designed the robot, attachments, frame, and motor mounts in CAD, 3D-printed all the individual parts, and assembled the arm with a flexible elastic core. We designed and breadboarded the circuitry connecting its electronics and controls. Meanwhile, we used QNX on Raspberry Pi as a platform for fast real-time control and rapid communication.

We trained a lightweight ML model to decode intent from EMG signals. Using a lightweight CNN, we can collect as little as 5 minutes of EMG data and achieve 97% classification accuracy for 3 classes. Using MuJoCo and NVIDIA Isaac Sim, we trained reinforcement-learning policies with Proximal Policy Optimization (PPO), then integrated the resulting policies and algorithms into our control system.

Challenges we ran into

Our biggest challenge was bringing mechanical design, electronics, EMG interpretation, and robotic control together into a working system.

Fabrication took several iterations. We separated the CAD assembly into individually printable segments, created passages for the central core, and worked through multiple print failures. Even with tolerances accounted for in CAD, some printed parts needed adjustments to fit together.

Without TPU filament available to act as the elastic core as the spine for the tentacle, we improvised a core using solid-core wire, stripping its insulation where necessary to fit through the smaller segments. This kept the prototype moving forward, but changed the arm’s flexibility. On the software side, tuning the reinforcement-learning reward function required careful iteration to encourage the movements we wanted.

Accomplishments that we're proud of

We built Octavius from CAD designs into an assembled robot, complete with its mechanical structure and breadboard circuitry. Strong planning and teamwork helped us stay on schedule, adapt to setbacks, and avoid a last-minute scramble.

Also, we were able to accurately decode EMG into actions, achieving 97% accuracy across 3 classes. Furthermore, the model was able to generalize among the four of us without any retraining. Inference was also really fast. Since the model was small (~3k parameters), it didn't require a lot of computational power. We were able to decode EMG signals and send them to the Raspberry Pi (via ethernet) at 100 Hz.

Related to the Raspberry Pi, we used the QNX OS to rapidly receive control signals from the EMG decoding model. Additionally, the QNX OS provided an effective way for us to control the 3 motors for the tentacle concurrently.

We’re especially proud of integrating two challenging approaches to intelligent control within 2 days: decoding human intent from muscle signals and learning robotic movement through reinforcement learning.

What we learned

Building Octavius taught us how closely hardware and software depend on each other. Changes to the core material, geometry, or assembly affect how the arm moves and how it should be modeled and controlled.

What's next for Octavius

We want to improve EMG decoding across users and sessions, refine the mechanical design, and measure how reliably the arm executes intended movements.

Our next steps include calibrating simulations against the physical robot, improving the transfer of learned policies to hardware, and testing object-grasping tasks. We also plan to add computer vision to track the arm’s position and enable point-to-target guidance, using inverse kinematics to translate target positions into motion. For the EMG aspect, we hope to add more classes (4-6+ classes) or transition to regression where we can decode the specific angle/position of fingers.

Ultimately, we want to build additional arms and coordinate their movements to expand Octavius into a multi-arm system that demonstrates what this approach can do.

Built With

  • 3d-printing
  • ai
  • cad
  • emg
  • hardware
  • ml
  • qnx
  • reinforcement-learning
Share this project:

Updates

Submission history