38 lines
1.7 KiB
Markdown
Executable File
38 lines
1.7 KiB
Markdown
Executable File
# T2G seat-controller firmware
|
|
|
|
`Seat_Controller_demo/` is the repository-owned IAR interface project for the
|
|
physical seat bench. It combines the verified heater, fan and four-motor demos
|
|
and is the only firmware accepted by the hardware executor.
|
|
|
|
The Infineon/T2G vendor library is intentionally not duplicated here. The IAR
|
|
project keeps its original relative `common/` and `tviibh8m/` references;
|
|
`tools/build_seat_firmware.ps1` stages the repository project beside junctions
|
|
to `COGNITIVE_AGENT_T2G_SDK_ROOT`, builds it, and copies only the resulting
|
|
`Seat_Controller_demo.hex` and `Seat_Controller_demo.out` back into the
|
|
repository.
|
|
|
|
```powershell
|
|
powershell -ExecutionPolicy Bypass -File .\tools\build_seat_firmware.ps1 -Profile combined
|
|
```
|
|
|
|
The build script never opens a debug probe or flashes a target. Physical
|
|
programming is performed only by an authorized `execution_mode=hardware`
|
|
request when `COGNITIVE_AGENT_SEAT_AUTO_FLASH_ENABLED=true` and the CAN
|
|
identity handshake does not match the repository firmware.
|
|
|
|
Automatic programming uses `IAR/Seat_Controller_program.mac`, not the
|
|
interactive-debug `Seat_Controller_demo.mac`. The automatic-programming macro
|
|
forces motor, fan and heater outputs low before download, clears the retained
|
|
debug-session marker, and uses a bounded Download-and-Debug handoff with
|
|
`--leave_target_running`. `--download_only` is intentionally not used because
|
|
it leaves the CM0+ stopped after programming.
|
|
|
|
Firmware identity protocol:
|
|
|
|
- request: `0x304`, `53 45 41 54 01 00 00 00`
|
|
- expected response: `0x305`, `53 45 41 54 01 01 00 3F`
|
|
|
|
The response identifies protocol 1, firmware 1.1.0 and the combined capability
|
|
mask. It is a non-actuating readiness probe and is checked before any seat
|
|
control frame is sent.
|