My Slim 2AA Battery Node
-
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...
@siod said:
I wasn't aware that the nrf24l01 is so sensitive to voltage higher than 1.9v.
Typo? I suppose you mean 3.3V.
I would like to have a sensor design to which I can add different sensors...
Please reply why you don't like those two designs I linked to in my last post above.
-
5V as a supply voltage had been the standard for many decades.
As integrated circuits have become more compact and more efficient, 3.3V and 1.8V as supply voltages have become standards as well. 3.3V for most components, 1.8V is more recent and only used in some very highly integrated circuits.
For sensornodes based on batteries, the 3.3V standard is very usefull and most sensors are available for this working voltage.
If you really need 5V for a particular sensor, then think about AC or USB powered nodes. 5V sensors are a bad choice for battery based nodes. The 5V sensors are mostly old designs, and very inefficient when looking at them from a powerconsumption point of view.
So you can want to combine 3.3V and 5V sensors, but our experience is NOT to combine and make a choice for low power (modern) 3.3V sensors when trying to build battery based sensor nodes.
-
OK guys, thanks for the explanation. In this case I need to buy new temp sensors...
The 3.7v batteries are no option for me because they are too expensive in my eyes. I didn't want to buy new temp sensors as I already bought a couple of the DHT 11 sensors but it seems like there is no other chance now.
I just think the next time I encounter problems is, when I try to setup a new sensor node with attached pir motion sensor... I will read the data sheet of it first and look out for power consumption :)
-
Is there any motion sensor that work on 3.3 V ? I tried powering the below one with 3.3 but it was acting crazy and keeps reporting motions.
http://store.fut-electronics.com/products/pir-motion-sensor-module-adjustable-range
It is written that V range is 3-5 but it worked well with 5v only.
-
Is there any motion sensor that work on 3.3 V ? I tried powering the below one with 3.3 but it was acting crazy and keeps reporting motions.
http://store.fut-electronics.com/products/pir-motion-sensor-module-adjustable-range
It is written that V range is 3-5 but it worked well with 5v only.
@ahmedadelhosni Haven't you seen the motion example sensors in the first post of this thread?
-
@ahmedadelhosni Haven't you seen the motion example sensors in the first post of this thread?
@m26872 yeah I know you have a topic but actually was concerned with door and window sensors that time and forgot to check it again when I needed it :)
-
I can't program my slim node through ISP, is there a reason it isn't working.
I use USBASP with jumper 3 connected.
But it can't find the node.someone have a clue how to solve this.
it doesn't recognise the avr.
This is the error i get:
avrdude: error: programm enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.avrdude done. Thank you.
-
I can't program my slim node through ISP, is there a reason it isn't working.
I use USBASP with jumper 3 connected.
But it can't find the node.someone have a clue how to solve this.
it doesn't recognise the avr.
This is the error i get:
avrdude: error: programm enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.avrdude done. Thank you.
-
Below is my first sketch with this awsome 2aa battery powerd board.
i didn't measure the current. but i tryed to be as efficient with the power as possible.my avr is running on 8Mhz, this is becaus the DTH22 doesn't run on 1Mhz.
#include <SPI.h> #include <MySensor.h> #include <DHT.h> #include <Vcc.h> #define CHILD_ID_TEMP 1 // Child id for temperatur #define CHILD_ID_HUM 2 // Child id for humidity #define CHILD_ID_VOLT 3 // Child id for battery reading #define HUMIDITY_SENSOR_DIGITAL_PIN 3 // Where is my DHT22 data pin connected to int node_id=6; // What is my node id unsigned long SLEEP_TIME =30000UL; // Sleep time between reads (in milliseconds) int sleepcycle=1; // Counter to count the amout of time not sending data int humoffset=2; // only data is send if humidity is changed for this amout int tempoffset=0.5; // only data is if temperature is changed for this amout int gwsendtimout=20; // each 20*sleep_time (10 minutes) data will be send const float VccMin = 1.5; // Minimum expected Vcc level, in Volts. const float VccMax = 3.0; // Maximum expected Vcc level, in Volts. const float VccCorrection = 1.0/1.0; // Measured Vcc by multimeter divided by reported Vcc Vcc vcc(VccCorrection); MySensor gw; DHT dht; //Store last values float lastTemp = 0 ; float lastHum = 0 ; float batteryV=0; int oldBatteryPcnt = 0; boolean lastTripped = false ; boolean metric = true; boolean gwsend = true; // to determin if data has to be send MyMessage msgHum(CHILD_ID_HUM, V_HUM); MyMessage msgTemp(CHILD_ID_TEMP, V_TEMP); MyMessage msgVolt(CHILD_ID_VOLT, V_VOLTAGE); void setup() { gw.begin(NULL,node_id,false); dht.setup(HUMIDITY_SENSOR_DIGITAL_PIN); // Send the Sketch Version Information to the Gateway gw.sendSketchInfo("Humidity", "1.1",true); // Register all sensors to gw (they will be created as child devices) gw.present(CHILD_ID_HUM, S_HUM,"Humidity douche"); gw.present(CHILD_ID_TEMP, S_TEMP,"Temperatuur douche"); gw.present(CHILD_ID_VOLT, S_MULTIMETER,"Battery voltage"); metric = gw.getConfig().isMetric; } void loop() { // get the battery Voltage batteryV = vcc.Read_Volts(); int batteryPcnt = vcc.Read_Perc(VccMin, VccMax); if (oldBatteryPcnt != batteryPcnt) { // Power up radio after sleep gwsend=true; oldBatteryPcnt = batteryPcnt; } delay(dht.getMinimumSamplingPeriod()); float temp1 = dht.getTemperature(); float humidity = dht.getHumidity(); if (isnan(temp1)) { // Serial.println("Failed reading temperature from DHT"); } else if ((temp1 <= lastTemp-tempoffset)||(temp1 >= lastTemp+tempoffset)) { lastTemp = temp1; if (!metric) { temp1 = dht.toFahrenheit(temp1); } gwsend=true; } if (isnan(humidity)) { // Serial.println("Failed reading humidity from DHT"); } else if ((humidity <= lastHum-humoffset)||(humidity >= lastHum+humoffset)) { lastHum = humidity; gwsend=true; } if (sleepcycle>gwsendtimout){ gwsend=true; } if (gwsend){ gw.sendBatteryLevel(oldBatteryPcnt); gw.send(msgVolt.set(batteryV, 1)); gw.send(msgTemp.set(lastTemp, 1)); gw.send(msgHum.set(lastHum, 1)); gwsend=false; sleepcycle=1; } sleepcycle++; gw.sleep(SLEEP_TIME); } -
Finally had time to solder it. Not my best job, I admit. One of the caps I tried to mount was not flush enough so I had to clip it off. Hopefully not a critical component! I made the radio removable using some header strips. Now to figure out what temp sensor to use. I have currently used just a thermister. Can DHT22 work down at ~1.9V?
Anyway this was fun - highly recommend a needle point solder tip!

