New video! Here’s a game changer! We’ve kept the lid on the PiicoDev Transceiver project pretty well, but we’re finally ready to talk about it. This episode is all about how we managed the compact design, and a real field-test to see what this baby can do!
Excellent video and discussion.
I think this a great device removing a lot of the complexity of using WiFi. Especially when you just want simple transmission of a sensor reading to a server. And so easy to use given the library you have developed.
My initial testing showed it to be much better than the nRF905’s I had previously used.
Wow! What a measure for success
Thanks for the updates Jim - you’re in the early-adopter round for this product so it’s great to get your feedback! Keep us updated with what you make
Maybe I am a bit hasty in trashing nRF905 modules. They do work very well.
My comment is related to easy of use, I2C interface, Python Libraries, and built it antenna.
Although I think the nRF905’s didn’t have the same distance as the PiicoDev TX/RX.
Probably my testing was not as good as it should have been wrt to nRF905.
I think Core electronics made a good decision in the PiicoDev range by standardising on a I2C interface.
Also, by providing python libraries, making use of the modules very easy using Thonny.
Great video. I’m thinking of having a go to get some experience with the Pico and transceiver.
I noticed a beefy power bank for the transmitter. I have been looking but can’t find the information on the power drain, if say, I wanted to add a solar panel and LiPo battery and run the weather station 24/7 at say 1 data packet a minute, and log that at the receiver.
A wild guess from the datasheet, I’m thinking the Pico will chug away at 30-50mA. I think I read the Tx power was about 0.25W so 75mA (?) but on a very low duty cycle it won’t amount to much. The BME280 draws?
If using 80% of charge, the 1100mAh LiPo should allow for a 14 hour overnight Winter with a 60mA average. Does this sound about right or do you have better numbers on power needs?
Has anyone tried this already?
I haven’t done any proper elect eng in 30 years so I’m feeling awful rusty at the moment. Time to get back into it.
Hi @David173576 - your calculations seem pretty reasonable for sure. If you want to absolutely minimise power you can look into use a Makerverse Nano Power Timer HAT which will cycle power to the project periodically. That way you don’t have to worry at all about the parasitic of connected modules.
If you go down this route you may want to allow the sensor time to ‘warm up’ on each power cycle. Usually a minute is sufficient.
In this way you might take a sample every eg. 15 minutes and only have an on-time of 1 minute → 4 minutes per hour → 96 minutes per day.
I guess there’s no need for the expansion board with the Timer (which will save space)?
The connectors on the Nano Timer Hat are for the LiPo battery and a PiicoDev cable. So a solar panel would connect to the Timer HAT’s GND and Vsys. The schematic has diode on Vbat and a P-channel MOSFET between that diode and Vsys. I’m thinking I still need a Schottky diode between the solar panel and the Vsys, and the panel needs to be > 4.5V out. Sound about right?
Thanks in advance.
I think you’re on the money!
Do be careful though - if VSYS sees more than 5.5V you can fry your Pico and possibly the battery charger too
Hmmm, good points. Thanks.
I’ll probably need a 5V regulator instead, with quite a low voltage drop, given that I was looking at only a 5.5V 0.5W solar panel to power it.
5.5V @ 0.5W is 90mA. The text for that panel says 100mA. Is that enough?? That would be in full sun I think.
Edit. Changed @ 5W to @ 0.5W
I’ll use the timer hat, to warm the sensor for a minute and then do one small packet transmission, six times per hour, so I’ve calculated about 200mAh per day - not much.
If it chews a bit more power, maybe I’ll only transmit 4 times per hour.
The solar panel (when it becomes available) has an OC voltage of 8.2V and max load of 6.4V, so I’m hoping to position it somewhere to give me 5.5V+ for a few hours a day, which should be enough to top up a LiPo battery. I will need a voltage regulator with only a 0.5V drop, so that if I can only get 5.5V I can still get the 5V onto Vsys.
I dare say, that with some pretty rough calculations, there will be a fair bit of experimenting and panel positioning to do before I get it right.
Yes, straight at the sun which is the conditions will be to get the quoted figures. Like everything else for marketing purposes it looks better to quote the numbers for optimal conditions.
The way to go is to work out how much you are going to drain out of the battery in 24 hours and that is the amount you are going to have to put in to replace that in 4 to 6 hours (decent sun availability). The sun might shine longer but when the angle gets away from 90º the solar panel output drops dramatically.
Do yourself a favour and do all your calculations and estimates in Watts and Watt/hours and convert to V and A at the end. This will minimise errors along the way.
Don’t forger that every time you convert from one voltage to another (buck or boost) you have to consider a conversion efficiency loss. That 1100 mAhr at the 3.7V Lipo battery is nowhere near that at 5V and even less when conversion loss is factored in.
Actually 1100mAh @ 3.7V = 4070mWh = 814mAh @ 5V minus conversion efficiency which could be as low as 85% which would leave 692mAh. 85% would probably be worst case but at 90% this would still be 733mAh. Quite a bit less than the original 1100mAh.
On the other hand if everything is 3.3V things look a lot better. I think the Pico will handle 3.7V (or 4.2V fully charged) directly and if everything else is the same you are only looking at the charging efficiency as the only loss will be when charging the battery from 5+V.
Hi Bob, thanks for the tips.
I’m thinking that the Timer Hat will make a big difference. The Hat is quoted at 35nA or 115nW, which is nothing! I was looking at 10 minute intervals, but it has 5 or 20 minutes intervals, so I might put it back to sleep on every second wake-up. If the Pico runs for 1.1 minutes, 6 times per hour, that’s ~160 min / day @ 22mW, approx 60mWh per day. Transmission is 0.25W but for < 1 sec at a time (?), 144 times per day?
You are right in that I need to account for inefficiencies and I don’t know how much the sensor draws in it’s 1 minute warm up, or if the 915MHz transceiver draws while ‘idle’ for most of that 1.1 minutes. So I’ve been rounding up numbers.
From what I know, I’m calculating about 570mWh per day. If the extras (eg, warm up) adds 50%, rounding up goes to 855mW per day … 260mAh. The panel will power the system for a reasonable number of daylight hours, and should have plenty of time to top up the LiPo, so I’m now thinking of the 400mAh LiPo.
I’m looking at a LM2940 voltage regulator, which should only have a 0.5V drop, connected to Vsys on the Hat. How much power will I loose between this and the Hat itself? No idea. But if I can get the Timer Hat to work as specified, I’ll hopefully only need about 2 hours per day @ 0.5W from the panel, to re-charge.
The other unknown is that after 2 x 5 minute intervals, plus 1.1 minutes ‘awake’, it will effectively be transmitting at 11.1 minute intervals, not a nice number. I don’t know if the interval starts from the start or the end of the last ‘awake’ period. If I have to run longer, to get ‘nice’ interval, that will have a significant affect on power (and I might need the bigger battery).
Happy to receive any other tips you may have. Cheers, Dave
Is 0.25W of the radio the DC input power or the RF output power. This will make a bit of a difference as this might be only 50% efficient ie; requires 0.5W of DC input for 0.25W RF or is it 0.25W input. For a worst case scenario you probably should allow for the transmitter to be active for the whole of the ON time. That way you won’t get caught.
Don’t forget the panel has to power your system AND charge the Lipo while the sun shines.
Personally I like to overcook the power availability. If the 400mAh Lipo will do the job but a 1100 (or more) is available and can be used I would go for the larger. This will be handy if the sun is a bit iffy at any time.
Make it removable so if the sun does not do its thing and the battery goes down a bit the small panel might not cope and you might have to top it up. Better still have a system where you can plug in a USB or other source temporarily to top up or “help out” as required… Some 18650 cells go to 2600mAh.
That is a linear regulator which could have some drawbacks like wasted power. You might have a look at a small MPPT solar controller which will maximise the POWER output for maximum efficiency from the panel. I don’t know if small ones to do this job exist as I have not gone into this but it is something to consider.
As for the last paragraph that is something I know NOTHING about. I agree that for tidy logging purposes you need a nice round fractions of the hour or you are going to finish up with a dogs breakfast of a result.
Check out the guide for the original power timer which features a section on combining switch positions for fine-grain timing control. Looks like if you set switches A,D,E you will get very close to 10 minutes.
To be honest I don’t know. I tried to find where I had read 0.25W but couldn’t locate it. So, yeah, it could likely be Xmit power, not input power, which would kind of make sense.
However, I had a look at the Transceiver’s python library, it seems that it may not turn on until initialised, and then it can be switched off. So I can wait 1 min, for the sensor to warm up, then initialise the transceiver. Similarly, if I need a combination of time intervals (as Michael suggests) and some waiting to report at a good time interval, I’ll just switch the PiicoDev modules off and let the Pico wait a minute or two.
An interesting exercise in power management.
Yes the text is delightfully vague isn’t it. The norm these days.
However a bit of sleuthing found a data sheet for the actual transceiver here
The RF output power is 100mW, can’t find DC input power but assuming 50% efficiency that would be 200mW, about 60mA. The receiver is quoted at 16mA so a total of about 76mA. The 250mW is not far out although I can’t find where that came from. There are some more smarts on the board like an ATtiny and a LED or 2 so if you allowed say 100 or 150 mA you would not be far out, I would opt for 150mA myself but I tend to over estimate a bit. Leaves a bit of head room without stressing anything.
This company fooled me a bit. I last heard of Hope Electronics back in the early 70’s and they were then from USA. So when I saw Hope I thought this is a nice change. But this is HOPERF which turns out to be our old favourites, Chinese. Ah well one can only hope that someday !!!
Thanks for the reference, more reading to do. Hope offshoring, maybe reshoring?
I have more options to keep the power use down. The MicroPython Module has power settings from 20dB to -2dB, and instead of 100m (per Michael’s video) the range is <25m. If it was a spherical radiation pattern (it’s not) it would only need 6.25% of the output power to get the same receive signal strength. From eng class 35 years ago I recall something about -3dB = 1/2, so an 8dB setting may do it, maybe on the lowest baud rate … but there is a wall / window involved.
Anyway, I still need to finish my order for stray bits!
That is dbm. 0dbm meaning 1mW in this case 50Ω. (223mV) +20dbm = 100mW
That is correct but the ratio is a POWER ratio (not voltage)
The antenna alone dictates the radiation pattern, nothing else.
Not necessarily. The signal strength does not reduce in a linear fashion with distance from the antenna, it is logarithmic.That is every time you double the distance the signal strength reduces by 6db. So it would follow that if you reduce the distance by half the signal would increase by 6db
Therefore theoretically to get the same signal strength at 50M you would need a TX power of +14dbm and half that again (25M) would be +8dbm so your figure of 8 is spot on. So is your percentage so I will humbly apologise.
There is a mystery involved here. The test done at Core involved walking away from the TX until the signal was becoming unreliable. I don’t think there was any attempt to measure the actual signal strength so that result could be pretty arbitrary. I will try to look up the formulas for path loss attenuation tomorrow or find my microwave calculator and work out what the signal should be at 100M.
I went back to first principles, surface area of a sphere, hence the reference to a spherical transmission pattern. Hence …
I’m very glad that you confirmed my math. It has been a while.
Attenuation, reflections, … I think I’m reaching the “let’s build something and see if it works stage”. Parts ordered, but the solar panel is out of stock (and difficulty finding something else suitable), so test and measurement in the meantime.