Часы на esp8266 и max7219 + android управление

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

?

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

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

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

    111 голосов
    42,0%
  3. Да, не однократно

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

    IvanUA Гуру

    А как узнать, кратковременное или нет, было пропадание? РТЦ - нет, инета нет......
    1 - реализовано
    2 - реализовано просто 30 минут меняем на 1-5 минут
    3 - реализовано, после первичного запуска и отработки времени (сейчас 30 минут) часы будут каждые 5 минут пробовать подключиться к вифи...
    Поверьте, это не наш сегмент. Цель проекта не поднести все на блюдце, а помочь людям разобраться и начать творить. Ну как то так)))))
    Да не за что, Вам спасибо за участие.
    Хочу добить таки двухстрочку и займусь однострочной, тем более что у меня два домашних экземпляра ждут обновки)))
     
  2. chipmoca

    chipmoca Гик

    Иван, если не сложно, можете к этому времени прибавить часовой пояс?
    Время обновления: 2020-01-05 05:30
    Время восхода солнца: 4:23
    Время заката: 12:22
     
    RonAD нравится это.
  3. IvanUA

    IvanUA Гуру

    В принципе это возможно. Вопрос надо ли? Хотя для тренировки мозга можно))) Там правда надо будет наверное еще учесть переход на летнее время....
     
    RonAD и chipmoca нравится это.
  4. max50a5

    max50a5 Гик

    Последнее редактирование: 5 янв 2020
  5. RonAD

    RonAD Нерд

    Я тоже прошу об этом:
    Я забочусь о показе
    -sunrise
    -sunset
    К сожалению, он показывает только для меня время по Гринвичу, я пытался добавить час, но я не могу ...
     
  6. IvanUA

    IvanUA Гуру

    Какая у вас часовая зона? (your time zone?)
     
  7. RonAD

    RonAD Нерд

    GMT + 1
     
  8. Madcat

    Madcat Нуб

    Никак. ЕслиRTC нету в конфигурации(плюс у нас же автодетект вроде есть на старте), то время не выводим, пока не поймаем синхронизацию с NTP. Это же логично?
     
  9. IvanUA

    IvanUA Гуру

    Я не зря спросил за тайм зону. Дело в том что я внес изменения которые не учитывают не целочисленные значения временных зон.
    Простыми словами - если тайм зона к примеру +3:30, то скетч не будет учитывать минуты. Мне просто было лень возиться еще и с конвертацией минут)))))
    Короче говоря правку я сделал. Особого времени тестировать у меня не было, так что одни глаза хорошо, но гляньте еще вы, нет ли где ошибки
    Код (C++):
      int sr = location_sunrise.substring(0, 2).toInt() + (int)hourCorr;
      if(sr>23) sr -= 24;
      if(sr<0) sr += 24;
      String sunrise = String(sr) + location_sunrise.substring(2, 5);
      int ss = location_sunset.substring(0, 2).toInt() + (int)hourCorr;
      if(ss>23) ss -= 24;
      if(ss<0) ss += 24;
      String sunset = String(ss) + location_sunset.substring(2, 5);
      int st = location_localtime.substring(11, 13).toInt() + (int)hourCorr;
      int ly = location_localtime.substring(0, 4).toInt();
      byte lm = location_localtime.substring(5, 7).toInt();
      byte ld = location_localtime.substring(8, 10).toInt();
      if(st>23) {
        st -= 24;
        ld++;
        if(ld==32 || (ld==31 && (lm==4 || lm==6 || lm==9 || lm==11)) || (lm==2 && ((ld==29 && ly%4!=0) || (ld==30 && ly%4==0)))) {
          ld=1;
          lm++;
          if(lm>12){
            lm=1;
            ly++;
          }
        }
      }
      if(st<0) {
        st += 24;
        ld--;
        if(ld<1) {
          ld = 0 + ((lm==5 || lm==7 || lm==10 || lm==12 || (lm==3 && ly%4==0))?30:(lm==3 && ly%4!=0)?29:31);
          lm--;
          if(lm<1){
            lm=12;
            ly--;
          }
        }
      }
      String lt = String(ly) + "-" + (lm<10?"0":"") + String(lm) + "-" + (ld<10?"0":"") + String(ld) + " " + (st<10?"0":"") + String(st) + location_localtime.substring(13, 16);
     
    На гитхабе обновил последнюю двухстрочную версию.
     
    chipmoca и max50a5 нравится это.
  10. max50a5

    max50a5 Гик

    Иван, здравствуйте!
    Галка на ком-порту почему-то не сохраняется. В версии 11 все работает.
     
  11. IvanUA

    IvanUA Гуру

    Ага, куда то пропал "хвост" json строки. Поправил.
     
    max50a5 нравится это.
  12. max50a5

    max50a5 Гик

  13. chipmoca

    chipmoca Гик

    Иван, время (восхода итд) показывает нормально, com port- сохраняется. Вот только не как не могу понять, где прописать эти два датчика MQTT? В настройках mqtt вроде один датчик можно прописать, и то в данном случае на tU берутся данные с народмон. Или я туплю?
    upload_2020-1-6_22-1-37.png
     
  14. max50a5

    max50a5 Гик

    Иван, подскажите, как сделать, чтобы автояркость работала только в дневном режиме?
    Заранее спасибо.
     
  15. Pitruxa

    Pitruxa Гик

    Что-то не получается у меня самостоятельно реализовать отправку данных с часов (Tu, TD,P,H) на www.thingspeak.com :(
     
  16. chipmoca

    chipmoca Гик

    Тоже долго не мог отправить, потом перезагрузил часы и все полетело..
    ups - я на белый IP отправлял.
     
  17. Pitruxa

    Pitruxa Гик

    Вы точно сейчас про сервис www.thingspeak.com ???
     
  18. chipmoca

    chipmoca Гик

    Нет, у меня брокер на отдельном сервере с белым IP. Мысль была в перезагрузке...
     
  19. Deniskyn

    Deniskyn Гик

    Я уже было делал FAQ, но потом стырили ноут из машины и файлик потерялся, а так готов помогать составлении мануала....
    ПС
    Но как по мне лучше не мануал, а таки FAQ.....
     
    Последнее редактирование: 8 янв 2020
  20. IvanUA

    IvanUA Гуру

    Все датчики представлены в единичном экземпляре. В tD, tU и в tH проста выбираются эти датчики. Если надо два датчика из MQTT, то это надо добавить в коде еще один датчик такого типа.
    ПС. Думаю что добавлю еще пару датчиков MQTT, тем более что у меня была идея переделать процедуру получения данных из MQTT сообщений
     
    лкще7, max50a5, Deniskyn и ещё 1-му нравится это.