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. My Project
  3. My Slim 2AA Battery Node

My Slim 2AA Battery Node

Scheduled Pinned Locked Moved My Project
498 Posts 71 Posters 342.8k Views 69 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.
  • m26872M m26872

    @wergeld I just make two small cuts from each side by a side cutter, then a gentle bend over some sharp edge like the table or a cutting board.

    W Offline
    W Offline
    wergeld
    wrote on last edited by
    #275

    @m26872 Sounds good! Current status is "at board house." Getting twitchy waiting.

    D 1 Reply Last reply
    0
    • W wergeld

      @m26872 Sounds good! Current status is "at board house." Getting twitchy waiting.

      D Offline
      D Offline
      drock1985
      wrote on last edited by
      #276

      @wergeld

      Just got a notification from DirtyPCB's that mine shipped - placed the order 9 days ago so give it some time. When I ordered mine, they were just re-opening from being closed for a week; I think it was Chinese new year or something.

      My Projects
      2 Door Chime Sensor
      Washing Machine Monitor

      W 1 Reply Last reply
      0
      • J Offline
        J Offline
        jacikaas
        wrote on last edited by
        #277

        Hello, I ordered it too yesterday :) Can't wait to step forward from my breadboards with a lot wires to PCB without wires :D

        @m26872 Thanks for sharing it!

        1 Reply Last reply
        0
        • D drock1985

          @wergeld

          Just got a notification from DirtyPCB's that mine shipped - placed the order 9 days ago so give it some time. When I ordered mine, they were just re-opening from being closed for a week; I think it was Chinese new year or something.

          W Offline
          W Offline
          wergeld
          wrote on last edited by
          #278

          @drock1985 Right. I waited until a week after Chinese new year to order. Let the hangovers end and the trainstations empty . I am looking forward to finalizing my sensor network with cases as well. I have several old plastic/wood boxes lying around waiting for a less rats-nest setup.

          1 Reply Last reply
          0
          • siodS Offline
            siodS Offline
            siod
            wrote on last edited by siod
            #279

            now I finally set up my first sensor board, and, as expected, I don´t receive any data from it on my gateway :suspect:

            I uploaded the sketch following the instructions from here: https://www.arduino.cc/en/Tutorial/ArduinoToBreadboard using a 16MHz Crystal.

            The sketch should run, but it doesn´t. Any ideas how to troubleshoot now?

            edit: I opened the serial monitor after I uploaded the sketch using the mwthod mentioned above and I get the message "radio init fail".
            The same sketch works on my UNO and I have no radio problem.

            Do I have to upload the sketch without the 16MHz Crystal to get it work proper?

            still learning...

            m26872M 1 Reply Last reply
            0
            • siodS siod

              now I finally set up my first sensor board, and, as expected, I don´t receive any data from it on my gateway :suspect:

              I uploaded the sketch following the instructions from here: https://www.arduino.cc/en/Tutorial/ArduinoToBreadboard using a 16MHz Crystal.

              The sketch should run, but it doesn´t. Any ideas how to troubleshoot now?

              edit: I opened the serial monitor after I uploaded the sketch using the mwthod mentioned above and I get the message "radio init fail".
              The same sketch works on my UNO and I have no radio problem.

              Do I have to upload the sketch without the 16MHz Crystal to get it work proper?

              m26872M Offline
              m26872M Offline
              m26872
              Hardware Contributor
              wrote on last edited by
              #280

              @siod

              • Since external crystal isn't this designs standard, I think you should describe your hardware a bit more.
              • Uno fuses and bootloader?
              • "radio init fail" means nRF wiring issue in 99% of all cases.
              1 Reply Last reply
              0
              • siodS Offline
                siodS Offline
                siod
                wrote on last edited by siod
                #281

                I just installed the NRF module at it´s desired place as well as the two capacitors and the resistors as described above. The crystal is only used for uploading the sketch to the Atmega328 chip, described here: https://www.arduino.cc/en/Tutorial/ArduinoToBreadboard
                alt text

                So a wiring issue should not be the problem. Also, the code should have been uploaded well, because when I put the chip back to the breadboard and fire up my Arduino I at least receive the "radio init fail" message.

                I just wonder if you guys upload your sketches the same way or if you use a different setup. I know there is a way to upload the sketch without the 16MHz crystal and I would like to know if this could be the problem.

                edit: I´ve re-read your first post and also this thread http://forum.mysensors.org/topic/3018/tutorial-how-to-burn-1mhz-8mhz-bootloader-using-arduino-ide-1-6-5-r5/2 ...

                Do I have to burn the bootloader using 1MHz or 8 MHz? I don´t get why this makes a difference, only that the batteries would drain faster the higher the MHz rate is.

                I already uploaded a bootloader on my chips with a 16MHz crystal. Could I just re-upload a new bottloader using 1 or 8 MHz and overwrite the 16MHz bootloader?

                still learning...

                m26872M 1 Reply Last reply
                0
                • siodS siod

                  I just installed the NRF module at it´s desired place as well as the two capacitors and the resistors as described above. The crystal is only used for uploading the sketch to the Atmega328 chip, described here: https://www.arduino.cc/en/Tutorial/ArduinoToBreadboard
                  alt text

                  So a wiring issue should not be the problem. Also, the code should have been uploaded well, because when I put the chip back to the breadboard and fire up my Arduino I at least receive the "radio init fail" message.

                  I just wonder if you guys upload your sketches the same way or if you use a different setup. I know there is a way to upload the sketch without the 16MHz crystal and I would like to know if this could be the problem.

                  edit: I´ve re-read your first post and also this thread http://forum.mysensors.org/topic/3018/tutorial-how-to-burn-1mhz-8mhz-bootloader-using-arduino-ide-1-6-5-r5/2 ...

                  Do I have to burn the bootloader using 1MHz or 8 MHz? I don´t get why this makes a difference, only that the batteries would drain faster the higher the MHz rate is.

                  I already uploaded a bootloader on my chips with a 16MHz crystal. Could I just re-upload a new bottloader using 1 or 8 MHz and overwrite the 16MHz bootloader?

                  m26872M Offline
                  m26872M Offline
                  m26872
                  Hardware Contributor
                  wrote on last edited by m26872
                  #282

                  @siod The lowered MHz is not to drain battery slower. To save power we want to run wihtout buck- or boost (step-up or step-down) voltage regulators. When we do that, we need to ensure all circuit components work in whole battery voltage range. A good trade-off/design is then to make the Atmega work down to the same lower limit as the nRF24L01+, which is ~1.9V. Unfortunately the Atmega is unstable at high frequencies with low voltages. That why we need a low frequency. An external 4MHz should be low enough, but an easier, cheaper and usually good enough solution is to by the ATmega "fuse settings" activate an 8MHz internal crystal together with a "divide by 8" prescaler.
                  To fascilitate the use of noob-friendly Arduino IDE and concept of loading sketches and debug through a serial interface, we need to have a "bootloader" on the Atmega. The procedure you're referring to is how you put this bootloader to the ATmega. I would strongly recommend a beginner to start with ready made Arduinos in projects before starting to play with blank/bare ATmegas.
                  Whether you need the 16MHz crystal, 8MHz or none depends it's current fuse settings. Bootloader and fuse settings determine how you load, debug and run your sketch.
                  I think the guides, project threads, links and references provided here in the forum should be enough when you've come to the point where you can make it all the way.

                  1 Reply Last reply
                  4
                  • Tom71T Offline
                    Tom71T Offline
                    Tom71
                    wrote on last edited by
                    #283

                    Did anybody tested this board with an ATSHA204A on A2? The ATSHA204A works with 2.0 to 5.5 V.

                    KeifruK 1 Reply Last reply
                    0
                    • Tom71T Tom71

                      Did anybody tested this board with an ATSHA204A on A2? The ATSHA204A works with 2.0 to 5.5 V.

                      KeifruK Offline
                      KeifruK Offline
                      Keifru
                      wrote on last edited by
                      #284

                      @Tom71
                      I'm waiting on my PCBs/ATmegas but thats exactly something I'm wondering as well. I'm just trying to think of how the wires look in my head while waiting for everything to get delivered.

                      1 Reply Last reply
                      0
                      • siodS Offline
                        siodS Offline
                        siod
                        wrote on last edited by
                        #285

                        ok guys, I finally set up my first sensor and it´s communicating well. I´ve attached two reed switch which work fine, only my temp snesor DHT11 doesn´t work. Are there any known issues with this sensor?

                        pls have a look at my setup and my code, thank you:

                        // Simple binary switch example 
                        // Connect button or door/window reed switch between 
                        // digitial I/O pin 3 (BUTTON1_PIN below) and GND.
                        
                        #include <MySensor.h>
                        #include <SPI.h>
                        
                        // Define Node ID
                        #define MY_NODE_ID 1
                        
                        //Kontaktschalter
                        #include <Bounce2.h>
                        #define CHILD1_ID 1 // Kontaktschalter 1
                        #define CHILD2_ID 2 // Kontaktschalter 1
                        #define BUTTON1_PIN  5  // Kontaktschalter 1
                        #define BUTTON2_PIN  6  // Kontaktschalter 2
                        
                        //Tempsensor
                        #include <DHT.h>  
                        #define CHILD_ID_HUM 3
                        #define CHILD_ID_TEMP 4
                        #define HUMIDITY_SENSOR_DIGITAL_PIN 4
                        unsigned long SLEEP_TIME = 30000; // Sleep time between reads (in milliseconds)
                        
                        MySensor gw;
                        
                        //Kontaktschalter
                        Bounce debouncer1 = Bounce(); 
                        Bounce debouncer2 = Bounce(); 
                        int oldValueReed1=-1;
                        int oldValueReed2=-1;
                        
                        //tempsensor
                        DHT dht;
                        float lastTemp;
                        float lastHum;
                        boolean metric = true; 
                        
                        //Messages
                        // Kontaktschalter
                        MyMessage msgReed1(CHILD1_ID,V_TRIPPED); // Kontaktschalter 1
                        MyMessage msgReed2(CHILD2_ID,V_TRIPPED); // Kontaktschalter 2
                        
                        //TempMessage
                        MyMessage msgHum(CHILD_ID_HUM, V_HUM);
                        MyMessage msgTemp(CHILD_ID_TEMP, V_TEMP);
                        
                        void setup()  
                        {  
                          gw.begin(NULL, MY_NODE_ID, true);
                        
                          //Tempsensor
                          dht.setup(HUMIDITY_SENSOR_DIGITAL_PIN); 
                        
                        // Setup Kontaktschalter 1
                          pinMode(BUTTON1_PIN,INPUT);
                            // Activate internal pull-up
                          digitalWrite(BUTTON1_PIN,HIGH);
                        // Setup Kontaktschalter 2
                          pinMode(BUTTON2_PIN,INPUT);
                          // Activate internal pull-up
                          digitalWrite(BUTTON2_PIN,HIGH);
                          
                          // After setting up the button, setup debouncer
                          debouncer1.attach(BUTTON1_PIN);
                          debouncer2.attach(BUTTON2_PIN);
                          debouncer1.interval(5);
                          debouncer2.interval(5);
                          
                          // Register binary input sensor to gw (they will be created as child devices)
                          // You can use S_DOOR, S_MOTION or S_LIGHT here depending on your usage. 
                          // If S_LIGHT is used, remember to update variable type you send in. See "msg" above.
                          gw.present(CHILD1_ID, S_DOOR); 
                          gw.present(CHILD2_ID, S_DOOR); 
                          //Tempsensor
                          gw.present(CHILD_ID_HUM, S_HUM);
                          gw.present(CHILD_ID_TEMP, S_TEMP); 
                          metric = gw.getConfig().isMetric;
                        }
                        
                        
                        //  Check if digital input has changed and send in new value
                        void loop() 
                        {
                          //Kontakstschalter 1
                          debouncer1.update();
                          // Get the update value
                          int valueReed1 = debouncer1.read();
                         
                          if (valueReed1 != oldValueReed1) {
                             // Send in the new value
                             gw.send(msgReed1.set(valueReed1==HIGH ? 1 : 0));
                             Serial.println("Button 1 geschaltet");
                             oldValueReed1 = valueReed1;
                          }
                          //Kontakstschalter 2
                          debouncer2.update();
                          // Get the update value
                          int valueReed2 = debouncer2.read();
                         
                          if (valueReed2 != oldValueReed2) {
                             // Send in the new value
                             gw.send(msgReed2.set(valueReed2==HIGH ? 1 : 0));
                             Serial.println("Button 2 geschaltet");
                             oldValueReed2 = valueReed2;
                          }
                          
                         //Tempsensor
                        
                         delay(dht.getMinimumSamplingPeriod());
                        
                          float temperature = dht.getTemperature();
                          if (isnan(temperature)) {
                              Serial.println("Failed reading temperature from DHT");
                          } else if (temperature != lastTemp) {
                            lastTemp = temperature;
                            if (!metric) {
                              temperature = dht.toFahrenheit(temperature);
                            }
                            gw.send(msgTemp.set(temperature, 1));
                            Serial.print("T: ");
                            Serial.println(temperature);
                          }
                          
                          float humidity = dht.getHumidity();
                          if (isnan(humidity)) {
                              Serial.println("Failed reading humidity from DHT");
                          } else if (humidity != lastHum) {
                              lastHum = humidity;
                              gw.send(msgHum.set(humidity, 1));
                              Serial.print("H: ");
                              Serial.println(humidity);
                          }
                        
                          //gw.sleep(SLEEP_TIME); //sleep a bit 
                        
                        } 
                        
                        

                        http://abload.de/image.php?img=20160306_11174141u66.jpg

                        still learning...

                        rsachocR m26872M 2 Replies Last reply
                        0
                        • siodS siod

                          ok guys, I finally set up my first sensor and it´s communicating well. I´ve attached two reed switch which work fine, only my temp snesor DHT11 doesn´t work. Are there any known issues with this sensor?

                          pls have a look at my setup and my code, thank you:

                          // Simple binary switch example 
                          // Connect button or door/window reed switch between 
                          // digitial I/O pin 3 (BUTTON1_PIN below) and GND.
                          
                          #include <MySensor.h>
                          #include <SPI.h>
                          
                          // Define Node ID
                          #define MY_NODE_ID 1
                          
                          //Kontaktschalter
                          #include <Bounce2.h>
                          #define CHILD1_ID 1 // Kontaktschalter 1
                          #define CHILD2_ID 2 // Kontaktschalter 1
                          #define BUTTON1_PIN  5  // Kontaktschalter 1
                          #define BUTTON2_PIN  6  // Kontaktschalter 2
                          
                          //Tempsensor
                          #include <DHT.h>  
                          #define CHILD_ID_HUM 3
                          #define CHILD_ID_TEMP 4
                          #define HUMIDITY_SENSOR_DIGITAL_PIN 4
                          unsigned long SLEEP_TIME = 30000; // Sleep time between reads (in milliseconds)
                          
                          MySensor gw;
                          
                          //Kontaktschalter
                          Bounce debouncer1 = Bounce(); 
                          Bounce debouncer2 = Bounce(); 
                          int oldValueReed1=-1;
                          int oldValueReed2=-1;
                          
                          //tempsensor
                          DHT dht;
                          float lastTemp;
                          float lastHum;
                          boolean metric = true; 
                          
                          //Messages
                          // Kontaktschalter
                          MyMessage msgReed1(CHILD1_ID,V_TRIPPED); // Kontaktschalter 1
                          MyMessage msgReed2(CHILD2_ID,V_TRIPPED); // Kontaktschalter 2
                          
                          //TempMessage
                          MyMessage msgHum(CHILD_ID_HUM, V_HUM);
                          MyMessage msgTemp(CHILD_ID_TEMP, V_TEMP);
                          
                          void setup()  
                          {  
                            gw.begin(NULL, MY_NODE_ID, true);
                          
                            //Tempsensor
                            dht.setup(HUMIDITY_SENSOR_DIGITAL_PIN); 
                          
                          // Setup Kontaktschalter 1
                            pinMode(BUTTON1_PIN,INPUT);
                              // Activate internal pull-up
                            digitalWrite(BUTTON1_PIN,HIGH);
                          // Setup Kontaktschalter 2
                            pinMode(BUTTON2_PIN,INPUT);
                            // Activate internal pull-up
                            digitalWrite(BUTTON2_PIN,HIGH);
                            
                            // After setting up the button, setup debouncer
                            debouncer1.attach(BUTTON1_PIN);
                            debouncer2.attach(BUTTON2_PIN);
                            debouncer1.interval(5);
                            debouncer2.interval(5);
                            
                            // Register binary input sensor to gw (they will be created as child devices)
                            // You can use S_DOOR, S_MOTION or S_LIGHT here depending on your usage. 
                            // If S_LIGHT is used, remember to update variable type you send in. See "msg" above.
                            gw.present(CHILD1_ID, S_DOOR); 
                            gw.present(CHILD2_ID, S_DOOR); 
                            //Tempsensor
                            gw.present(CHILD_ID_HUM, S_HUM);
                            gw.present(CHILD_ID_TEMP, S_TEMP); 
                            metric = gw.getConfig().isMetric;
                          }
                          
                          
                          //  Check if digital input has changed and send in new value
                          void loop() 
                          {
                            //Kontakstschalter 1
                            debouncer1.update();
                            // Get the update value
                            int valueReed1 = debouncer1.read();
                           
                            if (valueReed1 != oldValueReed1) {
                               // Send in the new value
                               gw.send(msgReed1.set(valueReed1==HIGH ? 1 : 0));
                               Serial.println("Button 1 geschaltet");
                               oldValueReed1 = valueReed1;
                            }
                            //Kontakstschalter 2
                            debouncer2.update();
                            // Get the update value
                            int valueReed2 = debouncer2.read();
                           
                            if (valueReed2 != oldValueReed2) {
                               // Send in the new value
                               gw.send(msgReed2.set(valueReed2==HIGH ? 1 : 0));
                               Serial.println("Button 2 geschaltet");
                               oldValueReed2 = valueReed2;
                            }
                            
                           //Tempsensor
                          
                           delay(dht.getMinimumSamplingPeriod());
                          
                            float temperature = dht.getTemperature();
                            if (isnan(temperature)) {
                                Serial.println("Failed reading temperature from DHT");
                            } else if (temperature != lastTemp) {
                              lastTemp = temperature;
                              if (!metric) {
                                temperature = dht.toFahrenheit(temperature);
                              }
                              gw.send(msgTemp.set(temperature, 1));
                              Serial.print("T: ");
                              Serial.println(temperature);
                            }
                            
                            float humidity = dht.getHumidity();
                            if (isnan(humidity)) {
                                Serial.println("Failed reading humidity from DHT");
                            } else if (humidity != lastHum) {
                                lastHum = humidity;
                                gw.send(msgHum.set(humidity, 1));
                                Serial.print("H: ");
                                Serial.println(humidity);
                            }
                          
                            //gw.sleep(SLEEP_TIME); //sleep a bit 
                          
                          } 
                          
                          

                          http://abload.de/image.php?img=20160306_11174141u66.jpg

                          rsachocR Offline
                          rsachocR Offline
                          rsachoc
                          wrote on last edited by
                          #286

                          @siod my understanding was that the voltage which is provided by the slim node wouldn't be suitable for the DHT11 and DHT22, as they require a minimum of 3.3v. There is some discussion here on the DHT22, which I understand has the same voltage requirements as the DHT11.

                          1 Reply Last reply
                          0
                          • siodS siod

                            ok guys, I finally set up my first sensor and it´s communicating well. I´ve attached two reed switch which work fine, only my temp snesor DHT11 doesn´t work. Are there any known issues with this sensor?

                            pls have a look at my setup and my code, thank you:

                            // Simple binary switch example 
                            // Connect button or door/window reed switch between 
                            // digitial I/O pin 3 (BUTTON1_PIN below) and GND.
                            
                            #include <MySensor.h>
                            #include <SPI.h>
                            
                            // Define Node ID
                            #define MY_NODE_ID 1
                            
                            //Kontaktschalter
                            #include <Bounce2.h>
                            #define CHILD1_ID 1 // Kontaktschalter 1
                            #define CHILD2_ID 2 // Kontaktschalter 1
                            #define BUTTON1_PIN  5  // Kontaktschalter 1
                            #define BUTTON2_PIN  6  // Kontaktschalter 2
                            
                            //Tempsensor
                            #include <DHT.h>  
                            #define CHILD_ID_HUM 3
                            #define CHILD_ID_TEMP 4
                            #define HUMIDITY_SENSOR_DIGITAL_PIN 4
                            unsigned long SLEEP_TIME = 30000; // Sleep time between reads (in milliseconds)
                            
                            MySensor gw;
                            
                            //Kontaktschalter
                            Bounce debouncer1 = Bounce(); 
                            Bounce debouncer2 = Bounce(); 
                            int oldValueReed1=-1;
                            int oldValueReed2=-1;
                            
                            //tempsensor
                            DHT dht;
                            float lastTemp;
                            float lastHum;
                            boolean metric = true; 
                            
                            //Messages
                            // Kontaktschalter
                            MyMessage msgReed1(CHILD1_ID,V_TRIPPED); // Kontaktschalter 1
                            MyMessage msgReed2(CHILD2_ID,V_TRIPPED); // Kontaktschalter 2
                            
                            //TempMessage
                            MyMessage msgHum(CHILD_ID_HUM, V_HUM);
                            MyMessage msgTemp(CHILD_ID_TEMP, V_TEMP);
                            
                            void setup()  
                            {  
                              gw.begin(NULL, MY_NODE_ID, true);
                            
                              //Tempsensor
                              dht.setup(HUMIDITY_SENSOR_DIGITAL_PIN); 
                            
                            // Setup Kontaktschalter 1
                              pinMode(BUTTON1_PIN,INPUT);
                                // Activate internal pull-up
                              digitalWrite(BUTTON1_PIN,HIGH);
                            // Setup Kontaktschalter 2
                              pinMode(BUTTON2_PIN,INPUT);
                              // Activate internal pull-up
                              digitalWrite(BUTTON2_PIN,HIGH);
                              
                              // After setting up the button, setup debouncer
                              debouncer1.attach(BUTTON1_PIN);
                              debouncer2.attach(BUTTON2_PIN);
                              debouncer1.interval(5);
                              debouncer2.interval(5);
                              
                              // Register binary input sensor to gw (they will be created as child devices)
                              // You can use S_DOOR, S_MOTION or S_LIGHT here depending on your usage. 
                              // If S_LIGHT is used, remember to update variable type you send in. See "msg" above.
                              gw.present(CHILD1_ID, S_DOOR); 
                              gw.present(CHILD2_ID, S_DOOR); 
                              //Tempsensor
                              gw.present(CHILD_ID_HUM, S_HUM);
                              gw.present(CHILD_ID_TEMP, S_TEMP); 
                              metric = gw.getConfig().isMetric;
                            }
                            
                            
                            //  Check if digital input has changed and send in new value
                            void loop() 
                            {
                              //Kontakstschalter 1
                              debouncer1.update();
                              // Get the update value
                              int valueReed1 = debouncer1.read();
                             
                              if (valueReed1 != oldValueReed1) {
                                 // Send in the new value
                                 gw.send(msgReed1.set(valueReed1==HIGH ? 1 : 0));
                                 Serial.println("Button 1 geschaltet");
                                 oldValueReed1 = valueReed1;
                              }
                              //Kontakstschalter 2
                              debouncer2.update();
                              // Get the update value
                              int valueReed2 = debouncer2.read();
                             
                              if (valueReed2 != oldValueReed2) {
                                 // Send in the new value
                                 gw.send(msgReed2.set(valueReed2==HIGH ? 1 : 0));
                                 Serial.println("Button 2 geschaltet");
                                 oldValueReed2 = valueReed2;
                              }
                              
                             //Tempsensor
                            
                             delay(dht.getMinimumSamplingPeriod());
                            
                              float temperature = dht.getTemperature();
                              if (isnan(temperature)) {
                                  Serial.println("Failed reading temperature from DHT");
                              } else if (temperature != lastTemp) {
                                lastTemp = temperature;
                                if (!metric) {
                                  temperature = dht.toFahrenheit(temperature);
                                }
                                gw.send(msgTemp.set(temperature, 1));
                                Serial.print("T: ");
                                Serial.println(temperature);
                              }
                              
                              float humidity = dht.getHumidity();
                              if (isnan(humidity)) {
                                  Serial.println("Failed reading humidity from DHT");
                              } else if (humidity != lastHum) {
                                  lastHum = humidity;
                                  gw.send(msgHum.set(humidity, 1));
                                  Serial.print("H: ");
                                  Serial.println(humidity);
                              }
                            
                              //gw.sleep(SLEEP_TIME); //sleep a bit 
                            
                            } 
                            
                            

                            http://abload.de/image.php?img=20160306_11174141u66.jpg

                            m26872M Offline
                            m26872M Offline
                            m26872
                            Hardware Contributor
                            wrote on last edited by
                            #287

                            @siod I'm pretty sure DHT nor DS18B20s won't work at 1MHz.

                            1 Reply Last reply
                            0
                            • siodS Offline
                              siodS Offline
                              siod
                              wrote on last edited by siod
                              #288

                              Oh man, one problem solved, next just comes up...

                              So what can I Do now? Just upload the 8MHz bootloader and just use 8MHz instead of 1MHz?

                              edit: Ok, tested it, it works with the 8MHz Bootloader!

                              please explain one more time if I could just use the 8MHz Bootloader, I still could not fully understand why I should use the 1 MHz Bootloader (maybe because of my bad english and also my lack of electronics knowledge). Thank you very much!!

                              edit2: I measured 0,02 Ampere consumption, isn´t that too much?

                              still learning...

                              m26872M 1 Reply Last reply
                              0
                              • siodS siod

                                Oh man, one problem solved, next just comes up...

                                So what can I Do now? Just upload the 8MHz bootloader and just use 8MHz instead of 1MHz?

                                edit: Ok, tested it, it works with the 8MHz Bootloader!

                                please explain one more time if I could just use the 8MHz Bootloader, I still could not fully understand why I should use the 1 MHz Bootloader (maybe because of my bad english and also my lack of electronics knowledge). Thank you very much!!

                                edit2: I measured 0,02 Ampere consumption, isn´t that too much?

                                m26872M Offline
                                m26872M Offline
                                m26872
                                Hardware Contributor
                                wrote on last edited by
                                #289

                                @siod Either your Atmega328p or you DHT22 will work unstable as your battery drain and voltage drops. I haven't tested and don't remember the specs, but my guess is that DHT will stop working very soon with battery <3V.

                                I suggest you choose this or this design.

                                1 Reply Last reply
                                0
                                • siodS Offline
                                  siodS Offline
                                  siod
                                  wrote on last edited by
                                  #290

                                  OK thx for the hint, I guess I will just add a third AA battery, that should solve my problem...

                                  still learning...

                                  M 1 Reply Last reply
                                  0
                                  • siodS siod

                                    OK thx for the hint, I guess I will just add a third AA battery, that should solve my problem...

                                    M Offline
                                    M Offline
                                    meddie
                                    wrote on last edited by
                                    #291

                                    @siod
                                    Attention this can damage your nrf24 Module.
                                    Greets Eddie

                                    1 Reply Last reply
                                    0
                                    • siodS Offline
                                      siodS Offline
                                      siod
                                      wrote on last edited by siod
                                      #292

                                      I really don't want to spam this thread...

                                      But from my arduino Uno the nrf24l01 module is also powered by 5V!?!

                                      Edit : ah ok, the arduino is going to regulate down to 3.3v... Then I cant use 3AAs :(

                                      still learning...

                                      rsachocR 1 Reply Last reply
                                      0
                                      • siodS siod

                                        I really don't want to spam this thread...

                                        But from my arduino Uno the nrf24l01 module is also powered by 5V!?!

                                        Edit : ah ok, the arduino is going to regulate down to 3.3v... Then I cant use 3AAs :(

                                        rsachocR Offline
                                        rsachocR Offline
                                        rsachoc
                                        wrote on last edited by
                                        #293

                                        @siod I was in much the same position as you, but the simple suggestion is to use the SI7021, as per this thread. Otherwise, the links in the other thread are for the 5v builds.

                                        1 Reply Last reply
                                        0
                                        • siodS Offline
                                          siodS Offline
                                          siod
                                          wrote on last edited by
                                          #294

                                          I wasn't aware that the nrf24l01 is so sensitive to voltage higher than 1.9v. I would like to have a sensor design to which I can add different sensors, just for the purpose I need it right now. So most sensors need 3.3v or 5v and I have to decide if I use 3v cells, which are more expensive or use step up / step down regulators which will drain my batteries. I just want to keep the flexibility to add any sort of sensor to my board... What would you suppose to do, also I think I am not the only one who faces those problems. Of course I am a beginner and still have a lot to learn but I also just want to finish this project as I am working on it for a very long time now...

                                          still learning...

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


                                          17

                                          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