We at II have been poking around for some time looking for the best remote IO solution. Well, solutions. There are a lot of different wireless applications. The one we’ll address here is one with the following criteria:
- Low-power : battery-powered for up to a year, depending on sampling frequency
- Small form factor
- Low cost
- Flexibility and capability in IO
- Preferably open-source
While we don’t want to conclude that our search is over, we’ve for the moment chosen to look at the Moteino line of wireless products. They’re sub-1Ghz, offering a good mix of range/penetration while staying out of the crowded 2.4Ghz range. They offer an on-board ATMega328p, something we’d planned on coupling with the modules from, for example, XBee or Ciseco. While the API isn’t quite as built as XBee in the context of traffic management, their community is active and full of Arduino enthusiasts. The code is open-source, so it’s sure to continually develop. The onboard AVR is Arduino IDE compatible, and best of all, it’s a nicely built board with with what we want without having to do our own board design and SMD soldering. As a bonus, it’s open-source. It’s also competitively priced at about $20 per transceiver/uC combo. And, yeah, the developer cares about his product and gives excellent customer service.
So let’s get on with it. What we want to demonstrate here is a tiny IO unit with an onboard battery or externally with room for a few basic sensors.
We start with our components. A moteino R4 with RFM69W. We also elected to use a perma-proto min tin breadboard. We love these things. Well-made plated breadboards in a tiny package. It will leave us some space to wire sensors and whatnot to the ATMega IO and give us a good physical mount for the RF unit. We can even mount a through-hole mini USB if we want to power it externally. Standard headers, when soldered long side through the protoboard, will still leave enough room to attach female jumpers, which we will use to power it from the battery here.
For the enclosure, we use a little weather-proof enclosure by Polycase, the WC20F. This thing is IP65 rated, which means that it’s dust-tight and immune to, you know, waterjets. It’s also attractively priced at about $7 and has flange mounts.
The base of the enclosure will be reserved for the battery, and potentially sensors that we want to slide in there. Because the lid is fairly tall and about the right size (and because we want our RF module at the top), we can mount it inside the lid.
We do a tiny bit of dremel work and get it to nicely wedge into the top of the enclosure. The fit result is no fasteners required.
After we make it fit, we do the rest of the soldering with our headers and wireless unit. We attach the antenna, and the internal rails nicely line up with our ground and 3.3V lines. You either get the pretty board size up or color-labeled rails on the underside. We chose ugly side up here.
We do a bit of splicing on a 9V battery to put female end and jam it into the bottom of the enclosure. If you’re trying this at home, we did mill off the panel mounts to allow the battery a bit more room.
And there you have it. A tiny little enclosure with an RF module for remote monitoring. If you want an external PS or sensor, just throw in some cord grips. We’ll show you this in another post, along with how to jam some sensors in this box and read it.
See here for our install, configuration, and communication of our remote 1Wire temperature sensor.
The above makes use of the open source libraries available on github here:
Explanation and installation here: