GithubHelp home page GithubHelp logo

kuhomon's Introduction

Kumekay Home Monitoring Device

System for measurement CO2/Humidity/Temperature/Pressure with OLED display and data upload through WiFi

If you want to use BME280 instead of SI7021+BMP085 take a look on BME280 branch

Discussion

Gitter chat

Components

Case

Model for printing kuhomon_case.stl

Known issues:

  • To fit system to this case you have to use short wires
  • Temperature measurements seems to be higher due to heat from ESP8266

TODO

  • Add offline support (show data on screen without WiFi)

kuhomon's People

Contributors

kumekay avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kuhomon's Issues

Проверенные комплектующие и магазины

  1. NodeMcu
    В них установлена более медленная флеш память не QUAD а DIO (пруф karawin/Ka-Radio#13)
    Как оказалось это не оригинальный AI-Thinker а клон (HYSIRY).
    На данных платах на пине VIN нет 5В. Для запитки датчика CO2 я использовал пин VU (слева третий сверху).
    hysiry2
    покупал за 3,02$ вот здесь:
    https://ru.aliexpress.com/item/ESP8266-CH340G-CH340-G-NodeMcu-V3-Lua-Wireless-WIFI-Module-Connector-Development-Board-Based-ESP-12E/32800966224.html?
    На Windows10 с драйверами проблем не было - поставились автоматом.

  2. Temperature/Humidity/Barometric Pressure Sensor bme280
    bme280
    покупал вот тут: https://ru.aliexpress.com/item/Consumer-Electronics-Shop-Free-shipping-Digital-Temperature-Humidity-Barometric-Pressure-Sensor-Module-Breakout-BME280/32601813705.html?
    Покупал одну штуку за 4,89$, а продавец прислал 10 штук!!! Кто-нибудь проверьте была ли это ошибка продавца, или это норма. обязательно отпишитесь.

  3. MH-Z19 infrared co2 sensor
    mh-z19
    покупал за 21,18$ вот здесь
    https://ru.aliexpress.com/item/MH-Z19-infrared-co2-sensor-for-co2-monitor/32535524294.html?

  4. 0.96 inch OLED I2C module 128X64
    disp
    покупал за 2,60$ вот здесь:
    https://ru.aliexpress.com/item/1pcs-0-96-blue-0-96-inch-OLED-module-New-128X64-OLED-LCD-LED-Display-Module/32640627772.html?
    особенность этого модуля: пины переставлены и названы по другому чем на этой схеме
    default
    GND = GND
    VDD = VCC
    SCK = SCL
    SDA = SDA

Метеостанция - wdt reset!

В свое время я с благодарностью воспользовался советом kumekay и ввел дополнительно несколько переменных, которые можно задать через Wi-Fi - по аналогии, например, с переменной blynk_token в скетче метеостанции. Скетчи с новыми переменными успешно работали.
Потом я занялся подключением других датчиков в схему метеостанции, но после возврата к старым скетчам выяснилось, что они не работают. После загрузки в ESP - wdt reset.
В Инете прочитал, что причиной сообщения wdt reset могут быть:

  • переполнение оперативной памяти,
  • кривые или "прожорливые" библиотеки,
  • кривой пользовательский код,,
  • слишком навороченная программа, с которой ESP не справляется.
    Два последних пункта отпадают - скетчи раньше работали.
    В приложении - код метеостанции с добавлением новой переменной address.
    В скетче я минимизировал количество переменных, чтобы уменьшить загрузку памяти. Глобальные переменные используют 39972 байт (48%) динамической памяти, оставляя 41948 байт для локальных переменных.
    На мой взгляд, наиболее вероятной причиной этой проблемы является автообновление библиотек в Arduino IDE, которое остановил с опозданием.
    Я, конечно, тестировал скетч со старыми версиями некоторых библиотек, но как только расскомметирую строку 267: strcpy(address, json["address"]) то все то же - wdt reset. Как выйти на работающую комбинацию библиотек? - не представляю (если причина в комбинации).
    Ниже - информация с монитора Arduino IDE при загрузке проблемного скетча. Возможно она что-то прояснит.
    Помогите решить проблему.

*WM: Adding parameter
*WM: blynk_token
*WM: Adding parameter
*WM: address
*WM:
*WM: AutoConnect
*WM: Connecting as wifi client...
*WM: Using last saved values, should be faster
*WM: Connection result:
*WM: 3
*WM: IP Address:
*WM: 192.168.1.100
WiFi connected
IP address: 192.168.1.100
Load config...

Exception (28):
epc1=0x4000bf0e epc2=0x00000000 epc3=0x00000000 excvaddr=0x00000000 depc=0x00000000

ctx: cont
sp: 3fff1010 end: 3fff1310 offset: 01a0

stack>>>
3fff11b0: 3fffdad0 3fff022c 3fff2c3c 4020c5e9
3fff11c0: 3ffe89c8 3fff11c0 3fff11cc 3fff11dc
3fff11d0: 3fff2c3c 00000002 3fff2c49 00000000
3fff11e0: 3fff2c59 00000002 3fff2c65 40201c2c
3fff11f0: 00000018 00000008 3ffefae0 40201d40
3fff1200: 3fff004c 3ffefae0 3ffefb44 402015c9
3fff1210: 3fff1260 00000000 3ffefae0 4020ba34
3fff1220: 00000009 00000011 3fff022c 40201e06
3fff1230: 19082e00 00ffffff 0101a8c0 00000000
3fff1240: 00000007 0000000f 3ffefae0 40201ea3
3fff1250: 00000007 00000007 3ffefae0 4020ba64
3fff1260: 3ffeffec 00070010 3ffefae0 40201834
3fff1270: 3fff1c56 0000005a 3ffefae0 3fff02e8
3fff1280: 3fffdad0 00000010 3ffefae0 00000028
3fff1290: 3ffe94f0 00000000 000003e8 4010020c
3fff12a0: 3fff2bfc 3fff1c4c 3fff12d0 4010068c
3fff12b0: 3ffe889c 3ffe889c 3ffefae0 3fff02e8
3fff12c0: 3fffdad0 3ffe889c 3fff022c 4020d265
3fff12d0: 00000000 00000000 00000000 feefeffe
3fff12e0: feefeffe feefeffe feefeffe 3fff02e8
3fff12f0: 3fffdad0 00000000 3fff02e0 4021537c
3fff1300: feefeffe feefeffe 3fff02f0 40100718
<<<stack<<<

ets Jan 8 2013,rst cause:2, boot mode:(1,3)

ets Jan 8 2013,rst cause:4, boot mode:(1,3)

wdt reset

Обсуждение и доработки проекта

Бесплатный blynk сервер предоставляет 2000 энергии. Я настроил blynk для этого проекта использовав 1700 энергии. Этого хватит для того чтобы ознакомиться с возможностями этого проекта без разворачивания своего собственного блинк сервера.
PS я собрал проект состоящий из одного датчика CO2 и одного датчика bme280.
пины для блинка:
V1- температура
V2 - влажность
V4 - давление
V5 - СО2
clone_1
screenshot__cc blynk2

Релехи

Можно ли добавить функцию веб-интерфейсе чтобы выставлять значения температуры\влажности при которых будут срабатывать реле. Думаю функциональность очевидна очевидна.

Fritzing - проблемы с компонентами

Сергей, снова обращаюсь к вам за помощью.
Решил нарисовать эл. схему своего макета. Мне понравился ваш стиль схемы, сделанный в Fritzing, - наглядно и информативно. Начал искать для этой платформы новые компоненты, но безуспешно.
Меня интересуют следующие компоненты:
WiFi NodeMCU board ESP8266 (CP2102)
MH-Z19 - датчик содержания углекислого газа
DHT22 - датчик температуры и влажности
OLED LCD 0.96 (32*128) - дисплей
Two-way 4-channel converter of logic levels 3.3-5V
RF 433MHz transmitter
RF 433MHz приемник
Зарегистрировался на http://forum.fritzing.org, но там процессы очень вялотекущие.
Подскажите, пожалуйста, ссылку на новые компоненты Fritzing или поделитесь своей библиотекой. Заранее благодарен.

плата висит в состоянии Loading...

Собрал схему только с одним датчиком (CO2 mh-z19). Загружается, по wifi доступна, на 192.168.4.1 заходит, но после конфигурирования параметров wifi плата перезагружается и висит в состоянии Loading...
В чем может быть причина? Возможно отсутствие датчиков приводит к зависанию? Возможно ли добавить проверку на отсутствие/смерть датчиков?

Добавить на главном экране иконки доступности блинка и подключения к wifi

Добавить на главном экране иконки доступности блинка и подключения к wifi
при установлении связи иконки постоянно отображаются
При подключении к wifi вместо connecting wifi просто поморгать иконкой wifi
При подключении к blynk вместо connecting… просто поморгать иконкой blynk

BMP085 library

There is a little discrepancy. If you used Adafruit_BMP085.h (main.cpp), you would add library 525 to lib_install = 567,942,415,419,536,64,16,31,525 (platformio.ini)

Отображать все значения на одном экране

Не очень удобно ждать около 10 секунд что бы увидеть все три текущих значения (T/P/H). Было бы круто увидеть все цифры на одном экране (без надобности ожидания пока обновится экран).
К примеру значения CO2 можно переместить в левую часть экрана а в правой части разместить в колонку все три значения (T/P/H)
примерно вот так
Wifi =ok blynk=ok
567 T= 23 oC
ppm CO2 H= 48%
P=739 mmHg

Код для модификации с одним bme280 вместо пары bmp280+si702

Добрый день.
Не будете ли вы столь любезны выложить вариант кода при использовании датчика BME280?
В силу того, что желание познакомиться с IoT возникло исключительно благодаря вашей статье про метеостанцию на GT, собственных сил и знаний пока не хватает.

MH-Z19B 'CO2: Header not found'

Добрый день!
Собрал прибор с датчиком MH-1Z9B на плате Node-MCU V3.
Пару часов все работает в норме, данные приходят, лишь иногда проскакивает 'CO2: Header not found', что, как я понимаю, совершенно нормально.
Однако через пару часов датчик зависает, данные не приходят, все время выдается 'CO2: Header not found'. При этом сам датчик продолжает работать, загорается красным как положено. Остальные датчики работают хорошо.
Выключение-включение ни к чему не приводит, перезагрузка скетча, обнуление EEPROM тоже не помогают, прибор после этого продолжает выдавать -1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.