FirmwareStatusNotification

Reports progress of a firmware update, including signature verification results.

Version
OCPP 2.0.1
Direction
Charge Point → CSMS
Functional block
Firmware Management

FirmwareStatusNotification also exists in OCPP 1.6, with a different payload. See the OCPP 1.6 version.

Same role as in 1.6, with a larger status set covering signature checks and scheduled installs, plus a requestId correlating it to the UpdateFirmware that started it.

Request

FieldTypeRequiredDescription
statusFirmwareStatusEnumTypeRequiredThe current stage.
requestIdintegerOptionalThe UpdateFirmware request this relates to.
json
[2, "19223201", "FirmwareStatusNotification", {
  "requestId": 801,
  "status": "SignatureVerified"
}]

Response

No fields — the payload is an empty object {}.

json
[3, "19223201", {}]

Values

FirmwareStatusEnumType

ValueMeaning
IdleNo update in progress.
DownloadingDownloading.
DownloadedDownload complete.
DownloadFailedDownload failed.
DownloadScheduledDownload is scheduled for later.
DownloadPausedDownload paused.
SignatureVerifiedThe firmware signature checked out.
InvalidSignatureThe signature did not verify.
InstallingInstalling.
InstalledInstallation complete.
InstallationFailedInstallation failed.
InstallRebootingRebooting to complete installation.
InstallScheduledInstallation is scheduled for later.
InstallVerificationFailedPost-install verification failed.

Implementation notes

`InvalidSignature` is a security event, not just a failed update. It means something served firmware that did not come from the signing authority. Expect a SecurityEventNotification alongside it.

`Installed` is still not proof the new version runs. Confirm with the firmwareVersion in the BootNotification that follows.