In a typical development environment, there are several options to disable an external watchdog:
Using a jumper configuration
Using a dedicated pin controlled by the debugger
WDTDIS pin:
SYStem.CONFIG.EXTWDTDIS <option>
User pin:
SYStem.CONFIG.DAP.USERn
However, in scenarios where the ECU is deeply integrated into the vehicle, physical access to the board is not possible. In such cases, access over the CAN Physical Layer (DXCPL) is often the only available option.
This setup has several limitations:
No direct physical access to the ECU.
No dedicated pin available to disable the external watchdog.
No VTREF pin for power detection – the debugger can only determine the power state after establishing a target connection.
No PORST- pin for reset triggering and detection.
Under these conditions, the external watchdog must be disabled within a short time window by sending a data sequence via e.g., the SPI controller.
Attempting to provide this data sequence with a Data.Set
PRACTICE script typically leads to unreliable behavior.
Recommended Solution
Use the following approach:
Configure the debugger in Standby Mode:
SYStem.Mode StandBy
Define the watchdog disable sequence with
Data.STANDBY
.
Once the debugger establishes communication with the target, the PowerDebug module automatically executes the sequence defined in Data.STANDBY
.
This ensures that the time-critical sequence is transmitted immediately and reliably during the debugger/target connection phase.
For more details and example on how to use the Data.STANDBY
command group, refer to the General Commands Reference Guide D.
Add a comment