Перейти к содержанию

ESPHome-TRMNL 7.5"

Файлы

Creality Cloud github ☕︎ Угостить автора чашечкой чая 🡥


Описание

Это экран на электронных чернилах на прошивке esphome​ для отображения информации с вашего сервера inker и управляемый Home Assistant.

img

  • INKER - создавайте экраны без единой строчки кода

img

  • Интеграция с Home Assistant

    • Связь по MQTT: Мгновенный обмен данными с вашим сервером.
    • Энергоэффективность и логика: Экран "понимает", когда вас нет дома или в комнате, и приостанавливает обновления для экономии ресурса.
    • Мощь ESPHome: Благодаря прошивке (ESPHome), устройство поддерживает подключение огромного количества дополнительных датчиков.
  • Корпус:

    • Компактность и стиль: Минималистичный корпус (175.6 x 116.6 x 11.25 мм) с узкими рамками, где всё внимание сосредоточено на экране.
    • Эргономика: Удобные кнопки расположены на виду — вам больше не придется нащупывать их на задней панели.
    • Три варианта размещения: ножка(настольное), подвес (настенное), магниты (настенное)
    • Легкая сборка: Корпус собирается на надежных защелках — никаких лишних винтов и сложного монтажа.

Компоненты

Компонент Ссылка шт Примечание
ePaper дисплей 7.5" ePaper дисплей 7.5 ePaper дисплей 7.5 bp Aliexpress 1 Это 3-цветный B/W/R дисплей но использовать получится только B/W из за нехватки оперативной памяти.
поддерживаемые дисплеи
Предельные размеры экрана 171.20 x 112.20x 1.50, mm
USB C штекер USB C штекер Aliexpress 1
USB C разъем USB C разъем Aliexpress 1
Ползунковые переключатель TLZWLA SS12F15VG4 Ползунковые переключатели Aliexpress 1
Тактовая кнопка 6X6X10 img Aliexpress 1
Контроллер Waveshare E-Paper ESP32 Driver Board (V3) img Aliexpress 1
Батарея li-ion 1 Максимальная толщина 7.4 мм. При обновлении раз в час, аккумулятора на 1400 mAh (5.18 Wh) хватает примерно на месяц работы
Модуль зарядки TP4056 img Aliexpress 1
Резистор 100 кОм 2
Неодимовый магнит 8x3mm img 5 5 магнитов надежно удерживают 150 г дисплей на металлической двери
Клей T-7000/B-7000 1

Схема

img

ссылка на проект

Сборка

img

  1. Установите переключатель №1 на ESP32 в положение A.

img

  1. Установите переключатель №2 на ESP32 в положение «ON». Этот переключатель управляет питанием модуля UART через USB. Когда модуль не используется, вы можете вручную выключить его для экономии энергии (если переключатель 2 находится в положении «ВЫКЛ», загрузить программу невозможно).

  2. Удалите красный светодиод PWR с Waveshare E-Paper ESP32 Driver Board для экономии энергии

  3. Чтобы сделать плату драйвера ESP32 тоньше, отпаяйте контакты на её нижней стороне. (Совет: сначала поднимите и снимите пластик между контактами с помощью отвёртки).

  4. Нанесите клей T-7000/B-7000 в райне магнитов что бы корпус не скользил по гладкой металлической поверхности

Установка прошивки

  1. Установите ESPHome Device Builder
    Откройте свой экземпляр Home Assistant и отобразите панель управления дополнения.

  2. Скачайте конфигурационный файл esphome-trmnl.yaml и измените значения на свои

