
IEEE Bionic Arm
A bionic arm project focused on embedded firmware, joystick-driven control, calibration, and real-time servo actuation built around a finite-state machine. I led the firmware side, shaping how inputs were processed and translated into coordinated multi-joint motion.
Firmware Lead
September 2025
Multidisciplinary student engineering team
~70%
Onboarding Time Reduction
FSM + Embedded Control
Core Domain
Multi-DOF Bionic Arm
System Type
Overview
A bionic arm project focused on embedded firmware, joystick-driven control, calibration, and real-time servo actuation. I led the firmware side, shaping how operator inputs were processed through a finite-state machine and translated into coordinated multi-joint motion.
Problem
The team needed a reliable firmware foundation for processing joystick inputs, calibrating servo outputs, and supporting responsive multi-DOF actuation in a bionic arm platform.
Objectives
- Process joystick inputs and map them to arm motion
- Support real-time control behavior through a finite-state machine
- Improve firmware structure and documentation
- Make the system easier to scale across a larger student team
System Architecture
Joystick inputs feed into an STM32-based embedded system running a finite-state machine (Calibration, Idle, Movement, and Joystick states). State transitions are driven by operator inputs, and the active state drives PWM servo actuation for downstream arm behavior.
Software Architecture
The firmware is organized into input handling, state management, calibration, and servo-output layers, keeping subsystem interfaces clean enough for a multidisciplinary team to extend.
Bionic arm software architecture
Add this diagram atpublic/images/projects/bionicarm/software.svgHardware
- STM32
- joystick input
- servos / actuation hardware
Software
- C
- C++
- embedded firmware
- finite-state machine
- calibration logic
Algorithms / Processing
- joystick input processing
- finite-state machine transitions
- PWM signal generation for servo control
- calibration workflows
Key Decisions and Tradeoffs
- Balanced structured firmware design with rapid iteration needs
- Modeled control as a finite-state machine to keep behavior predictable and debuggable
- Emphasized documentation and subsystem interfaces to improve scalability
Biggest Challenge
One of the biggest challenges was building a firmware foundation that could process real-time inputs and drive coordinated actuation while remaining understandable to a multidisciplinary team. I addressed that by modeling the control flow as a finite-state machine and standardizing documentation and subsystem interfaces alongside the implementation.
Validation and Testing
- subsystem testing
- joystick input and state-transition checks
- calibration workflow validation
- integration support
Impact
The project gave the team a stronger firmware structure and made it easier for new members to contribute effectively.
Next Improvements
- Add more robust input-processing and motion-smoothing detail
- Improve validation pipelines
- Deepen actuation integration