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

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

  1. IvanUA

    IvanUA Нерд

    В сети есть множество часов такого тип.
    Но мне все время что-то не нравилось. Хотелось сделать как говорят под себя.
    Фактически, то что получилось, является третьей итерацией часов на данном индикаторе.
    Не скажу что меня все устраивает, но по крайней мере, это уже очень близко к финальному решению данной задачи.
    И так, что удалось сделать:
    - простой интуитивный интерфейс (правда на украинском языке)
    - погода и прогноз погоды на следующий день для двух городов
    - переведены на украинский язык все сообщения погоды + основные(и не только) города Украины
    - курсы валют (пока еще не закончены)
    - синхронизация времени каждый час
    - проверка доступности WiFi и при необходимости переподключение
    - анимированное двоеточие (указывает на подключение к WiFi и синхронизацию времени) точки по разному отображаются)))
    - регулировка яркости экрана в зависимости от времени суток
    - все настройки сохраняются и после выключения нет необходимости что то настраивать по новой
    - в WEB интерфейсе можно настроить:
    -- подключение к сети WiFI
    -- сервер времени и часовую зону
    -- сервер погоды и указать какие города отображать на экране
    -- настроить яркость экрана в разное время суток
    -- возможность обновления прошивки по воздуху
    -- ну и информация если вдруг чего пошло не так.

    Изначально весь проект собирался и отлаживался на NodeMCU v3. Но с расчетом на то что в последствии он будет реализован на ESP-01.

    Так и случилось, но есть подводные камни.
    Конечно же в последний момент перед упаковкой всего этого дела в корпус, дал о себе знать - маленький объем памяти в ESP-01
    Если не пользоваться прошивкой по воздуху, то все прекрасно... в противном случае напряженка с памятью для хранения WEB интерфейса.
    Думаю что и это можно будет как то побороть, но пока у меня нет на это особого времени, все мысли уже в в новом проекте.

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


    Ссылка на скейтч - https://drive.google.com/open?id=0B1xzsAFF0-JwMm1Gc0hHc1pUUHM

    Будут вопросы - задавайте, как смогу, так отвечу
     
    BAR__MEN, Small_d, 9xA59kK и 2 другим нравится это.
  2. IvanUA

    IvanUA Нерд

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

    Если интересно, могу воспроизвести и выложить все исходники))))
     
    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 КБ
      Просмотров:
      9
  18. IvanUA

    IvanUA Нерд

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

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

    Oleksandr54 Нуб

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

    IvanUA Нерд

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