ESP, IoT [BigClock] Большие часы на WS2812, ESP8266, Народный мониторинг

Какой вариант датчика используется у вас? Интересно, использует ли кто BME280, как у меня?)

  • BMP280

    Голосов: 26 26.8%
  • BME280

    Голосов: 71 73.2%

  • Всего проголосовало
    97

ASM

★★★★★✩✩
26 Окт 2018
1,918
422
@Sergo_ST, я эту процедуру вынес в loop, чтобы ничего не мешало для проверки...
C++:
26 25458 500 0
27 26456 500 1
28 27455 500 0
29 28445 500 1
@Sergo_ST, да, закомментировал ожидание, все заработало) такая мелочь и такую бяку устраивает) спасибо)
теперь надо с освещением разобраться в твоем коде)

п.с. попробую без ожидания потестировать код, не добавляя больше ничего)
 

Sergo_ST

★★★★★★✩
15 Мар 2020
1,094
885
@ASM, Там ничего сложного, передаёте 3 параметра в функцию, а она возвращает ночной сейчас режим или нет. Я вчера редактировал пост, там всё подписано)
 
  • Лойс +1
Реакции: ASM

maksland

★★★✩✩✩✩
13 Янв 2019
616
145
Omsk
я тоже заметил что датчик раз в секунду опрашивается
а нельзя сделать раз в 5 сек например ?
 

Sergo_ST

★★★★★★✩
15 Мар 2020
1,094
885
@maksland, Дело в том, что его опрос создаёт задержку в основном цикле, поэтому помимо того что его стоит опрашивать пореже, стоит ещё(как я и сказал выше) или уменьшить разрядность до 9бит, или использовать асинхронное чтение результата.
 

ASM

★★★★★✩✩
26 Окт 2018
1,918
422
@maksland,
C++:
  ds.requestTemp();
  if (ds.ready()) {
    if (ds.readTemp())
      FtempS = ds.getTemp() + o.cor_tempS;
  }
сделал асинхронное

Там ничего сложного, передаёте 3 параметра в функцию, а она возвращает
сложно...
я проще сделал, глядя на твой код)

все сделал, также добавил выбор ленты, был прецендент @Elektronik777
избавился от всех millis()?
@Romshteks можешь избавиться от millis в https://github.com/Serega88kos/BigClock/blob/main/BigClock/Kukushka.ino
C++:
gh::Timer timer(500); //время в мс
if (timer) procedura();
можно упростить флаги, код станет короче)
 
Изменено:

Sergo_ST

★★★★★★✩
15 Мар 2020
1,094
885
@ASM, Сложно передать 3 параметра?😅
C++:
if (checkHourStrart(o.start_night, o.stop_night, hour)) {
//Ночной режим 
}
else {
//Дневной режим
}
 

ASM

★★★★★✩✩
26 Окт 2018
1,918
422
@Sergo_ST, зачем такие сложности, целая процедура, чтобы передавать параметры, когда можно вставить все в условие)

п.с.
в асинхронном режиме что-то нули показывает)
вернул как было, добавил разрешение.
на сегодня все, тестирую...
 
Изменено:

Sergo_ST

★★★★★★✩
15 Мар 2020
1,094
885
@ASM, Можно, но когда требуется выполнять одно и тоже действие в разных местах то это экономит флеш, к тому-же данный подход повышает читаемость кода и соответственно облегчает его отладку. Но тут уж дело ваше, как реализовывать в вашем проекте те или иные решения, я просто продемонстрировал что сложностей никаких нет с использованием готовой функции)
в асинхронном режиме что-то нули показывает
Нужно просто запрос делать например раз в 5 сек, как предложил @maksland или сделать так:
C++:
  if (!ds.isWaiting()) ds.requestTemp();
  if (ds.ready()) {
    if (ds.readTemp())
      FtempS = ds.getTemp() + o.cor_tempS;
  }
 
  • Лойс +1
Реакции: maksland и ASM

ASM

★★★★★✩✩
26 Окт 2018
1,918
422
@Sergo_ST, поправил, температура показывает 0,5 и 1, то ли реально такая, толи погрешность такая стала)
Раньше до сотых показывало...

C++:
  if (timerDS) ds.requestTemp();
  if (ds.readTemp()) FtempS = ds.getTemp() + o.cor_tempS;
сделал на таймере
 
Изменено:

Sergo_ST

★★★★★★✩
15 Мар 2020
1,094
885
@ASM, Если включен режим 9бит то да, шаг температуры будет 0.5 градуса. Но у него и погрешность в целом +-0.5 градуса...
 

ASM

★★★★★✩✩
26 Окт 2018
1,918
422
@Sergo_ST, выключен режим, ладно, понаблюдаю...
в истории показаний вижу, что там до сотых было, откатил прошивку с гх, изменений не заметил, накатил новую.
скорее всего такая погода в данный момент
 

Sergo_ST

★★★★★★✩
15 Мар 2020
1,094
885
@ASM, Я не уверен прям точно, но вроде у него энергонезависимая память и просто нужно вызвать ещё раз установку разрешения на нужное количество бит...
 

ASM

★★★★★✩✩
26 Окт 2018
1,918
422
@Sergo_ST, сколько по умолчанию, 12?
Поставил 12, точность появилась)

Код:
11.11.24 2.7
Исправлен ночной режим, исправлены точки в часах (спасибо Sergo_ST).
Добавлен выбор типа ленты (GRB и RGB, остальное по надобности).
Увеличено кол-во СД в сегменте до 10.
Оптимизирован код.
Косметические правки.
Обновление загружено, можно нажать обновить)

