Code Monkey home page Code Monkey logo

gyvermatrixwifi's Introduction

PROJECT_PHOTO

Адресная матрица на NodeMCU с управлением по WiFi

Этот проект устарел. Новый проект "Широкоформатная матрица / гирлянда на балкон или стену с управлением по WiFi" полностью перекрывает функционал этого проекта, а также имеет множество доработок и улучшений.

Описание проекта

Этот проект основан на проекте AlexGyver "Матрица на адресных светодиодах с управлением по Bluetooth"

Изменения по справнению с исходным проектом:

  • Поддержка только контроллера с большим объемом памятии наличием WiFi на борту - NodeMCU, Wemos D1
  • Другие типы контроллеров (типа Arduino Mega + WiFi) - не тестировались.
  • Удалена поддержка управления с кнопок
  • Оставлена одна кнопка управления для переключения режимов, отключения работающего будильника
  • Удалена поддержка управления по Bluetooth
  • Удалена поддержка платы часов реального времени
  • Управление матрицей - через WiFi (локальная сеть)
  • Синхронизация времени с NTP сервером через интернет
  • Адаптированная программа управления матрицей на Andrioid
  • Изменены настройки режимов воспроизведения эффектов
  • Настройки режимов можно изменять из программы со смартфона
    • Яркость матрицы - единая для всех режимов
    • Скорость эффектов - индивидуально для каждого режима
    • Наличие наложения часов на эффекты - индивидуально для каждого режима
    • Включение/исключение режима из списка любимых режимов
  • Настройки сохраняются в энергонезависимой памяти EEPROM
  • К режиму часов добавлен календарь - кратковременное отображение текущей даты поверх эффекта
  • Настройка сервера синхронизации времени
  • Будильник "рассвет", настройки через программу на смартфоне, 7 будильников на каждый день
  • Поддержка звука будильника / звука рассвета звуковой платой MP3 DFPlayer
  • Настройки сетевого подключения (SSID и пароль, статический IP) задаются в программе и сохраняются в EEPROM
  • Если не удается подключиться к сети (неверный пароль или имя сети) - создается точка подключения с именем MatrixAP, пароль 12341234, IP 192.168.4.1. Подключившись к точке доступа из приложения можно настроить параметры сети. Если после задания параметиров сети WiFi соединение установлено - в приложении на смартфоне виден IP адрес подключения к сети WiFi.
  • Быстрое включение режимов лампы белого или заданного цвета из приложения (вся панель светится), выключение панели, комбинация лампы с отображением часов, ночные часы (пониженная яркость).
  • Автоматическая установка яркости матрицы в зависимости от уровня внешней освещенности.
  • Два программируемых по времени режима, позволяющие, например, настроить автоматическое выключение экрана матрицы в ночное время и автоматическое же включение матрицы утром.

От исходного проекта сохранены следующие возможности:

Режимы:

  • Рисование
  • Загрузка картинок
  • Бегущая строка

Эффекты:

  • Снегопад
  • Блуждающий кубик
  • Радуга
  • Огонь
  • The Matrix
  • Летающие частицы
  • Звездопад
  • Пейнтбол
  • Водоворот
  • Шумовые эффекты с разными цветовыми палитрами
  • Анимация
  • Часы

Игры:

  • Змейка
  • Tетриc
  • Лабиринт
  • Арканоид
  • Runner

Возможности:

  • Автоподключение к матрице при запуске
  • Настройки яркости и скорости отображения
  • Использование акселерометра в играх

Кнопка управления режимами, последовательность переключения:

Будильник сработал, идет рассвет или мелодия пробуждения

  • Любое нажатие кнопки отключает будильник

Долгое удержание кнопки (более 3 секунд)

  • Если матрица включена, она будет выключена (черный экран)
  • Если матрица выключена (черный экран) - включается режим часов

Однократное нажатие кнопки

  • Если матрица включена в режиме часов, происходит переключение часов по циклу:
    • Часы на черном фоне
    • Часы на фоне огня (камин)
    • Ночные часы
  • Если матрица включена в режим лампы (белый экран) - вкл / выкл отображения часов.
  • Если работают демо-режимы - переход к следующему режиму

Двухкратное нажатие кнопки

  • Из любого режима включается режим часов на черном фоне
  • Из режима часов переключается в режим лампы

Трехкратное нажатие кнопки

  • Включается демо-режим

Четырехкратное нажатие кнопки

  • На экране матрицы в режиме бегущей строки отображается IP адрес матрицы, если подключение к локальной WiFi сети установлено

Папки

ВНИМАНИЕ! Если это твой первый опыт работы с Arduino, читай инструкцию

  • libraries - библиотеки проекта.
  • firmware - прошивки для NodeMCU
  • schemes - схемы подключения компонентов
  • sounds - звуковые файлы будильника для размещения на SD-карте
  • Android - файлы с приложениями, примерами для Android и Thunkable
  • image decoding - папка с инструментами для загрузки картинок и гифок

Схемы

SCHEME

Материалы и компоненты

Ссылки оставлены на магазины

Полный список компонентов есть в статье https://alexgyver.ru/matrix_guide/

Вам скорее всего пригодится

Как скачать и прошить

  • Первые шаги с 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 или более новую;

Если в качестве микроконтроллера вы используете Wemos D1 - в менеджере плат для компиляции все равно выбирайте "NodeMCU v1.0 (ESP-12E)", в противном случае, если выберете плату Wemos D1 (xxxx), - будет работать нестабильно, настройки не будут сохраняться в EEPROM, параметры подключения к локальной сети будут сбрасываться каждый раз при перезагрузке, плата вместо подключения к локальной сети будет каждый раз создавать точку доступа.

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. Идите в менеджер библиотек и установите ее. Или скачайте с сайта производителя

В: Эй чувак! У тебя проект не компилится. Ты файл FastLed.h в проект забыл включить. Выложи!
О: Это стандартная библиотека для FastLed для управления адресными светодиодами. Идите в менеджер библиотек и установите ее. Или скачайте с сайта производителя

