ELM11: A Surprisingly Polished Dev Board for Lua
The ELM11 is a pretty nifty and useful Lua-based feather-type platform which, although new and evolving in terms of toolchains, already provided a surprisingly polished developer experience.
Made by BrisbaneSilicon, ELM stands for Embedded Lua Machine. Lua support means it’s more efficient than Python, in the familiar feather form factor. Powered by a GOWIN FPGA, ELM11 allows low-level control with multiple hardware overlays (more on those later).
The IDE grants a comprehensive and user-friendly solution to work with the board, though I still found myself feeling cool diving right in over serial to get things done over either its REPL or higher level CLI. The CLI (`cmd` or `command` in the REPL), gives auto-paginated and well-formatted interactions for interacting with device state, configurations, or onboard documentation.

The online documentation was generally efficient and easy to access for what I needed, though there were some caveats — those familiar with Lua might be surprised to learn the EMBLua dialect uses an `import` syntax for libraries, so to use a standard library function like `string.sub` one must explicitly `import(“string”,”sub”)`.
Lua itself feels particularly well oriented for the embedded world, and the system BrisbaneSilicon has laid out seems to showcase that well, as you can even change the underlying system between the Lua runtime and the hardware via uploadable hardware overlays and modules, enabling customized CPU frequency, pinout configurations, LED indicator behavior, and more.
If you asked me 5-10 years ago, I’d probably say Lua is a little niche. But given the rise of NeoVim and Roblox, I feel like there’s enough developers, particularly younger ones, who have experience with the language for it to be a welcome use.
I’ve interacted with a lot of poorly supported or documented boards before and it’s nice that Brisbane addresses those worries. That said, some of those previous experiences with other boards gradually became more poorly supported or documented over time. If BrisbaneSilicon keeps the course and can deal with any supply issues, I could see it making a mark for itself in the space.
With the $15 price and the effort that Brisbane has put in to make the development experience as good as it is, I could see it being in projects all over the place, especially in education or prototyping. Follow ELM11 on Crowd Supply to learn more.

Leave a Reply