Ночной режим тоже работает?
проверяйте)
версию до 3.0 поднимите !
так ничего кардинального нет)

@nick 56, открыть Gyverhub, будет предложено обновиться)
 
Изменено:
  • Лойс +1
Реакции: maksland

nick 56

★★✩✩✩✩✩
11 Апр 2024
146
54
можете скриншот показать, или в каком это разделе
вот мой скриншот после загрузки
 

Вложения

Изменено:

maksland

★★★✩✩✩✩
13 Янв 2019
616
145
Omsk
мне никогда не предлагает обновиться, вручную bin заливаю
мигают теперь точки 2 раза в секунду !
по температуре у меня так меняется цвет
C++:
DEFINE_GRADIENT_PALETTE(Temperature){
  00, 0, 0, 139,                //DarkBlue
  128 - 30 * 2, 138, 43, 255,     //BlueViolet
  128 - 20 * 2, 30, 144, 255,  //DodgerBlue
  128 - 10 * 2, 0, 255, 255,   //Aqua
  128 + 0, 0, 250, 154,     //MediumSpringGreen
  128 + 10, 0, 255, 0,       //Lime
  128 + 20, 173, 255, 47,       //GreenYellow
  128 + 30, 255, 165, 0,       //Orange
  255, 255, 0, 0               //Red
};
и еще ....может на вход сделать логин и пароль, чтобы если в сети часы, никто не изъявил настройки поменять
 

nick 56

★★✩✩✩✩✩
11 Апр 2024
146
54
в ручную и я могу, но надо часы разбирать, плату вытаскивать, программатор подключать
 

kym13

★★★✩✩✩✩
14 Ноя 2020
716
118
ASM. В ночной режим переходят по установленному времени но все равно показывает при вкл." Только часы" тепм. влажность и давление. И перестало выставляться время вывода на экран по умолчанию "2,2,2,2,2" без разницы какое число поставишь всё равно выводит как по умолчанию по 2 сек.

Погонял ночь, из ночного режима вышли. Откатился на версию 2.6 и о чудо ночной режим работает как положено вкл/выкл в установленное время и только часы, установки времени вывода на экран тоже работают адекватно, настройки точек не работают(мне это не важно).
 

Вложения

  • 62.7 KB Просмотры: 6
Изменено:

maksland

★★★✩✩✩✩
13 Янв 2019
616
145
Omsk
В ручную я имел ввиду через браузер, уже не разбираю часы.

настраиваю скетч, компилирую и по сети через веб интерфейс закидываю в часы BIN файл
 

nick 56

★★✩✩✩✩✩
11 Апр 2024
146
54
Спасибо, но ASM обновляется как-то по другому, или я чего то не понимаю. Откуда идёт обновление? Файл надо скачивать с гитхаба?
 

Влад78

✩✩✩✩✩✩✩
6 Июн 2023
37
1
@nick 56,
Я скачал свежий файл bin , с гитхаб, если смотреть на ваш скриншот, нажать шестерню, выбрать ОТА, далее flash и указать место где лежит файл. И обновить. Но у меня что-то пошло не так... Зависли... Перегрузил, работает. Сегодня без проблем подключился к часам через хаб в браузере.
 
Изменено:

kym13

★★★✩✩✩✩
14 Ноя 2020
716
118
@Влад78, Это с компьютера, а со смартфона как? Скачать Бин на смартфон? И это не по воздуху, это обычная прошивка с таким же успехом можно просто через IDE скетч загрузить.
 

ASM

★★★★★✩✩
26 Окт 2018
1,918
422
@nick 56, так надо выбрать устройство, и если есть обновление, предложит автоматически. Можно проверить, всё предыдущие версии.bin в репозитории. Указываем ссылку и обновляемся)
 

Влад78

✩✩✩✩✩✩✩
6 Июн 2023
37
1
@kym13, все с телефона. Можно и с компьютера, и все без проводов. Выше автор написал как в автотическом режиме делать.
Я сейчас сделал так: открыл приложение Гайверхаб в телефоне. Выбрал часы и мне предложено было обновление. Согласился. Обновились. Надо посмотреть что нового .
Но у меня на 2.6 не было проблем с миганием, не обращал внимание. Ночной режим тоже только часы были.
Странно перед загрузкой говорил версия 2.7. в настройках смотрю 2.6....Screenshot_2024-11-12-00-41-26-113_ru.alexgyver.GyverHub.jpg
 
Изменено:

ASM

★★★★★✩✩
26 Окт 2018
1,918
422
@Влад78, бывает, зависают, не стартуют сами, приходится выкл/вкл, но не так часто делаю во время экспериментов.
Это не от меня зависит, либо хаб, либо есп.
@kym13, часы вижу, не работают, посмотрю, сам не пользуюсь этим)
С режимами не понял, добавляется, редактируется...
Увидел)
Откуда это все появляется, интересно даже) Опять таймеры))
@Влад78, проблема с не обновлением присутствует. У меня не часто, но бывало. У кого-то чаще проблема. Это уже на стороне хаба с есп. Это либо к Алексу, либо к какой-то связанных с этим процессом библиотек. Может роутер что-то блокирует. Напишу ему.

Перезапусти приложение. Или в меню устройств обнови список и открой заново. Будет предложено обновится.
 
Изменено:
  • Лойс +1
Реакции: Влад78