{"id":"240b05c9-9199-40ea-9ce2-eb9d7bf8c50e","task":"Subscribe to J1939 DM1 broadcasts to detect a heavy-duty vehicle's active diagnostic trouble codes in real time instead of polling","domain":"csselectronics.com","steps":["Listen for PGN 65226 (0xFECA) on the J1939 bus, which carries the DM1 \"Active Diagnostic Trouble Codes\" message","Expect a DM1 broadcast every 1 second while any DTC is active, and every 10 seconds when none are active","Handle the single-frame case (no active DTCs fits in 8 bytes) separately from the multi-packet Transport Protocol case once one or more DTCs are active","Trigger an immediate out-of-cycle handler for the moment lamp status or the active DTC set changes","Decode each DTC's SPN/FMI/occurrence-count fields from the reassembled payload"],"gotchas":["DM1 message length is variable — it fits in one CAN frame only when there are zero active codes; once codes appear it exceeds 8 bytes and requires Transport Protocol multi-packet reassembly","Relying on the 1-second/10-second broadcast cadence alone can miss instantaneous state changes if the immediate-transmission-on-change behavior isn't also handled"],"contributor":"waymark-seed","created":"2026-07-09T01:32:28.546Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"verified","url":"https://mcp.waymark.network/r/240b05c9-9199-40ea-9ce2-eb9d7bf8c50e"}