На рисунке приведена универсальная распиновка для подключения E-INK дисплея к ESP8266 которая не нарушает сигналы инициализации и оставляет пины I2C для
подключения датчика (проверена для 4.2' дисплеев от Waveshare, WeAct и должна быть работоспособна для некоторых других производителей использующих тот же контроллер вывода - SSD1683 или UC8176).
Распиновка используется во всех вариантах схем и можно по ней сверятся или сохранить как памятку.
Оставшийся свободным пин D4 не должен быть в состоянии LOW при запуске устройва, но его все еще можно под что-нибудь использовать.
Инструкции по прошивке и настройке
Компоненты :
Перепрошивку можно осуществлять по USB без каких-то нюансов. Если вдруг слетят настройки или будут какие-то проблемы в инициализации отдельных параметров можно выполнить сброс через панель управления http://[IP адрес устройства] (Управление устройством -> Сбросить настройки)
Обновление прошивки можно выполнять по воздуху, через http://[IP адрес устройства]/update
Файла прошивки после компиляции в PlatformIO обычно сохраняется в директории проекта .pio\build\esp12e\firmware.bin
Компоненты :
Предварительно отключайте батарею ("Выключатель" на схеме) перед перепрошивкой по USB
- По умолчанию автономная версия проверяет отсутствие напряжения на контакте A0 (BAT_SENSOR) и если он разомкнут, то переходит в постоянный режим работы - подключается к WiFi сети и получает IP адрес для удаленного доступа и дальнейшей настройки \ прямого управления. IP адрес будет выведен на экран.
- Если вы используете версию ESP8266 отличную от D1 Mini, то внутренние защитные резисторы могут отличатся по номиналам, при необходимости можно скорректировать переменные в методе Env.cpp -> readBatteryV()
Обновление прошивки можно выполнить через веб-интрефейс (http://[IP адрес устройства]/update)
Для этого нужно переключить устройство в постоянный режим - размкнуть пин A0 (BAT_SENSOR) и перезагрузить. Файла прошивки после компиляции в PlatformIO обычно сохраняется в директории проекта .pio\build\esp12e\firmware.bin
Если такой вариант не подходит и требуется часто перепрошивать ESP8266 в процессе доработки и тестирования и чтобы случайно не подключить питание по USB, когда аккумулятор все еще питает ESP8266, можно вывести отдельно контакты RX \ TX \ GND и подключать устройство к компьютеру уже через них, с использованием отдельного преобразователя USB-COM (USB to TTL). В таком случае чтобы перевести ESP8266 в режим прошивки, нужно на время прошивки подключить пин D3 к GND, нажать RESET или выключить\включить по питанию, далее выполнить загрузку прошивки через PlatformIO.
Постоянное подключение к питанию на версиях с зарядным модулем TP4056 не рассматривалось, он вроде бы и не рассчитан на такое, рекомендуется в процессе зарядки полностью выключать девайс или добавить защиту ввиде 2-х диодов 1N5817 как это сделано например в проекте SlimeVR
Если устройство должно будет питатся постоянно от сети, можно вообще не использовать батарейку, в случае восстановления питания ESP8266 просто автоматически перезапустится и продолжит работу. А если хочется всетаки по какой-то причине использовать постоянно от сети и иметь резерв в виде аккума - то лучше поискать модули заряда, расчитаные на постоянное подключение к сети питания - например поиск по "Lithium battery charger ups power supply 5v 18650" выдает много готовых дешевых решений рассчитаных на постоянное питание от сети и с бекапом от аккумулятора. Плата получится чуть больше и нужно под нее соответственно подогнать корпус. Как показала практика особо заморачиватся в этом направлении пока не приходилось т.к. устройство и от обычно батарейки если оно работает в штатном режиме с переходами в сон хватает на несколько месяцев.
Страницы тех компонентов которые я использовал в сборке, с небольшими комментариями. Цены актуальны на 05.08.24, скриншоты приведены для точных названий товаров
USB-C разъем для версии корпуса-подставки