В: Собрал, использую NodeMCU/Wemos. Ничего не работает! Мигает один или несколько светодиодов в начале матрицы. И всё.
О: Производители разных плат (NodeMCU, Wemos) могут использовать различные схемы соединения контактов микроконтроллера ESP8266 к выводам макетной платы. Обычно используемый в проекте пин вывода на ленту приходится или на пин D2 или на пин D4. Для проверки не подключайте сигнальный провод матрицы к микроконтроллеру, вместо этого через резистор коснитесь вывода D2 или D4 пина микроконтроллера. Большая вероятность что матрица заработает с тем или иным вариантом подключения.

В: Собрал, использую NodeMCU. Эффекты работают, но нестабильно. Случайные вспышки на матрице. Буквы бегущей строки прыгают.
О: NodeMCU v3 чрезвычайно требователен к источнику питания. Ему на вход VIN нужно подавать напряжение в диапазоне 4.7-5 вольт. И не более. Описанные эффекты возникают даже при питании в 5.25 (а тем более - 5.45) вольт. Для проверки - не подключайте +5 вольт от блока питания к NodeMCU совсем, питание подавайте на матрицу непосредственно. Землю NodeMCU и ленты соедините. Подключите сигнальный пин NodeMCU ко входу DIN ленты. Подключите NodeMCU к компьютеру через USB (питание будет поступать отсюда). Должно заработать. Далее регулируйте выходное напряжение своего блока питания.
В особо тяжелых случаях, когда понижение напряжения питания системы не приводит к желаемым результатам и артефакты, вспышки, дрожание текста бегущей строки продолжается, можно использовать дополнительно схему преобразования уровня от 3.3 вольта с выхода NodeMCU к 5 вольтам входа адресной ленты:
SCHEME

В: Не компилируется. Выбрана плата "голая 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. Обновите библиотеки поддержки плат.

В: Подскажите, что не так... C подключением через точку доступа всё исправно работает, а при попытке подключиться к локальной сети не могу законнектиться через приложение. В чем может быть проблема?
О: Проблема может быть в неправильно указанном статическом адресе / параметрах сети в прошивке. В сектче по умолчанию используется адрес в сети 192.168.0.xxx. Ваш WiFi роутер в зависимости от настроек может создавать сеть в другом диапазоне. Чаще всего это 192.168.1.xxx или 192.168.100.xxx; Проверьте какую сеть создает ваш роутер и укажите в скетче и при подключении приложения к сети именно эту сеть.

В: Автор неверно указал IP адрес матрицы 192.168.4.1 в режиме точки доступа. На самом деле он 192.168.4.2 - указываю его, приложение на смартфоне подключается. Правда управлять матрицей не получается все равно - она не реагирует на изменения.
О: Нет, все правильно. IP матрицы - 192.168.4.1; Адрес 192.168.4.2 получает ваш смартфон при подключении к точке доступа. Когда в приложении для подключения вы указываете адрес 192.168.4.2 - вы подключаете ваш смартфон с самому себе, а не к матрице. Естественно никакое управление матрицей работать не будет.

В: Матрица создает точку доступа, телефон к ней подключается. В приложении ввожу IP адрес матрицы 192.168.4.1, но соединение не происходит. Что я делаю не так?
О: Некоторые телефоны не могут передавать данные через точку доступа, пока в них активен мобильный интернет. Все передаваемые данные отправляются в интернет, вместо передачи их в точку доступа. В настройках телефона выключите мобильный интернет ("Мобильные данные"). После этого телефон из приложения должен подключиться к матрице.

В: В скетче есть настройки который задают имя и пароль к локальной сети. Указываю, но к сети даже не пытается подключиться В чем дело?
#define NETWORK_SSID "" // Имя WiFi сети - пропишите здесь или задайте из программы на смартфоне
#define NETWORK_PASS "" // Пароль для подключения к WiFi сети - пропишите здесь или задайте из программы на смартфоне
О: Эти настройки определяют параметры доступа к сети по умолчанию, которые используются при ПЕРВОЙ загрузке прошивки в матрицу. В этот момент они сохраняются в EEPROM и при последующих запусках имя сети и пароль извлекаются из энергонезависимой памяти и используются уже извлеченные значения, а не те, что прописаны в #define. Если вы уже запускали матрицу и ПОСЛЕ этого изменили в скетче имя и пароль сети, вам нужно также изменить значение флага, указывающее было ли уже сохранение параметров в EEPROM или еще нет. Этот флаг находится в файле eeprom.ino в первой строке
#define EEPROM_OK 0x5A // Флаг, показывающий, что EEPROM инициализирована корректными данными Измените его на любое другое значение, например 0xA5

Всё собрал строго по инструкции, ничего не работает.

  1. Разбираем всё обратно.
  2. Берем платку, смотрим чтобы к ней НИЧЕГО не было подключено.
  3. Плату в таком состоянии подключаем кабелем USB к компьютеру.
  4. Берем последнюю версию прошивки и загружаем ее в микроконтроллер.
  5. Смотрим в сообщениях, что загрузка успешно выполнена и осуществлен перезапуск микроконтроллера, а в мониторе порта, что скетч стартовал, вывел версию прошивки, создал точку доступа MatrixAP
  6. Устанавливаем на смартфон приложение из этого проекта
  7. Подключаемся телефоном к точке доступа, приложение подключаем к матрице, пробуем тыкать на кнопки.
  8. Отключаем микроконтроллер от компьютера
  9. Подключаем блок питания +5 вольт и минусовой провод к матрице. Минусовой провод подключаем также к пину GND микроконтроллера. Контроллер подключаем USB кабелем к компьютеру, блок питания включаем в сеть.
  10. Проверяем, что напряжение питания с блока не превышает +5.25 вольт. Если больше - регулируем его до уровня 4.8 вольта.
  11. Сигнальным проводом с матрицы с подключенным резистором 200 Ом тыкаемся поочередно в пины D4 и D2 микроконтроллера. В каком-то из этих двух вариантов на иматрице должно сформироваться осмысленное отображение эффекта, игры или бегущего текста. Что из этого конкретно должно в данный момент отображаться - написано в мониторе порта. Запоминаем подключение к какому пину дало результат.
  12. Отключаем микроконтроллер и блок питания. Провод +5V с блока питания подключаем к микроконтроллеру на пин его входного напряжения питания (у разных плат обозначен по разному - Vin, Vcc или +5). Сигнальный провод матрицы припаиваем к пину, который определили шагом выше. Очень желательно между пинами Vin и GND микроконтроллера припаять электролитический конденсатор номиналом 1000-4700 мкф, и параллельно ему керамический конденсатор на 33-100 нф.
  13. Включаем блок питания в розетку. Матрица должна заработать.
  14. Собираем всю конструкцию в корпус. Если матрица это гирлянда - развешиваем ее.

