A lot of brick-and-mortar retail chains have made the switch to electronic shelf labels (ESLs) in recent years. Older ESL designs had LCD screens, but most modern ESLs take advantage of E Ink screens. Because E Ink screens only consume power when refreshing the display, they’re a perfect choice for this application. Retailers don’t need to update the tags often, so the tag batteries last a very long time. Each tag can remain in a “deep sleep” state until the retailer wirelessly updates the label information. Raphael Baron found a set of 25 of the ESLs on eBay and used their unique hardware to create this large display.
In a retail store, management can update each ESL with a wireless configuration device. Different ESLs utilize different protocols. Each of Baron’s ESLs contains a Telink TLSR8359 SoC that has onboard BLE (Bluetooth Low Energy) connectivity. The BLE connection would let management update the labels one at a time. But Baron wanted to update all of the ESLs at the same time so that they would work as a single display. Connecting to each ESL, or “node” in Baron’s terminology, through BLE consecutively would take a long time. Fortunately, the TLSR8359 SoC also contains a standard UART serial port.
Baron used the UART ports to daisy-chain 20 nodes together. He connects to the first node via BLE to send the text. Node 0 then transmits data to Node 1 through UART. Node 1 then does the same for Node 2, and so on. Not only does this improve transmission time, it also reduces the power consumption for the 19 nodes that don’t need to turn on their BLE radios. Implementing that functionality was not a trivial task and Baron spent a lot of time programming the SoCs to make this work. The nitty-gritty details of the code and Baron’s reverse-engineering process are available in his post.
The 20 nodes slide into a 3D-printed frame in two rows of ten screens each. Baron hand-wired the UART connections between the nodes using a nifty 3D-printed spool to measure out the proper wire lengths. The original ESLs each had their own battery, but Baron switched to powering all of them with a pair of AA batteries. That will make it easier to replace the batteries in the future and eliminates the need for charging.
To tidy everything up, Baron enclosed the entire device in a simple wood box. He laser-cut that box’s panels from composite wood sheet. The front panel has cutouts framing each ESL's E Ink screen. The only other external feature is a programming header that Baron can utilize in the future if he ever needs to update the firmware. The result in a minimalist display made up of 20 individual screens, each of which displays a single character of a message.