Repository navigation
Flashing labels
Each label is flashed once over its test pads, in the jig. After that it takes new firmware over the air.
- The jig with a D1 mini running ZBS_Flasher, plugged in by USB. Building the flasher shows how to build and wire it.
- Chrome or Edge on a computer.
- The label with its battery taken out, so the test pads are free.
The Flash tag tab is a guide in steps, like the one for the AP:
-
Choose tag. Pick the label model from the photos. The firmware is the page's own, or a
.binfile. A model marked experimental (the 2.9" red) has not been tried on a real label: flash one and check it first. - Connect flasher. Press Connect flasher and pick the D1 mini's port.
- Flash. Put the label in the jig and press Flash tag. The page reads the label's MAC, backs up the whole original firmware in the browser (Label backups), writes the MAC to the info page if needed, then writes OpenESL and reads it back to check it. Each label gets a row with its MAC, barcode and result.
- Done. How many were flashed, and a button to export the new backups. Keep them somewhere safe.
Take the label out, put the battery back, and it shows its start screen with its MAC and firmware version.
With Keep going on, the page waits for the next label after each one, so you can do a stack in a row.
If an earlier build wiped the label's MAC, the page asks for the barcode on its sticker or its MAC, and flashes it again with it. To get a label's MAC from its barcode number: esl_client.py mac 020663461013.
flash-tui does the same steps in a terminal, with auto-detect: it flashes as soon as a label answers in the jig.
python tools/flash-tui/flash_tui.pyThe label looks for the AP and polls it about once a minute. It turns up on the Dashboard at its first poll. If it finds no AP it shows "No AP found" after two hours and tries again less often to save battery. A label that already shows content keeps it, with a small crossed-out signal mark in the top right corner instead.
Labels flashed with very old firmware (before 0.3.0) have no bootloader for updates over the air and need one more pass in the jig.
OpenESL is released under the MIT licence. These pages are made from the wiki/ folder in the repository: to fix something, send a pull request there, or open an issue.
Getting started
Access point
Labels
Layouts
Sending content
- Overview
- HTTP API
- esl-client
- Price lists from CSV
- Scheduled prices
- Home Assistant
- Weather on a label
Running it
- Dashboard
- Health and webhook
- Updating the AP
- Updating labels
- Upgrading from older versions
- Backup and restore
- Moving to a new AP
Help
Developers