skysilver

<<< Назад

WiFi-информер на светодиодных матрицах MAX7219 и ESP8266. Часть 1.

Многофункциональный информер в DIY-корпусе по мотивам статей от Jager.

Начитался постов пользователя Jager и решил повторить предлагаемое им решение.

Ссылки для вдохновения и просвещения:

Итоговый функционал информера:

  • отображение времени и даты;
  • синхронизация времени и даты по сети от NTP-сервера;
  • отображение произвольной цифровой и текстовой информации по команде от MajorDoMo;
  • возможность статичного вывода и бегущей строкой;
  • регулировка яркости индикатора;
  • встроенный web-интерфейс для настройки;
  • возможность подключения разных датчиков (освещенности, температуры, влажности, давления и пр.)

00

В основе лежит МК ESP8266 в виде шилда WeMos D1 Mini, 4 светодиодных матрицы MAX7219 (на одной плате).
Также добавил датчик температуры DS18B20 и датчик влажности AM2301, т. к. валялись без дела. Практической пользы от них при таком размещении, конечно, почти нет, т. к. идет дополнительный нагрев внутри корпуса, но выкидывать тоже жалко.

Все комплектующие покупал на Aliexpress. Ссылки даю для примера. Вариантов там масса.
MAX7219 тыц
WeMos D1 Mini тыц

Управляется все это хозяйство прошивкой wifi-iot. Писать свою, или разбираться с другими было крайне лениво.

Весь процесс создания можно поделить на три этапа:

  1. Прототип.
  2. Корпус и сборка.
  3. Интеграция с MajorDoMo.

Прототип собрал "на коленках" с помощью dupont проводов и макетки.
01
В конструкторе wifi-iot отметил нужные опции, сформировал файл с прошивкой и залил его в ESP8266.
Ключевые опции:

  • MAX7219
  • Конструктор строк
  • Русский шрифт
  • Время и NTP
  • Поддержка календаря
  • MajorDoMo и другие

02

После запуска и подключения к домашнему WiFi заходим в админку ESP8266 и настраиваем:

  • указываем часовой пояс и NTP-сервер для синхронизации времени;
  • вписываем IP адрес сервера MajorDoMo и период отправки на него данных;
  • при необходимости включаем нужные сенсоры;
  • указываем GPIO, к которым подключен шилд MAX7219 и число матриц в нем (4 штуки);
  • включаем бегущую строку и задаем ее интервал запуска и скорость прокрутки;
  • в конструкторе строк настраиваем нужный шаблон бегущей строки.

03

04

Отправку сообщений на информер проверяем с помощью обычного браузера, просто открыв в нем ссылку вида:

http://192.168.2.4/matrixmsg?txt=хай&shift=0

где
192.168.2.4 - IP-адрес ESP8266;
txt - сообщение, которое нужно отобразить;
shift - скорость бегущей строки в мс (0 - бегущая строка выключена, просто статичный вывод).

Для изменения яркости дисплея используется такой запрос:

http://192.168.2.4/matrixbr?mode=X

где X - число от 0 (минимальная яркость) до 15 (максимальная яркость).

На этом первый этап (прототипирования) считаем завершенным.

Продолжение следует...

Обсуждение (3) (18)

Смотрите так же:
26.02.2019 Экспорт графиков в PNG-файл в модуле Charts
26.01.2019 Мультисерийный кастомный график в модуле Charts
30.12.2018 Личные итоги 2018 года
13.12.2018 График с цветовой индикацией выхода величины за пределы
12.11.2018 Кастомный график в модуле Charts
15.08.2018 Кронштейн NB F120 (North Bayou)
18.07.2018 WiFi-информер на светодиодных матрицах MAX7219 и ESP8266. Часть 3.
20.06.2018 WiFi-информер на светодиодных матрицах MAX7219 и ESP8266. Часть 2.
20.05.2018 Кросс-компиляция ядра для Banana Pi M2U
14.05.2018 Ссылки на ресурсы по MajorDoMo
02.03.2018 Знакомство и тестирование Banana Pi M2U
21.02.2018 Распаковка Banana Pi M2U
14.02.2018 Одноплатный ПК для MajorDoMo
14.08.2018 Заметки по железу
23.01.2018 Мой взгляд на вопрос голосового управления в MajorDoMo
17.01.2018 Обзор цен на устройства Xiaomi
24.12.2017 Гирлянда на ESP8266 и WS2812
20.12.2017 Блог им. skysilver

Киров, Россия

На форуме: skysilver

Веб-сайт:
http://connect.smartliving.ru/profile/461