Saturday, October 8, 2011

Power Savings and Prepping for an EV

Last week, I had some free time to reassess what devices I have running and whether or not I still use them at all. This was born out of some preliminary research into purchasing an electric vehicle (EV). Nissan Leafs are actually available now to those without reservations. That's the more realistic choice, but I really like the Telsa Model S. I've been missing a sporty car since my Honda roadster was totaled last year.

Taking the Nissan Leaf as an example, with its 24 kWH battery and 100 mile range and my current commute of about 30 miles roundtrip, I could drive 3 days per full charge. I would drive one of our other cars one day a week, so that would leave about 16 days/month on the EV. Rounding it to 15 days, I'd need 5 full charges or an additional 5*24kWH = 120 kWH of electricity per month.

Fortunately, we had solar panels installed 18 months ago. Since then, we've been able to stay in the lower 2 tiers of electricity costs for 11 out of the first 12 months we've had them. Those lower tiers are now 12.2 cents/kWH and 13.9 cents/kWH. The 3rd tier jumps to over 30 cents/kWH and the 4th and 5th tiers more costly. In December 2010, we used 73 kWH of tier 3 electricity. The 2nd worst month was January 2011, but we were 60 kWH below tier 3. The other 10 months we were 150-500 kWH below tier 3.

So if nothing changes, it would be "expensive" to drive an EV in December. The 120 kWH of electricity to charge the EV would all come in tier 3 at a cost of about $36 for 450 miles. That ends up being more than the $33 it would cost to drive our Prius the same distance (assuming $3.70/gallon for gas), but less than the $70 it costs our Subaru. It would cost about $26 in January. April to October would be all tier 1 electricity and cost about $14.50. February, March and November would be about half tier 1 and half tier 2, or about a buck more per month than April-October.

These are hardly savings compared to a hybrid - maybe $150/year. Compared to our non-hybrid, it's more significant - $550/year. When the economy improves, those savings will go up as gas prices will rise. For me, the real savings will be not sending as much of our hard earned money to big oil companies or countries that want to destroy the American lifestyle.

Political statements out of the way, there are some special options our electric utility has for EV owners. One is a time-of-use option where they charge a high rate during peak periods and less during the late night-early morning. This wouldn't work out well for us because of all the HA related servers, electronics, etc running 24x7. Another option is the installation of a 2nd electric meter specifically for charging the EV, but that's at least $2000. A third option would be to install an additional 6 solar panels on the west facing portion of our roof. It's not an optimal position and I haven't priced it out - but I figure it would be around $4000. I could do some of the work myself as I did an install with SunWork before. Of course, the obvious option is to cut our electricity usage - specifically the things that run 24x7.

I have to admit, having solar, I've been lazy about conserving. Rather than run a long Cat-5 cable, I plug in another Ethernet switch. Instead of using an extension cord to get to a UPS already installed, I add another UPS. When security cameras get updated, I keep the old ones plugged in pointing somewhere else - not really someplace necessary. Last weekend, I fixed all that. I pulled 4 UPS's, 4 Ethernet switches, 2 cameras, 3 modulators, one Squeezebox and 1 Slingbox. I disabled Connect24 on our Wii so it can idle at 1W instead of 9W. I unplugged a clock radio in the garage that used 10W. The end result is I cut about 3 kWH/day or 90 kWH/month. That's almost as much as the 120 kWH/month an EV would require!! This was by far the cheapest option. You can really see the results in a chart. In the 5 full days since my unplug-fest, our usage has never exceeded 20 kWH/day.


Now, we have headroom for an EV - I just need to decide whether I'm ready to plunk down all the cash for one.

Monday, September 5, 2011

Random Bits

I just finished my first week at my new startup and I'm already buried. New designs & new methodologies to learn and I need to know it by yesterday. I've spent a lot of time this 3 day weekend going over some training material I got from a co-worker. I did, however, get around to some minor automation stuff.

I finally hardwired some contact closures which were connected to DS10As. I just needed a little more accuracy for these sensors and sometimes I would get collisions with other X10 wireless devices which would cause status updates not to be received. I've wired these sensors to a USB gamepad connected to the thin client that interfaces to our Brultech power monitor. My xPLGamepad app relays the closure state via xPL.

