Restructure Led as a template on the DT spec, add a generic
signal/slot mechanism for host status, and cache Infrared sensor
samples via trigger callbacks. Add new init modules for LED, temp,
and watchdog, and build them into the main app.
- Remove heating and NTC functionality from communication module
- Convert Infrared from template to runtime array-based implementation
- Refactor Led to support multiple LEDs with compile-time name
validation
- Simplify main to remove direct hardware initialization
- Update west manifest for dr2501a board and add ch9438 module
Extend the UART protocol to support writing and reading the heating
state, and reading individual pole NTC sensors and the heating pad NTC.
Cache NTC readings for query on demand. Move PID updates to a workqueue
to avoid blocking the timer IRQ context.
Add printk debug statements to NTC temperature sensor reading and
IR temperature sensor reading. Change NTC loop to use index-based
iteration. Fix missing newline in boot message. Remove unused
watchdog and commented-out code.
- Add CONFIG_SAMPLE_NTC to CMakeLists.txt and Kconfig
- Implement PI temperature controller with PWM output in heating.hpp
- Convert NtcGroup from template to non-template class
- Add LED helper class with flash support
- Implement COM protocol handlers for device ID and running state
- Add SPI, sensor, and PWM configuration to prj.conf
- Remove indicator overlay and update main.cpp with temperature
monitoring
- Add test script for serial protocol communication