Vincent Vanhegan

BEng Mechatronic Engineering (Hons)

Born and raised in Nottingham, I hold a First-Class BEng in Mechatronic Engineering from Manchester. I work at the intersection of hardware and software, stay active with Kabaddi, Volleyball, and Rock Climbing, and contribute to the community through nature-based volunteering and beekeeping.

Microcontroller Engineering – C++ FSM

Microcontroller Engineering – C++ FSM

Goal

Implement a real-time embedded application on an STM32 NUCLEO-F401RE microcontroller running three timekeeping functions simultaneously — world clock (multiple time zones), timer, and stopwatch — using a finite-state-machine architecture within the compute and memory budget of the embedded target.

Skills

  • STM32 Development
  • Finite state machine design
  • Real-time embedded systems
  • Hardware peripheral integration (LCD, joystick, GPIO)

What I did

  • A finite state machine in C++ coordinating the three timekeeping functions on a single tick loop, with each mode preserving its state correctly through user-driven transitions.
  • Responsive input handling from the application shield’s joystick, buttons and potentiometers — debounced and integrated into the FSM transition logic.
  • LCD output rendering and refresh logic balancing readability against the cost of frequent screen updates on the embedded hardware.
  • Developed in C++ using Keil Studio Cloud for browser-based compilation, with timing and behaviour validation carried out on the physical NUCLEO-F401RE board.