Полезная информация

gyvermatrixwifi's People

Contributors

darkslim avatar dimap81 avatar vvip-68 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gyvermatrixwifi's Issues

narodmon

Привет vvip-68! Помоги добавить в бегущую строку температуру с сайта narodmon.ru. У них в справке есть описание как добавить в приложения, на сайт... У меня есть кое-какие наброски, не получается внедрить. Нули показывает, так-как текст для строк пишется в setup.

Версии библиотек

Здравствуйте.
При попытке повторить устройство столкнулся с проблемой: работает только первый светодиод (выбрана плата LOLIN(WEMOS) D1 R2 & mini, если выбираю плату WeMos D1 R1 - то работает только первых 63 светодиода.
Менеджер плат ESP8266 версии 2.5.0
Версия платформы Arduino 1.6.10 и 1.8.9
Версия библиотеки FastLEd 3.2.9
Проверено на 2-х разных платах. Плеер, кнопку и датчик освещенности не использую.
Подскажите Ваши версии: платформы, менеджера плат, выбранный тип платы, версии используемых библиотек.
Спасибо.

Как победить глюки?

Под глюками подразумевается включение группы случайных светодиодов.
Пробовал понижать напряжение на ноде до 4.5 и ниже на NodeMCU через Buck преобразователь, но это ничего не дало, так же кинул на выход преобразователя параллельно конденсатор 6.3v 1000uF для сглаживания на случай помех от пульсаций, что так же не дало результата.
(Тестирую на маленькой самосборной матрице 6х6 из ленты, в дальнейшем контроллер будет подключен на большом окне 2.4×1.4м)

Ntp сервер, что я делаю не так

Никак не могу настроить синхронизацию с ntp сервером. Проблема в следующем:
22:36:02.254 -> NTP-сервер www.belgim.by -> 178.124.164.107
22:36:02.254 -> Отправка NTP пакета на сервер www.belgim.by
22:36:07.075 -> UDP пакeт размером 6 от 192.168.1.218, порт 2390
22:36:07.075 -> Содержимое: $18 0;
22:36:07.244 -> Таймаут NTP запроса!
И так постоянно какой-бы адрес не указывал. Не могу понять почему оно пакеты не принимает от сервера. Порт использовал 123 как в исходнике. Пробовал и другие.

TimeZone need edit 2 times (2 different places)

У меня телефон с Android 4.2 Установить на него приложение GyverMatrixWiFi.apk я не могу (т.к. там минимальная версия API 19, т.е. Android 4.4). Из-за невозможности установить и использовать приложение, столкнулся с проблемой неправильного вывода времени на матрицу (виновница - timeZoneOffset). Как оказалось - недостаточно только отредактировать строку 453 в файле GyverMatrixOS_v1.15.ino: int8_t timeZoneOffset = 3; (выставить свою таймзону).
необходимо также отредактировать строку 168 в eeprom.ino :
timeZoneOffset = 3;
Что несколько неудобно (и начинающие пользователи, не разбирающиеся в коде, будут в затруднительном положении...)

speed of text is not working

When I was in the text section, I dragged the speed bar of the text to the right so the word didn't run faster.

Пейнтбол effect is can not be adjusted speed

When I turned off or turned on the demo mode, the wifi ip of led was disconnected and then not reconnected. But this error must be carefully tested so you can only see it appear

Матрица

Привет. Очень понравилась твоя прошивка и приложение, но такое вопрос: собрал я к примеру рюкзак по видео Гайвера, перепаивать схему не очень хочется. Можно ли загрузить просто твою прошивку? Будет ли оно работать без дополнительных элементов?

Не работает синхронизация времени

NTP-сервер ru.pool.ntp.org -> 192.36.143.130
Отправка NTP пакета на сервер ru.pool.ntp.org
Таймаут NTP запроса!

И так постоянно... Пробовал разные платы (NodeMCU, Wemos). WiFi подключается и работает нормально.
В чем может быть проблема?

apk

possible english android apk?

управление через MQTT?

Здравствуйте,
Возможно ли соединить Ваш проект по упраляемой по MQTT матрице с этим проектом?
Цель: передавать бегущую строку и переключать режимы через Home Assistant (работающий на MQTT)
Заранее благодарю за ответ.
Алексей

Режимы по времени

Здравствуйте! Сделал себе на окно вместо новогодней шторы - слов нет, потрясающе работает!! Есть 2 момента - если не отключать игру в лабиринт, регулярно подвисает на ней а то и перезапускается. В остальном никаких ошибок не обнаружил. А по второму - есть всего 2 режима по времени, то есть можно поставить время включения и время выключения. С точки зрения применения такой штуки на окне было бы логично добавить ещё 2 режима. Днём огоньков почти не видно и смысла зажигать гирлянду нет, поэтому хотелось бы, чтобы включалась вечером, когда темнеет и выключалась, когда поздно совсем, затем снова включалась в утренние часы пока темно и выключалась с рассветом... Если это не сложно, конечно, в приложении как раз пол страницы с режимами по времени пустые, а добавить 2 пункта и будет красота! :) А, вот ещё забыл - для деморежима есть 3 надписи бегущих строки, их как-то можно вынести в приложение на телефоне, чтобы можно было менять без перепрошивки?

Can you help me to write character code interpreter in font HEX array?

