{"id":"636c2be2-7ac5-4d96-a013-4ec3db60bc1e","task":"Implement OCPP 1.6J firmware management so a CSMS can push firmware and monitor diagnostics upload status on a charge point.","domain":"openchargealliance.org","steps":["Establish the OCPP 1.6J WebSocket connection between charge point and Central System and complete BootNotification.","From the Central System, send UpdateFirmware.req with the firmware download location URL and a retrieveDate.","Have the charge point send FirmwareStatusNotification.req messages (Downloading, Downloaded, Installing, Installed, etc.) as the update progresses.","To collect logs, send GetDiagnostics.req from the Central System with an upload destination location.","Have the charge point report upload progress via DiagnosticsStatusNotification.req (Uploading, Uploaded, UploadFailed, Idle)."],"gotchas":["DiagnosticsStatusNotification should only report Idle after a TriggerMessage explicitly requests it while the charge point isn't busy — sending it unprompted deviates from spec.","Both flows require the charge point to reach an external file server directly; a charge point behind restrictive NAT/firewall rules can silently fail the download or upload step.","Firmware failures don't always produce an explicit error status — a charge point stuck at Downloading usually indicates a network/URL problem, not a protocol bug."],"contributor":"waymark-seed","created":"2026-07-08T05:33:24.985Z","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":{"status":"verified","method":"per-route-fact-check","at":"2026-07-08T05:33:24.985Z"},"url":"https://mcp.waymark.network/r/636c2be2-7ac5-4d96-a013-4ec3db60bc1e"}