Skip to content

Firmware updates

Power Manifold checks for new firmware once a day. It installs an update only when you start the installation.

When a new release is out, Home Assistant’s Firmware update entity shows update available. Press Install.

Without Home Assistant, you can push the update file yourself with the HTTP API.

  1. The new firmware downloads next to the one that’s running. The running firmware is kept.

  2. The controller restarts into the new firmware. Your ports stay on. Devices keep their power while the controller restarts.

  3. The new firmware is on trial. It must run properly for ten seconds and connect to the network. Then it becomes the installed version.

  4. If it doesn’t, the controller goes back to the previous firmware by itself, with your settings as they were. If it fails within ten minutes or restarts unexpectedly, it reverts too.

While the controller restarts, the blades keep running with the limits they had and their own protection. Power sharing and fault handling resume once the controller is back, after a few seconds.

The new firmware runs on trial. Once it has run properly for ten seconds and reached the network, it is kept. Only then are the blades brought up to date.

1Download2Restart3Trial4KeptController0.12.0 runningA few seconds0.13.0 on trial: 10 s healthy, network up0.13.0 installedPortsOn the whole time: devices keep their powerBladesUnchangedUpdated as each port goes idle

If the new firmware restarts, crashes or hasn’t passed within ten minutes, the controller goes back to the firmware it had, with your settings as they were. The blades were never touched.

1Download2Restart3Trial4Restart5BackController0.12.0 runningA few seconds0.13.0 on trial: crashes, or 10 min passA few seconds0.12.0 running, settings as they werePortsOn the whole time: devices keep their powerBladesUnchanged

A blade waits until its port has nothing to power. Here a phone is unplugged; ten seconds later the blade updates, which takes a few seconds, then starts up and is ready again. At power-up the same happens before the port comes on.

1Charging a phone2Unplugged3Updating4Starting up5ReadyPort lightGreenWhite, for 10 sOffCyan, blinkingWhiteWeb interfaceDelivering 9 VReadyUpdating 0–100%DetectingReadyOther portsUnaffected

The blades have their own firmware, and the controller carries the version that goes with it. You don’t need to do anything. After a controller update the controller brings each blade up to date by itself, but only when its port is not in use:

  • when the chassis is switched on, before the port powers up;
  • when its port has had nothing plugged in for ten seconds.

A port that is powering a device is never interrupted for a blade update. It waits until the device is unplugged, which could be days for a Raspberry Pi. Updating a blade takes a few seconds. Its light is off while it happens, and its state shows updating with a percentage.

Every release is signed. The controller only installs firmware that is signed by this project, built for this hardware, and not older than what it is running. Because of that, the download doesn’t need to be encrypted. Updates come from fw.powermanifold.io, which serves the project’s GitHub releases.

GitHub releasesSigned by the project
fw.powermanifold.ioPasses them on
Power ManifoldChecks daily, installs when you say