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

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

?

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

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

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

    62 голосов
    41,6%
  3. Да, не однократно

    73 голосов
    49,0%
Можно выбрать сразу несколько вариантов.
  1. RonAD

    RonAD Нуб

    В этом случае попробуйте загрузить эскиз, а не бинарник.
     
  2. drserj

    drserj Нерд

    Двухстрочная версия (последняя) без RTC часовой пояс +2 при включении/перезагрузке выводит время на час больше. При нажатии на "SAVE" или "SETTING DATE/TIME FROM PC" время выводится нормально. Такое впечатление, что при инициализации проблем с зимним/летним временем.
    Второй, не то, что бы глюк, но.... При отсутствии RTC и установленной птичке в вебморде часы в 2.31 тупо останавливаются :) Ну можно же проанализировать эту ситуацию и сделать защиту "от дурака" :) Накрайняк заблокировать в настройках возможность включения при отсутствии модуля. Позжее и сам поправлю, просто правки будут кардинальными с выкашиванием части функционала, а кто-то нарвется на те же грабли что и я и проспит :)
    Да, и еще пара моментов. Хотелось бы выбор вывода давления (ГПа / мм.рт.ст.). На прошлой версии себе сделал в ГПа - мне удобнее, у меня все девайсы в этом формате. И второе - не знаю, не разбирался но, в 2х-строчной версии хотелось бы иметь возможность менять яркость строк раздельно. Даже если делать нижнюю строку 7 точек - всё равно имеет место слияние. Если бы нижнюю строку сделать чуть тусклее - думается разделение строк было бы более явным. А так же третье (тоже делал себе в прошлой версии) - вместо значков - слова температура, давление, влажность. Так легче воспринимается строка.
     
    Последнее редактирование: 22 ноя 2019
  3. RonAD

    RonAD Нуб

    такая же ситуация в 1-строчной версии - подтверждаю
     
  4. drserj

    drserj Нерд

    2 IvanUA:


    Код (C++):
      // ---------- ВИВІД НА ЕКРАН ГОДИННИКА АБО ТЕМПЕРАТУРИ ЧИ ВОЛОГОСТІ------------------------

      if(!alarm_stat && secFr == 0) {
        if((clockNight && hour>=timeDay && hour<timeNight) || !clockNight) {   //???????????????????????????????????????????
          if(second == 25 && t1 != 85 && sensorDom) {
            showSimpleTemp();
          } else if(second == 38 && sensorUl && t3 != 85) {
            showSimpleTempU();
          } else if(second == 48 && (sensorHumi == 2 || sensorHumi == 4 || sensorHumi == 5) && (h1!=0 && h2!=0)) {
            showSimpleHum();
    А нет ли туточки апшипочки (h1!=0 && h2!=0) ? почему h2 не может быть равным 0 ? сейчас у меня влажность 30.8 и ее значение ну никак на экран не выводится.... Допускаю, что h1 действительно вряд ли будет 0, ибо мы все умрем, но h2... :)
     
  5. Al_Nai_ex

    Al_Nai_ex Нуб

    Приветствую всех! Я - новичок на форуме, повторил проект Ивана. Соответственно вопросов два:
    - Куда отправить посильный donation для многоуважаемого IvanUA?
    - Вижу в новой версии часов постоянные упоминания RTC. Правильно ли понимаю, что это означает возможность подключения внешнего модуля независимого времени (с батарейкой), который заберет единожды показания с NTP и в случае пропадания интернета, часы продолжат показывать точное время, а не 1970й год? Если это так, то не вижу ни одной схемы подключения RTC - куда втыкать эту штуку?
    Заранее спасибо!
     
  6. Yarik03

    Yarik03 Нуб

    На шину I2C, паралельно BME280.
     
  7. Pitruxa

    Pitruxa Нерд

    Добрый вечер, уважаемые форумчане!
    Вот дошли таки руки начать осваивать MQTT сервер. Все данные с часов получаю на смартфон, кроме показателя уличной температуры.
    Дело в том, что уличный датчик у меня показания шлёт на Narodmon, а оттуда их забирают часы.
    Писал получать с MQTT параметр "ESP/tempUl" и параметр пробовал "Ulica/temp" - всё равно на смарт показания не приходят. Хотя по информации из СОМ порта вижу, что на MQTT показания уличной температуры уходят.
    Что посоветуете?
     
  8. Pitruxa

    Pitruxa Нерд

    Всё, заработало, в другом приложении.
     
  9. drserj

    drserj Нерд

    В функции getNTPtime переменная month равна по-умолчанию 4. Если есть RTC она берет оттуда правильное значение (ну, если оно там было :) )
    После получения времени определяется правильно и month, но поздно, строка перевода на летнее время уже сработала :)

    Код (C++):
    if(month > 3 && month < 10) summerTime = true;              // Sommerzeit лічимо в квіні, травні, червені, липні, серпені, вересені
    Ленивый вариант - вызвать второй раз getNTPtime при старте, но частенько она почему-то вылетает с ошибкой. Видимо, серверу не нравится частое обращение. Ну и как самый тупой вариант - закоментить летнее время :)
    Лучше всего переделать функцию получения времени....

    Кстати, проверка корректности путем сравнения 3х попыток не совсем удачна. Пример, на который нарвался сам:

    22:43:59.891 -> 02:40:42 Proba #1 23:43:59
    22:44:01.530 -> Proba #2 23:44:00
    22:44:01.530 -> 02:40:52 ERROR TIME!!!

    Сменилась минута между попытками в процессе получения времени и всё... а следующая проверка через час ? :)

    Процедуру надо переделывать...
     
    Последнее редактирование: 25 ноя 2019
  10. Vladis_a

    Vladis_a Гик

    Если не секрет, в каком?
    Тоже сейчас пытаюсь разбираться с MQTT. У меня на сервере (на котором стоит Xpenology, Domoticz) установлен теперь еще и Mosquitto.
    Так вот данные из Domoticz вижу, а с часов - нет. В настройках MQTT на часах указал IP-адрес и порт локального Mosquitto (192.168.1.2 и порт 1883), подписался на все топики, но с часов ничего не поступает.
     
  11. Deniskyn

    Deniskyn Гик

    Странный глюк... галка rtc то есть, но нет (активна или нет) и время скачет то в + то в - час... Кто наблюдал подобное?
     
  12. max50a5

    max50a5 Нерд

    У меня было такое. Думал из-за того, что плату не промыл. Промыл - пропало.
    Сейчас зашел на страницу часов - галки нет.
     
  13. Pitruxa

    Pitruxa Нерд

    Ну, у меня не локальный сервер, а Cloudmqtt.
    На локальном могут быть проблемы с файерволами и т.п.
    А использовал изначально прогу для дистанционного получения показаний: MQTT Dash, всё показывало, кроме уличной температуры.
    Затем поставил прогу MQTT Dashboard, на ней сразу всё завелось. Потом всё с нуля переписал в первой проге и там тоже заработало (хотя ничего не менял, все переменные те же). Обе программули для Андроида.
     
    Vladis_a нравится это.
  14. Convix_Maximus

    Convix_Maximus Нерд

    Всем добрый день али ночь. Подскажите ну как заставить ттр223 сенсорную клавишу работать на reset. На выходе +, а нужен gnd. Подскажите пожалуйста как его подключить. Буду ооочень благодарен.
     
  15. max50a5

    max50a5 Нерд

    Как-то так.
     

    Вложения:

    • 776089.jpg
      776089.jpg
      Размер файла:
      161 КБ
      Просмотров:
      87
  16. Convix_Maximus

    Convix_Maximus Нерд

    Ну и что мы получим? Нужно gnd с reset, а тут на выходе +, и куда мне его?
     
  17. max50a5

    max50a5 Нерд

    Лично я получу на выходе либо плюс, либо минус.
     
  18. Convix_Maximus

    Convix_Maximus Нерд

    Так получается что светодиод постоянно горит. Спасибо за наводку с полярностью. Не провильно тестером замерил. Я так понимаю что его (светодиод) можно ликвидировать чтобы не мазолил глаза.
     
  19. max50a5

    max50a5 Нерд

    Как угодно. Перемычка А.
     
  20. Edward1968

    Edward1968 Нерд

    Pin4 подтянуть к 1 .Смотрите datfsheet.
     

    Вложения:

    • TTP223-BA6.png
      TTP223-BA6.png
      Размер файла:
      95,4 КБ
      Просмотров:
      72
    Myxa985 нравится это.