init
This commit is contained in:
Executable
+37
@@ -0,0 +1,37 @@
|
||||
# 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.
|
||||
Reference in New Issue
Block a user