Датчик температуры, влажности, давления, движения и освещенности на ESP-12F

Тема в разделе "Глядите, что я сделал", создана пользователем kmaximv, 17 янв 2016.

  1. mvn77

    mvn77 Нерд

    Ясно - интересно - есть кто собирал на винде. Сам часто удивляюсь - вроде все просто и понятно - а в регионы отправляю готовые разработки и начинается, то фаза луны не та, то буква в железе... За что и не люблю ардуину - полусырая структура, в которой малейшее обновление одной из сотен библиотек приводит к куче геморроя отсюда и невозможность использовать в серьезных проектах.
     
  2. kmaximv

    kmaximv Гик

    Сейчас проверил компиляцию в последней версии 1.6.13. Работает.
    Arduino 1.6.13.png
     
  3. mvn77

    mvn77 Нерд

    В общем решил вопрос выдрав ESP12 из макетки - всплыла другая проблема, BME280 температуру показывает с погрешностью в 2 градуса, что для метеорологических наблюдений неприемлемо, учитывая что датчик позиционируется как прецизионный, то по видимому в библиотеке не рассчитывается заводская коррекция. В общем косяк....
     
  4. Egony

    Egony Нерд

    Вы прикалываетесь?
    У меня минимум три компа в пользовании, все пашет как часики с 1.6.13.
    Качаете IDE, ставите.
    Загружаете поддержку esp8266, так, как указано в вики автора.
    Качаете библиотеки с гитхаба по ссылкам из вики автора, разархивируете их в libraries.
    Качаете исходники у автора, разархивируете.
    Открываете .ino файл в ide и... И всё!

    Неужели так трудно?
     
  5. mvn77

    mvn77 Нерд

    :) Проблема была в версии IDE поставил 1.6.12 и ноу проблем. Думаю лучше все таки указать в инструкции точную версию IDE. Автору огромное спасибо за такой труд! И за желание помочь людям!
     
    Последнее редактирование: 5 дек 2016
  6. mvn77

    mvn77 Нерд

    Хотя при попытке включить поддержку DHT выскочила та же ошибка -
    Код (Text):
       DHT dht;

           ^

    C:\Wi-Fi-Sensor-1.09\esp_sensor\esp_sensor.ino:31:7: note: candidates are:

    In file included from C:\Wi-Fi-Sensor-1.09\esp_sensor\esp_sensor.ino:30:0:

    C:\Users\mvn77\Documents\Arduino\libraries\DHT-sensor-library-master/DHT.h:40:4: note: DHT::DHT(uint8_t, uint8_t, uint8_t)

        DHT(uint8_t pin, uint8_t type, uint8_t count=6);

        ^

    C:\Users\mvn77\Documents\Arduino\libraries\DHT-sensor-library-master/DHT.h:40:4: note:   candidate expects 3 arguments, 0 provided

    C:\Users\mvn77\Documents\Arduino\libraries\DHT-sensor-library-master/DHT.h:38:7: note: constexpr DHT::DHT(const DHT&)

    class DHT {

           ^

    C:\Users\mvn77\Documents\Arduino\libraries\DHT-sensor-library-master/DHT.h:38:7: note:   candidate expects 1 argument, 0 provided

    C:\Users\mvn77\Documents\Arduino\libraries\DHT-sensor-library-master/DHT.h:38:7: note: constexpr DHT::DHT(DHT&&)

    C:\Users\mvn77\Documents\Arduino\libraries\DHT-sensor-library-master/DHT.h:38:7: note:   candidate expects 1 argument, 0 provided

    C:\Wi-Fi-Sensor-1.09\esp_sensor\esp_sensor.ino: In function 'void DHT22Sensor()':

    esp_sensor:1085: error: 'class DHT' has no member named 'getTemperature'

       float temperatureData = dht.getTemperature();

                                   ^

    esp_sensor:1086: error: 'class DHT' has no member named 'getHumidity'

       float humidityData = dht.getHumidity();

                                ^

    C:\Wi-Fi-Sensor-1.09\esp_sensor\esp_sensor.ino: In function 'void setup()':

    esp_sensor:3471: error: 'class DHT' has no member named 'setup'

         dht.setup(atoi(JConf.dht_pin));

             ^
    Библиотека на месте - скачал с https://github.com/adafruit/DHT-sensor-library и распаковал в директорию. Примеры компилируются нормально. Чо за хрень не пойму...
    Поставил на другой компьютер - ситуация та же...
     
    Последнее редактирование: 6 дек 2016
  7. mvn77

    mvn77 Нерд

    Обратил внимание что в примере идущем с библиотекой, данные получаются через dht.readTemperature а в esp_sensor.ino через getTemperature, тоже касается и других запросов, отсюда вопрос - вы уверены что через эту библиотеку реализуется поддержка DHT? Откомпилировалось с библиотекой https://github.com/markruys/arduino-DHT Я так понимаю автор пошутил дав ссылку в описании на "левую" библиотеку?
     
    Последнее редактирование: 6 дек 2016
  8. Egony

    Egony Нерд

    Я тестировал с "правильной" библиотекой. Правда, не последнюю версию софта, о котором топик. Если сподоблюсь, завтра посмотрю.
     
  9. Egony

    Egony Нерд

    Ну так никто и не обещал :)
     
  10. kmaximv

    kmaximv Гик

    Вы, похоже, используете не последнюю версию скетча. Качаем с мастер ветки.
     
  11. mvn77

    mvn77 Нерд

    я с хаба качал Wi-Fi-Sensor-1.09
     
  12. mvn77

    mvn77 Нерд

    Да знаю вы писали, что не проверяли на других - просто в теме встречал, что некоторые жалуются что не ьзапускается после прошивки - явно чел использовал не ESP12
    ссылка на текущую версию для ESP07 - https://yadi.sk/d/d7s9OozB32L3qH
     
    Последнее редактирование: 6 дек 2016
  13. Egony

    Egony Нерд

    Ну а кто заставляет лить бинарник для определенного железа - в другое? Даже ESP12 друг от друга отличаются, что уж говорить об остальном зоопарке. Строго говоря, прошивка должна работать только при компиляции под определенные параметры железа, которые задаются в ide.
     
  14. kmaximv

    kmaximv Гик

    1. Для DHT номер пина устанавливаем через веб. Для DS18B20 в файле конфигурации user_config.h, по умолчанию 2 пин.
    2. Вроде его можно откалибровать, но как, не знаю. Беглый поиск готового решения не выдал.
     
  15. mvn77

    mvn77 Нерд

    можно еще вопрос - запустил openxab ваши configurations скопировал на данной машине запустил mosquitto, данные с датчика приходят смотрю через MQTTlens -а вот на странице http://localhost:8080/openhab.app данные не отображаются - конфиги openhab смотрел - вроде в настройках MQTT стоит localhost
     
  16. kmaximv

    kmaximv Гик

    Аддон Опенхаба для MQTT не забыли поставить?
    В openhab.cfg что прописано для MQTT?
    Какие данные приходят в mosquitto?
     
  17. mvn77

    mvn77 Нерд

    Аддоны все что были на сайте распокавал в папку D:\openHAB\addons\
    там и org.openhab.binding.mqtt-1.8.3.jar
    Я полностью configurations перенес из из вашей паки с опенхаба, где идут исходники, конфиг смотрел в принципе там не так много
    Код (Text):
    ################################# MQTT Transport ######################################
    #
    # Define your MQTT broker connections here for use in the MQTT Binding or MQTT
    # Persistence bundles. Replace <broker> with a id you choose.
    #

    # URL to the MQTT broker, e.g. tcp://localhost:1883 or ssl://localhost:8883
    mqtt:mybroker.url=tcp://localhost:1883

    # Optional. Client id (max 23 chars) to use when connecting to the broker.
    # If not provided a default one is generated.
    #mqtt:mybroker.clientId=mybroker

    # Optional. User id to authenticate with the broker.
    # mqtt:<broker>.user=<user>

    # Optional. Password to authenticate with the broker.
    #mqtt:<broker>.pwd=<password>

    # Optional. Set the quality of service level for sending messages to this broker.
    # Possible values are 0 (Deliver at most once),1 (Deliver at least once) or 2
    # (Deliver exactly once). Defaults to 0.
    #mqtt:<broker>.qos=<qos>

    # Optional. True or false. Defines if the broker should retain the messages sent to
    # it. Defaults to false.
    #mqtt:<broker>.retain=<retain>

    # Optional. True or false. Defines if messages are published asynchronously or
    # synchronously. Defaults to true.
    #mqtt:<broker>.async=<async>

    # Optional. Defines the last will and testament that is sent when this client goes offline
    # Format: topic:message:qos:retained <br/>
    #mqtt:<broker>.lwt=<last will definition>

    mqtt-eventbus:broker=mybroker
    mqtt-eventbus:statePublishTopic=/statePub/${item}
    mqtt-eventbus:commandPublishTopic=/commandPub/${item}
    mqtt-eventbus:stateSubscribeTopic=/stateSub/${item}
    mqtt-eventbus:commandSubscribeTopic=/commandSub/${item}
     
    Судя по конфигам - все должно работать.
    по поводу - что приходит
    https://yadi.sk/i/NIscgmyj32XwTp
     
  18. kmaximv

    kmaximv Гик

    Не пойму, у вас всё валится в топик /stateSub/ или программа не отображает подтопики?
    Должно быть так:
    mqtt-spy_003.png

    Покажите еще веб страницу настроек MQTT
     
  19. mvn77

    mvn77 Нерд

    Вот еще бы знать как ее увидеть.... не могу найти по openHAB ни одной нормальной статьи - везде кусочками.
    Всплыло еще пару вопросов - вчера весь день мучил ESP07 с последней прошивкой - проверял датчики - к вечеру решил заняться MQTT включаю забиваю настройки и получаю вечный ребут в логах - 192.168.0.51 MqttConnect: Connecting to MQTT... и до бесконечности
    Ну подумал что может проблема из за ESP 07
    Сегодня обновил ESP 12 - и такая же лажа, спас только downgrade.
    Заливаю обратно прошивку 0.9 - и все нормально, даже настройки сохраняет. Отключаю MQTT обновляю, все нормально, включаю MQTTи опять точка в вечном ребуте.
    Так же хотел спросить - как вернуть настройки в дефолтные при перепрошивке?

    https://yadi.sk/i/0nNmjV-e32ZRLb
     
    Последнее редактирование: 8 дек 2016
  20. kmaximv

    kmaximv Гик

    Ошибку исправил, она появлялась тогда, когда ESP не могла подключиться к MQTT серверу

    Включить эту функцию можно раскомментировав в файле user_config.h строчку
    Код (C++):
    //#define RESET_BUTTON_ON   //Функционал сброса конфига по кнопке при загрузке модуля
     
    При загрузке нужно будет подтянуть пин (по умолчанию 2) на землю на 5 сек. Желательно не на прямую, а через резистор номиналом не менее 1К.