i took a long time to make all characters code (ASCII) but i cant write them interpreter in font HEX array. can you help me to do it?
My code in runningtext.h with label (but not working correctly):
// интерпретатор кода символа в массиве fontHEX (для Arduino IDE 1.8.* и выше)
uint8_t getFont(uint8_t font, uint8_t row) {
font = font - '0' + 16; // translate code from ASCII-code into character images array index
if (font <= 90) return pgm_read_byte(&(fontHEX[font][row])); // for english chars
else if (font >= 96 && font <= 224) {
return pgm_read_byte(&(fontHEX[font - 17][row]));
}
}

And my all characters code (ASCII) that i made:

const uint8_t fontHEX[][5] PROGMEM = {
{ 0x00, 0x00, 0x00, 0x00, 0x00 }, // 0x20 32
{ 0x00, 0x00, 0x5F, 0x00, 0x00 }, // ! 0x21 33
{ 0x00, 0x07, 0x00, 0x07, 0x00 }, // " 0x22 34
{ 0x14, 0x7F, 0x14, 0x7F, 0x14 }, // # 0x23 35
{ 0x24, 0x2A, 0x7F, 0x2A, 0x12 }, // $ 0x24 36
{ 0x4C, 0x2C, 0x10, 0x68, 0x64 }, // % 0x25 37
{ 0x36, 0x49, 0x55, 0x22, 0x50 }, // & 0x26 38
{ 0x00, 0x05, 0x03, 0x00, 0x00 }, // ' 0x27 39
{ 0x00, 0x1C, 0x22, 0x41, 0x00 }, // ( 0x28 40
{ 0x00, 0x41, 0x22, 0x1C, 0x00 }, // ) 0x29 41
{ 0x14, 0x08, 0x3E, 0x08, 0x14 }, // * 0x2A 42
{ 0x08, 0x08, 0x3E, 0x08, 0x08 }, // + 0x2B 43
{ 0x00, 0x00, 0x50, 0x30, 0x00 }, // , 0x2C 44
{ 0x10, 0x10, 0x10, 0x10, 0x10 }, // - 0x2D 45
{ 0x00, 0x60, 0x60, 0x00, 0x00 }, // . 0x2E 46
{ 0x20, 0x10, 0x08, 0x04, 0x02 }, // / 0x2F 47
{ 0x3E, 0x51, 0x49, 0x45, 0x3E }, // 0 0x30 48
{ 0x00, 0x42, 0x7F, 0x40, 0x00 }, // 1 0x31 49
{ 0x42, 0x61, 0x51, 0x49, 0x46 }, // 2 0x32 50
{ 0x21, 0x41, 0x45, 0x4B, 0x31 }, // 3 0x33 51
{ 0x18, 0x14, 0x12, 0x7F, 0x10 }, // 4 0x34 52
{ 0x27, 0x45, 0x45, 0x45, 0x39 }, // 5 0x35 53
{ 0x3C, 0x4A, 0x49, 0x49, 0x30 }, // 6 0x36 54
{ 0x01, 0x71, 0x09, 0x05, 0x03 }, // 7 0x37 55
{ 0x36, 0x49, 0x49, 0x49, 0x36 }, // 8 0x38 56
{ 0x06, 0x49, 0x49, 0x29, 0x1E }, // 9 0x39 57
{ 0x00, 0x36, 0x36, 0x00, 0x00 }, // : 0x3A 58
{ 0x00, 0x56, 0x36, 0x00, 0x00 }, // ; 0x3B 59
{ 0x08, 0x14, 0x22, 0x41, 0x00 }, // < 0x3C 60
{ 0x14, 0x14, 0x14, 0x14, 0x14 }, // = 0x3D 61
{ 0x00, 0x41, 0x22, 0x14, 0x08 }, // > 0x3E 62
{ 0x02, 0x01, 0x51, 0x09, 0x06 }, // ? 0x3F 63
{ 0x3C, 0x42, 0x5A, 0x56, 0x0C }, // @ 0x40 64
{ 0x7E, 0x11, 0x11, 0x11, 0x7E }, // A 0x41 65
{ 0x7F, 0x49, 0x49, 0x49, 0x36 }, // B 0x42 66
{ 0x3E, 0x41, 0x41, 0x41, 0x22 }, // C 0x43 67
{ 0x7F, 0x41, 0x41, 0x22, 0x1C }, // D 0x44 68
{ 0x7F, 0x49, 0x49, 0x49, 0x41 }, // E 0x45 69
{ 0x7F, 0x09, 0x09, 0x09, 0x01 }, // F 0x46 70
{ 0x3E, 0x41, 0x49, 0x49, 0x7A }, // G 0x47 71
{ 0x7F, 0x08, 0x08, 0x08, 0x7F }, // H 0x48 72
{ 0x00, 0x41, 0x7F, 0x41, 0x00 }, // I 0x49 73
{ 0x20, 0x40, 0x41, 0x3F, 0x01 }, // J 0x4A 74
{ 0x7F, 0x08, 0x14, 0x22, 0x41 }, // K 0x4B 75
{ 0x7F, 0x40, 0x40, 0x40, 0x40 }, // L 0x4C 76
{ 0x7F, 0x02, 0x0C, 0x02, 0x7F }, // M 0x4D 77
{ 0x7F, 0x04, 0x08, 0x10, 0x7F }, // N 0x4E 78
{ 0x3E, 0x41, 0x41, 0x41, 0x3E }, // O 0x4F 79
{ 0x7F, 0x09, 0x09, 0x09, 0x06 }, // P 0x50 80
{ 0x3E, 0x41, 0x51, 0x21, 0x5E }, // Q 0x51 81
{ 0x7F, 0x09, 0x19, 0x29, 0x46 }, // R 0x52 82
{ 0x46, 0x49, 0x49, 0x49, 0x31 }, // S 0x53 83
{ 0x01, 0x01, 0x7F, 0x01, 0x01 }, // T 0x54 84
{ 0x3F, 0x40, 0x40, 0x40, 0x3F }, // U 0x55 85
{ 0x1F, 0x20, 0x40, 0x20, 0x1F }, // V 0x56 86
{ 0x3F, 0x40, 0x38, 0x40, 0x3F }, // W 0x57 87
{ 0x63, 0x14, 0x08, 0x14, 0x63 }, // X 0x58 88
{ 0x07, 0x08, 0x70, 0x08, 0x07 }, // Y 0x59 89
{ 0x61, 0x51, 0x49, 0x45, 0x43 }, // Z 0x5A 90
{ 0x00, 0x7F, 0x41, 0x41, 0x00 }, // [ 0x5B 91
{ 0x02, 0x04, 0x08, 0x10, 0x20 }, // \ 0x5C 92
{ 0x00, 0x41, 0x41, 0x7F, 0x00 }, // ] 0x5D 93
{ 0x04, 0x02, 0x01, 0x02, 0x04 }, // ^ 0x5E 94
{ 0x40, 0x40, 0x40, 0x40, 0x40 }, // _ 0x5F 95
{ 0x00, 0x01, 0x02, 0x04, 0x00 }, // ` 0x60 96
{ 0x20, 0x54, 0x54, 0x54, 0x78 }, // a 0x61 97
{ 0x7F, 0x48, 0x44, 0x44, 0x38 }, // b 0x62 98
{ 0x38, 0x44, 0x44, 0x44, 0x20 }, // c 0x63 99
{ 0x38, 0x44, 0x44, 0x48, 0x7F }, // d 0x64 100
{ 0x38, 0x54, 0x54, 0x54, 0x18 }, // e 0x65 101
{ 0x08, 0x7E, 0x09, 0x01, 0x02 }, // f 0x66 102
{ 0x0C, 0x52, 0x52, 0x52, 0x3E }, // g 0x67 103
{ 0x7F, 0x08, 0x04, 0x04, 0x78 }, // h 0x68 104
{ 0x00, 0x44, 0x7D, 0x40, 0x00 }, // i 0x69 105
{ 0x20, 0x40, 0x44, 0x3D, 0x00 }, // j 0x6A 106
{ 0x7F, 0x10, 0x28, 0x44, 0x00 }, // k 0x6B 107
{ 0x00, 0x41, 0x7F, 0x40, 0x00 }, // l 0x6C 108
{ 0x7C, 0x04, 0x18, 0x04, 0x78 }, // m 0x6D 109
{ 0x7C, 0x08, 0x04, 0x04, 0x78 }, // n 0x6E 110
{ 0x38, 0x44, 0x44, 0x44, 0x38 }, // o 0x6F 111
{ 0x7C, 0x14, 0x14, 0x14, 0x08 }, // p 0x70 112
{ 0x08, 0x14, 0x14, 0x18, 0x7C }, // q 0x71 113
{ 0x7C, 0x08, 0x04, 0x04, 0x08 }, // r 0x72 114
{ 0x48, 0x54, 0x54, 0x54, 0x20 }, // s 0x73 115
{ 0x04, 0x3F, 0x44, 0x40, 0x20 }, // t 0x74 116
{ 0x3C, 0x40, 0x40, 0x20, 0x7C }, // u 0x75 117
{ 0x1C, 0x20, 0x40, 0x20, 0x1C }, // v 0x76 118
{ 0x3C, 0x40, 0x30, 0x40, 0x3C }, // w 0x77 119
{ 0x44, 0x28, 0x10, 0x28, 0x44 }, // x 0x78 120
{ 0x0C, 0x50, 0x50, 0x50, 0x3C }, // y 0x79 121
{ 0x44, 0x64, 0x54, 0x4C, 0x44 }, // z 0x7A 122
{ 0x00, 0x08, 0x36, 0x41, 0x00 }, // { 0x7B 123
{ 0x00, 0x00, 0x7F, 0x00, 0x00 }, // | 0x7C 124
{ 0x00, 0x41, 0x36, 0x08, 0x00 }, // } 0x7D 125
{ 0x08, 0x04, 0x08, 0x10, 0x08 }, // ~ 0x7E 126

{ 0x40, 0x00, 0x40, 0x00, 0x40 }, // … 0x85 133
{ 0x04, 0x04, 0xFF, 0x04, 0x04 }, // † 0x86 134
{ 0x24, 0x24, 0xFF, 0x24, 0x24 }, // ‡ 0x87 135
{ 0x28, 0x7C, 0xAA, 0xAA, 0x82 }, // ˆ 0x88 136

{ 0x00, 0x06, 0x05, 0x00, 0x00 }, // ‘ 0x91 145
{ 0x00, 0x00, 0x05, 0x03, 0x00 }, // ’ 0x92 146
{ 0x06, 0x05, 0x00, 0x06, 0x05 }, // “ 0x93 147
{ 0x05, 0x03, 0x00, 0x05, 0x03 }, // ” 0x94 148
{ 0x18, 0x3C, 0x3C, 0x3C, 0x18 }, // • 0x95 149

{ 0x78, 0x48, 0x48, 0x78, 0x00 }, // ˜ 0x98 152

{ 0x22, 0x1C, 0x14, 0x1C, 0x22 }, // ¤ 0xA4 164
{ 0x7E, 0x02, 0x02, 0x02, 0x03 }, // ¥ 0xA5 165
{ 0x00, 0x00, 0xE7, 0x00, 0x00 }, // ¦ 0xA6 166
{ 0x4A, 0x95, 0xA5, 0xA9, 0x52 }, // § 0xA7 167
{ 0x7C, 0x55, 0x54, 0x45, 0x44 }, // ¨ 0xA8 168
{ 0x00, 0x18, 0x24, 0x24, 0x00 }, // © 0xA9 169
{ 0x3E, 0x49, 0x49, 0x41, 0x22 }, // ª 0xAA 170
{ 0x08, 0x14, 0x2A, 0x14, 0x22 }, // « 0xAB 171
{ 0x04, 0x04, 0x04, 0x04, 0x0C }, // ¬ 0xAC 172
{ 0x00, 0x08, 0x08, 0x08, 0x00 }, // ­ 0xAD 173

{ 0x00, 0x45, 0x7C, 0x45, 0x00 }, // ¯ 0xAF 175
{ 0x00, 0x04, 0x0A, 0x04, 0x00 }, // ° 0xB0 176
{ 0x44, 0x44, 0x5F, 0x44, 0x44 }, // ± 0xB1 177
{ 0x00, 0x41, 0x7F, 0x41, 0x00 }, // ² 0xB2 178
{ 0x00, 0x00, 0x7A, 0x00, 0x00 }, // ³ 0xB3 179
{ 0x00, 0x78, 0x08, 0x0C, 0x00 }, // ´ 0xB4 180
{ 0x00, 0xFC, 0x20, 0x3C, 0x20 }, // µ 0xB5 181
{ 0x0C, 0x1E, 0xFE, 0x02, 0xFE }, // ¶ 0xB6 182
{ 0x00, 0x18, 0x18, 0x00, 0x00 }, // · 0xB7 183
{ 0x39, 0x54, 0x54, 0x49, 0x00 }, // ¸ 0xB8 184
{ 0x78, 0x10, 0x20, 0x7B, 0x03 }, // ¹ 0xB9 185
{ 0x38, 0x54, 0x54, 0x44, 0x00 }, // º 0xBA 186
{ 0x22, 0x14, 0x2A, 0x14, 0x08 }, // » 0xBB 187

{ 0x00, 0x54, 0x70, 0x44, 0x00 }, // ¿ 0xBF 191
{ 0x7C, 0x12, 0x11, 0x12, 0x7C }, // À 0xC0 192
{ 0x7F, 0x49, 0x49, 0x49, 0x31 }, // Á 0xC1 193
{ 0x7F, 0x49, 0x49, 0x49, 0x36 }, // Â 0xC2 194
{ 0x7F, 0x01, 0x01, 0x01, 0x01 }, // Ă 0xC3 195
{ 0x60, 0x3F, 0x21, 0x3F, 0x60 }, // Ä 0xC4 196
{ 0x7F, 0x49, 0x49, 0x49, 0x41 }, // Å 0xC5 197
{ 0x77, 0x08, 0x7F, 0x08, 0x77 }, // Æ 0xC6 198
{ 0x22, 0x41, 0x49, 0x49, 0x36 }, // Ç 0xC7 199
{ 0x7F, 0x10, 0x08, 0x04, 0x7F }, // È 0xC8 200
{ 0x7E, 0x10, 0x09, 0x04, 0x7E }, // É 0xC9 201
{ 0x7F, 0x08, 0x14, 0x22, 0x41 }, // Ê 0xCA 202
{ 0x40, 0x3E, 0x01, 0x01, 0x7F }, // Ë 0xCB 203
{ 0x7F, 0x02, 0x0C, 0x02, 0x7F }, // ̀ 0xCC 204
{ 0x7F, 0x08, 0x08, 0x08, 0x7F }, // Í 0xCD 205
{ 0x3E, 0x41, 0x41, 0x41, 0x3E }, // Î 0xCE 206
{ 0x7F, 0x01, 0x01, 0x01, 0x7F }, // Ï 0xCF 207
{ 0x7F, 0x09, 0x09, 0x09, 0x06 }, // Đ 0xD0 208
{ 0x3E, 0x41, 0x41, 0x41, 0x22 }, // Ñ 0xD1 209
{ 0x01, 0x01, 0x7F, 0x01, 0x01 }, // ̉ 0xD2 210
{ 0x07, 0x48, 0x48, 0x48, 0x3F }, // Ó 0xD3 211
{ 0x0E, 0x11, 0x7F, 0x11, 0x0E }, // Ô 0xD4 212
{ 0x63, 0x14, 0x08, 0x14, 0x63 }, // Ơ 0xD5 213
{ 0x3F, 0x20, 0x20, 0x3F, 0x60 }, // Ö 0xD6 214
{ 0x07, 0x08, 0x08, 0x08, 0x7F }, // × 0xD7 215
{ 0x7F, 0x40, 0x7E, 0x40, 0x7F }, // Ø 0xD8 216
{ 0x3F, 0x20, 0x3F, 0x20, 0x7F }, // Ù 0xD9 217
{ 0x01, 0x7F, 0x48, 0x48, 0x30 }, // Ú 0xDA 218
{ 0x7F, 0x48, 0x30, 0x00, 0x7F }, // Û 0xDB 219
{ 0x00, 0x7F, 0x48, 0x48, 0x30 }, // Ü 0xDC 220
{ 0x22, 0x41, 0x49, 0x49, 0x3E }, // Ư 0xDD 221
{ 0x7F, 0x08, 0x3E, 0x41, 0x3E }, // ̃ 0xDE 222
{ 0x46, 0x29, 0x19, 0x09, 0x7F }, // ß 0xDF 223
{ 0x20, 0x54, 0x54, 0x54, 0x78 }, // à 0xE0 224
{ 0x3C, 0x4A, 0x4A, 0x4A, 0x31 }, // á 0xE1 225
{ 0x7C, 0x54, 0x54, 0x28, 0x00 }, // â 0xE2 226
{ 0x7C, 0x04, 0x04, 0x0C, 0x00 }, // ă 0xE3 227
{ 0x60, 0x3C, 0x24, 0x3C, 0x60 }, // ä 0xE4 228
{ 0x38, 0x54, 0x54, 0x54, 0x18 }, // å 0xE5 229
{ 0x6C, 0x10, 0x7C, 0x10, 0x6C }, // æ 0xE6 230
{ 0x00, 0x44, 0x54, 0x54, 0x28 }, // ç 0xE7 231
{ 0x7C, 0x20, 0x10, 0x08, 0x7C }, // è 0xE8 232
{ 0x7C, 0x21, 0x12, 0x09, 0x7C }, // é 0xE9 233
{ 0x7C, 0x10, 0x28, 0x44, 0x00 }, // ê 0xEA 234
{ 0x40, 0x38, 0x04, 0x04, 0x7C }, // ë 0xEB 235
{ 0x7C, 0x08, 0x10, 0x08, 0x7C }, // ́ 0xEC 236
{ 0x7C, 0x10, 0x10, 0x10, 0x7C }, // í 0xED 237
{ 0x38, 0x44, 0x44, 0x44, 0x38 }, // î 0xEE 238
{ 0x7C, 0x04, 0x04, 0x04, 0x7C }, // ï 0xEF 239
{ 0x7C, 0x14, 0x14, 0x14, 0x08 }, // đ 0xF0 240
{ 0x38, 0x44, 0x44, 0x44, 0x00 }, // ñ 0xF1 241
{ 0x04, 0x04, 0x7C, 0x04, 0x04 }, // ̣ 0xF2 242
{ 0x0C, 0x50, 0x50, 0x50, 0x3C }, // ó 0xF3 243
{ 0x08, 0x14, 0x7C, 0x14, 0x08 }, // ô 0xF4 244
{ 0x44, 0x28, 0x10, 0x28, 0x44 }, // ơ 0xF5 245
{ 0x3C, 0x20, 0x20, 0x3C, 0x60 }, // ö 0xF6 246
{ 0x0C, 0x10, 0x10, 0x10, 0x7C }, // ÷ 0xF7 247
{ 0x7C, 0x40, 0x7C, 0x40, 0x7C }, // ø 0xF8 248
{ 0x3C, 0x20, 0x3C, 0x20, 0x7C }, // ù 0xF9 249
{ 0x04, 0x7C, 0x50, 0x50, 0x20 }, // ú 0xFA 250
{ 0x7C, 0x50, 0x20, 0x00, 0x7C }, // û 0xFB 251
{ 0x00, 0x7C, 0x50, 0x50, 0x20 }, // ü 0xFC 252
{ 0x28, 0x44, 0x54, 0x54, 0x38 }, // ư 0xFD 253
{ 0x7C, 0x10, 0x38, 0x44, 0x38 }, // ₫ 0xFE 254
{ 0x48, 0x54, 0x34, 0x14, 0x7C } // ÿ 0xFF 255
};