-
Finally had time to solder it. Not my best job, I admit. One of the caps I tried to mount was not flush enough so I had to clip it off. Hopefully not a critical component! I made the radio removable using some header strips. Now to figure out what temp sensor to use. I have currently used just a thermister. Can DHT22 work down at ~1.9V?
Anyway this was fun - highly recommend a needle point solder tip!

-
@wergeld congratulations :thumbsup:
For the temp sensor I suggest a si7021 board. Almost the same price as as dht22 but more accurate, reliable and versatile. It uses the I2C bus (pin A4, A5)@AWI said:
@wergeld congratulations :thumbsup:
For the temp sensor I suggest a si7021 board. Almost the same price as as dht22 but more accurate, reliable and versatile. It uses the I2C bus (pin A4, A5)@AWI I saw the si7021 on another forum. Ordered a couple of the low voltage ones as I want to make my nodes with as few components as possible. I could still use my thermistor while I wait. This is a fun build!
-
Hello, I made a small modification to this project, hope that is ok! Now I need some help validating it! I opened a new topic to avoid going side topic in this one:
http://forum.mysensors.org/topic/3642/m26872-slim-node-mod
Thank you all
-
Hello, I made a small modification to this project, hope that is ok! Now I need some help validating it! I opened a new topic to avoid going side topic in this one:
http://forum.mysensors.org/topic/3642/m26872-slim-node-mod
Thank you all
-
I ordered a proto pack on 15th of April and received it on 30th of April. Pretty fast, I think. :-)
-
Hm, I built some nodes and messured the current with a Fluke 179: 15mA even with a minimal sketch with sleeping enabled. AVRs are not from china, but the NRF24 are. So, is the radio the problem?
Greetings
-
(i am using MySensors 2.0.0beta)
-
Could be radio, but who knows? What troubleshooting steps have you taken? Hw-, sw-variations etc. Please post your sketch. Perhaps are there any SlimNode users with working MyS 2.0.0 beta that can share some info.