• Any Espruino board is perfectly fine for that...

    For communication you can chose:

    1. USB (serial over USB) using Espruino Web IDE - tethered
    2. Wifi
    3. BLE (Bluetooth Low Energy)

    For projects that needed control from outside I preferred so far Wifi... because I create a Web server and need only a browser on a device w/ WiFi access...

    With Wifi, Espruino-WiFi is a convenient way to have all done. Espruino Pico combined some ESP8266 board for the Wifi works as well.

    I do not know what you have to display on your 11x6 (?) matrix on each of the sides - I assume numbers? - or graphics? Both of them are easy to implement by smartly arranging and wiring your pixel strings.

    Board choices in respect to communication:

    1. USB: Espruino Pico, Espruino Original, Espruino-Wifi (can also use USB for control)
    2. Wifi: Espruino-Wifi, Espruino Pico or Espruino Original w/ a ESP8266 for WiFi
    3. BLE: Espruino MDBT42Q BLE Breakout, Espruino Pixl, Espruino Puck

    All boards have the capability and capacity to do the job

    Take a look at these conversations:

    In the first example I used custom coding of the pixl strings. In the second I used Espruino's Graphics object and related printing/drawing functions. Latter makes it much easier to get the job done.

    Applying the Graphics object for your case would mean that - assumed you have 11x6 matrix on each of the U sides - you place 6 rows of each 33 (3 x 11) pixl string zig-zag connected around your U sides and look at your graphics as a 33 cols x 6 rows dot graphic display (You could also create three (3) 11x6 graphics objects... pros and cons can be discussed at a later point in time).


    • 0,0 to 10,5 represents the first (left) side
    • 11,0 to 21,5 represents the second / front / bottom 'side'
    • 22,0 to 32,5 represents the third (right) side

    Writing/drawing then happens by positioning into the respective area, for example (with an appropriate 6x6 font:

    • g.setColor(...); g.drawString("00", 0+0, 0) - show "00" on left
    • g.setColor(...); g.drawString("XY", 22+0, 0) - show "XY" on right

    Drawing writes into a graphics buffer. A change or schedule triggered background 'process' then pushes the graphics buffer out onto 'the' string. All code is available in second linked example.

    Btw, to consider simplicity and legibility for what ever you plan t display, choose enough LEDs... I would go for a 36 (=3x12) x 6..8 setup... it's an additional 80 pixels, but buying them by the meter as single string is very affordable. Cutting them into as many rows you need and wiring them accordingly is what I suggest.

    For controlling via Web Server on display / Web Page in Browser using WiFi, take a look at this conversation about Espruino-Wifi controls a STOKYS robot train engine, G Scale. Not a very elaborate UI, but you get the pic...

    Can you share a little more about the technical details, such as layout, content to display, colors used, frequency of updates, control / user interface, control actions?...

    Btw, what is you JS literacy and in what application / biz filed - if I'm allowed to ask?


Avatar for allObjects @allObjects started