Edison wireless weather station now has local sensors

Further progress on the Edison wireless weather station project I’ve described in an earlier blog post.

I’ve added the base module sensors and even though I initially looked at using the same DHT-22/AM2302 I used on sensor modules, it turned out to be not feasible on Edison’s Kit for Arduino. Due to all the muxes, it’s not easy to toggle one pin in/out fast enough for 1-wire-like protocol DHT-22/AM2302 uses. There’s an option with using two pins and an additional simple schematic, but then there’s a question of adding a software part and I didn’t want to spend too much time on this.

So at the end of the day I have two I2C sensors connected to my base module (Edison): BMP180-based GY-68 module (similar to this, provides atmospheric pressure and temperature) and HTU21D-based Sparkfun module (provides humidity and temperature). I had to remove the solder jumper on the HTU21D module as GY-68 already has pullup resistors, other than that enabling them was a breeze using wonderful UPM library with pre-made wrappers for these sensors.

Here’s the text piece of the web interface with data from these new sensors:
screenshot of the web interface with new sensor data

I also tested the ability to run sensor modules off of the battery and looks like in its current form it’s not the best use case. As Arduino/Genuino 101 was never meant to run off of the battery as a continuous operation mode, it draws a little too much energy for this to be cost-effective. It’s still quite great compared to the usual Arduino Uno, given more features 101 has, but it’s just not suitable for long-term battery operation as of today.

I’ve done some very rough measurements running one of my sensor modules off of a generic power bank and it happily ran for about five days, which gives about 58mA of the average current consumption. Now, the powerbank itself has a LED charge level indicator (of four LEDs), which is always active and definitely consumes some of that + Arduino/Genuino 101 has a “powered on” LED, which is also surplus for my project but still consumes power. We also don’t have any access to the OS’ power management features from the sketch level and I guess that could have helped as well. We’ll see what opportunities open after Curie ships as a standalone chip in Q1 as announced at CES 2016, I think the part itself can do much better battery-wise and it’s just that 101 as a platform is really not meant to run off of the battery.

I’m now looking into the next piece, cloud upload for long-term analysis. Looks like these days there are not that many offerings (after Xively went all-commercial), which allow you to keep your data private and being free at the same time. Because of that I’m also thinking of maybe rolling out my own “on-premise” solution like e.g. Sparkfun’s phant, so we’ll see.