Зеркальное отображение

Хотелось бы реализацию настройки в приложении для зеркального отображения.
Например, если есть гирлянда в окне, чтобы можно было развернуть изображение наружу или внутрь.

dawnColorSat2 causes a section type conflict with __c

Добрый день!

Вынужден переоткрыть ранее закрытый issue.

Получил такую же ошибку при компиляции Вашей программы.

"dawnColorSat2 causes a section type conflict with __c"

скетч effects.ino.

При этом dawnColorSat с таким же содержимым ошибок не вызывает.

Настройки компиляции, версия Arduino IDE прилагаются.

В чем может быть проблема?
65448905-8873a980-de42-11e9-8729-e5d348c07ec1 1
65448912-8dd0f400-de42-11e9-96cf-9f365826a892 1

Спасибо!

Картинка сбрасывается после таймаута

В режиме загрузки картинки - по истечении таймаута программа переходит обратно в демо режим. ИМХО было бы логично сохранять картинку или до сброса или до принудительного перевода экрана в режим отличный от картинки (например если хочешь отображать логотип до тех пор пока не сбросишь его)

WiFi Password

В программе длинна пароля на WiFi точку ограничина 16 символами. А можно как то увеличить до 24 хотя бы? у меня пароль длинней и я не могу подключить ее к своему роутеру :(

Проблема направлением бегущей строки текста при отзеркаливании

Столкнулся с такой проблемой:

Собираю матрицу "на окне", "лицом" к себе, т.е. говоря словами прошивки -

#define MATRIX_TYPE 0​
#define CONNECTION_ANGLE 0​
#define STRIP_DIRECTION 1​
Сама матрица нанесена на окно с его левого нижнего угла в правый и далее зигзагом.

Т.е. вот так: https://prnt.sc/qa4dg9

По-умолчанию, текст выводится так, чтобы его было видно "из квартиры", т.е. стоя "лицом" к матрице.
Бегущая строка при этом идет из правого угла в левый, буквы в "нормальном" виде, т.е. глядя из кваритры - все ок, глядя из улицы - текст "отзеркален" и идет "не в ту сторону".

Т.е. вид изнутри квартиры: http://prntscr.com/qa4dml

Вид с улицы: http://prntscr.com/qa4dqc

В настройках прошивки конечно же есть параметр

#define MIRR_V 1 - и в таком случае буквы "отзеркаливаются" и их видно "правильными" со стороны улицы.

Но направление текста при этом не меняется, и с точки зрения зрителя с улицы оно идет из левого угла в правый, хоть и буквы
при этом выглядят правильно.

Т.е. вот так: http://prntscr.com/qa4dtg

Можно ли как-то поменять направление текста, чтобы он шел "из правого угла в левый" для зрителя из улицы, т.е. того, к которому матрица повернута "изнанкой"?

Добавление цветомузыки и управления от микрофона

Есть ли возможность прикрутить эффект цветомузыки? Через микрофон (LineOut) на единственный аналоговый вход ESP8266. Также можно выключать будильник хлопком в ладоши.. или включать следующий режим эффектов двойным хлопком.

Спаял матрицу 15х20 размером 3,8х3,5 метра на весь потолок на микроконтроллере ESP8266-12E, который разместил внутри блока питания 5В 20А. Чтобы избавиться от наводок и глюков, использовал коаксиальный кабель на DIN светодиодной ленты, ферритовое кольцо на линии питания контроллера, обвязку из конденсаторов, а также пришлось понизить напряжение на светодиодах до 4.4В. Причём на ардуине с её питанием 5В глюки на матрице большого размера тоже налюдаются, если не понизить напряжение до 4.4В. Глюки проявляются на контрастных режимах с резким переключением яркости диодов, и добавление конденсатора в линию питания контроллера и ленты ничего не даёт. А при пониженном напряжении ничего не глючит, нет спонтанных вспышек и артефактов, но яркость сильно ниже, и цветовой спектр диодов становится очень узкий. Увличение расстояния контроллера от блока питания и его экранирование фольгой не влияют на глюки. Они явно связаны с рассогласованием уровней сигнала контроллера и питания.

температура

Нет ли простого способа вывести температуру рядом с часами, с датчика через homeassistant?

Скорость игр в демо-режиме

Уважаемый vvip-68, не могли бы проверить такой момент: выбираю каждую из игр, настраиваю скорость - минимальную. Но когда выбираю режим "демо", то скорость возрастает на максимум или почти на максимум. Только в играх. Если снова захожу в игры - скорость стоит в минимуме. В остальных эффектах скорость сохраняется такой, какую выбрал (опять же минимум, например) и самопроизвольно не меняется.

Не видит ленту.

Добрый вечер, недавно собрал данную сборку на NodeMcu и столкнулся с такой проблемой, плата не выводит изображение на ленту, все провода подключены в том числе и питание и на ленту и на плату, к приложению плата подключается.
Что делать?

О Android

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

Прошу помочь!!

Привет. Не подключается с приложки к плате, что делать? Телефон Xiaomi. Точка доступа WiFi есть, но называется не MatrixAP(как у Гивера на видео), а FireLink_513DC6. К точке подключается и само не отключается. Плата WeMos D1 R1. Прошито как надо.
Но.. в приложении тупо не подключается.

Wifi

Добрый вечер, долго собирался прежде чем написать. Изначально все режимы зависали на 30 секунды, пробовал все, питания понижал и тд, помогло только перепрошивка платы до заводских. Сейчас все работает, но до того момента,пока не подключу матрицу к домашнему вайфаю. У меня ип 192.168.31.1 у роутра, я в скетч ввожу например 192.168.31.100, прошивается, режимы работают, но больше нет точки доступа самой платы, не возможно подключится. Пробовал и в скетче вводить и в приложение, так же менял каждый раз eeprom.

Включение/выключение по расписанию

Здравствуйте.
Есть ли возможность возможность сделать включение/выключение (опционально) матрицы по расписанию (например, включение в 17.30, выключение в 23.00). Т.е. ESP8266 включена постоянно, а на матрицу сигнал подается согласно расписания. Как вариант, возможно использовать компьютерный блок питания ATX - ESP8266 питать от 5В дежурного режима блока питания, а для питания ленты использовать линию 5В, управлять блоком питания можно сигналом с ESP8266.

Не могу разобраться, не работают 3 эффекта

При выборе в приложении эффектов "Дыхание", "Цвета" и "Радуга Пикс" Картинка на матрице виснет, так же, чекбоксы "Часы поверх эффекта" и "Использовать в Демо-режиме" становятся неактивными. При выборе любого другого эффекта всё работает. Node Mcu менял, прошивал разными прошивками, и от Gyvera, и этой, эффекта ноль, приложение переустанавливал. Что я делаю не так?

Приложение не конектитса никак

Я сделал матрицу без датчика свіета и проигривателя сначала она нивкакую нехотела пото часов в 12 ночи я смог подключитса через ее точку доступа потом като (сам хз как) и по вайфаю
но ето било не долог всеволиш неделю теперь она опять нивкакую нехочет конектитма
помоги я незнаю штоделать

Матрица 27х6 nodemcu не отображаются часы на фоне эффектов что я делаю не так?

У меня матрица 27х6 nodemcu не отображаются часы поверх эффекта что я делаю не так?
Что может быть нетак. В программе невозможно выбрать эффект Часы, при его выборе автоматически включается другой эффект - звездопад.
В программе WiFi Matrix в разделе Текст - сообщение что Размеры матрицы недостаточны но текст отображается немного подрезанным снизу - можно ли както уменьшить шрифт разблокировать этот раздел в программе?
Хотелось использовать матрицу как часы с бегущей строкой, очень хорошо работают игры runner и змейка)

