Часы на ESP-01(NodeMCU) + MAX7219 + WEB интерфейс

Тема в разделе "Глядите, что я сделал", создана пользователем IvanUA, 28 авг 2017.

?

Вы повторили это проект?

  1. Нет (просто ознакомился)

    8 голосов
    9,9%
  2. Да, один раз (попробовал)

    29 голосов
    35,8%
  3. Да, не однократно

    44 голосов
    54,3%
Можно выбрать сразу несколько вариантов.
  1. IvanUA

    IvanUA Гуру

    ver.25.10.2018
    • веб интерфейс опять переместился из флешь памяти в тело скетча (так загрузка страниц происходит быстрее (нет больше папки data);
    • время каждую минуту сохраняется во флешь память, теперь если пропал интернет и одновременно часы сбросились, то при включении время будет идти дальше, естественно с небольшим опозданием;
    • точка доступа теперь появляется только при включении или после сброса;
    • повторное подключение к wifi - теперь происходит более незаметно, видно только замирание точек на экране;
    • если часам не удалось более 100 минут найти wifi то происходит программный сброс, надо только не забывать после включения часов один раз нажать кнопку ресет, иначе при программном сбросе часы зависнут, думаю что это скорее проблема ЕСП8266;
    • в скетче есть часть закомментированного кода для работы с новыми ключами для прогноза погоды, если кому интересно можно поэкспериментировать;
    • в папке есть скомпилированный бинарник на случай обновления библиотек - и накрытия всех функций медным тазом)))

    ver.10.08.2018
    Что появилось в новой версии?

    • Переделан веб интерфейс - он стал легче, и у кого были проблемы с длительной загрузкой, это должно помочь;
    • Добавлены 5 будильников. Можно выставить их работу: однократно, по дням недели, по будням и так далее;
    • Добавлена кнопка для выключения будильника или отображения температуры в комнате;
    • Добавлены 9 знаменательных дат. В поле сообщения можно вписать до 25 знаков кириллицы;
    • Есть возможность указать в какой период времени будут работать знаменательные даты, в начале каждого часа;
    • В вебе можно выбрать тип используемого базера (активный/пассивный);
    • В ночное время можно включить отображение только часов;
    • Поправлена процедура сброса к заводским установкам;
    • К списку датчиков добавлен BME280.

    ver.30.05.2018
    Краткое описание:
    - при первом подключении часы создают свою точку доступа для внесения данных в настройки устройства;
    - простой интуитивно понятный WEB интерфейс;
    - отображение настроек в WEB и информации на экране часов на 6 языках;
    - языки: [​IMG][​IMG]
    - прогноз погоды на сегодня и на завтра в виде бегущей строки;
    - обновление прогноза каждые пол часа;
    - в настройках можно запретить выводить прогноза или указать в какое время выводить;
    - синхронизация времени каждый час, если не удачно, то каждую минуту;
    - в настройках можно изменить сервер точного времени и часовую зону;
    - проверка доступности WiFi и при потере сети - повторное подключение;
    - в настройках сети можно задать имя, пароль сети и точки доступа устройства;
    - анимированное двоеточие при отображении часов (указывает на подключение к сети WiFi и синхронизацию времени);
    - регулировка яркости экрана в зависимости от времени суток или автоматически при наличии фоторезистора (модуля света);
    - реализована возможность получать информацию о температуре, влажности, давлении и пр. из датчиков типа: DS18B20, SI7021, BMP280, DHT22;
    - возможно в качестве внешнего датчика температуры использовать данные получаемые по протоколу MQTT;
    - возможно передавать получаемые данные от датчиков на MQTT сервер - и далее их использовать в менеджере умного дома;
    - все настройки сохраняются в энергонезависимую память;
    - обновлять прошивку можно через: UART интерфейс, WEB интерфейс или ОТА.

    Планируется добавить:
    - будильники;
    - памятные даты;
    - обновление прошивки через гитхаб.

    Я бы рекомендовал к использованию ЕСП-12

    Ссылка на видео с маленькой демонстрацией -



    Старая версия v5.21 - (скетч + бинарник) https://drive.google.com/file/d/1tNNPWbC2QKpgI448WysQTUDG4bmwNRY5/view?usp=sharing

    Последние прошивки - https://github.com/IZ76/ESP8266_Clock_Weather-station_Informer_with_WEB_interface


    Если у вас не появляется точка доступа - по рекомендации big_alex сначала прошиваем бинарник http://forum.amperka.ru/attachments/blank-zip.11097/ затем прошивку часов




    Схема подключения модуля ESP 12

    [​IMG]

    Если вы заливаете последнюю прошивку, то не забывайте, что веб странички которые находятся в папке data заливаются через АрдуиноИДЕ - при помощи отдельного плагина (пункта меню)
    [​IMG]

    Если этого пункта нет, то надо скачать архив по адресу
    https://github.com/esp8266/arduino-esp8266fs-plugin/releases/download/0.3.0/ESP8266FS-0.3.0.zip
    там внутри будет файлик, esp8266fs.jar
    Его ложим в папку где установлена АрдуинаИДЕ , что бы путь к нему был таим....
    /Arduino/tools/ESP8266FS/tool/esp8266fs.jar
    После этого закрыть и открыть АрдуиноИДЕ и этот пункт появится в меню.


    Скрины примеров WEB меню настройки устройства

    [​IMG][​IMG]

    [​IMG][​IMG]

    [​IMG][​IMG]

    ПС. Данный проект я делал и продолжаю делать для себя лично и для людей которым это интересно... Свои персональные хотелки, пожалуйста реализовывайте сами. Вас что то не устраивает, ищите другие проекты. В сети полно разного рода устройств. Я не с кем не собираюсь соревноваться, хуже или лучше. По этому есть то, что есть. Хотите что то эдакое - есть тема "Закажу проект".
     
    Последнее редактирование: 26 окт 2018
    roma-nw, ig0r75, kiv69 и 22 другим нравится это.
  2. IvanUA

    IvanUA Гуру

    Кстати вот о чем подумалось.
    Из более ранних работ, есть скейтч для часов собранных на таком же индикаторе но на АрдуиноМини.
    Из плюсов:
    - реализована функция будильников, можно выставить до 99 будильников
    - можно выбрать различные мелодии в разный день недели
    - управление и настройка осуществляется 3-мя кнопками
    - присутствует градусник (датчик температуры)
    - есть вариант с радиоприемником на RDA5807M
    - может еще чего, но уже забыл.)))

    Если интересно, могу воспроизвести и выложить все исходники))))
     
    Deniskyn и Small_d нравится это.
  3. Small_d

    Small_d Нуб

    Очень интересно. Было бы не плохо. Как раз нужны подобные часы на работу. Дисплей подходит по размеру на стары сломанные часы, и минимальные размеры остальных компонентов, по сравнению с уной или мегой, как раз то, что нужно.

    Поэтому будем признательны ;)
     
  4. BAR__MEN

    BAR__MEN Гуру

    Скетч?!Эмм я думал что в Espruino это скрипт?)
     
  5. IvanUA

    IvanUA Гуру

    Не вопрос, завтра попробую собрать)))
     
    Small_d нравится это.
  6. IvanUA

    IvanUA Гуру

    Ээээ. Я пока пишу под ArduinoIDE - мне казалось что там таки скейтчи)))).
    Посмотрите в архиве, там есть файлы с расширением *.ino *.h *.htm i td.
    Может я конечно не прав, поправьте.
     
  7. BAR__MEN

    BAR__MEN Гуру

    Ну тогда правы
     
  8. IvanUA

    IvanUA Гуру

    Выложил в параллельной теме http://forum.amperka.ru/threads/Часы-на-arduino-nano-max7219-fm-приемник.12793/
     
    Small_d нравится это.
  9. Oleksandr54

    Oleksandr54 Нерд

    Прошил NodeMCU не работает WEB интерфейс, нужна помощь HELP!
     
  10. IvanUA

    IvanUA Гуру

    А вы файлы в флеш память залили? Если нет, то сделайте как на картинке
     

    Вложения:

  11. Oleksandr54

    Oleksandr54 Нерд

    Заработало !!! Лучшие часы которые я видел. Респект тебе ЧЕЛОВЕК.
     
  12. IvanUA

    IvanUA Гуру

    Пользуйтесь.
    Проект еще не закончен, по части курса валют.
    Так что если будут идеи пишите...
     
  13. Oleksandr54

    Oleksandr54 Нерд

  14. Oleksandr54

    Oleksandr54 Нерд

    При тестировании, бывает, настройки слетают с периодичностью 4-5 дней. Проблему пока не установил, Блок питания уже менял. В чем может быть проблема и бывал ли такой случай у Вас ?
     
  15. IvanUA

    IvanUA Гуру

    Да пока работают. А что имеется ввиду под настройки слетают?
    Все настройки хранятся в файле config.json во флеш памяти.
     
  16. Oleksandr54

    Oleksandr54 Нерд

    На часах перевернутое изображение (не 90 градусов) становится, захожу в WEB - все пусто: ни названия сети, ни пароля, ни серверов. Скорее всего флеш память обнуляеться. Может быть из-за неустойчивого интернета или переполнение буфера ?
     
  17. IvanUA

    IvanUA Гуру

    Попробуйте при прошивке выделить больше места под флеш память. Возможно что по какой то причине переполняется флешь и трет ваш файл настройки....
     

    Вложения:

    • 111.jpg
      111.jpg
      Размер файла:
      64 КБ
      Просмотров:
      805
  18. IvanUA

    IvanUA Гуру

    А вообще до глюка и после посмотрите что у вас записано в вашем файле конфиг.
    В браузере....192.168.*.***/config.json - выведет вам ваш файлик

    вместо звездочек - адрес вашего устройства
     
  19. Oleksandr54

    Oleksandr54 Нерд

    Скорей всего проблема с памятью (пост #17) буду пробовать. Для NodeMCU можно цеплять бипер на GPIO1: #define buzzerPin 1 // TX/GPIO1 ? Спасибо за совет.
     
  20. IvanUA

    IvanUA Гуру

    В принципе нет разницы куда цеплять базер. Выбирайте любой порт и прописывайте в настройках.