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

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

  • BMP280

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

    Голосов: 71 73.2%

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

wulf

★✩✩✩✩✩✩
1 Дек 2022
198
27
@Сотнег,а как прописать показания давления под цвет не знаеш ?
 

maksland

★★★✩✩✩✩
13 Янв 2019
615
144
Omsk
я нельзя этот метод использовать из проекта на atmega ?

C++:
void TempColor(byte set_sh, int temp_x, int temp_min, int temp_max){ // Функция изменения цвета от температуры
  byte sum_color;
  if (set_sh == 0) temp_color = led_color;
  if (temp_x < temp_min * 10) temp_x = temp_min * 10;
  if (temp_x > temp_max * 10) temp_x = temp_max * 10;
  if (set_sh == 1) sum_color = map(temp_x, temp_min * 10, temp_max * 10, 170, 0);
  if (set_sh == 2) sum_color = map(temp_x, temp_min * 10, temp_max * 10, 170, 255);
    temp_color = CHSV(sum_color, 255, 255);}
#endif
 
Изменено:

bort707

★★★★★★✩
21 Сен 2020
3,295
957
@maksland,почему нет? В нем нет ничего привязанного к конкретному МК, должно работать на любом.
 

ASM

★★★★★✩✩
26 Окт 2018
1,918
422
Ох, ну вы и намудрили вчера)
Какой смысл прописывать давление?)
Ведь в каждом месте оно своё, и влияет на здоровье не конкретное значение, а быстрая смена, более 2 за сутки.
 

Сотнег

★★★★★★★
15 Янв 2020
4,587
1,552
@ASM,
звучит, как план.
Делайте отслеживание колебаний давления и светите красным.
 

maksland

★★★✩✩✩✩
13 Янв 2019
615
144
Omsk
это в проекте на atmega было - изменение цвета отмечало повышение/понижение давления или температуры
давайте тут доделаем по уличной температуре изменение цвета, готов прошивать хоть каждые 5 минут
 

ASM

★★★★★✩✩
26 Окт 2018
1,918
422
по идее так)
C++:
CRGB temp_color;
void DigitTemp(uint8_t digit, uint8_t cursor) {
  for (uint8_t mask = 0b01000000; mask > 0; mask = mask >> 1) {
    for (uint8_t i = 0; i < LEDS_IN_SEGMENT; i++) {
      byte sum_color;
      sum_color = map(tempS, -50, 50, 212, 10);
      temp_color = CHSV(sum_color, 255, 255);
      leds[cursor] = (digit & mask) ? temp_color : CRGB(0, 0, 0);
      cursor++;
    }
  }
}
 

maksland

★★★✩✩✩✩
13 Янв 2019
615
144
Omsk
uint8_t r = 0;
uint8_t g = 250;
uint8_t b = 154; тут меняем цвет по умолчанию, при включении ?

поигрался сейчас корректировкой +- 9 градусов - цвета меняются
по + ждать надо весны/лета
 
Изменено:

wulf

★✩✩✩✩✩✩
1 Дек 2022
198
27
@maksland, скинь как должно выглядеть а у меня падает на матах и мат почему то на wi fi
 

wulf

★✩✩✩✩✩✩
1 Дек 2022
198
27
@maksland,
по идее так)
C++:
CRGB temp_color;
void DigitTemp(uint8_t digit, uint8_t cursor) {
  for (uint8_t mask = 0b01000000; mask > 0; mask = mask >> 1) {
    for (uint8_t i = 0; i < LEDS_IN_SEGMENT; i++) {
      byte sum_color;
      sum_color = map(tempS, -50, 50, 212, 10);
      temp_color = CHSV(sum_color, 255, 255);
      leds[cursor] = (digit & mask) ? temp_color : CRGB(0, 0, 0);
      cursor++;
    }
  }
}
надо еше что то где то менять или удалять
просто есть возможность выдернуть датчик на плюсе поиграть
 

maksland

★★★✩✩✩✩
13 Янв 2019
615
144
Omsk
я проверил интервалы -30 -20 и -10
три цвета увидел, которые и определил
я для плюсовой мне много манипуляций надо сделать - снять часы и отпаять (без разъема у меня там пока всё)
а это надо выбрать время на работе обеденное, так что только после праздников, если живы будем
 

Старик Похабыч

★★★★★★★
14 Авг 2019
4,319
1,319
Москва
Что бы проверить цвета надо сделать нормальный проверочный код.
Т.е. все зависит от температуры делаете цикл от -30 (или сколько там у вас) до 40, это и будет проверка. Подаете на вход палитры, а цвет выводите на клочок ленты, и смотрите как это все будет выглядеть. С паузами по паре секунд, можно еще температуру выводить в монитор порта. Дел на 3 минуты и видан вся картина в полном диапазоне. Можете видео снять и выложить.
 

ASM

★★★★★✩✩
26 Окт 2018
1,918
422
А от чего может быть такой косяк, когда темно в помещении, может быть начаться мерцание) как всех так и случайных сегментов, диодов... Есть у кого такой косяк?) Даже с прошлой версии есть такое) Может пайка, но почему в темноте только?)
 

ASM

★★★★★✩✩
26 Окт 2018
1,918
422
@bort707, конечно, но это же не всегда)
Проводки пошевелил, ничего такого не замечал) Да и код не менялся, работало всё стабильно и вдруг началось)
Сегодня ночь норм прошла)
 

Старик Похабыч

★★★★★★★
14 Авг 2019
4,319
1,319
Москва
Если бы было от датчика свет, то было бы на всей ленте. А раз по сегментам, значит не оно. Такое впечатление, что земля где то отваливается.
 

wulf

★✩✩✩✩✩✩
1 Дек 2022
198
27
@ASM,
C++:
DEFINE_GRADIENT_PALETTE(Temperature){
берет цвета отсюда ?
C++:
CRGB ColorTable[NUM_COLORS] = {  // Таблица цветов
если их нет в списке работать не будет?