COM signal to CAN frame
Trace one application value through every software boundary and diagnose why it does not reach the bus.
What exactly are we learning?
The SWC writes a data element through RTE. COM applies signal rules and packs it into an I-PDU. PduR selects the route, CanIf selects the L-PDU and controller, and the CAN Driver requests hardware transmission.
Com_SendSignal updates the signal buffer. Transmission depends on transfer property, transmission mode, I-PDU group state, minimum delay time and the cyclic COM main function.
Runnable calculates VehicleMode = SPORT and calls Rte_Write.
Evidence: Debugger: runnable executed; value = 0x02.
What the engineer sets
- Map the SWC data element to a SystemSignal and COM signal.
- Set bit position, length, endianness, initial value and transfer property.
- Configure I-PDU, transmission mode, repetition and minimum delay time.
- Create PduR routes and CanIf Tx PDU mapping.
- Start the I-PDU group and enable the ComM channel through BswM.
Review COM/PduR/CanIf references in EB tresos or DaVinci. In CANoe, filter the CAN ID, decode the signal and compare request-to-frame timing.
Observe every boundary
SPORT-mode gateway signal is present on the source bus and inside the application, but absent from the destination CAN bus only in SPORT mode.
After the mode change, CAN ID 0x5A2 should transmit within the configured cycle time.
Rte_Write returns OK and the COM signal buffer changes, but no PduR transmit call and no 0x5A2 frame appear.
Confirm the symptom with one synchronized capture
Evidence found: Source frame present; destination 0x5A2 absent only in SPORT.
Decision: The source ECU and physical destination bus are not the first suspect.
Prove application and RTE execution
Evidence found: Runnable executes; VehicleMode=0x02; Rte_Write=OK.
Decision: Move the boundary to COM.
Inspect COM runtime gates
Evidence found: Signal buffer updates, but SPORT Tx I-PDU group state = STOPPED.
Decision: This is the first missing enabling condition.
Compare NORMAL and SPORT configuration
Evidence found: NORMAL action list starts the group; SPORT action list omits it.
Decision: Configuration delta explains the mode-specific failure.
Confirm downstream health
Evidence found: Manually starting the group causes PduR, CanIf and Can_Write activity.
Decision: Downstream routing and hardware are healthy.
A late BswM configuration change omitted Com_IpduGroupStart for the SPORT-mode action list.
Restore the SPORT action, regenerate configuration, review all drive-mode I-PDU group transitions and add a mode-switch integration test.
Repeat 100 mode transitions; confirm group STARTED, frame 0x5A2 present, timing within budget and no DET/DEM side effects.
Does Com_SendSignal always put a frame on CAN immediately?
No. It updates COM data and may trigger transmission only when configuration and runtime gates permit it. Packing, routing, CanIf state, driver availability and confirmation remain separate responsibilities.