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

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

?

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

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

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

    56 голосов
    44,1%
  3. Да, не однократно

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

    urg2000 Нерд

    Какие-то проблемы с датчиком DHT22 то работает после перезагрузки не работает менял сопротивление на 10к как в даташе запустился после перезагрузке опять пропадает не знаю датчик это или программная проблема.
    Марсель новую прошивку сделал с MQTT может завтра попробую зашью её
     
  2. Юра 80

    Юра 80 Нерд

    тут шрифт часов красивее :) значительно ИМХО.
     
  3. buba911

    buba911 Гик

    Привет всем. Кто знает как работает эта долбанная библиотека :SimpleDHT.h В каком формате она выдаёт данные?
    Пытаюсь скоректировать показание температуры. Показания с датчика DH22 -25°C . Хочу сделать 22, добавил строку в коде т1=т1-3;
    Код (C++):
    void sensors() {
        sensorsDs18b20();
        sensorsSi7021();
        sensorsBmp();
        sensorsBme();
        sensorsDht();
        t1 = (sensorDom==0?0:sensorDom==1?(int)tempDs18b20:sensorDom==2?(int)celsiusSi7021:sensorDom==3?(int)tempBmp:sensorDom==4?(int)tempBme:sensorDom==5?(int)tempDht22:sensorDom==6?tMqtt3:0);
        t2 = (sensorDom==0?0:sensorDom==1?((int)(tempDs18b20*(tempDs18b20<0?-10:10))%10):sensorDom==2?((int)(celsiusSi7021*(celsiusSi7021<0?-10:10))%10):sensorDom==3?((int)(tempBmp*(tempBmp<0?-10:10))%10):sensorDom==4?((int)(tempBme*(tempBme<0?-10:10))%10):sensorDom==5?((int)(tempDht22*(tempDht22<0?-10:10))%10):sensorDom==6?tMqtt4:0);
        t3 = (sensorUl==0?0:sensorUl==1?(int)tempDs18b20:sensorUl==2?(int)celsiusSi7021:sensorUl==3?(int)tempBmp:sensorUl==4?(int)tempBme:sensorUl==5?(int)tempDht22:sensorUl==6?tMqtt3:0);
        t4 = (sensorUl==0?0:sensorUl==1?((int)(tempDs18b20*(tempDs18b20<0?-10:10))%10):sensorUl==2?((int)(celsiusSi7021*(celsiusSi7021<0?-10:10))%10):sensorUl==3?((int)(tempBmp*(tempBmp<0?-10:10))%10):sensorUl==4?((int)(tempBme*(tempBme<0?-10:10))%10):sensorUl==5?((int)(tempDht22*(tempDht22<0?-10:10))%10):sensorUl==6?tMqtt4:0);
      t1=t1-3;
    . .
    Приходят показания 253°C !!! Если отнимаешь- то 3-ка просто ставиться после температуры 25 С
    А если прибавляешь t1=t1+3; Т всё в порядке показания 28 °C.
    Кто знает как занизить показания?
     
    Последнее редактирование: 30 сен 2018
  4. buba911

    buba911 Гик

    Такая же беда, даже если посля перезагрузки начинает показывать, то через какое-то время опять 0 по температуре и влажности.
     
  5. urg2000

    urg2000 Нерд

    Да у Ивана красивый шрифт, тоже нравится и функционала больше. Но толком нечего не работае то с датчиком проблемы то с погодой или веб виснет :(
     
  6. urg2000

    urg2000 Нерд

    Вернулся обратно, припаял 18b20 он мерит 1,5-1.6 при комнатной 25 градусов. Что это может быть?
     
  7. chipmoca

    chipmoca Гик

    Подтягивающую сопруху, не забыл поставить случаем?
     
  8. Vovka

    Vovka Гик

    три варианта:
    1. ошибка в монтаже
    2. дохлый датчик
    3. привет программисту ;)
     
  9. ИгорьК

    ИгорьК Давно здесь Команда форума

    Круть невероятная.

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

    Самые тупые еще и даташит читают. Но это, ясный перец, не для нас.
     
    SergeiL нравится это.
  10. urg2000

    urg2000 Нерд

    сопротивление стоит, датчик рабочий на Морсеьевской прошивке работал, залил Ивана 1.5 градуса
     
  11. SergeiL

    SergeiL Гуру

    Ну тут же "прошивки" :(
     
    ИгорьК нравится это.
  12. jgupdimon

    jgupdimon Гик

    Здравствуйте, все .Залил последнюю прошивку, всё прекрасно работает. Скоро из этих часов атомная станция получится или космический корабль. Спасибо Ивану за его разработку. Уже наверное миллион народа повторило.
     
  13. buba911

    buba911 Гик

    Читать тоже помогает не всегда.
    Купил у пришюренных 5 датчиков upload_2018-10-2_15-34-20.png
    Стоит , что это DS18b20 . Но если ты подключаешь к нему сопротивление upload_2018-10-2_15-36-43.png он делает короткое замыкание. upload_2018-10-2_15-37-13.png

    Сцуко похоже на транзисторах выгравировали DS18b20
     
  14. ИгорьК

    ИгорьК Давно здесь Команда форума

    Интересное исследование. Никогда такого не проводил. Все, как-то, умудрялся не запутаться в трех ногах и одном резисторе...
     
  15. buba911

    buba911 Гик

    Когда пальцы об сенсор обжог, сделал "исследование", все 5 левые, после в итернете прочел, что не меня одного На... обманули черти ....
     
  16. SergeiL

    SergeiL Гуру

    НЕ верю!!!
    Это 100% нормальный DS18b20 :)
     
  17. jgupdimon

    jgupdimon Гик

    Такие симптомы когда ставишь датчик DS1820 или DS18S20 вместо DS18b20
     
    ИгорьК нравится это.
  18. ИгорьК

    ИгорьК Давно здесь Команда форума

    Учись, братан!
     
  19. IvanUA

    IvanUA Гуру

    Предусмотрено. Всё как и всё через веб.

    По поводу сравнения прошивки Марселя и этой... Господа, я этот скетч выкладывал для вашего развития. Дабы вы сами могли что то менять, добавлять - изучать в конце концов.
    Можно было бы конечно поступить как Марсель и сгенерить вам бинарник - и у всех бы скорее всего, все работало бы.... Но скажу сразу - это не наш путь! Копипастеры на не друзья)))))

    По поводу не стабильности скетча. Хотите стабильности - откажитесь от библиотек. Ну или после каждого обновления надо проверять не появились ли новые глюки....

    По поводу поправить немного скетч, ну так сказать выявленные недостатки.
    1. Как показала практика работы этих часов без интернета - очень надоедает постоянно вылезающее сообщение о попытки подключения к WiFi. Думаю надо будет сделать это сообщение только при первом старте часов, а в последующие попытки делать так сказать не заметную проверку доступности сети. Ну и поднимать точку доступа будем тоже только один раз при первом старте (или после ресета). Она то фактически нужна только для первичной настройки часов.
    2. Считаю что стоит таки реализовать функцию ресета (как писали здесь выше) после определенного количества попыток.
    3. По поводу строки запроса для "новых" ключей. Ну тут все просто. Надо в вебе просто добавить возможность выбирать тип запроса, типа - "для новых ключей", или "для старых ключей". Коду это фактически не повредит, там делов то на копейку))) а думаю что реально может пригодиться...
    4. Ну и еще так по мелочи, кое что удалось натестить до поправы.

    ПС. Я просто в шоке от интернета у немцев. Казалось бы самые пупы европы, а нормального интернета найти очень тяжело. При чем что мобильного что стационарного. В этом плане Польша - это просто форвард этой услуги что по стоимости что по качеству.
    ППС. Пишу сейчас с АДСЛ интернета - и на том говорю спасибо, бо до этого на LTE - была просто опа что по цене, что по качеству. Может это конечно мне так повезло((((((((
     
    Valerchik, om1212, Юра 80 и ещё 1-му нравится это.
  20. SergeiL

    SergeiL Гуру

    На картинке DS18b20 :)
    И так, гравировку, дороже подделывать, чем стоимость DS-ки.