Embedded supervision on STM32

Context & problem
An embedded system may appear to work correctly yet remain difficult to diagnose when a sensor becomes intermittent, a fault occurs or unexpected behaviour emerges. This project aims to build a realistic thermal-supervision demonstrator, close enough to an industrial use case to explore observability, fault management and system responses.
Challenge & solution
The firmware runs on an STM32F439 with FreeRTOS, with an architecture separating drivers, application logic, supervision services and RTOS orchestration. The system acquires a real temperature through an MCP9808, applies thermal control with hysteresis, centralises faults in a fault manager and exposes subsystem status over CAN. INIT, NORMAL, DEGRADED and FAULT_LATCHED modes structure the expected responses. Bring-up, sensor acquisition, control logic, initial fault mechanisms and CAN communication have been tested on real hardware. Full validation of the pump and its power stage remains to be completed.
Outcome
An embedded demonstrator with several key functions operational, designed to make internal states, faults and system responses observable on the bench. It demonstrates a supervision architecture built around operating modes, CAN diagnostics and centralised fault management.
Evidence & resources
Is your firmware difficult to maintain and evolve?
Let's spend 30 minutes discussing your existing system: its context, the difficulties you face and some initial options. A simple conversation with no obligation.