Переменная Значение Описание
fw_version 1.0.1 esphome-trmnl Версия прошивки
server_url http://192.168.1.123:80 URL-адрес сервера Inker
mqtt_broker_ip 192.168.1.100 IP-адрес брокера Mosquitto
manual_ip_static_ip 192.168.1.222 Статический IP-адрес дисплея
manual_ip_gateway 192.168.1.1 Шлюз локальной сети
manual_ip_subnet 255.255.255.0 Подсеть локальной сети
name trmnl Системное имя устройства (строчные буквы, цифры, дефис, до 24 симв.)
friendly_name TRMNL Имя в интерфейсе Home Assistant
model 7.50in-bV3 Модель e-ink дисплея
wifi_output_power 8.5dB Мощность передачи Wi-Fi (от 8.5 до 20.5 dB)
img_type BINARY Способ внутреннего кодирования изображения
img_format PNG Формат, в котором закодировано изображение.
img_url_setup_logo http://raw.github.../setup-logo.bmp Изображение заглушка
deep_sleep_delay 1000ms Задержка перед переходом в сон
sleep_time 3600 Время сна по умолчанию (сек.)
error_sleep_duration 1200 Время сна при возникновении ошибки (сек.)
reset_duration 200 ms Длительность операции сброса дисплея
wifi_connect_delay 15s Таймаут ожидания подключения к Wi-Fi
mqtt_connect_delay 500ms Задержка после успешного подключения к MQTT
status_led GPIO2 Пин светодиода статуса (закомментировано)
button GPIO32 Пин кнопки управления
adc_pin GPIO34 Пин АЦП (для мониторинга батареи)
deep_sleep_pin GPIO32 Пин для пробуждения из глубокого сна
clk_pin GPIO13 SPI Clock пин
mosi_pin GPIO14 SPI MOSI пин
cs_pin GPIO15 SPI Chip Select пин
dc_pin GPIO27 Data/Command пин
busy_pin GPIO25 Busy пин (Для предотвращения необратимого повреждения дисплея необходимо инвертировать контакт BUSY на моделях gdew0154m09, Waveshare 7.30in-f и Waveshare 7.50in V2 (и наверно на V3 и других новых моделях). Установите для контакта busy значение inverted: true в настройках)
reset_pin GPIO26 Пин аппаратного сброса дисплея
  1. Добавьте в secrets.yaml ESPHome
    mqtt_password: #пароль для подключения к MQTT
    wifi_ssid: #имя вашей wifi сети
    wifi_password #пароль вашей wifi сети
    
  2. Загрузите отредактированный yaml в ESPHome и установите прошивку на ESP32

Настройка Home Assistant

  1. Установите Inker

  2. Установите Mosquitto broker
    Открыть панель Mosquitto broker в вашем Home Assistant.

  3. На вкладке "Конфигурация" Mosquitto broker введите "name" и "mqtt_password" которые вы использовали в прошивке

  4. Установите интеграцию MQTT
    MQTT

  5. Включите экран, и он должен появится в интеграции MQTT

  6. Установите blueprint
    Open in Home Assistant

Угостите автора чашечкой чая ☕︎

Калибровка сенсора напряжения батареи (Калибровка АЦП)

  1. Запишите показания при напряжение акб 4.20, 4.19, 3.75, 3.50 и 3.00 V.

  2. Впишите данные в фильтр. Слева от (->) напряжение акб, справа напряжение измеренное мультиметром

        sensor:
      - platform: adc
        ...
        id: battery_voltage
        ...
           - calibrate_linear:
               - 3.00 -> 3.12
               - 3.50 -> 3.51
               - 3.75 -> 3.79
               - 4.19 -> 4.19
               - 4.20 -> 4.21
        on_value:
          - text_sensor.template.publish:
              id: battery_voltage_text
              state: !lambda 'return str_sprintf("%.2f", x).c_str();'
    

Помогите! Что-то не работает.

  • Некорректное отображение: если качество изображения низкое или устройство не работает, попробуйте переключить переключатель №1 на ESP32.

  • Ничего не работает -> откройте web.esphome.io и подключите панель через usb и посмотрите логи.

  • Esphome не обновлялся но перестал собирать рабочую прошивку: удалите папки C:\Users\name_user.platformio и .esphome\build

Поделитесь с друзьями
Ссылка скопирована!

Подписывайтесь в Telegram