Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. Announcements
  3. 💬 Temperature Sensor

💬 Temperature Sensor

Scheduled Pinned Locked Moved Announcements
171 Posts 40 Posters 54.8k Views 36 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Patrik SöderströmP Offline
    Patrik SöderströmP Offline
    Patrik Söderström
    wrote on last edited by
    #5

    I have trouble with this on a NodeMCU 0.9.
    #error "Please define I/O register types here"

    Anyone who can help?

    mfalkviddM 1 Reply Last reply
    0
    • Patrik SöderströmP Patrik Söderström

      I have trouble with this on a NodeMCU 0.9.
      #error "Please define I/O register types here"

      Anyone who can help?

      mfalkviddM Offline
      mfalkviddM Offline
      mfalkvidd
      Mod
      wrote on last edited by
      #6

      @Patrik-Söderström could you give us some more context about the problem?
      Which line does the error occur on? Does the error message say anything more? (we are not magicians :-) )
      Have you modified the example sketch in any way? if so, what changes?

      1 Reply Last reply
      0
      • Patrik SöderströmP Offline
        Patrik SöderströmP Offline
        Patrik Söderström
        wrote on last edited by Patrik Söderström
        #7

        I use the following code, I have added the GW support for ESP board.

        /**
         * The MySensors Arduino library handles the wireless radio link and protocol
         * between your home built sensors/actuators and HA controller of choice.
         * The sensors forms a self healing radio network with optional repeaters. Each
         * repeater and gateway builds a routing tables in EEPROM which keeps track of the
         * network topology allowing messages to be routed to nodes.
         *
         * Created by Henrik Ekblad <henrik.ekblad@mysensors.org>
         * Copyright (C) 2013-2015 Sensnology AB
         * Full contributor list: https://github.com/mysensors/Arduino/graphs/contributors
         *
         * Documentation: http://www.mysensors.org
         * Support Forum: http://forum.mysensors.org
         *
         * This program is free software; you can redistribute it and/or
         * modify it under the terms of the GNU General Public License
         * version 2 as published by the Free Software Foundation.
         *
         *******************************
         *
         * DESCRIPTION
         *
         * Example sketch showing how to send in DS1820B OneWire temperature readings back to the controller
         * http://www.mysensors.org/build/temp
         */
        
        
        // Enable debug prints to serial monitor
        #define MY_DEBUG 
        
        // Enable and select radio type attached
        //#define MY_RADIO_NRF24
        //#define MY_RADIO_RFM69
        
        // Use a bit lower baudrate for serial prints on ESP8266 than default in MyConfig.h
        #define MY_BAUD_RATE 9600
        #define MY_GATEWAY_ESP8266
        
        #define MY_ESP8266_SSID "TP54C10"
        #define MY_ESP8266_PASSWORD "blarretp54c10"
        
        // The port to keep open on node server mode
        #define MY_PORT 5003
        
        // How many clients should be able to connect to this gateway (default 1)
        #define MY_GATEWAY_MAX_CLIENTS 2
        
        #include <ESP8266WiFi.h>
        #include <SPI.h>
        #include <MySensors.h>  
        #include <DallasTemperature.h>
        #include <OneWire.h>
        
        #define COMPARE_TEMP 1 // Send temperature only if changed? 1 = Yes 0 = No
        
        #define ONE_WIRE_BUS 3 // Pin where dallase sensor is connected 
        #define MAX_ATTACHED_DS18B20 16
        unsigned long SLEEP_TIME = 30000; // Sleep time between reads (in milliseconds)
        OneWire oneWire(ONE_WIRE_BUS); // Setup a oneWire instance to communicate with any OneWire devices (not just Maxim/Dallas temperature ICs)
        DallasTemperature sensors(&oneWire); // Pass the oneWire reference to Dallas Temperature. 
        float lastTemperature[MAX_ATTACHED_DS18B20];
        int numSensors=0;
        bool receivedConfig = false;
        bool metric = true;
        // Initialize temperature message
        MyMessage msg(0,V_TEMP);
        
        void before()
        {
          // Startup up the OneWire library
          sensors.begin();
        }
        
        void setup()  
        { 
          // requestTemperatures() will not block current thread
          sensors.setWaitForConversion(false);
        }
        
        void presentation() {
          // Send the sketch version information to the gateway and Controller
          sendSketchInfo("Temperature Sensor", "1.1");
        
          // Fetch the number of attached temperature sensors  
          numSensors = sensors.getDeviceCount();
        
          // Present all sensors to controller
          for (int i=0; i<numSensors && i<MAX_ATTACHED_DS18B20; i++) {   
             present(i, S_TEMP);
          }
        }
        
        void loop()     
        {     
          // Fetch temperatures from Dallas sensors
          sensors.requestTemperatures();
        
          // query conversion time and sleep until conversion completed
          int16_t conversionTime = sensors.millisToWaitForConversion(sensors.getResolution());
          // sleep() call can be replaced by wait() call if node need to process incoming messages (or if node is repeater)
          sleep(conversionTime);
        
          // Read temperatures and send them to controller 
          for (int i=0; i<numSensors && i<MAX_ATTACHED_DS18B20; i++) {
        
            // Fetch and round temperature to one decimal
            float temperature = static_cast<float>(static_cast<int>((getConfig().isMetric?sensors.getTempCByIndex(i):sensors.getTempFByIndex(i)) * 10.)) / 10.;
        
            // Only send data if temperature has changed and no error
            #if COMPARE_TEMP == 1
            if (lastTemperature[i] != temperature && temperature != -127.00 && temperature != 85.00) {
            #else
            if (temperature != -127.00 && temperature != 85.00) {
            #endif
        
              // Send in the new temperature
              send(msg.setSensor(i).set(temperature,1));
              // Save new temperatures for next compare
              lastTemperature[i]=temperature;
            }
          }
          sleep(SLEEP_TIME);
        }
        

        the exakt error I get in Arduino IDE is

        In file included from C:\Users\xxxxx\Documents\Arduino\libraries\DallasTemperature/DallasTemperature.h:22:0,
        
                         from Z:\MySensors\NodeMCU-Water meter\NodeMCU-Water_meter\NodeMCU-Water_meter.ino:51:
        
        C:\Users\xxxxxx\Documents\Arduino\libraries\OneWire/OneWire.h:108:2: error: #error "Please define I/O register types here"
        
         #error "Please define I/O register types here"
        
          ^
        
        exit status 1
        Error compiling for board NodeMCU 0.9 (ESP-12 Module).```
        mfalkviddM 1 Reply Last reply
        0
        • Patrik SöderströmP Patrik Söderström

          I use the following code, I have added the GW support for ESP board.

          /**
           * The MySensors Arduino library handles the wireless radio link and protocol
           * between your home built sensors/actuators and HA controller of choice.
           * The sensors forms a self healing radio network with optional repeaters. Each
           * repeater and gateway builds a routing tables in EEPROM which keeps track of the
           * network topology allowing messages to be routed to nodes.
           *
           * Created by Henrik Ekblad <henrik.ekblad@mysensors.org>
           * Copyright (C) 2013-2015 Sensnology AB
           * Full contributor list: https://github.com/mysensors/Arduino/graphs/contributors
           *
           * Documentation: http://www.mysensors.org
           * Support Forum: http://forum.mysensors.org
           *
           * This program is free software; you can redistribute it and/or
           * modify it under the terms of the GNU General Public License
           * version 2 as published by the Free Software Foundation.
           *
           *******************************
           *
           * DESCRIPTION
           *
           * Example sketch showing how to send in DS1820B OneWire temperature readings back to the controller
           * http://www.mysensors.org/build/temp
           */
          
          
          // Enable debug prints to serial monitor
          #define MY_DEBUG 
          
          // Enable and select radio type attached
          //#define MY_RADIO_NRF24
          //#define MY_RADIO_RFM69
          
          // Use a bit lower baudrate for serial prints on ESP8266 than default in MyConfig.h
          #define MY_BAUD_RATE 9600
          #define MY_GATEWAY_ESP8266
          
          #define MY_ESP8266_SSID "TP54C10"
          #define MY_ESP8266_PASSWORD "blarretp54c10"
          
          // The port to keep open on node server mode
          #define MY_PORT 5003
          
          // How many clients should be able to connect to this gateway (default 1)
          #define MY_GATEWAY_MAX_CLIENTS 2
          
          #include <ESP8266WiFi.h>
          #include <SPI.h>
          #include <MySensors.h>  
          #include <DallasTemperature.h>
          #include <OneWire.h>
          
          #define COMPARE_TEMP 1 // Send temperature only if changed? 1 = Yes 0 = No
          
          #define ONE_WIRE_BUS 3 // Pin where dallase sensor is connected 
          #define MAX_ATTACHED_DS18B20 16
          unsigned long SLEEP_TIME = 30000; // Sleep time between reads (in milliseconds)
          OneWire oneWire(ONE_WIRE_BUS); // Setup a oneWire instance to communicate with any OneWire devices (not just Maxim/Dallas temperature ICs)
          DallasTemperature sensors(&oneWire); // Pass the oneWire reference to Dallas Temperature. 
          float lastTemperature[MAX_ATTACHED_DS18B20];
          int numSensors=0;
          bool receivedConfig = false;
          bool metric = true;
          // Initialize temperature message
          MyMessage msg(0,V_TEMP);
          
          void before()
          {
            // Startup up the OneWire library
            sensors.begin();
          }
          
          void setup()  
          { 
            // requestTemperatures() will not block current thread
            sensors.setWaitForConversion(false);
          }
          
          void presentation() {
            // Send the sketch version information to the gateway and Controller
            sendSketchInfo("Temperature Sensor", "1.1");
          
            // Fetch the number of attached temperature sensors  
            numSensors = sensors.getDeviceCount();
          
            // Present all sensors to controller
            for (int i=0; i<numSensors && i<MAX_ATTACHED_DS18B20; i++) {   
               present(i, S_TEMP);
            }
          }
          
          void loop()     
          {     
            // Fetch temperatures from Dallas sensors
            sensors.requestTemperatures();
          
            // query conversion time and sleep until conversion completed
            int16_t conversionTime = sensors.millisToWaitForConversion(sensors.getResolution());
            // sleep() call can be replaced by wait() call if node need to process incoming messages (or if node is repeater)
            sleep(conversionTime);
          
            // Read temperatures and send them to controller 
            for (int i=0; i<numSensors && i<MAX_ATTACHED_DS18B20; i++) {
          
              // Fetch and round temperature to one decimal
              float temperature = static_cast<float>(static_cast<int>((getConfig().isMetric?sensors.getTempCByIndex(i):sensors.getTempFByIndex(i)) * 10.)) / 10.;
          
              // Only send data if temperature has changed and no error
              #if COMPARE_TEMP == 1
              if (lastTemperature[i] != temperature && temperature != -127.00 && temperature != 85.00) {
              #else
              if (temperature != -127.00 && temperature != 85.00) {
              #endif
          
                // Send in the new temperature
                send(msg.setSensor(i).set(temperature,1));
                // Save new temperatures for next compare
                lastTemperature[i]=temperature;
              }
            }
            sleep(SLEEP_TIME);
          }
          

          the exakt error I get in Arduino IDE is

          In file included from C:\Users\xxxxx\Documents\Arduino\libraries\DallasTemperature/DallasTemperature.h:22:0,
          
                           from Z:\MySensors\NodeMCU-Water meter\NodeMCU-Water_meter\NodeMCU-Water_meter.ino:51:
          
          C:\Users\xxxxxx\Documents\Arduino\libraries\OneWire/OneWire.h:108:2: error: #error "Please define I/O register types here"
          
           #error "Please define I/O register types here"
          
            ^
          
          exit status 1
          Error compiling for board NodeMCU 0.9 (ESP-12 Module).```
          mfalkviddM Offline
          mfalkviddM Offline
          mfalkvidd
          Mod
          wrote on last edited by
          #8

          @Patrik-Söderström according to http://www.esp8266.com/viewtopic.php?f=12&t=9430 you need a newer version of the onewire library.

          1 Reply Last reply
          0
          • toddsantoroT Offline
            toddsantoroT Offline
            toddsantoro
            wrote on last edited by
            #9

            Can anyone tell me what these errors say?

            DallasTemperature.cpp:433: error: no 'int16_t DallasTemperature::calculateTemperature(const uint8_t*, uint8_t*)' member function declared in class 'DallasTemperature'
            int16_t DallasTemperature::calculateTemperature(const uint8_t* deviceAddress, uint8_t* scratchPad){

                                                                                                          ^
            

            sketch/DallasTemperature.cpp: In member function 'int16_t DallasTemperature::getTemp(const uint8_t*)':
            DallasTemperature.cpp:484: error: 'calculateTemperature' was not declared in this scope
            if (isConnected(deviceAddress, scratchPad)) return calculateTemperature(deviceAddress, scratchPad);

                                                                                                              ^
            

            sketch/DallasTemperature.cpp: In member function 'bool DallasTemperature::hasAlarm(const uint8_t*)':
            DallasTemperature.cpp:764: error: 'calculateTemperature' was not declared in this scope
            char temp = calculateTemperature(deviceAddress, scratchPad) >> 7;

                                                                           ^
            

            exit status 1
            no 'int16_t DallasTemperature::calculateTemperature(const uint8_t*, uint8_t*)' member function declared in class 'DallasTemperature'

            1 Reply Last reply
            0
            • remisR remis

              @mrwomble

              Hello mrwomble.

              Could you detail the file you have use to compile OK ? Do we need to use the full library? I plan to use local file with
              #include "filename.h"
              instead of
              #include <filename.h>
              Thanks

              remisR Offline
              remisR Offline
              remis
              wrote on last edited by
              #10

              @remis

              I confirm that i can suppress the compilation error but nothing append on serial port...

              Could somebody write here the typical serial port output with debug available?

              This example is not working. What is the good solution to use this temperature sensor ?

              thanks

              1 Reply Last reply
              0
              • A Offline
                A Offline
                Alex B Goode
                wrote on last edited by
                #11

                Why don't we use an internal pull-up resistor available within an arduino board? Why additional external one?

                pinMode(pin, INPUT); // set pin to input
                digitalWrite(pin, HIGH); // turn on pullup resistors

                mfalkviddM 1 Reply Last reply
                0
                • A Alex B Goode

                  Why don't we use an internal pull-up resistor available within an arduino board? Why additional external one?

                  pinMode(pin, INPUT); // set pin to input
                  digitalWrite(pin, HIGH); // turn on pullup resistors

                  mfalkviddM Offline
                  mfalkviddM Offline
                  mfalkvidd
                  Mod
                  wrote on last edited by
                  #12

                  @Alex-B-Goode the datasheet says "The 1-Wire bus requires an external pullup resistor of approximately 5kΩ"
                  The internal pull-up of most Arduinos are 20-50kΩ

                  So my guess is that the reason is that the person who created the instructions read the datasheet and chose to follow its recommendation. But accounding to http://electronics.stackexchange.com/a/62096/107155 the exact size might not be important, so it might be possible to use the internal pull up. Try it and let us know if it works.

                  1 Reply Last reply
                  0
                  • toddsantoroT Offline
                    toddsantoroT Offline
                    toddsantoro
                    wrote on last edited by
                    #13

                    Does this example compile for anyone??? I get this error:

                    In file included from /Users/Documents/Arduino/tas_temp/tas_temp.ino:37:0:
                    /Users/Documents/Arduino/libraries/DallasTemperature/DallasTemperature.h: In function 'void loop()':
                    /Users/Documents/Arduino/libraries/DallasTemperature/DallasTemperature.h:252:13: error: 'int16_t DallasTemperature::millisToWaitForConversion(uint8_t)' is private
                    int16_t millisToWaitForConversion(uint8_t);

                             ^
                    

                    tas_temp:85: error: within this context
                    int16_t conversionTime = sensors.millisToWaitForConversion(sensors.getResolution());
                    ^
                    exit status 1
                    within this context

                    mfalkviddM 1 Reply Last reply
                    0
                    • toddsantoroT toddsantoro

                      Does this example compile for anyone??? I get this error:

                      In file included from /Users/Documents/Arduino/tas_temp/tas_temp.ino:37:0:
                      /Users/Documents/Arduino/libraries/DallasTemperature/DallasTemperature.h: In function 'void loop()':
                      /Users/Documents/Arduino/libraries/DallasTemperature/DallasTemperature.h:252:13: error: 'int16_t DallasTemperature::millisToWaitForConversion(uint8_t)' is private
                      int16_t millisToWaitForConversion(uint8_t);

                               ^
                      

                      tas_temp:85: error: within this context
                      int16_t conversionTime = sensors.millisToWaitForConversion(sensors.getResolution());
                      ^
                      exit status 1
                      within this context

                      mfalkviddM Offline
                      mfalkviddM Offline
                      mfalkvidd
                      Mod
                      wrote on last edited by mfalkvidd
                      #14

                      @toddsantoro see post 2 and 3 in this thread or read the instructions on the build page, just under the "Example" heading.

                      mrwombleM toddsantoroT 2 Replies Last reply
                      1
                      • mfalkviddM mfalkvidd

                        @toddsantoro see post 2 and 3 in this thread or read the instructions on the build page, just under the "Example" heading.

                        mrwombleM Offline
                        mrwombleM Offline
                        mrwomble
                        wrote on last edited by
                        #15

                        @mfalkvidd said:

                        @toddsantoro see post 2 and 3 in this thread or read the instructions on the build page, just under the "Example" heading.

                        ^ What he said 😁

                        1 Reply Last reply
                        0
                        • mfalkviddM mfalkvidd

                          @toddsantoro see post 2 and 3 in this thread or read the instructions on the build page, just under the "Example" heading.

                          toddsantoroT Offline
                          toddsantoroT Offline
                          toddsantoro
                          wrote on last edited by toddsantoro
                          #16

                          @mfalkvidd OK. I have it compiling and uploaded to the nano. My config file looks like this now:

                          sensor 6:
                            -platform: onewire
                              names:
                                some_id: outside
                                mount_dir: "/mnt/1wire"
                          

                          I get an error when I restart HASS on the Pi.

                          ERROR (Thread-6) [homeassistant.components.sensor.onewire] No onewire sensor found. Check if dtoverlay=w1-gpio is in your /boot/config.txt. Check the mount_dir parameter if it's defined.
                          

                          I guess my question is do I need to define the mount_dir variable and if so is the one I have correct? And if it is correct do I need to create that directory on my Pi?

                          I also do not get any output in the Arduino Serial Monitor window. Not sure if I even should...

                          Thanks in advance for any help...

                          mfalkviddM 1 Reply Last reply
                          0
                          • toddsantoroT toddsantoro

                            @mfalkvidd OK. I have it compiling and uploaded to the nano. My config file looks like this now:

                            sensor 6:
                              -platform: onewire
                                names:
                                  some_id: outside
                                  mount_dir: "/mnt/1wire"
                            

                            I get an error when I restart HASS on the Pi.

                            ERROR (Thread-6) [homeassistant.components.sensor.onewire] No onewire sensor found. Check if dtoverlay=w1-gpio is in your /boot/config.txt. Check the mount_dir parameter if it's defined.
                            

                            I guess my question is do I need to define the mount_dir variable and if so is the one I have correct? And if it is correct do I need to create that directory on my Pi?

                            I also do not get any output in the Arduino Serial Monitor window. Not sure if I even should...

                            Thanks in advance for any help...

                            mfalkviddM Offline
                            mfalkviddM Offline
                            mfalkvidd
                            Mod
                            wrote on last edited by
                            #17

                            @toddsantoro I am not familiar with homeassistant so I have no clue unfortunately.

                            About debug output on the serial monitor: Debug needs to be enabled first. See instructions at https://forum.mysensors.org/topic/666/debug-faq-and-how-ask-for-help and https://www.mysensors.org/build/debug

                            Debug output is often essential when troubleshooting.

                            toddsantoroT 1 Reply Last reply
                            1
                            • mfalkviddM mfalkvidd

                              @toddsantoro I am not familiar with homeassistant so I have no clue unfortunately.

                              About debug output on the serial monitor: Debug needs to be enabled first. See instructions at https://forum.mysensors.org/topic/666/debug-faq-and-how-ask-for-help and https://www.mysensors.org/build/debug

                              Debug output is often essential when troubleshooting.

                              toddsantoroT Offline
                              toddsantoroT Offline
                              toddsantoro
                              wrote on last edited by
                              #18

                              @mfalkvidd Thank you!!! I get this output in the serial monitor

                              TSM:INIT
                              TSM:RADIO:OK
                              TSP:ASSIGNID:OK (ID=2)
                              TSM:FPAR
                              TSP:MSG:SEND 2-2-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=bc:
                              TSM:FPAR
                              TSP:MSG:SEND 2-2-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=bc:
                              TSP:MSG:READ 0-0-2 s=255,c=3,t=8,pt=1,l=1,sg=0:0
                              TSP:MSG:FPAR RES (ID=0, dist=0)
                              TSP:MSG:PAR OK (ID=0, dist=1)
                              TSM:FPAR:OK
                              TSM:ID
                              TSM:CHKID:OK (ID=2)
                              TSM:UPL
                              TSP:PING:SEND (dest=0)
                              TSP:MSG:SEND 2-2-0-0 s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=ok:1
                              TSP:MSG:READ 0-0-2 s=255,c=3,t=25,pt=1,l=1,sg=0:1
                              TSP:MSG:PONG RECV (hops=1)
                              TSP:CHKUPL:OK
                              TSM:UPL:OK
                              TSM:READY
                              TSP:MSG:SEND 2-2-0-0 s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=ok:0100
                              TSP:MSG:SEND 2-2-0-0 s=255,c=0,t=17,pt=0,l=5,sg=0,ft=0,st=ok:2.0.0
                              TSP:MSG:SEND 2-2-0-0 s=255,c=3,t=6,pt=1,l=1,sg=0,ft=0,st=ok:0
                              TSP:MSG:READ 0-0-2 s=255,c=3,t=6,pt=0,l=1,sg=0:I
                              TSP:MSG:SEND 2-2-0-0 s=255,c=3,t=11,pt=0,l=18,sg=0,ft=0,st=ok:Temperature Sensor
                              TSP:MSG:SEND 2-2-0-0 s=255,c=3,t=12,pt=0,l=3,sg=0,ft=0,st=ok:1.1
                              Request registration...
                              TSP:MSG:SEND 2-2-0-0 s=255,c=3,t=26,pt=1,l=1,sg=0,ft=0,st=ok:2
                              TSP:MSG:READ 0-0-2 s=255,c=3,t=27,pt=1,l=1,sg=0:1
                              Node registration=1
                              Init complete, id=2, parent=0, distance=1, registration=1
                              

                              Does this look OK? If so I will ask my previous question on the Home Assistant forum. You have been a great help and once I get one of these things down I will be able to help others:)

                              mfalkviddM 1 Reply Last reply
                              1
                              • toddsantoroT toddsantoro

                                @mfalkvidd Thank you!!! I get this output in the serial monitor

                                TSM:INIT
                                TSM:RADIO:OK
                                TSP:ASSIGNID:OK (ID=2)
                                TSM:FPAR
                                TSP:MSG:SEND 2-2-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=bc:
                                TSM:FPAR
                                TSP:MSG:SEND 2-2-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=bc:
                                TSP:MSG:READ 0-0-2 s=255,c=3,t=8,pt=1,l=1,sg=0:0
                                TSP:MSG:FPAR RES (ID=0, dist=0)
                                TSP:MSG:PAR OK (ID=0, dist=1)
                                TSM:FPAR:OK
                                TSM:ID
                                TSM:CHKID:OK (ID=2)
                                TSM:UPL
                                TSP:PING:SEND (dest=0)
                                TSP:MSG:SEND 2-2-0-0 s=255,c=3,t=24,pt=1,l=1,sg=0,ft=0,st=ok:1
                                TSP:MSG:READ 0-0-2 s=255,c=3,t=25,pt=1,l=1,sg=0:1
                                TSP:MSG:PONG RECV (hops=1)
                                TSP:CHKUPL:OK
                                TSM:UPL:OK
                                TSM:READY
                                TSP:MSG:SEND 2-2-0-0 s=255,c=3,t=15,pt=6,l=2,sg=0,ft=0,st=ok:0100
                                TSP:MSG:SEND 2-2-0-0 s=255,c=0,t=17,pt=0,l=5,sg=0,ft=0,st=ok:2.0.0
                                TSP:MSG:SEND 2-2-0-0 s=255,c=3,t=6,pt=1,l=1,sg=0,ft=0,st=ok:0
                                TSP:MSG:READ 0-0-2 s=255,c=3,t=6,pt=0,l=1,sg=0:I
                                TSP:MSG:SEND 2-2-0-0 s=255,c=3,t=11,pt=0,l=18,sg=0,ft=0,st=ok:Temperature Sensor
                                TSP:MSG:SEND 2-2-0-0 s=255,c=3,t=12,pt=0,l=3,sg=0,ft=0,st=ok:1.1
                                Request registration...
                                TSP:MSG:SEND 2-2-0-0 s=255,c=3,t=26,pt=1,l=1,sg=0,ft=0,st=ok:2
                                TSP:MSG:READ 0-0-2 s=255,c=3,t=27,pt=1,l=1,sg=0:1
                                Node registration=1
                                Init complete, id=2, parent=0, distance=1, registration=1
                                

                                Does this look OK? If so I will ask my previous question on the Home Assistant forum. You have been a great help and once I get one of these things down I will be able to help others:)

                                mfalkviddM Offline
                                mfalkviddM Offline
                                mfalkvidd
                                Mod
                                wrote on last edited by
                                #19

                                @toddsantoro yes that looks good.

                                The "st=ok:xyz" means message xyz was acknowledged by the destination node (in your case by the gateway)

                                1 Reply Last reply
                                1
                                • S Offline
                                  S Offline
                                  stingone
                                  wrote on last edited by
                                  #20

                                  No compile error but i cant see anything on the serial monitor. also the temp sensor burend out with a 4k7 resistor :S

                                  remisR 1 Reply Last reply
                                  0
                                  • S stingone

                                    No compile error but i cant see anything on the serial monitor. also the temp sensor burend out with a 4k7 resistor :S

                                    remisR Offline
                                    remisR Offline
                                    remis
                                    wrote on last edited by
                                    #21

                                    @stingone
                                    Hi. The same issue for me . I solve it with : 38400 bauds configuration serial port ( instead of 115200 default value)
                                    and i lowering the RF power output with low_pa enable: it confirms that I have some issues with power suppply.

                                    good luck

                                    1 Reply Last reply
                                    1
                                    • bentrikB Offline
                                      bentrikB Offline
                                      bentrik
                                      wrote on last edited by bentrik
                                      #22

                                      It seems the DallasTempereture library is not a part of the default Library setup from Mysensors as of version 2.0? I tried to compile the above code, but I had to manually download DallasTemperature from GitHub first. Then OneWire was also missing. Adding these two libraries brought me a bit further, but I get a long list of errors connected to OneWire. What libraries should be used?

                                      mfalkviddM 1 Reply Last reply
                                      0
                                      • bentrikB bentrik

                                        It seems the DallasTempereture library is not a part of the default Library setup from Mysensors as of version 2.0? I tried to compile the above code, but I had to manually download DallasTemperature from GitHub first. Then OneWire was also missing. Adding these two libraries brought me a bit further, but I get a long list of errors connected to OneWire. What libraries should be used?

                                        mfalkviddM Offline
                                        mfalkviddM Offline
                                        mfalkvidd
                                        Mod
                                        wrote on last edited by
                                        #23

                                        @bentrik the library is part of the MySensorsArduinoExamples, which can be downloaded at https://github.com/mysensors/MySensorsArduinoExamples/archive/master.zip

                                        bentrikB 1 Reply Last reply
                                        1
                                        • SealanderS Offline
                                          SealanderS Offline
                                          Sealander
                                          wrote on last edited by Sealander
                                          #24

                                          Hi All, i'm also new here and into this. Like others i also ran into problems compiling this sketch, i tried al libraries mentioned in the posts in this thread, but no go. keep getting this error message:

                                          In file included from C:\Users\Gebruiker\Desktop\My Sensors\MySensors-master\MySensorsArduinoExamples-master\examples\DallasTemperatureSensor\DallasTemperatureSensor.ino:37:0:

                                          C:\Users\Gebruiker\Documents\Arduino\libraries\DallasTemperature/DallasTemperature.h: In function 'void loop()':

                                          C:\Users\Gebruiker\Documents\Arduino\libraries\DallasTemperature/DallasTemperature.h:252:13: error: 'int16_t DallasTemperature::millisToWaitForConversion(uint8_t)' is private

                                           int16_t millisToWaitForConversion(uint8_t);
                                                   ^
                                          

                                          DallasTemperatureSensor:85: error: within this context

                                          int16_t conversionTime = sensors.millisToWaitForConversion(sensors.getResolution());

                                                exit status 1
                                          

                                          within this context

                                          Can someone help me with this problem? i have no clue at all and woud really like to build me a working sensor so i can hook it up to my Domoticz setup. thanks

                                          hin this context

                                          S 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          11

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.1k

                                          Posts


                                          Copyright 2025 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • MySensors
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular