Inky Impression на Pi Pico Plus 2 W, работающий от батареи — отличная идея, но на программном обеспечении большинство создателей проектов застревают. Цикл обновления, который занимает 25 секунд и потребляет два ампера, разряжает LiPo за выходные. Мы изучили семь инструментов, которые помогают соблюдать энергетический бюджет, но при этом обеспечивают полноценный дашбоард, от IDE Python, которые упрощают глубокий сон, до серверов дашбоардов, которые генерируют кадры, которые может перерисовать маломощный дисплей.
На что обратить внимание при выборе стека разработки для e-ink
Батарейные e-ink проекты имеют специфический набор ограничений, и выбранные вами инструменты либо помогают вам их соблюдать, либо препятствуют.
- Поддержка глубокого сна на целевом микроконтроллере, а не просто “сна”, который оставляет периферийные устройства включенными
- Кросс-компиляция с полного компьютера, где отладка приемлема, а не крошечные экраны через серийный порт
- Способ отрендеривать кадры дашбоарда на сервере, чтобы Pico только обрабатывал цикл пробуждения и рисования
- Поддержка точного режима обновления дисплея (частичное или полное) для сокращения времени пробуждения
- Рабочий процесс, который выживает при перезагрузке устройства, чтобы кадр восстановился после сбоя
- Открытый исходный код, потому что вам рано или поздно придется читать код драйвера
Быстрое сравнение
| Инструмент | Лучше всего для | Платформы | Бесплатно | Стартовая цена | Примечания |
|---|---|---|---|---|---|
| Thonny | MicroPython новичков на Pi Pico | Windows, macOS, Linux | Да | Бесплатно | Открытый исходный код |
| Arduino IDE | C++ сборка на ESP32/RP2040 | Windows, macOS, Linux | Да | Бесплатно | Открытый исходный код |
| PlatformIO | Серьезная кросс-платформенная работа в VS Code | Windows, macOS, Linux | Да | $15/мес (команды) | Открытое ядро |
| MicroPython | Среда выполнения, на которой работает всё | Работает на устройстве | Да | Бесплатно | Лицензия MIT |
| Home Assistant | Обслуживание кадров с домашнего сервера | Работает на сервере | Да | Бесплатно (Green от ~$99 оборудования) | Открытый исходный код |
| MagicMirror² | Готовый модульный дашбоард | Работает на сервере | Да | Бесплатно | Лицензия MIT |
| Node-RED | Подключение данных датчиков к кадрам дисплея | Работает на сервере | Да | Бесплатно | Apache 2.0 |
1. Thonny, лучше всего для MicroPython на Pi Pico
Thonny — это IDE, с которой начинаются проекты Pi Pico, и это справедливо. Она загружает прошивку MicroPython, открывает REPL на плате и позволяет сохранять main.py прямо на устройство без этапа сборки. Для e-ink проекта важная деталь — Thonny легко позволяет использовать machine.lightsleep(seconds * 1000) и machine.deepsleep(...), пока отладчик остается подключенным на стороне хоста, поэтому вы можете итерировать логику пробуждения без извлечения USB каждый раз. Панель графиков — хороший бонус для отслеживания напряжения батареи.
Где она уступает: Нет правильного C++ набора инструментов, поэтому если ваш проект перерастет MicroPython, вам придется переехать. Отладка после жесткого сбоя по-прежнему означает чтение трассировки исключения вручную.
Цена: Бесплатно, лицензия MIT. Нет платного уровня.
Платформы: Windows, macOS, Linux.
Нижняя строка: Начните отсюда. Если ваш проект останется на Python, вам никогда не придется уходить.
2. Arduino IDE, лучше всего для C++ на ESP32 и RP2040
Arduino IDE — это самый быстрый способ скомпилировать прошивку Pico e-ink на C++ и получить размер менее 40 кБ. Для Inky Impression специально библиотеки Arduino_GFX и GxEPD2 охватывают большую часть линейки дисплеев Pimoroni, и вы получаете настоящие прерывания и DMA для более быстрого подталкивания кадров, чем может управлять MicroPython. Менеджер плат вносит ядро Earle Philhower для Pico, которое вам нужно, если вам важна коэкзистенция USB и Wi-Fi на Pico W и Pico Plus 2 W.
Где он уступает: Редактор базовый по стандартам 2026 года. Последовательный монитор нормальный, но любой серьезный рефакторинг выталкивает вас.
Цена: Бесплатно.
Платформы: Windows, macOS, Linux.
Скачать: Arduino IDE | GitHub (arduino-ide)
Нижняя строка: Выберите это, если вам нужна последняя миля жизни батареи и вам комфортно на C++.
3. PlatformIO, лучше всего для правильной структуры проекта
PlatformIO живет внутри VS Code и рассматривает работу с микроконтроллерами как нормальное программное обеспечение: platformio.ini, папка src/, файл блокировки для версий библиотек. Для e-ink дашбоарда, который забирает отрендеренный кадр через Wi-Fi, управление зависимостями PlatformIO держит GxEPD2, стек Wi-Fi и HTTP-клиент на версиях, которые действительно компилируются вместе, что является тем несчастьем, которое Arduino IDE передает вам при обновлении ядра. Он нацелен как на RP2040, так и на ESP32-C6 из одной конфигурации.
Где он уступает: Реестр меньше, чем в Arduino, и несколько специфических для Pimoroni библиотек нуждаются в URL-адресе lib_deps git вместо пакета.
Цена: Бесплатное открытое ядро. PlatformIO Labs (организационные дашбоарды, инсайты RTOS) начинаются с $15 за место в месяц.
Платформы: Windows, macOS, Linux (через VS Code).
Скачать: PlatformIO | VS Code Marketplace
Нижняя строка: Правильный выбор, когда ваша прошивка имеет больше одного файла.
4. MicroPython, среда выполнения, стоящая вложения
MicroPython — это не приложение, это среда выполнения, которая превращает Pi Pico в то, для чего вы пишете скрипты. Порт Pico Plus 2 W поддерживает Wi-Fi через network.WLAN, HTTPS через urequests и запись буфера кадра достаточно быстро для частичного обновления на Inky pHAT. Функции глубокого сна действительно снижают ток ниже 1 мА на RP2350, что вам нужно на месяцы батареи. Форки сообщества добавляют Bluetooth LE и немного лучшее поведение файловой системы после коричневого сбоя.
Где он уступает: Запуск занимает пару секунд, что пожирает ваш энергетический бюджет при частых циклах пробуждения. Для обновления каждые 30 секунд C всё ещё ответ.
Цена: Бесплатно, лицензия MIT.
Платформы: Работает на устройстве.
Скачать: MicroPython | GitHub
Нижняя строка: Среда выполнения по умолчанию для чего-либо, работающего от батареи на RP2040 или RP2350.
5. Home Assistant, лучше всего для обслуживания кадра дашбоарда
Как только ваш Pico может забрать PNG через Wi-Fi и нарисовать его, вам нужно что-то на стороне сервера для создания этого PNG. Home Assistant — очевидный выбор, потому что у него уже есть данные датчиков, календарь и погода, которые вам, вероятно, нужны на дашбоарде. Его дашбоарды Lovelace могут быть сняты на скриншот на стороне сервера в разрешение, удобное для Pico, с использованием аддона browser_mod, или вы можете создать пользовательский шаблон, который отрендеривает точный PNG, который запрашивает Pico. Home Assistant Green делает это практичным без полной домашней лаборатории.
Где она уступает: Первоначальная настройка — реальная работа. Ожидайте полдня, прежде чем первый кадр приземлится на дисплей.
Цена: Бесплатное программное обеспечение. Home Assistant Green оборудование начинается примерно с $99. Облачный удаленный доступ Nabu Casa составляет $6,50 в месяц, если он вам нужен.
Платформы: Работает на любом сервере (Linux, macOS, Windows через Docker или на оборудовании Home Assistant Green / Yellow).
Скачать: Home Assistant | GitHub
Нижняя строка: Если вы уже запускаете Home Assistant, это кратчайший путь к хорошему дашбоарду.
6. MagicMirror², лучше всего, когда вы хотите готовый дашбоард
MagicMirror² был построен для двусторонних зеркал, но экосистема модулей, погода, календарь, транзит, новости, а также множество разовых модулей сообщества — это именно то, что нужно батарейному e-ink дисплею. Укажите headless Chromium на экземпляр MagicMirror, сделайте его скриншот в вашем целевом разрешении, пропустите его через дизеринг Флойда-Стейнберга, и у вас есть кадр, который Pico может нарисовать за шесть секунд. Макет в JSON, поэтому разные кадры Pico могут отрендеривать различные регионы одного и того же экземпляра.
Где он уступает: MagicMirror ожидает работать на 60 кадрах в секунду за стеклом. Получение чистого скриншота одного кадра требует небольшой оболочки headless-Chrome.
Цена: Бесплатно, лицензия MIT.
Платформы: Работает на Node.js на любом сервере. Также работает на Raspberry Pi OS.
Скачать: MagicMirror² | GitHub
Нижняя строка: Выберите это, если вы хотите работающий дашбоард к ужину и готовы написать скрипт для шага скриншота.
7. Node-RED, лучше всего для подключения потоков датчиков к кадру
Если ваш e-ink дисплей показывает что-то более пользовательское, чем “погода и календарь”, Node-RED — это место, где живет сантехника. Перетащите вход MQTT от датчиков, блок функции для преобразования, узел отрендеривания изображения для создания PNG и конечную точку HTTP, которую опрашивает Pico. Для батарейной сборки Node-RED также может выставить поле next_wake_seconds, которое Pico соблюдает, поэтому тихий период позволяет устройству спать дольше вместо опроса по фиксированному графику.
Где он уступает: Среда выполнения Node.js тяжелее, чем то, что вы будете запускать на Pi Zero, если это сервер. Предпочитайте его машине домашней лаборатории, а не тому же Pi, который хост дисплея.
Цена: Бесплатно, Apache 2.0. Node-RED Dashboard 2.0 также бесплатен.
Платформы: Любой хост Node.js (Linux, macOS, Windows). Хорошо работает на Raspberry Pi 4 или лучше.
Нижняя строка: Клей между данными датчика и кадром, который рисует ваш дисплей.
Как выбрать правильный инструмент
Если это ваш первый батарейный e-ink проект, установите Thonny и MicroPython на Pico, затем обслуживайте статический PNG с любого веб-сервера. Это кратчайший цикл к первому свету, и тот, на котором большинство проектов ломаются.
Как только дисплей работает, поместите дашбоард в Home Assistant, если вы уже его запускаете. Если нет, MagicMirror² устанавливается вечером, и библиотека модулей сделает большую часть того, что вам нужно.
Перейдите в Arduino IDE или PlatformIO только тогда, когда ваша версия MicroPython не может попасть в целевой сон. Это обычно происходит примерно при двухминутном интервале обновления на маленьком LiPo. Для более длительных интервалов Python в порядке и проще передать позже.
Node-RED входит в картину, когда кадр становится условным по живым данным, обнаружению присутствия, ценам энергии или семейному календарю с фильтрами для каждого человека. Ниже этой сложности это излишне.
Часто задаваемые вопросы
Может ли Pi Pico Plus 2 W действительно запустить Inky Impression от батареи?
Да, это именно то, что показала недавняя сборка XDA. Трюк не в Pico, это в токе обновления дисплея и интервале пробуждения. 7,3-дюймовое впечатление потребляет около 100 мА в течение шести или семи секунд во время полного обновления, затем снижается до микроампер. На 2000 мAh LiPo с 30-минутным обновлением вы смотрите на недели на один заряд.
Нужен ли мне Home Assistant, или MagicMirror² достаточно?
MagicMirror² достаточно для погоды, календаря, транзита и новостей. Добавьте Home Assistant, когда вы хотите, чтобы дисплей отражал физическое состояние, открыта ли дверь гаража, уехал ли последний человек, закончилась ли посудомоечная машина. Если вы уже запускаете Home Assistant, используйте его и пропустите MagicMirror².
Почему не запустить всё на самом Pi Pico?
Pico может отрендеривать простой текст и значки непосредственно, но в тот момент, когда вам нужен полностью стилизованный дашбоард, вы переиспользуете HTML и CSS на микроконтроллере. Предварительное отрендеривание PNG на надлежащей машине и наличие того, как Pico рисует его — это паттерн, который масштабируется.
Достаточно ли медлен MicroPython, чтобы иметь значение для срока службы батареи?
Запуск длится пару секунд, что имеет значение при коротких интервалах пробуждения. При интервале 15 минут или больше разница между MicroPython и C невидима на датчике батареи.
Какую библиотеку драйвера дисплея мне использовать?
Для большинства плат Pimoroni Inky официальная библиотека Pimoroni MicroPython охватывает всё. На C++ на Arduino или PlatformIO, GxEPD2 поддерживает самый широкий диапазон панелей с наименьшей суматохой.