This weekend I also upgraded to the kids from Rio Receivers to Squeezeboxes and turned off Medianet for good. It was a good run, but most of the house was running Squeezeboxes so it was time to consolidate to one music server. Medianet really helped push me deeper into home automation. Years ago, while searching for alternate servers for the Rio Receivers, I stumbled onto Medianet's predecessor, xPLRioNet. Installing it not only gave new life to the Receivers, but introduced me to xPL which has become such an intricate component of our HA system.

Finally, we've got these chef's mats on our kitchen floor, which are pretty thick. The Roomba will go up one of the mats, but will never go down due to its cliff sensors. This makes for one very clean mat, but that's about it. The cliff sensors work by bouncing IR off the ground and if it's not reflected back strong enough, the Roomba thinks it's on an edge and won't continue in that direction. I never use the Roomba upstairs so I chose to disable the cliff sensors. Fortunately, I had some aluminum tape from some HVAC work I did and used it to tape over the cliff sensors. The aluminum works perfectly and reflects the IR back to the cliff sensor and our kitchen floor is now clean again.

Wednesday, August 31, 2011

So Where's That Health Care Reform?

It's been a while since I've blogged as I've been busy tying up some loose ends at work. This post qualifies in the "random stuff" category, but it's still a post ;)

It was a little over a year ago that my employer shut down our group and laid off most of the hardware engineers. I ended up trying out contracting for a year, having never done it before in my career. One of the big issues for contractors is health insurance - actually obtaining it and then paying for it. We didn't have any issues getting coverage - other than one of our grade school children having mild asthma. That one minor condition triggers all sorts of warning bells at health insurance companies. Our son had to be listed on his own separate policy, which means he couldn't be under our family plan and we had to pay additional premiums for a 2nd policy. It also meant he would have his own deductible, and since we opted for a high deductible plan ($5000 family, $2500 individual - anything else would have completely unreasonable premium), we were unable to pool our expenses together to meet one family deductible. What a joke.

Over the course of the year, our insurance premiums went from reasonable to ridiculous. The family premium for myself, my wife and daughter started at $244/month, jumped to $373 the next month and in January it spiked to $509. Just 4 months later, it rose to $516. In July, we received notice of yet another increase in rates to $593 effective October 1st. We did also have to pay for our son's policy, which started around $40/month, gapped up to $70/month then to over $100/month in January. It too, will be having a rate increase in October, jumping to $115/month.

In the course of 15 months, our family plan premiums would have risen 243%!!! The two policies combined started off around $300 in July of last year and in October will run $708!!! Our son's mild asthma ended up being a 20% rate increase from our family plan rate every month.

Fortunately, I've returned back to a full time position with employer provided healthcare. Healthcare insurance is a scam. Nothing justifies a 243% increase in the course of 15 months. Health Net you suck.

Saturday, June 25, 2011

Various Updates

I've been working on a number of projects off & on the last few weeks. A few weeks ago, I tweeted about this app called GTalkSMS. It has a lot of potential for automation. I played with it a while, downloaded the source and modified it. I wanted my HA system's Jabber interface to be able to interact with GTalkSMS. It was using Jabber-NET, but for some unknown reason, that package isn't able to communicate with GTalkSMS. I found another free Jabber library, agsXMPP, and tried that out. It was able to talk to GTalkSMS so I ripped Jabber-NET out and replaced it with agsXMPP. For the most part, it was easy to swap libraries.

Next, I decided to replace the Jabber-NET client in Jab2Twit with agsXMPP because it's not able to communicate when you chat with Google's talk gadget (like in Chromebooks). I also finished up IM'ing new tweets and tweet filters. That's about wrapped up and ready for release.

I did a little work with Kinect, eventually moving to Windows as I couldn't make much headway in Linux. That's been backburnered as Microsoft recently released their official beta SDK for Kinect. I haven't had time to really play with it.

We also had our annual pilgrimage to the Southern California theme parks and in preparation for our trip, I set up a mini mobile camera viewer. It's just a simple web page with JQuery and AJAX. Since the cameras are on different servers (or are IP cameras), rather than set up SSH tunnels to each IP address, I basically proxied them through Apache - so I only had to tunnel one port. I used this technique I've used before. One other issue I had was I couldn't view MJPEG streams of certain IP cams with the AJAX technique I implemented. I found this PHP code to return a single frame from a stream.

I also picked up a Kindle Special Offers because up all the deals they've been handing to owners (such as 20% off HDTVs!). It's the first e-reader we've had and I have to say it's pretty cool, whenever I can pry it out of my wife's hands.

