OCPP 1.6 Firmware & Diagnostics - Over-the-Air Updates Without the Truck Roll
How to push firmware updates and pull diagnostic logs from chargers in the field using OCPP 1.6. with failure handling and war stories from real deployments.
OCPP 1.6 Firmware & Diagnostics. Over-the-Air Updates Without the Truck Roll
Nobody wants to send a technician to every charger for a software update. And nobody wants to drive to a site to grab logs when something goes wrong at 2 AM. OCPP 1.6 has built-in support for both. firmware updates and diagnostic uploads. They're not glamorous, but they save real money at scale.
Firmware updates
The Central System tells the charger: "Download this file and install it."
Rendering diagram...
The location is a URL. FTP, FTPS, HTTP, or HTTPS. The retrieveDate lets you schedule updates for 3 AM when nobody's charging. The charger should refuse to update during an active session.
What goes wrong
Rendering diagram...
The scariest failure mode: a firmware update that bricks the charger's OCPP stack. You've now lost remote access to that unit. Some vendors have a safe-mode fallback that reverts on failed boot. Some don't. and now you're sending a technician.
Test firmware on one charger first. Always. Then a small batch. Then the fleet. I've seen operators push a broken firmware image to 200 chargers simultaneously and spend the next week driving around with USB sticks. Don't be that operator.
Diagnostics upload
When something goes wrong, you need logs. OCPP lets the backend request a diagnostic dump:
Rendering diagram...
The startTime and stopTime parameters narrow the time range. pass them when you know roughly when the issue occurred. Without them you'll get a massive log dump that takes ages to parse.
What's in the file depends on the vendor, but typically: system logs, OCPP message history, network stats, temperature readings, fault codes, and a configuration dump.
Infrastructure you need before you need it
Set up your FTP/SFTP server before an emergency forces you to. When a charger is misbehaving at 2 AM and you need diagnostic logs, you don't want to be scrambling to configure an SFTP endpoint. Same goes for firmware hosting. have a server ready, credentials provisioned, URLs tested.
| Do | Don't |
|---|---|
| Schedule firmware updates during off-peak | Push during busy hours |
| Test on one unit, then small batch, then fleet | YOLO the entire fleet at once |
| Verify new version via BootNotification | Assume it worked |
| Use HTTPS/SFTP for file transfers | Use plain FTP in production |
| Parse and index diagnostic logs centrally | Let .tar.gz files pile up unread |
Firmware and diagnostics aren't the exciting part of OCPP. But they're the part that determines whether you can manage a fleet of chargers from a desk or whether you need a van and a USB stick.