Прошу подсказать

Плата прошилась (NodeMcu Lua v3)

В конце есть сообщение:

Leaving...
Hard resetting via RTS pin...

Но похоже перезагрузка не происходит и скетч не выполняется (или плату нужно самому перезагрузить?)
В мониторинге порта только это:

21:04:52.697 -> ⸮⸮⸮l⸮⸮⸮⸮⸮⸮⸮⸮

Соответственно нужен совет, что не так инструкции уже 10 раз пересмотрел

Annoying Pixel Dot

Hi!
I tried to get this project running with a 16x16 pixel matrix powered by NodeMCU.

I compiled the software with lots of different variations of the ESP Board-Libary and the FastLED Libary but in any way I get an annoying first pixel dot in the bottom left corner.
It depends on the libaries I used if its green, blue, pink, flashing or static.

Picture: https://ibb.co/0hMYh2X

(I know, this project is outdated but I really wanted to get rid of this pixel, beacause I still running into trouble with the Android app when I am using the GyverPanel Code)

Проблема с приложением PanelWifi

Не происходит подключение по wifi со смартфона.
Опишу свои действия по шагам.

  1. Подключился к точке доступа, который раздал esp8266

  2. В настройках прописал имя сети, пароль и присвоил ip, устройство отключило точку доступа, в роутере появилось новое устройство с заданным ранее ip ( подсеть правильная, остальные устройство такие же
    image
    image
    3)С компьютера все пингуется
    image

  3. Пробую уже по этому ip подключиться в приложении WiFiPanel. Не подключается
    image

В роутере отключения изоляция клиентов
image

Телефон: Xiaomi Mi Mix 2s
Роутер Xiaomi Mi WiFi Router 4A GIGABIT с кастомной прошивкой Padavan

Включение по расписанию

Приветствую. Настроил включение-выключение по времени. Но, включена матрица была в демо режиме с автосменой эффектов, потом выключается, а включается в следующий раз всегда в ручном режиме. Причем не важно какая цифра стоит в поле "авторежим через" сам авторежим не включается. Только вручную каждый раз.

Веб интерфейс

Привет!
Управление только через приложение? Веб интерфейса нет?

Проблема с приложением android

  1. В приложении если при работе с рисовалкой из неё выйти и снова войти все ячейки пустые, но продолжается рисование как будто они заполнены

  2. Идея модернизации: сделать в рисовалке кнопку получить код, чтоб то что нарисовано получить в виде кода, и желательно в том же виде, который вставляется во вкладке анимация, и кнопку вставить код. Это позволит хранить и не перерисовывать одни и те же рисунки.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.