One more thing I got was an Aeon Labs ZStick to use with the handful of closeout ZWave modules I scrounged from Radio Shack months ago. There's a particular area of our house where UBP and X10 just don't work reliably and I've given up trying to figure out the noise source that's causing problems. I figured the ZWave modules would be perfect in this situation and took a stab at using the Open ZWave project. It was really easy to build and I slapped an xPL interface onto the demo .NET app and was controlling the modules in about 15 minutes. ZWave is now fully integrated into our system - using this hacked app. Our needs for ZWave are simple, just turning on & off modules, no scenes or other complexities. Maybe if I can find more closeout modules, I might expand its features.

Finally, I picked up a couple Lepai T-Amps from Parts Express via Amazon.com - just $20 + S&H. These are nice little amps that I'm using in conjunction with a couple Squeezeboxes I have lying around. I'm starting to phase out our remaining 3 Rio Receivers with gen 1 Squeezeboxes and SliMP3s I've found on Craigslist.

My next project I plan on working on is expanding the capabilities of our system's IM interface. I would like to increase its capabilities of interpreting text into commands usable by the system. With all the voice capabilities built into Google apps and Android phones, this could be a simple way to have reliable pseudo voice control from anywhere. The idea is to use the voice to text features of our Android phones, for example, to dictate to the IM client. Then pressing send and let our system regex the text to extract useful commands and perform them. Easy enough right?

Wednesday, June 1, 2011

More Tweeting, Less Blogging?

I remember seeing an article some time ago about a guy who was a really prolific blogger. He posted about how Twitter has rendered blogging obsolete. I started on Twitter in July 2009 and the frequency of my blog posts has tailed off considerably. For me, Twitter let's me write about more useless things and things off the top of my head, things I wouldn't necessarily blog about. I think I'm less interested in writing much these days, but I can tweet little bits. Also, I tend to spend more time with blog posts, editing wording and grammar, but with Twitter I don't care about editing other than fitting in 140 characters, so it saves me time. I'll continue to blog when I feel the need to add more detail, but if you don't mind a bit of noise, you can follow me over on Twitter.

I've got a number of projects I'm working on at the same time, multi-tasking or ADD, depending on how you look at it ;) Too many to make any real progress on any one of them. I've been updating my Twitter clients (xPLTweet and Jab2Twit) and working on my Facebook bot/scripting engine. I also started Android development and have loaded my first app on my phone that just has 2 buttons and does nothing yet. Finally, my Kinect came yesterday and I spent last night configuring a Dockstar to get X windows running so I can play around with libfreenect. As a big hoops fan, the NBA finals are distracting me from making progress. It's good to be busy right?

Monday, May 23, 2011

Facebook Page and Interface

Out of boredom, this weekend I played around with the Facebook C# SDK. I was mainly seeing what I could access through the API and created an app that periodically scanned the news feed. Then I got sidetracked building a scripting engine into the app and allowing it to post to my feed. Eventually, I got the idea to build a Facebook page for Doghouse Labs and have my new app automatically post stuff to the feed. I've seen this done with Twitter before, but never on Facebook. This app also has xPL built in, so its posts can be event driven, based on what xPL messages it sees flying by. Since it has its own scripting engine, I can keep its code out of the normal HA code, so it doesn't pollute it or interfere with more critical operations. I'm in the process of figuring out what info to post and what not to post: "alarm armed, nobody home" ;) so what shows up on the feed will evolve over time. Check it out and don't forget to "like" it.

Friday, May 20, 2011

CR48 Bits

Just some random thoughts about my CR48

- Google chat is slow. It pops out a talk gadget every time you start a conversation. It is cool when someone IMs you and you're not in your gmail window, the talk gadget window pops up, but when starting a conversation it takes 4-5 seconds for the window to appear. Defeats the purpose of "instant" messaging.
- 1280x800 is good enough resolution for me.
- Battery life is good. I've gotten almost 8 hours a charge.
- The keyboard has a nice feel - Macbook like I'm told. I don't know about that as I haven't used an Apple computer since the Apple ][+ I had as a kid, although I'm open to receiving a free one from Apple to test for them. ;)
- It has an irritating automatic screen brightness feature, that adjusts the backlight based on the current lighting conditions. On an overcast day where the sun comes & goes, the backlight brightness keeps changing - a bit annoying.
- The screen doesn't fold back far enough.
- 2 years of free 100MB/month Verizon 3G data. I have more reasons to take this everywhere.
- The remote desktop app has no way of switching back to the CrOS stuff so I keep a Google chat window minimized all the time. When I hover over the chat window then I can Alt-Tab back to CrOS.

