My Slim 2AA Battery Node
-
I had a bit of an issue getting things going as I've never played with the fuses before. Maybe this can save someone else some time. If I'm doing something silly here please correct me. :sweat_smile:
[DISCLAIMER] this worked for me. Use at own risk[DISCLAIMER]
Executed these commands from the subfolder \hardware\tools\avr\bin of my local arduino IDE.
Connected the board ICSP using an USBASP with the latest firmware. Change the "-c usbasp" part if you connect using something else.Flash bootloader
avrdude -C ../etc/avrdude.conf -c usbasp -B5 -p ATmega328P -U flash:w:..\..\..\arduino\avr\bootloaders\atmega\atmega328_1a.hexSet fuses
avrdude -C ../etc/avrdude.conf -c usbasp -B5 -p ATmega328P -U lfuse:w:0x62:m -U hfuse:w:0xDE:m -U efuse:w:0x07:m -U lock:w:0x2F:mI think the B5 was crucial as it slows things down a bit. The bootloader (atmega328_1a.hex) is the one mentioned in the first post. I also added the part in the boards.txt of the arduino IDE.
Now I can connect the board to the FTDI and upload and run sketches without issues.
On to the next step :smiley: :+1:
-
I am not so really skilled in transferring a wiring diagram to "real live". Is this the correct implementation for battery measuring?
@dakky First, the "normal" battery monitoring to this node is to use the internal method by, if you like, using the vcc library. Measuring Vcc with external voltage divider makes not a lot of sense. The external voltage divider is useful when measuring e.g. raw battery voltage to some voltage regulator.
Second, I think you've switched A0 and Gnd in your drawing. -
Is there some one who have lying around several boards, who can share them with me.
i'm from the netherlands, and for now i only need 5 to 6 boards, not 30 :)so i hope i could take over a couple from someone.
-
Is there some one who have lying around several boards, who can share them with me.
i'm from the netherlands, and for now i only need 5 to 6 boards, not 30 :)so i hope i could take over a couple from someone.
@arnoldg said:
Is there some one who have lying around several boards, who can share them with me.
i'm from the netherlands, and for now i only need 5 to 6 boards, not 30 :)so i hope i could take over a couple from someone.
Same here, anybody in US has 4 or 5 boards that i could buy?
-
@nikos1671 If you buy the proto pack you could get 9,10 or 11 boards. It could be different that exactly 10 boards. In my case I received 12 boards for my design, in another order I received 11 boards. My last order was 10 boards. But in any case you will be able to make more then 25 sensors. Plenty for a normal house.
-
Anyone want to share some photos with sensors assembled?
Any experiences how long this node will last? I have one DHT11 and one BH1750 onboard and will wake up the node every 5-15 Minutes.Greetings
Dakky@dakky said:
Anyone want to share some photos with sensors assembled?
Any experiences how long this node will last? I have one DHT11 and one BH1750 onboard and will wake up the node every 5-15 Minutes.Greetings
DakkyI would like this too please! I'm trying to decide on which node to use as a motion sensor and temp/humidity sensor and would like to understand how I add a temp/humidty sensor to these and also the battery drain. And also, what temp/humidity sensors are we able to use with this node? I guess it ouputs max 3v, so does that mean the DHT11 and DHT22 are not able to be used here? Sorry for the newbie questions, I'm beginning to explore my options in relation to building my initial temp/humidity sensor and then a motion sensor.
edit OK, so based on what m26872 said here (http://forum.mysensors.org/topic/2715/slim-node-as-a-mini-2aa-battery-pir-motion-sensor/5) I think that I can only use Si7021 or HTU21 sensors as this outputs around 3v? From reading the spec sheet of the DHT11 and 22 I see they need 3.7v, so I guess if I want to use those sensors I need this node (http://forum.mysensors.org/topic/486/my-2aa-battery-sensor)?
-
@dakky said:
Anyone want to share some photos with sensors assembled?
Any experiences how long this node will last? I have one DHT11 and one BH1750 onboard and will wake up the node every 5-15 Minutes.Greetings
DakkyI would like this too please! I'm trying to decide on which node to use as a motion sensor and temp/humidity sensor and would like to understand how I add a temp/humidty sensor to these and also the battery drain. And also, what temp/humidity sensors are we able to use with this node? I guess it ouputs max 3v, so does that mean the DHT11 and DHT22 are not able to be used here? Sorry for the newbie questions, I'm beginning to explore my options in relation to building my initial temp/humidity sensor and then a motion sensor.
edit OK, so based on what m26872 said here (http://forum.mysensors.org/topic/2715/slim-node-as-a-mini-2aa-battery-pir-motion-sensor/5) I think that I can only use Si7021 or HTU21 sensors as this outputs around 3v? From reading the spec sheet of the DHT11 and 22 I see they need 3.7v, so I guess if I want to use those sensors I need this node (http://forum.mysensors.org/topic/486/my-2aa-battery-sensor)?
-
Humidity Sensor example
http://forum.mysensors.org/topic/3049/slim-node-si7021-sensor-example(This post used to contain a not yet finished design by mistake. The link above now shows the correct finished project.)
-
Reed Switch example
With external 10M pull-up to save battery. The plastic foam is used instead of a fixed mount, for easy disassemble, reflash, battery renewal etc.






The Sketch
// EgSlimReed2 // By m26872, 2015-12-22 // Interrupt driven binary switch for Slim Node with Reed switch and external pull-up (10Mohm) // Inspired by mysensors example: // https://github.com/mysensors/Arduino/blob/master/libraries/MySensors/examples/BinarySwitchSleepSensor/BinarySwitchSleepSensor.ino #include <MySensor.h> #include <SPI.h> #include <Vcc.h> #define NODE_ID 5 //12 var senaste "reed-node"-id // 110 // Use static Node_ID <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< #define SKETCH_NAME "EgSlimReed" #define SKETCH_VERSION "2.0 2015-12-22" #define SW_CHILD_ID 5 #define SW_PIN 3 #define BATTERY_REPORT_DAY 2 // Desired heartbeat interval when inactive. Maximum heartbeat/report interval is equal to this due to the dayCounter. #define BATTERY_REPORT_BY_IRT_CYCLE 10 // Adjust this according to usage frequency. #define ONE_DAY_SLEEP_TIME 86400000 #define VCC_MIN 1.9 #define VCC_MAX 3.3 int dayCounter = 0; int irtCounter = 0; uint8_t value; uint8_t sentValue=2; bool interruptReturn=false; Vcc vcc; MySensor gw; MyMessage msg(SW_CHILD_ID, V_TRIPPED); void setup() { delay(100); // to settle power for radio gw.begin(NULL,NODE_ID); pinMode(SW_PIN, INPUT); digitalWrite(SW_PIN, LOW); // Disable internal pull-ups gw.sendSketchInfo(SKETCH_NAME, SKETCH_VERSION); gw.present(SW_CHILD_ID, S_DOOR); } void loop() { if (!interruptReturn) { // Woke up by timer (or first run) dayCounter++; if (dayCounter >= BATTERY_REPORT_DAY) { dayCounter = 0; sendBatteryReport(); } } else { // Woke up by pin change irtCounter++; gw.sleep(50); // Short delay to allow switch to properly settle value = digitalRead(SW_PIN); if (value != sentValue) { gw.send(msg.set(value==HIGH ? 1 : 0)); sentValue = value; } if (irtCounter>=BATTERY_REPORT_BY_IRT_CYCLE) { irtCounter=0; sendBatteryReport(); } } // Sleep until something happens with the sensor, or one sleep_time has passed since last awake. interruptReturn = gw.sleep(SW_PIN-2, CHANGE, ONE_DAY_SLEEP_TIME); } void sendBatteryReport() { float p = vcc.Read_Perc(VCC_MIN, VCC_MAX, true); int batteryPcnt = static_cast<int>(p); gw.sendBatteryLevel(batteryPcnt); } -
Motion sensor example
As already mentioned; more details to be found here.http://forum.mysensors.org/topic/2715/slim-node-as-a-mini-2aa-battery-pir-motion-sensor
-
do u add these photos and comments to openhardware.io ? they are quite helpful
-
Humidity Sensor example
http://forum.mysensors.org/topic/3049/slim-node-si7021-sensor-example(This post used to contain a not yet finished design by mistake. The link above now shows the correct finished project.)
-
@m26872 I don't use any I2C pull-ups. All my Si7021/ SHT21 (GY-21) boards include the SDA/SCL pull-ups (and LDO voltage regulator/ level conversion).
@AWI
Oops, it makes me worried that I completely forgot that this project was in some test stage. Ldo and everything should probably be bypassed, but I wanted to test it first. Post edited. Thanks for noticing!And sorry for everyone else if this caused any trouble.
(It also makes me a little worried about that I have too many ongoing projects right now. :confounded: )