Low power WiFi application
iseries
Posts: 1,492
in Accessories
You want to build a low power application that will run off batteries and every so often you want it to connect up to your network and send some data.
First you try a Parallax-ESP unit and find that it uses about 100ma of power and is always on. This can eat a battery fast. The esp8266 modules do have a sleep mode but in its configuration is not usable. The unit goes to sleep and then wakes up and tries to reboot itself and gets lost. Even the ESP01 units have to have a wire connected to a pin for this option to work.
Well how about using a XBEE WiFi module. These unit have an AT command structure and can be program outside of your application. Using the DIGI XCTU application you can get the configuration of these unit and even setup all the connection information it needs to use your WiFi network. Even better is that is has a sleep mode that uses no power while it's sleeping. You can set the sleep time and wake time and the unit will cycle through these events. Even better is if you monitor the CTS pin on the unit you can see when the unit is awake so you can package up your data and send a burst of data.
When the unit is awake though it does use a lot of power so limiting that time is important.
You may want to check these units out: XBEE WiFi Module
Mike
First you try a Parallax-ESP unit and find that it uses about 100ma of power and is always on. This can eat a battery fast. The esp8266 modules do have a sleep mode but in its configuration is not usable. The unit goes to sleep and then wakes up and tries to reboot itself and gets lost. Even the ESP01 units have to have a wire connected to a pin for this option to work.
Well how about using a XBEE WiFi module. These unit have an AT command structure and can be program outside of your application. Using the DIGI XCTU application you can get the configuration of these unit and even setup all the connection information it needs to use your WiFi network. Even better is that is has a sleep mode that uses no power while it's sleeping. You can set the sleep time and wake time and the unit will cycle through these events. Even better is if you monitor the CTS pin on the unit you can see when the unit is awake so you can package up your data and send a burst of data.
When the unit is awake though it does use a lot of power so limiting that time is important.
You may want to check these units out: XBEE WiFi Module
Mike
Comments
Sources will be in GitHub.
As it happens, I'll be working on those over Easter break, so when I stumble across the relevant info I'll post it here. (In case you don't get there first!)
The XBEE unit supports sleep mode out of the box without any special codes being sent to the unit. You configure it and it works.
Mike
But there's also some other sleep modes which reduce the current a fair chunk without fully sleeping the module (ie. does not need those pins). More like a soft-sleep than a hardware-sleep.
I think what you said earlier implied that the soft-sleep didn't work with ESP8266, but when we tested a couple of those modes with the Badge we could save a fair amount of current. (Although now you mention it, I think your right that only a couple of the sleep modes actually worked as expected, and a couple we couldn't get to do anything noticeable. I think there were 3 or 4 modes).
Of course YMMV. Just mentioning what I recall in case it's helpful or worthy of some fresh investigations !
BTW... I'm experimenting with some P2 wireless loading at the moment, and your fix for hiding the WiFi module from being grabbed by the dastardly SimpleIDE comport drop down might be handy right now - would you mind if I merge your code into my version?
I have all the code ready to put back into the current Parallax-ESP module. I only need to create a pull request.
Mike
Parallax-ESP
Mike