Saturday, May 7, 2011

Google Chrome Revitalizes a Netbook

Our old Acer Aspire One netbook has been sitting around idle the last few months after our kids got really into Club Penguin. Even though I loaded it up with Ubuntu Notebook Remix some months ago, the bundled Firefox browser and Flash player really sucked. The Club Penguin site wouldn't even load. Today, I installed the latest version of Chrome on the netbook and was surprised how all of a sudden everything worked! My daughter was so happy as was my wife, who's laptop won't be hijacked anymore for penguin adventures. Chrome still gets laggy, which is more a limitation of the slow Atom N270 processor, the 512MB of RAM and the pokey 8GB SSD, but it really blows Firefox away.

On a side note, my CR48, aka ChromeOS Notebook, arrived a couple weeks ago courtesy of Google. I'm probably one of the last recipients in their Chrome pilot program. I've been playing with it on & off since then. The first thing I did after charging it was switch it over to developer's mode and load it up with a precompiled binary of a remote desktop client. I needed this so I could access my servers, which allowed me to test the CR48 exclusively for a few days without using my regular notebook. It's pretty impressive so far, but still a work in progress. At times, it bogs down due to the number of open tabs and possibly what extensions are running. Hopefully, I'll have time to write more detailed thoughts on it after I play with it more.

Sunday, May 1, 2011

OBI 110 and VOIP Fun

I've always been a late adopter with VOIP technologies and never used it until we switched over to MagicJack a couple years ago. I never even played with Asterisk until last November, when I added it to a hacked Dockstar. The main reason was to set up an in house intercom system using a Linksys PAP2T and Blink softphones on my wife and my laptops. When the OBI 110 came out, I immediately thought it was a neat new toy and so did others. I finally got one a couple weeks ago.

I initially configured it to use the MagicJack for all outgoing calls and incoming calls would come via MagicJack, Sipgate and Google Voice (via forwarding to the Sipgate number). This weekend, I configured the OBI to be a gateway for the Asterisk server for outgoing calls. Now, the kids' phones on the PAP2T, can not only call in-house numbers, but they can make outgoing calls through the MagicJack. Our Blink softphones can do the same. I'm thinking about having incoming calls also forwarded to the Blink clients as well.

I had configured Asterisk to allow outgoing calls from Blink via the Google Voice hacks, but it was always kludgy and sometimes didn't work. This seems to work nicely so far.



Wednesday, April 6, 2011

OSMO to the Rescue

We've had a Roomba practically from the day they came out. We got it from Sharper Image with a 3 year extended warranty (which typically aren't worth it). Within a couple years, though, it died and with the warranty, we got a brand new Roomba Discovery. The warranty paid for itself in this case. The last few years, however, it has seen little use as it developed a problem where it makes the "uh-oh sound" + 4 beeps after spinning in circles. Recently, I decided to Google the problem, and discovered it's a well known issue with an easy fix. iRobot will send you a device called OSMO, which plugs into the Roomba's serial port, and does some reprogramming. Not only did it fix the problem, but it appears to have upgraded the programming all together and our Roomba works better than ever. iRobot is a pretty awesome company to provide support for an out of warranty, 6 year old Roomba!

Monday, April 4, 2011

SageTV 7 Upgrade

Just installed the SageTV 7 upgrade over the weekend and it was painless. I made a backup of my SageTV 6 directory, then removed the plugins from the original JARs directory. Then I installed version 7 right over the original install. It kept all the settings and recordings. Finally, I installed the various plugins and it is considerably easier to do in this version. The UI is much snappier on the HD200 extenders as well. Also, my xPLSage app worked flawlessly with the latest SageTCPServer plugin. I did do a few tweaks to it and solved the xP crashing issue, so it should be ready for release soon.

Monday, March 28, 2011

xPL SageTV Plug "out"

This weekend, I started work on a new mechanism for controlling SageTV via xPL since my original Java based plugin no longer functions on Win7. It's a plug "out" instead of a plug-in since it runs outside of SageTV as a separate app. It communicates via TCP sockets with the SageTCPServer plugin. I've got it working with multiple clients and also forwarding osd.basic messages to the SageInfoPopup plugin as my old plugin did. It seems to work well so far, however, oddly, it crashes on XP but doesn't on Win7. I'm going to continue testing for a while before releasing it.