Большинство современных плат микроконтроллеров используют Python, чаще MicroPython или CircuitPython. Тем, кто хочет более лёгковесное решение, но не готов отказываться от REPL и отсутствия компиляции, стоит присмотреться к Lua.
Однако большинство плат не ориентированы на Lua, даже если на них можно его запустить.
Этот пробел и пытается заполнить BrisbaneSilicon, небольшая полупроводниковая компания из Брисбена, своей платой ELM11-Feather. Это плата, совместимая с форм-фактором Feather и исполняющая Lua нативно.
Фактически это версия в форм-факторе Feather более ранней платы ELM11 от той же компании, и сейчас на Crowd Supply запущена краудфандинговая кампания.
Ключевые характеристики

- Поддерживаемые языки: Lua (уровень приложений), C (драйверы), SystemVerilog/VHDL (аппаратура), всё на одной плате
- Чип: GOWIN FPGA (отдельного процессорного ядра нет, ПЛИС исполняет всё)
- Ввод-вывод: 23 контакта, каждый можно настроить как GPIO, PWM, UART, SPI или I²C
- ОЗУ: 1 МБ
- Размеры: 22.86 × 64.65 × 4.85 мм (0.9 × 2.54 × 0.191 дюйма)
- Вес: 5.2 г
- Форм-фактор: совместим с Feather, работает с существующими модулями FeatherWings
Цена ELM11-Feather — 39 долларов.
Но главная изюминка не столько в характеристиках, сколько в архитектуре. На плате нет традиционного микроконтроллера. Вместо него работает ПЛИС GOWIN с двухъядерной конфигурацией, где на каждом ядре запущен независимый REPL Lua. В этом и состоит хитрость. Благодаря тому, что Lua исполняется на ПЛИС, а не на фиксированном МК, BrisbaneSilicon может открыть пользователю для модификации весь стек, включая аппаратный уровень.
Каждый из 23 контактов можно настроить как GPIO, PWM, UART, SPI или I²C, что даёт гораздо больше гибкости по сравнению с платами, где зашито фиксированное количество интерфейсов каждого типа. Также на плате есть 1 МБ ОЗУ, аппаратный сторожевой таймер, 5 программируемых светодиодов и встроенный контроллер заряда LiPoly на 500 мА с индикатором. Всё это умещается в компактном корпусе Feather (22.86 × 64.65 × 4.85 мм, вес 5.2 г). Совместимость с Feather означает, что плата без доработок устанавливается в экосистему дополнительных модулей FeatherWing.
Полноценная программируемость стека
BrisbaneSilicon называет это “Full-Stack Programmability”, и это ключевое преимущество платы. Задумка в том, что один и тот же продукт можно расширять сразу на трёх уровнях: прикладной уровень работает на Lua, уровень драйверов — на C, а аппаратный уровень — на VHDL/SystemVerilog через подключаемый “аппаратный оверлей”.
На практике это означает, что пользователь может разработать собственный аппаратный модуль (например, квадратурный энкодер), написать для него драйвер на C, а затем использовать его в скриптах Lua как простую функцию quadrature_encoder_speed(). При этом для каждого уровня не требуется отдельный инструментарий, потому что собственная среда разработки BrisbaneSilicon, Arvore, построена так, чтобы объединить все три.

BrisbaneSilicon сообщает, что аппаратные схемы и API прошивки будут опубликованы под лицензией MIT после завершения кампании и начала производства.
В сравнении с несколькими другими платами из той же категории:
- pico2-ice (RP2350 + ICE40UP5K): больше GPIO и ОЗУ, но нет встроенного скриптового языка, а цена выше.
- Adafruit Feather STM32F405: дешевле, но нет ПЛИС и возможности расширения на аппаратном уровне.
- Adafruit HUZZAH32 (ESP32): лучшее время автономной работы, но значительно меньше вариантов ввода-вывода и отсутствует сквозной конвейер от скриптов до аппаратуры.
Цена и доступность

Плата стоит 39 долларов. Стоимость доставки пока не указана, как и точная дата отправки. Компания сообщает, что уже изготовила и протестировала небольшую партию из 5 плат до начала основного производства, что даёт чуть больше уверенности, чем обычно на старте кампаний. Единственный риск, отмеченный разработчиками, связан с доступностью компонентов GOWIN FPGA и чипа BL702.






Пока нет комментариев. Будьте первым!