[TriEmbed] wireless communications and battery life

Brian triembed at undecidedgames.net
Tue Jan 7 12:35:45 CST 2020


Hi Dewey!

Allow me to extend a warm welcome on behalf of TriEmbed at large.  I 
have some knowledge that might be useful toward your questions.

On 1/7/20 12:24 PM, Dewey Hylton via TriEmbed wrote:
> The original intent was to monitor the mailbox. Could use a physical switch
> to determine when the door was opened/closed, or even a light sensor to do
> the same. But we wanted to wait a number of seconds after the event, take a
> picture of the inside of the box, and send the results via email or mms or
> whatever. So not only a fun project for us, but something actually useful in
> that we could tell whether a package was present or just more bills. :)

Nice!  I've had something like that in the back of my mind for ages as 
well, but lots of other projects ahead of it in the queue.

> 
> Two basic questions, really. The first has to do with power and battery life,
> and the second having to do with wireless communications.
> 
> We started with the Onion Omega2 because (1) very user friendly, as it runs
> linux and I can use my python/shell/whatever prowess to get things done. And
> (2) it has built-in wifi. We are comfortable with this and have done a few neat
> things inside the house. BUT ... I think it's going to be quite power hungry
> and may rule it out as far as locating in the mailbox and not having to change
> batteries every day or two.

Yep.  The key to battery life is low-power modes.  Running a full-blown 
OS on a SoC will eat through batteries at an alarming pace.  An embedded 
microcontroller should have some way of "going to sleep" and being woken 
up by an external event (i.e. your sensor seeing the mailbox door open). 
  It's this sleep mode that will extend your battery life.  The micro 
only needs to be awake long enough to wait your desired delay period, 
snap a picture, and send it.  Then it can go back to sleep (drawing, 
hopefully, microamps) until the door is opened again.

Unfortunately I can't tell you how to do that on an Arduino.  What I can 
tell you, though, is that Arduino is probably a good platform for this 
project.  There are shields and other free-hanging modules that will 
enable the Arduino to handle all of the desired tasks (there are 
Arduino-compatible cameras, as well as shields and modules for a variety 
of wireless technologies).

A good rev2 design might be to investigate versions of the Arduino 
platform with minimal outboard components; e.g. you don't need a USB 
UART chip sucking power when the thing's boxed up in your mailbox.

> 
> About the wireless bit ... I have plenty of experience with "standard" ip
> based networking and wifi, but wonder if that is the best fit here. For starters
> my mailbox is about 250 feet from the house. And I figure anything capable of
> doing an ip stack over wifi may present similar battery problems. So I am
> starting to look into other communications which are not ip based as well.
>  > We recently had our home alarm system upgraded to include wireless 
sensors.
> I learned that not only are these devices able to communicate over fairly long
> distances (and through walls/brick/etc.) but their tiny little batteries can
> last 3-5 years even with the sensors having a mostly constant connection to the
> system. Learning this gave me hope that the mailbox monitor might actually be
> feasible.

Sleep modes.  Your wireless sensors are not "constantly" connected to 
the base station.  They spend most of their time asleep, and only wake 
up periodically to tell the base station they're alive, or if an alarm 
event occurs.  Your mailbox project is definitely feasible, though, for 
the very same reason; it only needs to be awake long enough to handle 
"alarm" events.

> 
> I have found some wireless modules used to communicate between arduino units;
> perhaps the mailbox unit can communicate with a much closer unit, and the closer
> unit can be fed power from the house and do the smarter stuff while the remote
> unit essentially stays asleep until triggered by light or physical switch in
> order to conserve battery.
> 

That's the right way to think about it.  You could tuck another Arduino 
in a weatherproof plastic electrical box on the outside of your house, 
feed it DC power from a wall wart, and let it shuttle data from your 
mailbox unit to your WiFi network, for example.  Then your 
mailbox-to-base-station link can be whatever RF technology meets the 
needs best.

> So ... first steps first ... do any of you have experience with low power
> wireless communication which might actually work in my case? Both the distance
> and battery life are the main worries currently.

Not direct experience with this specific sort of project, but I have 
lots of hours working on embedded systems in general, from PIC 
microcontrollers to full Linux-powered SoCs.

> If you've made it this far, thanks for your attention and consideration. I look
> forward to hearing some opinions and experiences in this space, and using your
> input for projects with my son.

I find it almost as enjoyable to wax eloquent on someone else's project 
as it is to work on my own projects.  Cheers!

-Brian




More information about the TriEmbed mailing list