π¬ Button size radionode with sensors swarm extension
-
@gohan said in Button size radionode with sensors swarm extension:
is it sleeping 5 seconds only?
You are right, that was my mistake after testing it. However, the consumption still seems high.
For example I'm right now testing a BME280 which I want to use in the future, with the following sketch:
https://gist.github.com/solars/a5302f1cb60d90f89d7e37d5e23f8c4dIt's connected to SDA/SCL and GND/V - somehow the voltage it receives with a fresh battery is already quite low, and it also doesn't last very long.
-
you need to try to measure current while the sensor is sleeping as it should be a few uA maximum
-
@gohan I only have a normal multimeter - what's the best way to do this?
I came across https://www.eevblog.com/projects/ucurrent/ a while ago, is it worth it?
-
There is a project in openhardware for a current meter if you want to build one, or you could buy a newer multimeter if the one you have can not measure uA
-
@chbla said in Button size radionode with sensors swarm extension:
multimeter
You should be fine even with a cheap multi-meter as long as it has uA scale.
should be around 7-10 uA and if you do not send JDEC to sleep it is 17 -19 uA.
to send JDEC to sleep\wakeup I use
_flash.wakeup();
_flash.sleep();light sensor should be sent to sleep explicitly also.
-
@yury not really, I have bought an Aneng cheap multimeter, but if I connect it with uA scale selected it will go out of range during node boot and cut the circuit making measurement impossible (unless you do something fancy that would make it unpractical)
-
@gohan said in Button size radionode with sensors swarm extension:
selected it will go out of range during node boot and cut the circuit making measurement impossible
my cheap one survives 20mA surge (RFM69 CW version) of initial communications and displays good reading afterwards. if you burned fuse inside, try replacing it temporarily with some thin wire for this uA tests.
-
I have another cheap one that works. I didn't blow the fuse since turning it off and on it works again, it must be a software limitation
-
@yury said in Button size radionode with sensors swarm extension:
@chbla said in Button size radionode with sensors swarm extension:
multimeter
You should be fine even with a cheap multi-meter as long as it has uA scale.
should be around 7-10 uA and if you do not send JDEC to sleep it is 17 -19 uA.
to send JDEC to sleep\wakeup I use
_flash.wakeup();
_flash.sleep();light sensor should be sent to sleep explicitly also.
Right - but this is all in your sketch right? This is what I used:
https://gist.github.com/solars/a5302f1cb60d90f89d7e37d5e23f8c4d
-
@Koresh would it be possible to sell this without the sensor part and RFM69? How many orders would it need?
I don't have the possibility to produce it myself, don't need the sensors part and have a lot of RFM69s lying around..Thank you,
Christoph
-
I downloaded gerber files.
Error Message from PCB Manufacturer:
The NC drill layer does not match with the pads of copper layer.Thank you,
Attila
-
@anovak
Hello. Do you mean main board or rfm69 adapter? It is very strange. I produced exactly these gerbers many time.
-
Finally I have a little time to continue this project...
High efficient dc-dc converter works nice and double cr2032 are good. Lets go to the furher tests!
-
Thanks. The problem was solved.
Manufactured at very low cost on pcbway, they are manufactured with "Min Track / Spacing: 5 / 5mil".
Do you have any idea where they are manufactured cheaper?
-
New version with double battery holder and power convertor works nice.
Power consumption in sleep mode is less than 9uA
I will test it soon..
-
@koresh You only have two sensors BH1750 and Si7021. Did you try to have all four sensors and measure consumption?
-
Which pcb manufacturer do you recommend?
I asked for a quote from Pcbway but it was expensive.
The reason was:
Change the 'Min Track / Spacing' value from 6 / 6mil to 5 / 5mil.Sorry for my bad English.
-
@anovak Unfortunately you can reduce the price of the board only if you order more boards.
-
What price can be made in 10 items?
-
@anovak if you mean 10K maybe you can have a discount
-
10 would be needed for the current project
At pcbway, the total cost of production and shipping costs is $ 34.
Is there someone who does it at a lower price?
Business account required.I apologize for asking this question in this topic.
What type of transformer do you use and where to get it for the Mini Relay Box?
-
@anovak do you want them completely assembled?
Yesterday I ordered 2 plain PCB's from seeedstudios, cost me 20 dollars incl, shipping. paid more for shipping than for the PCB's themselves.
but for the size, these units are you can get 6 or more in one design.
-
Only PCBs are needed.
-
@anovak I use in mini relay box the same transormer as in wall switch insertable node. Please read this comment https://forum.mysensors.org/topic/3938/wall-socket-insertable-node/57
-
Can we buy it fully assembled and what would it cost?
-
@kenci
Yes, in a week or so. Even with plastic enclosure ))
-
@yury what would the price be for the fully assembled board?
-
@kenci
EUR 18 the board with SI7021 and BH1750. extra 1EUR for enclosure if someone need it.
-
Please link for enclosure
-
@mika Can't find white enclosure now. You can find black here https://ru.aliexpress.com/item/50-28-15mm-black-small-case-junction-box-DIY-electronic-box-instrument-shell-enclosures/32816171702.html?spm=a2g0v.search0104.3.7.695b35fcke4Os7&ws_ab_test=searchweb0_0,searchweb201602_2_10152_10151_10065_10344_10068_5722815_10342_10343_10340_5722915_10341_5711416_5722615_10696_10084_10083_10618_10307_5722715_5711215_10059_308_100031_10103_5711515_10624_10623_10622_5711315_5722515_10621_10620_10125,searchweb201603_25,ppcSwitch_5&algo_expid=82d68252-5f35-47c6-a438-13925ec12b35-1&algo_pvid=82d68252-5f35-47c6-a438-13925ec12b35&transAbTest=ae803_1&priceBeautifyAB=0
-
First batch of the latest version is ready
-
Can you share elemnts for version RFM69HW ? I see only PCB files but i dont know whatr i must have elements...
-
And what is size gold pins ? 2.54 ?
-
And anybody what pin should be wire to activate programming... ? In arduino pro mini is dedicated micro switch. In this dont have microswitch and i want add microswitch. It should be RST connected to GND ? please help...
-
@pepson said in Button size radionode with sensors swarm extension:
And what is size gold pins ? 2.54 ?
Yes, 2.54
@pepson said in Button size radionode with sensors swarm extension:
And anybody what pin should be wire to activate programming... ? In arduino pro mini is dedicated micro switch. In this dont have microswitch and i want add microswitch. It should be RST connected to GND ? please help...
Programming is activated via DTR pin automatically.
@pepson said in Button size radionode with sensors swarm extension:
Can you share elemnts for version RFM69HW ? I see only PCB files but i dont know whatr i must have elements...
Schematic of the first version is available. Will share schematic version of ButtonSizeNode_V2 (with dc-dc) later.
-
But please share a list element what capacity and resistor and other and with what body. Ex 0805 etc.
But for programming i dont need push/wire RST with GND ?
Explaine me how works Programming is activated via DTR pin automatically ??
And what is ButtonSizeNode_V2 (with dc-dc) ?? What is diffrent to v1 ?
-
@pepson said in Button size radionode with sensors swarm extension:
But for programming i dont need push/wire RST with GND ?
Explaine me how works Programming is activated via DTR pin automatically ??
No, no need to connect RST with GND.
DTR works automatically - as soon as you press upload in your Arduino IDE, it starts uploading the sketch to the atmega328p. Simple
-
@pepson said in Button size radionode with sensors swarm extension:
And what is ButtonSizeNode_V2 (with dc-dc) ?? What is diffrent to v1 ?
https://github.com/EasySensors/ButtonSizeNode
https://github.com/EasySensors/ButtonSizeNode2@pepson said in Button size radionode with sensors swarm extension:
But please share a list element what capacity and resistor and other and with what body. Ex 0805 etc.
Will try to share soon. Almost all elements are 0402.
-
@koresh said in [ Button size radionode with sensors swarm extension]>
Will try to share soon. Almost all elements are 0402.
Wow! I have been struggling with 0603 size. You must have eagle's eyes
-
But v2 is also for radio RFM69HW ?
-
@pepson Yes. radio footprints are the same. You can use HW or CW via adapter.
-
Ok please share list components... i wait for it.
And diffrent with v1 and v2 is only that v2 have two batteries ?
-
@pepson Yes. So it have longer lifetime, radio range and working temperature range.
-
Ok thanks. only wait for list component
-
Hi
Can you share your project file and file gerber with this specification
https://support.jlcpcb.com/article/44-how-to-export-kicad-pcb-to-gerber-filesOr can you put description to also file gerber ?
Thanks
-
Description to model elemnts. Ex. U4
-
Please share also layer describe...
Failed load project to production.
-
@pepson said in Button size radionode with sensors swarm extension:
Failed load project to production.
You mixed gerbers of the main board and adapter board.
@pepson said in Button size radionode with sensors swarm extension:
Please share also layer describe...
It is standard. If you really need it you can find layers description here
https://goo.gl/Jv33Lb (Generated Gerber Files)@pepson said in Button size radionode with sensors swarm extension:
Can you share your project file and file gerber with this specification
No I can't. Have no time today, sorry.
-
@koresh said in Button size radionode with sensors swarm extension:
You mixed gerbers of the main board and adapter board.
Can you explaine me more ? What can i do ?
-
@pepson
pcb2.* - main boards gerbers
rfm69c_to_rfm69hc.* - adapter gerbers
You need only main board gerbers
-
Hi @koresh I'm having problems with battery monitor. Trying to find out what's wrong, I have realiced that A6 analog reads from regulator output. So It allways reports 3,3V, isn't it?
Also, I read that unregulated could go up to 6,5V. Wouldn't this destroy radio module? I think I'm missing something.
Thanks.
-
Hi. Do you have unassembled pcbs to sell?
-
@gerator Oh.. so sorry. It is new forum reporting system. Didn't saw your message.
A6 reads unregulated voltage (3.5-6.5V) through divider (1/3). So it can't destroyed nothing.
-
@diogoc I will try to find them. But all of components are 0402...
-
@Koresh I still have a bunch of v1 boards that I never got to work because of power consumption (I presume). I thought I'd make one more attempt.
I tried bridging the jumper and I'm using a 2032 battery. Consumption varies between 2 and 4mA on different boards. On some boards it fluctuates a lot. The instructions above are not immediately clear. Do I have to remove the LDO AND capacitors as well?
-
while measuring current draw , was there FDTI adapter connected also?
-
@yury No I ran them on just a 2032 battery at the time, just had it in an external battery holder. I also removed the LDO on one of the boards and bridged the two top pads, with no apparent effect.
Unless there is something wrong with my DMM.
-
@bjornhallberg I have the same v1 board you have with a sleeping power consumption being 5uA. I also have Si1132 sensor soldered and had some issues with power consumption initially as the standard Si1132 lib did not implement sleep function for this sensor.
- what sensors do you have? Do they properly put to sleep? BH1760?
- can you share the sketch?
- removing the LDO will not help you to bring down consumption from 3mA. 3mA most likely mean your radio is not sleeping. Such consumption will kill CR2032 very quickly - no chance running the board on such consumption
- did you try a different multimeter?
- there could be a problem with one of the tantalum capacitor. @yury could you remind which one has to be removed please?
I suggest you start with 5)
-
@alexsh1 Thanks for the suggestions! Reassuring to know that you succeeded.
- I haven't added any sensors so it's just the default ones.
- https://github.com/EasySensors/ButtonSizeNode ... may need some cleaning up @Koresh or do we use v2 code for v1 sensor as well?
- I thought as much ... damn. I'm using the CW version radio with the adapter plate. I also thought about the radio but unlike the NRF radio this one should work with no counterfeit units?
No my other DMM was out of batteries.Found my old crappy DMM and it says the same, ~2mA.- I did remove both caps and it's still at ~2mA.
You're probably right about something not sleeping. Or else I've done a horrible soldering job on the four radios I've attached so far. All four sensors behave pretty much the same.
Also, at least on Domoticz they changed things around now so you have to use V_LEVEL instead of V_LIGHT_LEVEL or what? https://www.domoticz.com/forum/viewtopic.php?t=18577 With V_LIGHT_LEVEL I get some incomprehensible percent value reported.
-
-
No - please double check the board. There are options for a few sensors. Which ones do you have. Sensors on board.
-
Code really depends on sensors on board you have.
-
This is not about counterfeit radio. Just radio NOT SLEEPING. That's it.
-
OK.
-
OK
First thing first. Let's deal with your sleeping problem.
Identify which sensors you have on board or post a good quality photo of the board.
Try to use minimum sketch (see commends below - choose the correct Mhz band):
and measure the current#define MY_DEBUG #define MY_RADIO_RFM69 // Please use one!!!!!! //#define MY_RFM69_FREQUENCY RF69_433MHZ //#define MY_RFM69_FREQUENCY RF69_868MHZ //#define MY_RFM69_FREQUENCY RF69_915MHZ #define MY_NODE_ID AUTO #define MY_TRANSPORT_UPLINK_CHECK_DISABLED #define MY_PARENT_NODE_IS_STATIC #define MY_PARENT_NODE_ID 0 #include <Wire.h> #include <BH1750.h> //Make sure you are using this one https://github.com/claws/BH1750 BH1750 lightMeter; #include "SparkFun_Si7021_Breakout_Library.h" Weather sensor; #include <MySensors.h> #define SPIFLASH_BLOCKERASE_32K 0xD8 #define SPIFLASH_CHIPERASE 0x60 void setup() { lightMeter.begin(BH1750::ONE_TIME_LOW_RES_MODE); noInterrupts(); _flash.initialize(); _flash.sleep(); interrupts(); } void loop() { lightMeter.begin(BH1750::ONE_TIME_LOW_RES_MODE); lux = lightMeter.readLightLevel(); Serial.print("Lux="); Serial.println(lux); sleep(10000); }
-
-
@alexsh1 I may have made a bit of a mistake with some glitchy chinese test probes. De-glitched cables and connected to a proper lab power supply gave very different readings (with the default git-sketch) ...
Still a bit confused over the differing readings. I get that the board I stripped from regulator and capacitors would perform better though. So do I have to do the same for all the other boards as well? Of course, I could save the worst performing boards for later and run them on 2xAA or something in places where space isn't an issue.
-
Hi @bjornhallberg.
I've done many tests today with your code. All tested boards were the newer ones. So I completely had no ideas until I read your last message. Now all is clear for me. You have battery draining ~10-100ua, not 1-2mA. As I see your boards contain 107J capacitors. It was an absolutely failed batch of capacitors. We resoldered all of these capacitors on all the boards after we had found this problem with @alexsh1. Unfortunatelly some of these boards had been sent until we found this problem. We are so sorry you had to deal with these failed boards. I suggest I send you some new tested buttonsized v1 boards to you. Also I can send good capacitors to rework failed boards and some of my new interesting boards for free.
-
@bjornhallberg @Koresh That's what I wrote a few posts above - start with the capacitors
My suggestion - get a decent DMM. Brymen BM235 or 121GW or any Fluke.
Measuring a sleeping current is challenging and some unexpansive Chinese DMM manage it just really well. BUT! You do not want to waist your time just because your meter is crap and was completely off on some readings.
-
@koresh Package went under the "Postnord" radar! Woohoo, perfect! I will start replacing the old capacitors and finally be able to deploy the sensors. Very nice of you to include some product samples as well. Really excited about these sensors!
-
Hi guys, quick question: I'm using a LiFePo4 3.2V battery directly on the board (sensors part removed).
Somehow the battery percentage always shows 100 - how should I change the default code to make this work?Right now I'm using the code like here: https://github.com/EasySensors/ButtonSizeNode/blob/master/ButtonSizeNode.ino
-
@christoph-blank Hi, thanks for using this board. In the first version of this board the divider is conected after LDO, so you can't measure voltage above 3.3V. In the second version the divider is connected to the battery directly. You use 3.2v battery so it is not problem for you. But LiFePo4 battery has very flat discharge curve so it can be hard to read this level with reasonable accuracy.
I will try to find LiFePo4 battery and add some piece of code soon. Yet you can play with followed code// Get the battery Voltage int sensorValue = analogRead(BATTERY_SENSE_PIN); // 1M, 470K divider across battery and using internal ADC ref of 1.1V1 // ((1e6+470e3)/470e3)*1.1 = Vmax = 3.44 Volts /* The MySensors Lib uses internal ADC ref of 1.1V which means analogRead of the pin connected to 470kOhms Battery Devider reaches * 1023 when voltage on the divider is around 3.44 Volts. 2.5 volts is equal to 750. 2 volts is equal to 600. * RFM 69 CW works stable up to 2 volts. Assume 2.5 V is 0% and 1023 is 100% battery charge * RFM 69 HCW works stable up to 2.5 volts (sometimes it can work up to 2.0V). Assume 2.5 V is 0% and 1023 is 100% battery charge * 3.3V ~ 1023 * 3.0V ~ 900 * 2.5V ~ 750 * 2.0V ~ 600 */ #ifdef MY_IS_RFM69HW int batteryPcnt = (sensorValue - 750) / 1.5; #else int batteryPcnt = (sensorValue - 600) / 3; #endif
-
@koresh said in Button size radionode with sensors swarm extension:
@christoph-blank Hi, thanks for using this board. In the first version of this board the divider is conected after LDO, so you can't measure voltage above 3.3V. In the second version the divider is connected to the battery directly. You use 3.2v battery so it is not problem for you. But LiFePo4 battery has very flat discharge curve so it can be hard to read this level with reasonable accuracy.
I will try to find LiFePo4 battery and add some piece of code soon. Yet you can play with followed code// Get the battery Voltage int sensorValue = analogRead(BATTERY_SENSE_PIN); // 1M, 470K divider across battery and using internal ADC ref of 1.1V1 // ((1e6+470e3)/470e3)*1.1 = Vmax = 3.44 Volts /* The MySensors Lib uses internal ADC ref of 1.1V which means analogRead of the pin connected to 470kOhms Battery Devider reaches * 1023 when voltage on the divider is around 3.44 Volts. 2.5 volts is equal to 750. 2 volts is equal to 600. * RFM 69 CW works stable up to 2 volts. Assume 2.5 V is 0% and 1023 is 100% battery charge * RFM 69 HCW works stable up to 2.5 volts (sometimes it can work up to 2.0V). Assume 2.5 V is 0% and 1023 is 100% battery charge * 3.3V ~ 1023 * 3.0V ~ 900 * 2.5V ~ 750 * 2.0V ~ 600 */ #ifdef MY_IS_RFM69HW int batteryPcnt = (sensorValue - 750) / 1.5; #else int batteryPcnt = (sensorValue - 600) / 3; #endif
Thank you very much, what are the other differences between V1 and V2? I believe I have V1 but I'm not sure.
The above code is what I currently use, and I removed the sensor part of the module. However, it shows 100% until the end (until it's not sending anymore).Looking forward to your tests!
Christoph
-
Hope will test the new version of this universal board soon. Now it has additional inexpensive accelerometer, magnetic sensor, led, reset button, multifootprint for lora/hw/cw radio without adapter and improoved 4layers design
-
hi, this looks great -- is the assembled board, or just the board itself available anywhere? newbie here, i don't know what to do. if i can buy the assembled board, it would be so fantastic. thanks!!!
-