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

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

?

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

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

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

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

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

    yrbas Нерд

    Странно-я использую тот же скетч что и у вас,всё работает. Как предположение-смотрите настройки ключа (сгенерируйте другой или возьмите из темы).
     
  2. big_alex

    big_alex Гик

    Если вы изменяли что-то что сохраняется в конфиге, то после прошивки желательно удалить конфиг, что бы создался новый.
     
  3. big_alex

    big_alex Гик

    Погода обновляется в 47 секунд 15-й и 45-й минуты
    Код (C++):
    if(second == 47 && secFr == 0 && (minute == 15 || minute == 45 || updateForecastCity1 != 0 || updateForecastCity2 != 0)
    Данные с народмон получаем на 58 секунде каждой пятой минуты
    Код (C++):
    if(sensorKey != "0" && second == 58 && (minute % 5 == 0))
    Между ними 11 секунд, ожидание ответа от openweathermap максимум 5 сек., т.к. погоду берем 2 раза то это занимает максимум 10 сек. (на самом деле гораздо быстрее) остается еще 1 секунда
    Код (C++):
    while(!ESPclient.available() && repeatCounter < 10) {
        delay(500);
        if(printCom) {
          Serial.print("wait - ");
          Serial.println(repeatCounter);
        }
        repeatCounter++;
      }
    Ожидание ответа от народмон менее секунды (у меня 400 мс), но его заметно по миганию точек.
     
    Последнее редактирование: 27 мар 2018
  4. big_alex

    big_alex Гик

    Если Вы изменяете в скетче что-то ,что сохраняется в конфиге.
    Иначе после прошивки загрузится старый (существующий) конфиг.
     
  5. Kesik

    Kesik Нерд

    Приветсвую форумчане.
    Прошу помощи. Есть 8 матриц в ряд.
    Как заставить часы отображаться слева без исчезновений, а справа менялись по очереди температура внутри, снаружи и дата (если отключена погода)? Ну, а если погода включена, то как обычно бегущая строка по всем матрицам.
    Часы оставил слева, температуру и дату сдвинул вправо, шрифт изменил.

    Думаю гдето тут нужно логику работы менять


    Есть идеи? Заранее спасибо :)
     
    Последнее редактирование: 27 мар 2018
  6. IvanUA

    IvanUA Гуру

    Я не правил скетч под народмон. Я Вам в предыдущем меседже набросал кусок кода что бы проверить где затык.
    Хотите видеть дальнейшие мои мысли "в чем причина" отвечайте последовательно...
     
  7. IvanUA

    IvanUA Гуру

    У меня была только одна идея. Использовать уже готовую библиотеку, которая умеет делить один цельный экран на несколько зон
     
  8. IvanUA

    IvanUA Гуру

    Вот это другой разговор. Сейчас немного общаюсь с родиной, я позже напишу что делать дальше, ок?
     
  9. big_alex

    big_alex Гик

    Чтобы убедиться что идет запрос погоды, добавьте в код метку Serial.print("Start POGODA!!! ");
    Код (C++):
    if(forecastView && (cityID1 != "0" || cityID2 != "0")) {
          if(second == 47 && secFr == 0 && (minute == 15 || minute == 45 || updateForecastCity1 != 0 || updateForecastCity2 != 0) || weaterUpdate == true) {
            if((updateForecastCity1 != 0 || minute == 15 || minute == 45 || weaterUpdate == true) && cityID1 != "0") {
              cityID = cityID1;
              getWeatherData();
              getWeatherDataz();
    Serial.print("Start POGODA!!! ");
              if(updateForecast == 0) {
                updateForecastCity1 = 0;
              } else updateForecastCity1++;
              if(updateForecastCity1 > 239) {
                weatherStringCity1 = "     Для города #1 нет прогноза более 4-х часов!     ";
    и посмотрите в UART в 15 или 45 минут будет ли эта строка. Можно вместо нее бипером пропищать
    Код (C++):
    for(int i = 0; i < 4; i++) {
          tone(buzzerPin, 4200, 150);
          delay(200);
        }
    Если строка есть, то далее должно быть "wait - " если все нормально и "Not connection server!!!" - если что-то пошло не так.
    Можете показать вывод в UART с 15 мин 30 сек до 16 мин?
     
  10. big_alex

    big_alex Гик

    Какая у Вас скорость бегущей строки?
     
  11. Kesik

    Kesik Нерд

    Открывал я такой пример со стрелками, пробовал менять значения, направление. Но как применить нехватка знаний. Можно же как-то вывести на дисплей время и температуру одновременно в разных углах на 8-ми матрицах? :)
     
  12. big_alex

    big_alex Гик

    uint8_t speedLine = 40;
    Она же настраивается в вебинтерфейсе, у меня например 60
     
    Последнее редактирование: 28 мар 2018
  13. igor777ivan

    igor777ivan Нерд

    Иван, у меня вопрос. Тестирую устройство на протяжении недели (прошивка v5.2 для одного города и на 5 матриц). Результат такой: пол дня устройство работает совершенно нормально (время и погода обновляются, точки перемигиваются крестиками), но вдруг все меняется - точки мигают без крестиков, обновление погоды прекращается. При этом в браузере компа захожу со своим API - все работает и получаю результат погоды. Отключаю роутер, мигает одна точка, подключаю роутер начинают мигать две точки но без крестиков. Все остается в таком состоянии пока не перезагружу устройство путем откл и вкл питания. Перезагружал прошивку, чистил Flash - все безрезультатно. Вчера залил простенькую прошивку с инета CLOCK_ESP8266_, которая синхронизирует время с GOOGLE и берет погоду с openweathermap.org и выводит все это на матрицу без особых наворотов. Работает около суток все обновляется и грузится. Не пойму где копать, может подскажете......
     
  14. klslab

    klslab Нерд

    Sandr
    у меня тоже стоит LED_clock_weath_v5.21_rus_narodmon, и по ходу обновление погоды, тоже как и у вас не обновляется, через браузер да.
     
  15. igor777ivan

    igor777ivan Нерд

    Несколько часов обновляется, а дальше как отрезало. Прошивка с инета CLOCK_ESP8266_1 пашет уже вторые сутки - все работает.
     
  16. Deniskyn

    Deniskyn Гик

    У меня месяц стоят вкл. все Ок, прошивка с моим переводом с первой страницы...
    ПС
    Как вариант попробуйте другой Апи ключ....
     
  17. Fedoss

    Fedoss Нерд

    Так пропишите, чтобы принудительно обновлялось вместе с mqqt .
     
  18. igor777ivan

    igor777ivan Нерд

    Простенькая прошивка с инета CLOCK_ESP8266 отработала вторые сутки. В программе выставил брать погоду с сайта - раз в минуту и прописал выводить в конце бегущей строки с погодой количество минут прошедшее с последнего изменения хотя-бы одного параметра погоды. В среднем показания погоды с openweathermap меняются где-то раз в 20-25 минут. Почему с прошивкой v5.2 через несколько часов работы прекращается связь с роутером - не понимаю, то ли все зависит от настроек роутера (имя простое - пароль несколько цифр) не понимаю.........
     
  19. Fedoss

    Fedoss Нерд

    Они не могут не стираться, если вы их наблюдаете в COMе, значит все уже перезаписано.
    Настройте MQTT или отключите его.
     
  20. IvanUA

    IvanUA Гуру

    Ну вот видите, а говорите что не разбираетесь в программировании)))