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.7k 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 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
                                        • SealanderS Sealander

                                          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 Offline
                                          S Offline
                                          stingone
                                          wrote on last edited by
                                          #25

                                          @Sealander

                                          see solution above. Delete your dallas library and replace with the one above in the master zip file. That was the solution for me.

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


                                          10

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.0k

                                          Posts


                                          Copyright 2019 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