York University Robotics Society Mars Rover hero

York University Robotics Society Mars Rover

STM32 · EMC2303 · ADC · I2C/SMBus · Modbus soil sensing

Embedded systems on the club Mars rover: STM32 firmware for EMC2303 thermal control, ADC battery diagnostics, I2C/SMBus sensing, and a Modbus soil probe for field measurements.

As Embedded Systems Engineer on the York University Robotics Society Mars rover team (Sep 2025 – present), I engineer custom STM32 firmware in STM32CubeIDE for the planetary rover platform. Work spans thermal management, power monitoring, serial sensing, and integrating an industrial soil / environmental probe so the rover can sample field conditions in real time.

  • STM32 firmware interfacing an EMC2303 fan controller for thermal management of critical onboard systems.
  • Low-level power monitoring: ADC sampling through precision voltage dividers for real-time battery diagnostics.
  • I2C/SMBus and hardware interrupts for low-latency sensor acquisition and robust fault detection.
  • STM32 Modbus RTU soil / environmental monitor (TH, NPK, pH, salinity, TDS) developed for use on the rover — see the dedicated soil sensor project for the full node design.
  • Hardware–software integration with the embedded systems division: peripheral bring-up, signal conditioning, and power-efficiency tuning across the platform.

Firmware loops are validated against real peripherals on the rover stack — fan control over SMBus, analog battery rails into the STM32 ADC, and RS485 Modbus traffic to the soil probe — with interrupt-driven acquisition kept low-latency so thermal and power faults surface quickly during field operation.