GyverMatrixWiFi
GyverMatrixWiFi copied to clipboard
Матрица адресных светодиодов с WiFi
Адресная матрица на NodeMCU с управлением по WiFi
- Описание проекта
- Папки проекта
- Схемы подключения
- Материалы и компоненты
- Как скачать и прошить
- FAQ
- Полезная информация
Описание проекта
Этот проект основан на проекте AlexGyver "Матрица на адресных светодиодах с управлением по Bluetooth"
Дальнейшее развитие проекта - vvip-68 "ссылка на репозиторий"
Изменения по справнению с исходным проектом:
- Поддержка только контроллера с большим объемом памятии наличием WiFi на борту - NodeMCU
- Другие типы контроллеров (Arduino Mega + WiFi, Wemod D1) - не тестировались.
- Удалена поддержка управления с кнопок
- Оставлена одна кнопка управления для переключения режимов, отключения работающего будильника
- Удалена поддержка управления по Bluetooth
- Удалена поддержка платы часов реального времени
- Управление матрицей - через WiFi (локальная сеть)
- Синхронизация времени с NTP сервером через интернет
- Адаптированная программа управления матрицей на Andrioid
- Изменены настройки режимов воспроизведения эффектов
- Настройки режимов можно изменять из программы со смартфона
- Яркость матрицы - единая для всех режимов
- Скорость эффектов - индивидуально для каждого режима
- Наличие наложения часов на эффекты - индивидуально для каждого режима
- Включение/исключение режима из списка любимых режимов
- Настройки сохраняются в энергонезависимой памяти EEPROM
- К режиму часов добавлен календарь - кратковременное отображение текущей даты поверх эффекта
- Настройка сервера синхронизации времени
- Будильник "рассвет", настройки через программу на смартфоне, 7 будильников на каждый день
- Поддержка звука будильника / звука рассвета звуковой платой MP3 DFPlayer
- Настройки сетевого подключения (SSID и пароль, статический IP) задаются в программе и сохраняются в EEPROM
- Если не удается подключиться к сети (неверный пароль или имя сети) - запускается режим SmartConfig, в течение 30 секунд контроллер пытается получить настройки от приложения ESPTOUCH SmartConfig, если этого не удается, то создается точка подключения с именем MatrixAP, пароль 12341234, IP 192.168.4.1. Подключившись к точке доступа из приложения можно настроить параметры сети. Если после задания параметиров сети WiFi соединение установлено - в приложении на смартфоне виден IP адрес подключения к сети WiFi.
- Быстрое включение режимов лампы белого или заданного цвета из приложения (вся панель светится), выключение панели, комбинация лампы с отображением часов, ночные часы (пониженная яркость).
- Автоматическая установка яркости матрицы в зависимости от уровня внешней освещенности.
- Два программируемых по времени режима, позволяющие, например, настроить автоматическое выключение экрана матрицы в ночное время и автоматическое же включение матрицы утром.
От исходного проекта сохранены следующие возможности:
Режимы:
- Рисование
- Загрузка картинок
- Бегущая строка
Эффекты:
- "Дыхание" яркости
- Смена цвета
- Снегопад
- Блуждающий кубик
- Радуга
- Огонь
- The Matrix
- Летающие частицы
- Звездопад
- Шумовые эффекты с разными цветовыми палитрами
- Анимация
- Часы
Игры:
- Змейка
- Tетриc
- Лабиринт
- Арканоид
- Runner
- Flappy bird
Возможности:
- Автоподключение к матрице при запуске
- Настройки яркости и скорости отображения
- Использование акселерометра в играх
Кнопка управления режимами, последовательность переключения:
Будильник сработал, идет рассвет или мелодия пробуждения
- Любое нажатие кнопки отключает будильник
Долгое удержание кнопки (более 3 секунд)
- Если матрица включена, она будет выключена (черный экран)
- Если матрица выключена (черный экран) - включается режим часов
Однократное нажатие кнопки
- Если матрица включена в режиме часов, происходит переключение часов по циклу:
- Часы на черном фоне
- Часы на фоне огня (камин)
- Ночные часы
- Если матрица включена в режим лампы (белый экран) - вкл / выкл отображения часов.
- Если работают демо-режимы - переход к следующему режиму
Двухкратное нажатие кнопки
- Из любого режима включается режим часов на черном фоне
- Из режима часов переключается в режим лампы
Трехкратное нажатие кнопки
- Включается демо-режим
Четырехкратное нажатие кнопки
- На экране матрицы в режиме бегущей строки отображается IP адрес матрицы, если подключение к локальной WiFi сети установлено
Сброс настроек
- При включении матрицы или при нажатии Reset удерживайте кнопку более 5 секунд. При этом загрузятся настройки по-умолчанию, а также сбросятся настройки WiFi сети.
Папки
ВНИМАНИЕ! Если это твой первый опыт работы с Arduino, читай инструкцию
- libraries - библиотеки проекта.
- firmware - прошивки для NodeMCU
- schemes - схемы подключения компонентов
- sounds - звуковые файлы будильника для размещения на SD-карте
- Android - файлы с приложениями, примерами для Android и Thunkable
- image decoding - папка с инструментами для загрузки картинок и гифок
Схемы
Материалы и компоненты
Ссылки оставлены на магазины
Полный список компонентов есть в статье https://alexgyver.ru/matrix_guide/
- Wemos D1 mini https://ali.ski/7YQjnP https://ali.ski/mS4uV
- Матрица 16x16 https://ali.ski/nMUjQ https://ali.ski/sxLSCq https://ali.ski/VY74Hr
- Матрица 16х16 купить в России https://www.giant4.ru/%D0%BC%D0%B0%D1%82%D1%80%D0%B8%D1%86%D0%B0-ws2812b-16x16-led.html?utm_source=gyver-site&utm_medium=article&utm_campaign=lamp-matrix
- Адресная лента (для DIY матрицы) https://ali.ski/-moqm https://ali.ski/_Q_YlE
- Лента купить в России https://www.giant4.ru/ws2812b-60-ip33.html?utm_source=gyver-site&utm_medium=article&utm_campaign=spi-strip
- Powerbank https://ali.ski/_Sb4J
Вам скорее всего пригодится
- Всё для пайки (паяльники и примочки)
- Недорогие инструменты
- Все существующие модули и сенсоры Arduino
- Электронные компоненты
- Аккумуляторы и зарядные модули
Как скачать и прошить
- Первые шаги с Arduino - ультра подробная статья по началу работы с Ардуино, ознакомиться первым делом!
- Скачать архив с проектом
На главной странице проекта (где ты читаешь этот текст) вверху справа зелёная кнопка Clone or download, вот её жми, там будет Download ZIP
- Установить библиотеки в
C:\Program Files (x86)\Arduino\libraries\
(Windows x64)
C:\Program Files\Arduino\libraries\
(Windows x86) - Подключить внешнее питание 5 Вольт
- Подключить Ардуино к компьютеру
- Запустить файл прошивки (который имеет расширение .ino)
- Настроить IDE (COM порт, модель Arduino, как в статье выше)
- Настроить что нужно по проекту
- Нажать загрузить
- Скачать и установить на смартфон GyverMatrix
- Пользоваться
Важно
Если проект не собирается (ошибки компиляции) или собирается, но работает неправильно (например вся матрица светится белым и ничего не происходит) - проверьте версии библиотек. Данный проект рассчитан на работу с версииями библиотек поддержки плат ESP версии 2.5.2 и библиотеки FastLED версии 3.2.9;
FAQ
Основные вопросы
В: Как скачать с этого грёбаного сайта?
О: На главной странице проекта (где ты читаешь этот текст) вверху справа зелёная кнопка Clone or download, вот её жми, там будет Download ZIP
В: Скачался какой то файл .zip, куда его теперь?
О: Это архив. Можно открыть стандартными средствами Windows, но думаю у всех на компьютере установлен WinRAR, архив нужно правой кнопкой и извлечь.
В: Я совсем новичок! Что мне делать с Ардуиной, где взять все программы?
О: Читай и смотри видос http://alexgyver.ru/arduino-first/
В: Вылетает ошибка загрузки / компиляции!
О: Читай тут: https://alexgyver.ru/arduino-first/#step-5
Вопросы по этому проекту
В: Эй чувак! У тебя проект не компилится. Ты файл DFRobotDFPlayerMini.h в проект забыл включить. Выложи!
О: Это стандартная библиотека для MP3 DFPlayer. Идите в менеджер библиотек и установите ее. Или скачайте с сайта производителя
В: Собрал, использую NodeMCU. Ничего не работает! Мигает один или несколько светодиодов в начале матрицы. И всё.
О: NodeMCU v3 чрезвычайно требователен к источнику питания. Ему на вход VIN нужно подавать напряжение в диапазоне 4.7-5 вольт. И не более. Описанные эффекты возникают даже при питании в 5.25 (а тем более - 5.45) вольт. Для проверки - не подключайте +5 вольт от блока питания к NodeMCU совсем, питание подавайте на матрицу непосредственно. Землю NodeMCU и ленты соедините. Подключите сигнальный пин NodeMCU ко входу DIN ленты. Подключите NodeMCU к компьютеру через USB (питание будет поступать отсюда). Должно заработать. Далее регулируйте выходное напряжение своего блока питания.
В: Не компилируется. Выбрана плата "голая ESP8266-12E". Сообщение об ошибке: "D4 was not declared in this scope."
О: Очевидно производители библиотеки для "голой ESP8266-12E" не определили данную константу. Используйте всесто константы D4 числовое определение пина для вашей платы или выполните компиляцию проекта для плат NodeMCU или WeMos D1 R2.
В: Не компилируется. В сообщении об ошибке содержатся сведения о дублирующихся библиотеках.
О: В вашей среде установлено две версии одной и той же библиотеки. Обычно это библиотека FastLED - одна версия находится в папке установки среды Ардуино (например в "C:\Program Files (x86)\Arduino\libraries"), другая - в папке документов пользователя (например "C:\Users\vvip-68\Documents\Arduino\libraries"). Удалите одну из версий библиотек и попробуйте скомпилировать снова.
В: Не компилируется. В сообщении об ошибке что-то про несоответствие типов.
О: Обычно такая ситуация возникает в двух случаях:
- выбрана неверная плата. Используйте NodeMCU 1.0 (ESP-12E Module) или Wemos D1 R1. Под эти платы проект собирается, под другие, возможно, нужна модификация кода.
- установлена устаревшая версия библиотек поддержки плат - например для ESP8266 версия библиотеки 2.4.2. Данный проект использует библиотеки для плат ESP8266 версии 2.5. Обновите библиотеки поддержки плат.
В: Что такое ESPTOUCH SmartConfig и как настроить устройство БЕЗ ручного подключения к SoftAP?
О: Данная технология позволяет передать настройки в устройство без создания программной точки достпуа, посредством специального
протокола. Все, что необходимо
сделать — это установить приложение EspTouch: SmartConfig for ESP8266, ESP32.
Ваш телефон должен быть подключен к вашему домашнему роутеру. Запускайте приложение, вбивайте пароль от сети и нажимайте "confirm".
При этом, матрица сканирует все пролетающие мимо пакеты (не важно, знает ли она SSID/Пароль) и хитро анализируя длину пакетов, расшифровывает настройки.
После того, как матрица получит настройки, она автоматически переключится в режим DHCP
В: Как сбросить настройки?
О: Зажать кнопку и нажать Reset (или переподключить питание), чтобы матрица перезагрузилась. Держать кнопку не отпуская более 5 секунд. При этом, настройки Wi-Fi и всех эффектов сбрасываются,
матрица 30 секунд попробует поискать SmartConfig а затем включит точку доступа.