PoliMi Motorcycle Factory
Three-year experience (1st - 3rd academic year) within the Firmware division, contributing to the software design and development of the electric racing prototype for the 23-25 season.
Key Activities & Architecture
C → C++ Codebase Migration
Structural refactoring of the entire legacy codebase, transitioning from a procedural C paradigm to a modern C++ object-oriented architecture. Designed abstract interfaces and classes to ensure modularity and maximum code reusability.
Firmware Development for On-Board Electronic Boards
Authored new firmware for the following electronic boards of the 23-25 prototype:
Sensors Board
High-frequency sampling of analog and digital on-board sensors (suspension, temperatures, ...) and periodic transmission over the CAN bus.
ECU
Central vehicle control unit: safety state management, error monitoring, and inverter control via CAN.
IMU-GPS Board
Acquisition of vehicle dynamics (acceleration, roll, pitch) and parameter transmission via CAN.
Airbrakes Board
PWM control of active aerodynamic airbrakes during braking phases, dynamically driven by telemetry data received via CAN.
DBC CAN Parser & C++ Generator Submodule
Developed a shared submodule for the entire firmware division that automatically parses .dbc network files via a dedicated Python script to generate ready-to-use, typed C++ classes.