Chrome or Edge, with the bench ST-Link plugged in.
Starting…
Chrome or Edge, with the bench ST-Link plugged in.
A chip comes off stock when it is programmed for the first time. Reflashing a board that already exists does not, and a flash that fails does not.
Add delivery for chips that arrived. Adjust corrects the number after a physical count — it takes a negative quantity too.
A chip counts once, the first time it is programmed. Everything after that is the same board coming back.
Deliveries and corrections. The one-a-flash draw-downs are in Logs.
Turn this on if the board's firmware sleeps, reboots in a loop or takes over the SWD pins. Otherwise connecting fails at random.
The board is detected automatically — just swap it.
Every board is erased, programmed, verified, then locked at RDP level 1. Locking is not optional: it is what stops the firmware being read back off a finished board. Getting a locked chip open again wipes it.
Download gives an admin back what was published — .hex as
uploaded, or .bin for the flat image. Every download is recorded
in the logs under your name; an operator account cannot do it at all.
Make a name once (e.g. tublur inverter), then upload .hex
versions into it. It is created on this page's channel.
Choose the firmware, pick its .hex, and it becomes the current
version to flash. The version number is generated automatically —
v1, v2, v3… The file is checked against the STM32G070CB here and stored in
the database; it is never written to disk and never handed to an operator
except as raw bytes during a flash.
PCROP makes this flash area execute-only: no tool, and not the firmware itself, can read it. Leave both empty for none. The STM32G070 has no PCROP — only parts such as the STM32G071 do; on a G070 the Windows app refuses a PCROP firmware before erasing anything. Only use it for firmware built for it (that code compiled execute-only, no constants in the area) — otherwise the boards will not run. First and last byte, in 512-byte blocks (start …000/…200, end …1FF/…3FF). It is set with RDP 1 at lock time, and unlocking a board wipes it, so boards can still be reflashed. Firmware with PCROP flashes only from the Windows app. Pre-filled from the current version.
Everyone signs a machine in once with their email and password, then chooses a 4-digit PIN; every time the app is opened after that, the PIN is what unlocks it.
A bench asks to be enrolled — the Windows app by itself, a browser when an operator signs in on a computer that is not approved yet. Approve signs the Windows app's certificate, or lets that browser flash, and records the network it is on. If it later turns up on a different network it is held as needs re-approval and cannot flash until you accept the move. Revoke is permanent for that certificate; Allow re-enrol lets the same PC request access again with a new one, which you approve as usual. Windows app only stops the browser flasher on that bench, so firmware only reaches it encrypted.
Benches update to the offered version: after sign-in and every 4 hours,
the app shows an Update button. By default that is the newest signed version;
Offer to benches fixes it to the one you choose, for example to hold
back a new build until it is tested. A bench only ever moves up — one already
on a newer version stays there; install an older one by hand to go back.
With Only the offered version may flash on, a bench on an older
version is refused at its next flash and updates itself (or shows its
Update button) before it can flash again.
Upload the installer and its .sig together; the server refuses
anything not signed with the release key.
The version each approved Windows bench is running, as the app last reported it. Apps older than 0.3.11 do not report their version, so they show not reported until they update.
An operator flashes boards. An admin can also publish firmware, manage accounts, move stock and read the audit trail.
They sign in with this email and password (8+ characters). It cannot be read back afterwards — give it to them now, and they can be sent a new one from this page at any time.
Lets this operator reach the Dev flash page and put test firmware on a board. Leave it off for anyone working a shipping line. An admin always has it.