Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Русский
  3. ioBroker
  4. ioBroker драйвера
  5. Драйвер Mqtt + Arduino

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    821

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    6.3k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.6k

Драйвер Mqtt + Arduino

Geplant Angeheftet Gesperrt Verschoben ioBroker драйвера
244 Beiträge 18 Kommentatoren 81.3k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • R Offline
    R Offline
    RDim
    schrieb am zuletzt editiert von
    #166

    @Haus:

    @Bluefox:

    @bondrogeen:

    Сегодня пробовал на другом сервисе (брокере)

    Получается название всего топика присваивается как переменная.

    filename="3333.jpg" index="0">~~ Сегодня переписываю mqtt. Была полная путаница с конвертацией имён.
    Bluefox вопрос, ардуина работает у меня стабильно без сбоев. Тут так вышло что не хватает портов на коммутаторе я выдернул шнур из ардуины а драйвер даже этого не видит. Раньше были сбои по питанию и отваливалась связь, драйвер вроде warn писал ? `
    Я для проверки всех устройств использую драйвер ping, а далее по важности устройства или на экран или озвучиваем, плюс обязательно через Pushbullet Adapter оповещает.

    1 Antwort Letzte Antwort
    0
    • H Offline
      H Offline
      Haus
      schrieb am zuletzt editiert von
      #167

      Не ошибся warn всё же есть правда через 15 минут, а Танька у меня тоже вещает когда чего нибудь отваливается ;)

      sayit-0	2016-02-05 21:00:02	info	saying: 21:00
      sayit-0	2016-02-05 21:00:00	info	saying: /opt/iobroker/node_modules/iobroker.sayit/gong.mp3
      javascript-0	2016-02-05 21:00:00	info	script.js.Time_say: 21:00
      mqtt-0	2016-02-05 20:49:44	info	Client [LCD-accumulator_tanks_1] closed
      mqtt-0	2016-02-05 20:49:44	warn	[LCD-accumulator_tanks_1] Error: read EHOSTUNREACH
      javascript-0	2016-02-05 20:45:03	info	script.js.Weather_forecast: Вильнюс, 8 февраля => Переменная облачность, без осадков. Температура ночью 1°, днём 5°. Ветер юго-западный, 4 м в секунду.
      javascript-0	2016-02-05 20:45:03	info	script.js.Weather_forecast: Вильнюс, 7 февраля => Переменная облачность, без осадков. Температура ночью 0°, днём 4°. Ветер южный, 5 м в секунду.
      javascript-0	2016-02-05 20:45:03	info	script.js.Weather_forecast: Вильнюс, 6 февраля => Облачно, небольшие осадки. Температура ночью -2°, днём 2°. Ветер южный, 4 м в секунду.
      sayit-0	2016-02-05 20:33:47	info	Copied file '/opt/iobroker/node_modules/iobroker.sayit/say.mp3' to '/opt/iobroker/cache/91faf882091c8612d9a8019799947d6b.mp3'
      sayit-0	2016-02-05 20:33:47	info	saying: Дисплей. Пропала связь!
      sayit-0	2016-02-05 20:33:45	info	saying: /opt/iobroker/node_modules/iobroker.sayit/gong.mp3
      javascript-0	2016-02-05 20:33:45	info	script.js.Ping_0_say: Дисплей. Пропала связь!
      

      js-controller: 1.5.7 / node.js: v8.15.1/ npm: 6.4.1

      admin: 3.6.0

      javascript: 4.1.10

      web: 2.4.1 vis: 1.1.10

      cloud: 2.6.2

      Server: DELL FX170 / linux: Debian 9.5 Stretch

      Adapter: MegaD-2561, Mega-ES…

      1 Antwort Letzte Antwort
      0
      • B Offline
        B Offline
        bondrogeen
        schrieb am zuletzt editiert von
        #168

        Спасибо, с новой версией все работает как надо.

        1 Antwort Letzte Antwort
        0
        • B Offline
          B Offline
          bondrogeen
          schrieb am zuletzt editiert von
          #169

          Добрый день.

          Есть какие ограничение по количеству клиентов iobrokera ?

          Есть 2 ESP8266 отсылают данные на CloudMQTT

          Дома iobroker подключен как клиент и забирает данные с CloudMQTT

          Все нормально работает.

          Появилась задача поставить iobroker на работе и забирать данные с CloudMQTT.

          Но при подключении происходит один раз считывание данных и все, дальше молчит пока не перезагрузишь mqtt и опять все повторяется.

          И по моему дома перестает принимать тоже. (это еще не точно сегодня проверю еще раз)

          1 Antwort Letzte Antwort
          0
          • B Offline
            B Offline
            bondrogeen
            schrieb am zuletzt editiert von
            #170

            Сегодня проверил - дома перестал принимать данные от mqtt как раз в тот момент когда я пытался настроить iobroker на работе.

            Для тестов поставил iobroker на второй комп дома.

            Провел пару тестов, результат один и тот же.

            Как только подключаешься двумя iobroker к одному MQTT брокеру CloudMQTT, то оба перестают принимать данные с брокера (CloudMQTT)

            Попробовал создать вторую учетку на CloudMQTT и соединил две учетки мостом, а iobroker-ы подключается каждый к своей учетки.

            Пока полет нормальный, данные принимают оба, управление тоже присутствует.

            1 Antwort Letzte Antwort
            0
            • Alex1808A Offline
              Alex1808A Offline
              Alex1808
              Developer
              schrieb am zuletzt editiert von
              #171

              Всем привет!

              Пытаюсь подружить "Sonoff" с ioBroker через MQTT, на немецкой стороне форума интерес не проявляется. http://forum.iobroker.net/viewtopic.php?f=20&t=2656

              Альтернативную прошивку залил через Arduino IDE (USB-TTL), объекты в ioBroker прописываются но релюшка не переключается. Причём если щёлкать кнопочкой на сомом Sonoff то ioBroker-у состояние передаётся.

              Прошивку залил вот эту https://github.com/arendst/Sonoff-MQTT-OTA-Arduino

              Подскажите где проблема?

              1 Antwort Letzte Antwort
              0
              • S Offline
                S Offline
                spectrekr
                schrieb am zuletzt editiert von
                #172

                @Alex1808:

                Всем привет!

                Пытаюсь подружить "Sonoff" с ioBroker через MQTT, на немецкой стороне форума интерес не проявляется. http://forum.iobroker.net/viewtopic.php?f=20&t=2656

                Альтернативную прошивку залил через Arduino IDE (USB-TTL), объекты в ioBroker прописываются но релюшка не переключается. Причём если щёлкать кнопочкой на сомом Sonoff то ioBroker-у состояние передаётся.

                Прошивку залил вот эту https://github.com/arendst/Sonoff-MQTT-OTA-Arduino

                Подскажите где проблема? `
                А вот эту прошивку не пробовали? https://wifi-iot.com Я себе собрал управляемую розетку на esp + реле на 15А, работает и переключается. Правда MQTT клиент входит в платную подписку, но она блага стоит копейки.

                1 Antwort Letzte Antwort
                0
                • Alex1808A Offline
                  Alex1808A Offline
                  Alex1808
                  Developer
                  schrieb am zuletzt editiert von
                  #173

                  @spectrekr:

                  А вот эту прошивку не пробовали? https://wifi-iot.com Я себе собрал управляемую розетку на esp + реле на 15А, работает и переключается. Правда MQTT клиент входит в платную подписку, но она блага стоит копейки. `

                  Пробывал. Там что-то тоже засада.. вот что в логе:

                  ` > mqtt-0 2016-04-21 17:15:03 error Cannot parse {"system":{"hostname":"ESP000CD343","uptime":3,"rssi":-57,"freemem":33720},"sensors":},"gpio":{"12":0,"13":0}}

                  mqtt-0 2016-04-21 17:15:03 info Client [ESP8266000cd343] subscribes on topic "timestamp"

                  mqtt-0 2016-04-21 17:15:03 info publishOnSubscribe send all known states

                  mqtt-0 2016-04-21 17:15:03 info Client [ESP8266000cd343] subscribes on "ESP000CD343.#" with regex /^mqtt.0.ESP000CD343..*/

                  mqtt-0 2016-04-21 17:15:03 info Client [ESP8266000cd343] subscribes on "ESP000CD343.#" with regex /^ESP000CD343..*/

                  mqtt-0 2016-04-21 17:15:03 info Client [ESP8266000cd343] connected

                  mqtt-0 2016-04-21 17:11:51 info Starting MQTT server on port 1883

                  mqtt-0 2016-04-21 17:11:50 info starting. Version 0.5.0 in /opt/iobroker/node_modules/iobroker.mqtt `

                  В настройка wifi-Iоt только пины GPIO прописывается и включается клиент mqtt, в ioBroker-е не прописывается заголовок на переключение релюшки.

                  1 Antwort Letzte Antwort
                  0
                  • S Offline
                    S Offline
                    spectrekr
                    schrieb am zuletzt editiert von
                    #174

                    А какое SDK используете и как давно прошивку собирали? И чип памяти там на сколько? Сегодня проверил прошивку на SDK 1.3.0 с 2 подключенными GPIO проблем не возникает, все в MQTT создалось и на вкладке "объекты" и "состояние" доступны.

                    1 Antwort Letzte Antwort
                    0
                    • Alex1808A Offline
                      Alex1808A Offline
                      Alex1808
                      Developer
                      schrieb am zuletzt editiert von
                      #175

                      @spectrekr:

                      А какое SDK используете и как давно прошивку собирали? И чип памяти там на сколько? Сегодня проверил прошивку на SDK 1.3.0 с 2 подключенными GPIO проблем не возникает, все в MQTT создалось и на вкладке "объекты" и "состояние" доступны. `

                      На SDK 1.5.1 собирал (последнюю, вчера). Чип на 1мб.

                      Вчера наткнулся на один проект https://github.com/h42i/sonoff-switch/b … sonoff.cpp прошил и сним нормально релюшка переключает, единственный минус при переключении на самом Sonoff не отсылается состояние на MQTT сервер, а так вполне работоспособный вариант.

                      1 Antwort Letzte Antwort
                      0
                      • Alex1808A Offline
                        Alex1808A Offline
                        Alex1808
                        Developer
                        schrieb am zuletzt editiert von
                        #176

                        @spectrekr:

                        Сегодня проверил прошивку на SDK 1.3.0 с 2 подключенными GPIO проблем не возникает, все в MQTT создалось и на вкладке "объекты" и "состояние" доступны. `

                        Вчера проверил с SDK 1.4.0 >> полёт нормальный, ошибок в логе нет, все переменныe создались, релюшка переключается. Спасибо за подсказку :)

                        1 Antwort Letzte Antwort
                        0
                        • A Offline
                          A Offline
                          artemon2405
                          schrieb am zuletzt editiert von
                          #177

                          добрый вечер всем нашёл этот скетч и обрадовался потому что это то что я и хотел но не тут было ни как не могу скомпилировать этот скетч , постоянно какие то ошибки сначала с библиотеками были вроде решил потом со строками

                          EthernetClient ethClient; //ЗДЕСЬ КОМЕНТИРУЮ И КОПИРУЮ В ДРУГОЕ МЕСТО НИЖЕ

                          PubSubClient client(server, 1883, callback, ethClient);

                          перенёс их ниже как подсказали эта ошибка исчезла и вот теперь уже несколько дней мучаюсь с ошибкой 58 строка

                          DHT DHT; ошибка no matching function for call to 'DHT::DHT()'

                          я думаю что проблема с библиотекой но я несколько установил проблема не исчезла . IDE 16.6

                          но пробовал и другие если кому не сложно выложите библиотеку DHT с которой этот скетч компилируется ну и заодно свой скетч и версию IDE. сейчас у меня ват такой скетч

                          ! #include <spi.h>// Ethernet shield
                          ! #include <ethernet.h>// Ethernet shield
                          ! #include <pubsubclient.h>// MQTT
                          ! #include <servo.h>#include <dht.h>#include <onewire.h>#include <dallastemperature.h>Servo servo;
                          ! byte mac[] = { 0xC1, 0x7C, 0x38, 0x41, 0x89, 0x12 };
                          ! byte server[] = { 192, 168, 1, 190 }; //IP Брокера
                          ! byte ip[] = { 192, 168, 1, 167 }; //IP Клиента (Arduino)
                          ! //EthernetClient ethClient; //ЗДЕСЬ КОМЕНТИРУЮ И КОПИРУЮ В ДРУГОЕ МЕСТО НИЖЕ
                          ! //PubSubClient client(server, 1883, callback, ethClient);
                          ! #define id_connect "myhome-kitchen"
                          ! #define Prefix_subscribe "myhome/Kitchen/"
                          ! ///////////////Объявляем порты ввода-вывода
                          ! #define ServoPin 3 //Порт к которому подключен сервопривод
                          ! const int start_DI_pin [] = {2, 4, 5}; // Порты Ввода
                          ! int n_DI_pin = sizeof(start_DI_pin) / sizeof(start_DI_pin[0]) - 1; //Вычисляем длинну массива
                          ! const int start_DO_pin [] = {6, 7}; //Порты Вывода
                          ! int n_DO_pin = sizeof(start_DO_pin) / sizeof(start_DO_pin[0]) - 1; //Вычисляем длинну массива
                          ! int DI[] = {0, 0, 0};
                          ! int old_DI[] = {0, 0};
                          ! ///////////////////////////Переменные для работы с освещением//////////////////////////////////////
                          ! int ServoAngle = 100; //Угол сервопривода при включении
                          ! int flag = 0;
                          ! int flag2 = 0;
                          ! int pause = 0;
                          ! //–----------------------------------------- Sensors -------------------------------------------//
                          ! const int MQ7_Pin = A0; // Куда подключили MQ7
                          ! //int MQ7Value = 0;
                          ! int MQ7Value = analogRead(MQ7_Pin);
                          ! const int foto_Pin = A1; // устанавливаем входную ногу для Фоторезистора
                          ! //unsigned int fotoValue = 0; // цифровое значение фоторезистора
                          ! unsigned int fotoValue = analogRead(foto_Pin);
                          ! #define ONE_WIRE_BUS 8
                          ! OneWire oneWire(ONE_WIRE_BUS);
                          ! DallasTemperature DS_sensors(&oneWire);
                          ! // 28 FF F2 5C 53 15 2 97
                          ! DeviceAddress addr_T1 = { 0x28, 0xFF, 0xF2, 0x5C, 0x53, 0x15, 0x02, 0x97 };
                          ! float T1 = 0;
                          ! DHT DHT;
                          ! #define DHT22_PIN 9
                          ! float Hout = 0;
                          ! float Tout = 0;
                          ! //#define DHTPIN 2 // Номер пина, к которому подсоединен датчик
                          ! //#define DHTTYPE DHT22 // Задаём тип DHT датчика
                          ! //DHT dht(DHTPIN, DHTTYPE);
                          ! ////////////////////////////////////////////////////////////////////////////
                          ! void callback(char* topic, byte* payload, unsigned int length) {
                          ! payload[length] = '\0';
                          ! // Serial.print(topic);
                          ! // Serial.print("=");
                          ! String strTopic = String(topic);
                          ! String strPayload = String((char*)payload);
                          ! // Serial.println(strPayload);
                          ! callback_iobroker(strTopic, strPayload);
                          ! }
                          ! EthernetClient ethClient; //ЗДЕСЬ КОМЕНТИРУЮ И КОПИРУЮ В ДРУГОЕ МЕСТО НИЖЕ
                          ! PubSubClient client(server, 1883, callback, ethClient);
                          ! ////////////////////////////////////////////////////////////////////////////
                          ! void setup() {
                          ! //Serial.begin(57600);
                          ! // Serial.println("start");
                          ! //Объявляем порты Digital inputs/outputs
                          ! for (int i = 0 ; i <= n_DI_pin; i++) {
                          ! pinMode (start_DI_pin __, INPUT);
                          ! }
                          ! digitalWrite(5, HIGH); //Окно
                          ! digitalWrite(4, HIGH); //Объемник
                          ! for (int i = 0 ; i <= n_DO_pin; i++) {
                          ! pinMode (start_DO_pin __, OUTPUT);
                          ! }
                          ! Ethernet.begin(mac, ip);
                          ! if (client.connect(id_connect)) {
                          ! getSensors();
                          ! control();
                          ! // client.publish("myhome/Kitchen/Change_Counter", "0");
                          ! // client.publish("myhome/Kitchen/Temp_room", "0");
                          ! // client.publish("myhome/Kitchen/Humidity_room", "0");
                          ! // client.publish("myhome/Kitchen/Temp_radiator", "0");
                          ! // client.publish("myhome/Kitchen/Temp_in", "0");
                          ! // client.publish("myhome/Kitchen/Lux", "0");
                          ! // client.publish("myhome/Kitchen/Servo", "0");
                          ! // client.publish("myhome/Kitchen/MQ7", "0");
                          ! client.subscribe("myhome/Kitchen/#");
                          ! }
                          ! }
                          ! /////////////////////////////////////////////////////////////////////////
                          ! void loop() {
                          ! client.loop();
                          ! control();
                          ! getSensors();
                          ! if (!client.connected()) {
                          ! if (client.connect(id_connect)) {
                          ! control();
                          ! getSensors();
                          ! client.subscribe("myhome/Kitchen/#");
                          ! }
                          ! }
                          ! }____</dallastemperature.h></onewire.h></dht.h></servo.h></pubsubclient.h></ethernet.h></spi.h> __и отдельно Functions

                          ! /////////////////////////////////От Брокера//////////////////////////////////////////////
                          ! void callback_iobroker(String strTopic, String strPayload){
                          ! if (strTopic == "myhome/Kitchen/Servo"){
                          ! ServoAngle=strPayload.toInt();
                          ! if (ServoAngle >= 0 && ServoAngle <= 255){
                          ! servo.attach(ServoPin);
                          ! //delay(200); //ждем 2 секунды
                          ! servo.write(ServoAngle); //ставим вал под 0
                          ! delay(1000); //ждем 2 секунды
                          ! //client.publish("myhome/Kitchen/Servo", b);
                          ! servo.detach();
                          ! }
                          ! }
                          ! }
                          ! ////////////////////////////////////Брокеру/////////////////////////////////////
                          ! void control(){
                          ! if(digitalRead(5)==HIGH && flag==0) { //если окно открыто
                          ! client.publish("myhome/Kitchen/Window", "1");
                          ! flag=1;
                          ! }
                          ! if(digitalRead(5)==LOW && flag==1){//если окно закрыто
                          ! client.publish("myhome/Kitchen/Window", "0");
                          ! flag=0;//обнуляем переменную flag
                          ! }
                          ! if(digitalRead(4)==HIGH && flag2==0) { // Если есть движение
                          ! client.publish("myhome/Kitchen/Motion", "1");
                          ! flag2=1;
                          ! }
                          ! if(digitalRead(4)==LOW && flag2==1){// Если нет движения
                          ! client.publish("myhome/Kitchen/Motion", "0");
                          ! flag2=0;//обнуляем переменную flag
                          ! }
                          ! }
                          ! ///////////////////////////////Данные сенсоров////////////////////////////////////
                          ! void getSensors () {
                          ! MQ7Value = analogRead(MQ7_Pin);
                          ! fotoValue = analogRead(foto_Pin); // считываем значение с фоторезистора
                          ! // ServoAngle = analogRead(2);
                          ! //Обработка данных датчика DHT22. Подключение к порту цифровому P9 Arduino
                          ! //Глобальные переменные Hout и Tout типа флоат - влажность (%) и температура (град. С)
                          ! if (DHT.read22(DHT22_PIN)== DHTLIB_OK) {
                          ! Hout = DHT.humidity;
                          ! Tout = DHT.temperature;
                          ! }
                          ! if (Hout == 0 || Tout == 0){
                          ! delay (1000);
                          ! if (DHT.read22(DHT22_PIN)== DHTLIB_OK) {
                          ! Hout = DHT.humidity;
                          ! Tout = DHT.temperature;
                          ! }
                          ! }
                          ! //Обработка данных цифровых датчиков температуры типа DS18B20.
                          ! //Шина 1-Wire на цифровой пин P8 Arduino.
                          ! //Подключено 2 датчика температуры, адреса задаются в секции глобальных констант "Sensors"
                          ! //Три значение температуры T1, T2, типа float (град. С).
                          ! DS_sensors.requestTemperatures();
                          ! T1 = DS_sensors.getTempC(addr_T1);
                          ! ///////////////////////Паблик данных сенсоров////////////////////////
                          ! if (pause == 50 || pause == 0){
                          ! char b[5];
                          ! String char_Hout = String(Hout);
                          ! char_Hout.toCharArray(b,5);
                          ! client.publish("myhome/Kitchen/Humidity_room", b);
                          ! String char_Tout = String(Tout);
                          ! char_Tout.toCharArray(b,5);
                          ! client.publish("myhome/Kitchen/Temp_room", b);
                          ! String char_T1 = String(T1);
                          ! char_T1.toCharArray(b,5);
                          ! client.publish("myhome/Kitchen/Temp_radiator", b);
                          ! String char_fotoValue = String(fotoValue);
                          ! char_fotoValue.toCharArray(b,4);
                          ! client.publish("myhome/Kitchen/Lux", b);
                          ! String char_ServoAngle = String(ServoAngle);
                          ! char_ServoAngle.toCharArray(b,4);
                          ! client.publish("myhome/Kitchen/Servo", b);
                          ! String char_MQ7Value = String(MQ7Value);
                          ! char_MQ7Value.toCharArray(b,4);
                          ! client.publish("myhome/Kitchen/MQ7", b);
                          ! pause = 1;
                          ! }
                          ! else pause++;
                          ! }
                          Заранее всем спасибо жду ответов__

                          1 Antwort Letzte Antwort
                          0
                          • I Offline
                            I Offline
                            instalator
                            schrieb am zuletzt editiert von
                            #178

                            > я думаю что проблема с библиотекой но я несколько установил проблема не исчезла . проблема не в библиотеке. Перепиши код под свою библиотеку

                            Высокий уровень Децибел вреден для здоровья!

                            http://blog.instalator.ru/

                            1 Antwort Letzte Antwort
                            0
                            • A Offline
                              A Offline
                              artemon2405
                              schrieb am zuletzt editiert von
                              #179

                              @instalator:

                              > я думаю что проблема с библиотекой но я несколько установил проблема не исчезла . проблема не в библиотеке. Перепиши код под свою библиотеку `

                              спасибо за ответ я попробовал по разному но у меня все ошибки начинаются с самого начала когда я библиотеку

                              #include 
                              ````начинаю переименовывать в````
                              #include 
                              ````потому что у меня просит библиотеку именно с большими буквами поэтому я и прошу дать библиотеку которая написана с маленькими буквами. Потому что после переименования библиотеки пропадает ошибка инициализации библиотеки но она тянет за собой кучу других ошибок.
                              
                              Буду признателен за dht библиотеку прописанную в этом скетче
                              1 Antwort Letzte Antwort
                              0
                              • A Offline
                                A Offline
                                artemon2405
                                schrieb am zuletzt editiert von
                                #180

                                переименовал в самой библиотеке файл DHT.h в dht.h теперь исчезла ошибка по библиотеке но появились много других которые я думаю связаны друг с другом выкладываю мои ошибки может кто подскажет что можно сделать

                                Arduino: 1.6.6 (Windows 10), Плата:"Arduino/Genuino Uno"
                                
                                Kitchen_Mqtt:56: error: 'dht' does not name a type
                                
                                    dht  DHT;
                                
                                    ^
                                
                                C:\Users\User\Downloads\Kitchen_Mqtt_HAUS\Kitchen_Mqtt\functions.ino: In function 'void getSensors()':
                                
                                functions:48: error: expected primary-expression before '.' token
                                
                                   if (DHT.read22(DHT22_PIN)== DHTLIB_OK) {
                                
                                          ^
                                
                                functions:48: error: 'DHTLIB_OK' was not declared in this scope
                                
                                   if (DHT.read22(DHT22_PIN)== DHTLIB_OK) {
                                
                                                               ^
                                
                                functions:49: error: expected primary-expression before '.' token
                                
                                     Hout = DHT.humidity;
                                
                                               ^
                                
                                functions:50: error: expected primary-expression before '.' token
                                
                                     Tout = DHT.temperature;
                                
                                               ^
                                
                                functions:54: error: expected primary-expression before '.' token
                                
                                     if (DHT.read22(DHT22_PIN)== DHTLIB_OK) {
                                
                                            ^
                                
                                functions:54: error: 'DHTLIB_OK' was not declared in this scope
                                
                                     if (DHT.read22(DHT22_PIN)== DHTLIB_OK) {
                                
                                                                 ^
                                
                                functions:55: error: expected primary-expression before '.' token
                                
                                     Hout = DHT.humidity;
                                
                                               ^
                                
                                functions:56: error: expected primary-expression before '.' token
                                
                                     Tout = DHT.temperature;
                                
                                               ^
                                
                                exit status 1
                                'dht' does not name a type
                                
                                  Это сообщение будет содержать больше информации чем
                                  "Отображать вывод во время компиляции"
                                  включено в Файл > Настройки
                                
                                

                                вся надежда на вас instalator или на других желающих помочь . этот скетч как будто написан под мои запросы мне надо передавать данные в majordomo по MQTT так что прошу вашего внимания. Заранее спасибо

                                1 Antwort Letzte Antwort
                                0
                                • I Offline
                                  I Offline
                                  instalator
                                  schrieb am zuletzt editiert von
                                  #181

                                  @artemon2405:

                                  переименовал в самой библиотеке файл DHT.h в dht.h теперь исчезла ошибка по библиотеке но появились много других которые я думаю связаны друг с другом выкладываю мои ошибки может кто подскажет что можно сделать

                                  Arduino: 1.6.6 (Windows 10), Плата:"Arduino/Genuino Uno"
                                  
                                  Kitchen_Mqtt:56: error: 'dht' does not name a type
                                  
                                      dht  DHT;
                                  
                                      ^
                                  
                                  C:\Users\User\Downloads\Kitchen_Mqtt_HAUS\Kitchen_Mqtt\functions.ino: In function 'void getSensors()':
                                  
                                  functions:48: error: expected primary-expression before '.' token
                                  
                                     if (DHT.read22(DHT22_PIN)== DHTLIB_OK) {
                                  
                                            ^
                                  
                                  functions:48: error: 'DHTLIB_OK' was not declared in this scope
                                  
                                     if (DHT.read22(DHT22_PIN)== DHTLIB_OK) {
                                  
                                                                 ^
                                  
                                  functions:49: error: expected primary-expression before '.' token
                                  
                                       Hout = DHT.humidity;
                                  
                                                 ^
                                  
                                  functions:50: error: expected primary-expression before '.' token
                                  
                                       Tout = DHT.temperature;
                                  
                                                 ^
                                  
                                  functions:54: error: expected primary-expression before '.' token
                                  
                                       if (DHT.read22(DHT22_PIN)== DHTLIB_OK) {
                                  
                                              ^
                                  
                                  functions:54: error: 'DHTLIB_OK' was not declared in this scope
                                  
                                       if (DHT.read22(DHT22_PIN)== DHTLIB_OK) {
                                  
                                                                   ^
                                  
                                  functions:55: error: expected primary-expression before '.' token
                                  
                                       Hout = DHT.humidity;
                                  
                                                 ^
                                  
                                  functions:56: error: expected primary-expression before '.' token
                                  
                                       Tout = DHT.temperature;
                                  
                                                 ^
                                  
                                  exit status 1
                                  'dht' does not name a type
                                  
                                    Это сообщение будет содержать больше информации чем
                                    "Отображать вывод во время компиляции"
                                    включено в Файл > Настройки
                                  
                                  

                                  вся надежда на вас instalator или на других желающих помочь . этот скетч как будто написан под мои запросы мне надо передавать данные в majordomo по MQTT так что прошу вашего внимания. Заранее спасибо ` смогу только завтра часов в 6 московского глянуть

                                  Высокий уровень Децибел вреден для здоровья!

                                  http://blog.instalator.ru/

                                  1 Antwort Letzte Antwort
                                  0
                                  • I Offline
                                    I Offline
                                    instalator
                                    schrieb am zuletzt editiert von
                                    #182

                                    @artemon2405:

                                    вся надежда на вас instalator или на других желающих помочь . этот скетч как будто написан под мои запросы мне надо передавать данные в majordomo по MQTT так что прошу вашего внимания. Заранее спасибо `
                                    ….пожалуйста
                                    266_dht.rar
                                    266_kitchen_mqtt.rar

                                    Высокий уровень Децибел вреден для здоровья!

                                    http://blog.instalator.ru/

                                    1 Antwort Letzte Antwort
                                    0
                                    • A Offline
                                      A Offline
                                      artemon2405
                                      schrieb am zuletzt editiert von
                                      #183

                                      спасибо огромное с вашей библиотекой сразу всё скомпилипровалось сейчас попробую сбросить на ардуинку и буду тестировать

                                      1 Antwort Letzte Antwort
                                      0
                                      • A Offline
                                        A Offline
                                        artemon2405
                                        schrieb am zuletzt editiert von
                                        #184

                                        залил на ардуино но данные никакие не поступают дело в том что я пользуюсь Mosquitto а не IBroker может быть из за этого. Просто до этого я пользовался только одним DHT вот этим скетчем````
                                        *
                                        //Скетч для вывода в Монитор порта теспературы в Цельсиях и Влажности
                                        // с датчика DHT22 и отправки их по MQTT в брокер и MajorDoMo.
                                        */

                                        #include <spi.h> // Библиотека SPI шины
                                        #include <ethernet.h> // Ethernet библиотека
                                        #include <pubsubclient.h> // Библиотека MQTT
                                        #include <dht.h> // Библиотека для датчиков DHT11/22

                                        #define DHTPIN 2 // Номер пина, к которому подсоединен датчик
                                        #define DHTTYPE DHT22 // Задаём тип DHT датчика
                                        DHT dht(DHTPIN, DHTTYPE);

                                        // Задаём mac и ip адреса в Локальной сети
                                        byte mac[] = { 0xDE, 0xED, 0xBA, 0xFE, 0xFE, 0xED };
                                        IPAddress ip{192, 168, 1, 74}; //ip Адрес Ethernet Shild'a Arduino
                                        IPAddress server{192, 168, 1, 3}; //ip Адрес для MQTT Брокера

                                        // Шапка Функции Callback (обратный вызов)
                                        void callback(char* topic, byte* payload, unsigned int length);

                                        EthernetClient ethClient; //Инициализируем Ethernet клиент
                                        PubSubClient client(server, 1883, callback, ethClient); //Инициализируем MQTT клиент

                                        // Функция Callback
                                        void callback(char* topic, byte* payload, unsigned int length)
                                        {
                                        // Выделяем необходимое кол-во памяти для копии payload
                                        byte* p = (byte*)malloc(length);
                                        // Копирование payload в новый буфер
                                        memcpy(p, payload, length);
                                        client.publish("home/data/status/sensor", p, length);
                                        // Освобождаем память
                                        free(p);
                                        }

                                        void setup()
                                        {
                                        // 1 бод равно 0.8 бит/сек
                                        // 1 бит/сек равно 1.25 бод
                                        Serial.begin(9600); // Задаём скорость порта в БОД'ах.
                                        Serial.println("DHT22 test!"); // Тестовое сообщ. при откр. Монитора порта

                                        dht.begin();

                                        Ethernet.begin(mac, ip); // Инициализируем mac, ip

                                        }

                                        void loop() {

                                        int h = dht.readHumidity(); // Переменная типа int для Влажности
                                        int t = dht.readTemperature(); // Переменная типа int для Температуры

                                        // Преобразуем переменные для отправки в MQTT в Брокер
                                        static char char_temp[7]; // Переменная для перевода из int в char
                                        dtostrf(t, 3, 0, char_temp); // Перевод из int в char

                                        static char char_hum[7];
                                        dtostrf(h, 3, 0, char_hum);

                                        if (client.connect("DHTClient")) //Если DHTClient подкл., то выполняется код...
                                        {
                                        if (isnan(t) || isnan(h)) // Проверка удачно ли прошло считывание с DHT22
                                        {
                                        Serial.println("Failed to read from DHT22"); // Не удалось прочитать DHT22
                                        } else {
                                        // Отправка данных в Монитор порта при удачной проверке
                                        Serial.print("Humidity: ");
                                        Serial.print(h);
                                        Serial.print(" %\t");
                                        Serial.print("Temperature: ");
                                        Serial.print(t);
                                        Serial.println(" *C");

                                          //Отправка данных по MQTT в Брокер
                                          client.publish("home/data/status/sensor/temp", char_temp);  //Температура
                                          client.publish("home/data/status/sensor/hum", char_hum);    //Влажность
                                          delay(5000);              // Отправка данных в Брокер раз в 5 секунд
                                        }
                                        

                                        } else {
                                        client.disconnect(); // иначе отключиться
                                        }
                                        }</dht.h></pubsubclient.h></ethernet.h></spi.h>

                                        я взял с этого скетча всё что касается MQTT и перекинул в ваш скетч и всё заработало пока тестирую
                                        1 Antwort Letzte Antwort
                                        0
                                        • A Offline
                                          A Offline
                                          artemon2405
                                          schrieb am zuletzt editiert von
                                          #185

                                          почему то в myhome/Kitchen/Temp_radiator пишет значение -127 тоесть значение с минусом я так понимаю это значение с датчика DS1820 ONE_WIRE_BUS 8 и он подключен к пину 8 похоже что он не видит мой датчик пока не могу понять от чего и ещё кое что у меня не так home/data/status/sensor а так же myhome/Kitchen/MQ7 имеют одно значение и меняются вместе похоже что то с подключением . если есть какие то идеи подскажите

                                          1 Antwort Letzte Antwort
                                          0

                                          Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                                          Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                                          Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                                          Registrieren Anmelden
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          585

                                          Online

                                          32.8k

                                          Benutzer

                                          82.7k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe