Tuesday, December 28, 2010

Most Downloaded of 2010

It's not quite year end, but close enough. So following on last year's list, here's this year's version:

1. EventGhost xPL Plugin - 161 times
2. BlueTracker - 110
3. BlueTrackerScript - 74
4. xScript - 38
5. t2mp3 - 35
6. xPLWebControl - 33
7. xPLSerial - 26
8. xPLGameport2 - 23
9. Blabber - 20
10. xPLSys - 15
10. xPL Plugin for SageTV6 - 15

The EventGhost xPL plugin is still the top download of the year...by far, but the gap is considerably smaller between it and #2 on the list. Bluetooth tracking was very popular this year with the xPL version of BlueTracker #2 and the scripting version #3. The rest of the list were far behind the top 3. This year's top 10 list totaled over 500 downloads compared to 289 for last year's list. It's good to see we've reached more users this year, and if you've found our software useful, click the donate button on our software page. Thanks for your support!

Wednesday, December 15, 2010

New Toy: Insignia Infocast

It's not really that new, as I've had one for a week already but haven't gotten around to blogging about it. The Infocast is a Chumby based device with an 8" color touchscreen. It's Linux based and it has all the potential to be a great hacking device, potentially replacing our 3Com Audreys that have served us well for a decade now. There is already a hack to get a browser running, but it needs work. There are supposed efforts to get Android running on it as well. We'll see how it develops. I got 2 at the recent $79 sale price in anticipation.

Saturday, December 4, 2010

More Asterisk Fun

I put a phone in each kid's room connected to the PAP2T, and I set up Blink softphones on my & my wife's laptops (which are almost always on when we're home). Now we have a simple intercom system running. The kids (7 & 9) are really enjoying the novelty of having phones in their rooms. Now, I just need a softphone out in the garage. I have a Dockstar out in the garage that I'm using for a special automation project which I'll discuss when it's further along. Since it's a headless client, I need a command-line softphone for Linux. I figure I'd control it with a gamepad, using the buttons to dial preset numbers and a USB soundcard for the mic & speaker.

Saturday, November 27, 2010

Dockstar Now a PBX

I just finished configuring dock #1 to be a PBX. The recently acquired Linksys PAP2T has 2 phone jacks, and each is configured as an extension in Asterisk. I used this link to configure it to use Sipgate (free incoming calls) as the incoming call provider. Google Voice is used for dialing out. It does this by calling the number that was dialed, then calling the configured incoming number (Sipgate) and connecting the two. All for the price of free. This isn't going to be our main landline since we already have MagicJack. Instead it's going to be used mainly as an in-house intercom system. So, now dock #1 runs Asterisk, Motion, bluetooth proximity and contact closure over IP.

Friday, November 26, 2010

Dockstar Surveillance

I finally stopped being lazy and finished up deploying 2 Dockstars. The first one has been set to replace a HP T5700 thin client that was mainly being used with xPLGameport for contact closure over IP. I connected the T5700's gameport to the Dockstar and it was plug & play. It's also running as a bluetooth proximity sensor and a webcam interface using the cheap (and often hated) $9 EasyCap USB video adapter which I got from Amazon (see below). I used these drivers and installation was a breeze. I'm using Motion to provide a webcam interface. Right now, it's connected to one of my old, unused surveillance cameras. Finally, I found a Linksys PAP2T on Craiglist for $15. I've installed Asterisk on this dock and want to use it to set up an intercom so we can call the kids from downstairs. I may do some VOIP integration. We'll see how far I get with that.

The 2nd dock is also being used as a webcam with Motion and another old camera. This one I'm actually using the motion detection to generate events when an area has activity. Motion divides a screen into 9 zones and I've specified 2 of them. It's sending out xPL messages with xPL Perl's xpl-sender app. It works really well, much better than the motion sensor I have in that location, which picks up bushes blowing in the wind. It also has a bluetooth dongle.

I also picked up a couple WRT54G routers from Craigslist, loaded them with Tomato firmware and I'm using them as bridges for the cheap Squeezeboxes I found earlier. Since the gen 1 squeezeboxes don't support WPA, I needed the bridges so I wouldn't have to run a router with WEP "security".

Finally, there is no Black Friday aftermath this year for me. Surprisingly, there really wasn't anything I wanted to get. It's the first time in many years where I didn't get up at 3AM to do some online shopping or hit stores in the wee hours of the morning. I do want to upgrade our cellphones, but there's no hurry. Plus, I'm holding out for some decent Android tablets. The Pandigital Novel got returned again as I just couldn't stand how slow it was, even for $80.

Sunday, November 7, 2010

Dockstar USB Sound Tip

Just wanted to add a quick post with some of the problems I had with getting a USB soundcard working reliably after rebooting the dock. Make sure to install alsa-base and the supporting modules using apt-get. Also, in /etc/modprobe.d/alsa-base.conf, look for the line that says options snd-usb-audio index and change its value from -2 to -1. This makes sure it will assign the USB device as soundcard 1. Otherwise, you may have issues with applications like mpg123 using it. Another thing that may cause problems for you is a missing /dev/dsp. Squeezeslave needs this to work. I found a site that said to do apt-get install oss-compat. I did this, the install won't work, but /dev/dsp gets created. Hope this helps some avoid headaches getting sound working.

Tuesday, November 2, 2010

My Now Daily Dockstar Update

I've now gotten Bluetooth proximity working. It appears the xPL-bluetooth code isn't right so I've made my own changes and now it works. Also, after installing mpg123, the dock is now an MP3 player. It was using about 50% of the CPU and sounded pretty bad until I found this post. I made the suggested changes and the CPU utilization dropped to 2-3% and it sounds just fine. I also installed the Squeezebox emulator Squeezeslave (there is a native binary) and it works great. I can stream last.fm to it, but Pandora refuses to stream to Squeezeslave (a old, known issue).

Monday, November 1, 2010

Voice Recognition on the Dockstar??

Yup. It works too! I've connected an old USB SoundBlaster to the Dockstar and installed Sphinx, an open source VR program. Installation was straight forward and worked right away. VR is a little much for the Dockstar, especially long sentences, which can peg the CPU at nearly 100% for a few seconds. Simple commands, however, work fairly well. Hopefully, I can find out how to restrict the subset of VR commands to reduce the load on the CPU. In any case, it's a great start.

However, I didn't have much luck getting bluetooth proximity working with xpl-perl's xpl-bluetooth. My testing with webcams was mixed. I have 1 UVC camera and 2 old Logitechs and none of them would come up using mjpg-streamer and one of the Logitechs worked with motion.

I ended up ordering 2 more Dockstars. In the meantime, I'm going to keep playing around with Sphinx. Oh, and how about those World Series Champion San Francisco Giants!

Sunday, October 31, 2010

xPL Dockstar

Installing xPL-Perl was uneventful. I wanted to install the Linux::Joystick package for Perl, but that required make and some other Linux tools. That wasn't much of a problem since using apt-get to install everything worked flawlessly. Installation was quick and the joystick package compiled fairly fast. Even installing the full Emacs distribution was easy. This is unlike my experience with the Linksys NSLU2 (aka slug), which has a processor that's 4.5 times slower than the Dock. With Linux::Joystick installed, a cheap $5 USB gamepad from DealExtreme and a free 4GB flash drive, I now have a $30, 10 input IP based contact closure device. Best of all, it uses only 3 watts of power. I am contemplating replacing my 2 Slugs with Docks and maybe getting a few more to have just in case I find something to use them for - so you better buy some before I do! ;)

Saturday, October 30, 2010

New Toy - Seagate Dockstar

Just received the Seagate Dockstar that I got for $25 shipped. It's another one of those devices looking for a problem. Not exactly sure what I'm going to use it for, but it's getting hacked first. I've installed Debian on it via this method. Obviously, the first thing I'm going to try to get running on it is xPL and xPL-Perl looks like the way to go.

I also just received a Pandigital Novel 7" EReader/Android tablet. This is my second go-round with this device. I did buy it when it first came out and played around with it, but ultimately returned it as it's a bit sluggish. Since then, there's been a lot of work done on custom firmware mods that may make it a little more bearable. So, that's something I plan on testing out on it. I got it from Kohl's for about $85+tax.

Sunday, October 24, 2010

xPLGMail Now Sends Mail

The next logical evolution for xPLGMail is to expand from checking to sending email. Version 1.1 does just this and is available now. Now, you don't need to install an SSL gateway like Stunnel to send short email messages through GMail - just issue an xPL command to xPLGMail and it takes care of the rest. More details available here.

Saturday, October 16, 2010

xPLGPower - Interface to Google powermeter Released

I've released xPLGPower, which lets you upload your power measurements to Google powermeter using simple xPL control.basic messages. Check it out and donate if you like it :)

Tuesday, October 12, 2010

xPLGMail Application Released

I had originally hacked up a Python script to use as a GMail notifier. I finally decided to write an app to do it instead. The app will check up to 5 accounts. Version 1.0 is available here.

Saturday, October 9, 2010

Consolidation and Clean Up

It's been about 10 years since I started using the first beta copies of StarCOM with our home automation system. That was when I learned how to build ASP pages to communicate with StarCOM. About 3 years ago, I started building our floorplan GUI using AJAX and MySQL, which required running Apache web server. So the last few years I've had Apache and IIS running, but this week, I decided it's time to get rid of the ASP stuff. I've been converting 10 years worth of ASP pages (it's not really that much) over to CGIs running on Apache. Last night, I finished converting all the heavily used ASP pages and pulled the plug on IIS. As a result, the server gained about 100-150 MB of free RAM in addition to a little more stability and simplicity.

Sunday, September 26, 2010

A Productive Weekend Home Sick

I spent the weekend cooped up inside with a cold, but I actually got some things done. The wife's laptop was hit by a drive-by virus, so I took the drastic measure of installing Ubuntu on it. She doesn't actually use any Windows apps and all her docs are done on Google Docs anyway. I set up all her Windows shares with CIFS and installed her printer driver and that's all she needs. She seems happy with it. I liked it so much I loaded my old Acer Aspire One netbook with Ubuntu Netbook Remix. The kids' netbook has already been running a flavor of Ubuntu - they've been using Jolicloud on their Dell Mini 10. So it was easy to add the printer driver and network shares to their machine. I don't really like Jolicloud a whole lot, especially since version 1.0 seems to have slowed everything down. I would have preferred Ubuntu Netbook Remix, but for some reason, it can't deal with the Dell Mini's graphics chip. Jolicloud works flawlessly with the Mini's graphics and even supports an external monitor. Couldn't do that with the Remix.

Monday, September 20, 2010

xPLGVoice is Out

Ok, I've decided to toss it to the masses. Go get it!

Quick Post - xPLGVoice Preview

Here's a quick screenshot of my new xPLGVoice app. It allows control of some aspects of Google Voice via xPL messages - specifically, sending SMS, initiating calls and enabling/disabling your forwarding numbers. I hope to release it soon.

Saturday, September 18, 2010

BlueBlabber Released

The first release of our hybrid bluetooth tracker with IM is available here. Follow the link for more information.

Tuesday, September 14, 2010

BlueBlabber Coming

I just wanted to post an update on something new I'm working on called BlueBlabber. I tweeted about it earlier today. It's a bluetooth proximity app like BlueTracker and BlueTrackerScript. BlueBlabber mixes BlueTracker and Blabber together, removing the xPL component, and communicating via IM.

I built this to use at work. At my previous job, I used BlueTrackerScript and scripted up HTTP GETs to my webserver - one URL for when it detects my phone and another for when my phone disappears. I figured I'd try out this method since I've been IMing status between homes. I've been tweaking it the last couple days and I should be releasing it shortly.

Monday, September 13, 2010

EventGhost Disappearing From Our System

Given my latest effort to bridge our remote network via IM, I've started scaling back our usage of EventGhost on the remote thin client and our HA server. This weekend, I started converting the automation code on the remote thin client over to xScript. I've had it running overnight and it's been working so well I've shutdown EG. It hasn't been running on the HA server for a few weeks since I extracted the network sender/receiver plugins to Python scripts. The server actually seems more stable. I've always suspected EG of having memory leaks that force me to reboot the HA server and remote thin client periodically. At one point, I had 3 machines running EG and now I don't have any. EG is also facing an uncertain future as the developer is planning to stop work on it, and now seems like a good time to transition away. This also means I will probably stop maintaining the xPL plugin. There aren't any outstanding problems with it and I haven't touched it in over a year, so it's not a big deal.

Wednesday, September 8, 2010

Bridging xPL Revisited

I originally talked about bridging xPL across the Internet using EventGhost in this post. More recently, I wrote about pulling the sender/receiver plugins out of EventGhost here. I did that but haven't gotten around to cleaning up the code. The problem with either of solution is that it's not very secure, so I've always tunneled them through SSH. If either Internet connection goes down, I have to manually restart the SSH session (since leaving my password and keys lying around so I can automate the login probably isn't a good idea).

Instead, I've decided to bridge the connection using IM with our Blabber app. I just set up 2 GMail accounts, one for each house, and added one to the other's chat list and fired up the local and remote Blabber apps. I wrote a script to capture certain xPL messages and embed them in an xPL message sent to Blabber. On the receiving end, the xPL message generated by Blabber is parsed out in my xPLSCU scripting engine.

The big advantage is there's no need to manually set up SSH tunnels as the messages go over Google's chat server encrypted with TLS. If the link goes down, Blabber will just keep trying to send messages until the link comes back up. No manual intervention necessary. I've had it running for a day now and it seems to be working out well. I've already had the remote ISP connection go down for about an hour, and when the cable modem was automatically restarted, the Blabber conversations continued on their own. Very cool! For added security, you can also encode your messages before sending them to Blabber.

Thursday, August 19, 2010

More Tracking

I continue to tweak the map resulting from the tracking info (see my updated video). I implemented a suggestion in this thread to grab the "address" corresponding to the longitude/latitude of a sample. That now shows up as the location when mousing over a marker. The mouseover kicks off an AJAX fetch of the geolocation info from Google Maps, which processes the JSON data and fills the popup. Clicking the marker brings updates the popup to show 3 nearby items and clicking it again brings up the original data.

A major change is I'm now using the Google Maps direction service and renderer to do the actual distance calculations between two markers and to draw the line connecting them. This ends up being a lot more accurate than my original straight line calculation and, of course, the line actually follows the road traveled. The more accurate distance calculation means a better speed estimate for that interval as well.

Right now, the code is a disaster, but I plan on putting it on my website after I clean it up.

Tuesday, August 17, 2010

Google Latitude Tracking Live

Today, I've fully deployed our tracking scheme using Google Latitude. My wife and kids have started their road trip and I'm tracking their progress. Here's how things look so far.

Using the Latitude data, I can determine their position in the past 2 minutes (it appears to update only every 2 minutes). Using two points and their timestamps, I can estimate the approximate speed they were driving between the two points. As I mentioned in a previous post, I'm storing the locations in a MySQL table and through AJAX, I'm able to update a map with their path and show information bubbles over each point with some information, which is what you see in the video linked above. You can see an occasional large gap between points as they move in & out of 3G coverage, but it's not too bad since we don't use AT&T. HA!

Sunday, August 15, 2010

Jobless Still...But "Work" Continues

The deal with the early stage startup (which recently closed a Series A round from 2 firms) fell through. It left a bad taste in my mouth. They dragged the whole process out over a week only to email me this: "Thanks for taking the time to speak to us. Unfortunately, your background is not a good fit for the current position we have open." It's odd they came to this conclusion after I nailed the technical screenings with their engineers, and they thought I was good enough to talk with the VP of Engineering and the CTO. They even asked for my references, but in the ensuing 5 days, they never called a single one. I also had an inside person there who said everyone was impressed by me and it was pretty much a done deal. However, their Director of ASICs admitted to having difficulty with the compensation package given where I was at. After doing a little research on my own, it looked like I would be offered a 25% cut. So, to save face and not be called cheap, they chose to say my background was not a good fit rather than saying they wasted everyone's time because they can't afford me. What a joke.

Instead of long hours at the early stage startup with a menial salary, I've accepted a consulting gig at a large, public company. I won't have to cut back on my gadget spending and I'll only work 40 hour weeks, leaving plenty of time for my own projects.

On that note, my Google Latitude project is progressing nicely. Still, not yet at the point to post screencaps, etc. Another project I started yesterday was creating an xPL bridge in Python. I had already created a rudimentary way to link xPL networks across the Internet using EventGhost and the Network Sender & Receiver plugins. I'm still using EG at our other house, but I don't really need to use EG on my HA server, so I stripped out the Network Sender & Receiver plugins and made them into standalone Python scripts. I've also gone one step further and made the receiver script capable of re-sending the bridged xPL messages as if they were sent by the original source. Now, I can fully view the remote xPL network and configure the remote apps as if they were local. There's still a lot of tweaking and clean up to do, and I am pondering building a C# xPL bridge just to make things less of a hack. The thing is, I still use EG on the remote network and the thin client it runs on is rather limited, so I don't really want to add another app on that machine.

Monday, August 9, 2010

August Already?? and Google Latitiude

I was figuring I'd spend a lot of time on the house and the automation system while I was job hunting, but it didn't turn out that way. It's been about 6 weeks and I really haven't done a whole lot. I did finish up most of the trim for the flooring, but I had to stop and find some flexible quarter-round to go along the bottom of our staircase (which has a full 180 degree curve on one side). I did pick some up from Trimster, but I haven't thought much about how to stain it, so it's sitting around.

As for automation stuff, I've been revamping our AJAX based floorplan GUI. Given all my free time, I've been reading up on CSS3 and jQuery and have completely re-written large portions of the code. My HTML page used to have markup, JavaScript and CSS all mixed together, but now I've gotten everything updated to typical coding standards, with the HTML page containing only the markup, and the CSS and .js files have grown significantly. It's definitely much neater to read now and should make maintaining and updating it easier as well. I figure at some point, I will migrate it to HTML5 and that will be another major overhaul, but for now, I'm very pleased with the new CSS and jQuery things I've learned.

When Google Latitude first came out, I put a placeholder at the bottom here, but had so many things going on, I forgot all about it. This thread reminded me about Latitude tracking and with the wife planning a 5-day roadtrip with a girlfriend, I finally decided to get off my butt and implement some tracking (with her permission of course! :)

First off, we need to get a public badge for Latitude - you can find out more here. We already have Google Maps on our cells so we just need to enable Latitude on the app. Next, we need an automatic trigger to start Latitude tracking. We use RFID tags in the cars and bluetooth on our phones for tracking, so when someone's phone and a car are gone, we can start the Latitude tracker.

The tracker is just a perl script that periodically fetches the Latitude badge's JSON feed and parses its information (latitude, longitude, timestamp, reverse geocode info). That information is stored in a MySQL table that is reset for every new trip. Finally, I've written an AJAX page that fetches the location data from MySQL via PHP and shows each data point on Google Maps with a line connecting the points. I plan to post more details as I debug this new feature.

Finally, I am about to close a deal to join an early stage startup. The company is in a very promising space and is at the right stage for me to be able to contribute a great deal to the product development. However, early stage equals long hours, but I'm ready for another startup. HA stuff will just have to be put on the backburner...

Wednesday, July 7, 2010

Charmed Quark Controller Going Open Source

Dean Roddey, the creator of CQC, has thrown in the towel, but is planning on releasing CQC as open source. It's very unfortunate as CQC is an incredibly powerful (and incredibly complex) software package. I am looking forward to checking it out for building touchscreen interfaces, but I really like the platform independence of my AJAX GUI. I will, however, try to add xPL support to CQC. In any case, it makes you wonder how the makers of HAL can possibly survive.

Update: The link above has been updated by Dean. He is no longer planning on open sourcing CQC...

Friday, June 18, 2010

I Am Still Here

No, I have not fallen off the face of the earth. I've been working on some upgrades, but nothing related to automation. I've been replacing our downstairs carpet with laminate flooring, and while that's been going on, the wife & kids have been helping me repainting too. I know, there are hardwood snobs out there who think laminate flooring is like linoleum. Granted it's not hardwood, but we already have engineered hardwood in the kitchen & nook areas, and it's been gouged to death by our previous and current dog. I'm not going to pay $20,000 to have the rest of the house done in hardwood, only to see it gouged up in days.

I've finished about 700 square feet and I'm down to the last 100-150 square feet, but have been delayed by the uneveness of the concrete subfloor. So, I've been using leveling compound on the floor, and it's been a 2 week hit to my project. I hope to finish it up this weekend.

One thing I discovered when looking into laminate flooring is that they all tend to have formaldehyde, which will emit gas (off-gas) after the floor is installed. One of the reasons I ripped out the carpet is that my son has asthma, so anything making the air quality worse isn't going to work. I discovered DuPont's RealTouch laminate flooring, which is GreenGuard certified as having a minimal impact on indoor air quality. It's held up great so far even with our Australian Shepherd racing around the house with the kids. Not a scratch or gouge.

We also went with GreenGuard certified paint, Dutch Boy Refresh. Again, this means it will emit a minimal amount of noxious gasses while it dries, while at the same time, minimizing noxious gasses in the bathroom ;)

Update 6/24/10
Finally, I was laid off yesterday as expected. As soon as I walked in, I saw facilities and HR people in the building, so I went straight to packing up the last of my stuff. It's good timing since the weather's great, I can spend time with my kids and besides, I've got a floor to finish and walls to paint.

Friday, May 21, 2010

Goodbye AT&T You SUCK

At our 2nd house, we've had AT&T DSL and phone for 4 years. It has steadily gone up in price every year and the service still sucked just as bad as the year before. Three and a half years ago, they raised the price for caller ID to $8/month from an already inflated $6/month. That was practically as much as the phone service itself cost. A little over 2 years ago, they jacked up the cost of DSL by 25%. More increases later, our latest bill for 1.5 Mbps service hit $28/month and with the land line, the total ended up over $43/month.

I gave them a call to see if they had any promotions for existing customers. Nope. Then I asked to cancel the landline and run naked DSL. The customer service rep tried her best to sell a load of bullshit. She said "Oh don't do that. This is what all of us here have - the landline and the DSL." "Well, to do that we'd have to disconnect your DSL and landline and we're not sure if we'd be able to reconnect your DSL to the same circuit." What the f*ck does that mean? Do they have some 5 year old kid pulling and connecting DSL lines for them? She tried to discourage that option. I said "So I'd be better off just canceling all my AT&T services.", to which she replied "No, you're better off leaving everything alone."

I gave AT&T the boot yesterday after we got Comcast 12Mbps service. To replace the landline, I picked up a second Magic Jack. Of course, I'm just trading one evil (AT&T) for another (Comcast), but then paying $35/month to run 1.5Mbps naked DSL would be just stupid - if AT&T would have actually been able to figure out how to connect it in the first place.

Friday, April 30, 2010

First Full Month of Solar

As April ends, I can now assess the results of our first full month of having solar power. Specifically, I was very interested to see if my projections for solar production were even close. If you remember, I wrote this blog entry back in October 2009 as I was trying to determine how big a system to get, what sort of output I could expect and what my savings would be. I created this Google Docs spreadsheet to help with all these calculations.

For the month of April, the spreadsheet predicted for the 3.68kW system we got, production of 513 kWH (this actually comes from the PVWatt tool mentioned in the spreadsheet). It didn't look like we'd get there as the 27th and 28th were overcast and rainy days, but the last 2 days of April turned in the highest production so far. Actual production came in at 538 kWH. Based on this, it looks like the analysis I did in the spreadsheet turned out very accurate and as a result, I'm very pleased with our purchase so far.

Monday, April 19, 2010

Dog Sitters: Don't Shortchange Customers With Automated Homes

We recently went on vacation for a few days and had a dog sitter/walker take care of our dog while we were gone. We had the sitter visit our dog during the day to walk, play with, feed and clean up after him. We chose the duration of the visits and were billed accordingly. To get to our dog, the sitter had to open the side gate, which of course, is monitored and logged by our system. I used that information to gauge when a visit started and when it ended. Our security cameras, which are recorded, could also provide an extra confirmation if needed.

Unfortunately, the results are not good. There was not a single visit where the sitter stayed for the duration we paid.

Visit #1: 18% short
Visit #2: 50% short!
Visit #3: 33% short
Visit #4: 26% short
Visit #5: 23% short
Visit #6: 28% short

Overall, we were billed for 28% more than the actual number of minutes. My wife and I were stunned by how the sitter consistently shortchanged our pooch and not just by a couple minutes. For example, a 30 minute visit was really only 15 minutes and a 1 hour visit was cut short by 20 minutes. All those 5 star reviews on Yelp must have been written by friends or completely clueless people (AKA normal people without automation systems).

Our dog is a very important part of our family, and it bothers us more that he was shortchanged on attention than us being ripped off. Needless to say, rather than confront the sitter, we are going to cut our losses and find a new service (and put up a review on Yelp). This brings up the question, is it really possible to find a sitter who actually stays for the agreed upon durations? You are really at the whim of the sitter's honesty and it seems really easy to cheat. How do you guarantee you get what you pay for?

Thursday, April 1, 2010

Overcast Day Has Greater Solar Intensity???

It seems counter-intuitive, yet on a cloudless, sunny day, our panels peaked at a lower electricity output than on a day with overcast. In fact, on the cloudy day, our panels maxed out the inverter, causing it to clip. See the graph below where I combined the charts of 2 different days.

The red line shows the nice production curve on a cloudless day, but the green line shows the output on a cloudy day. The green line maxed out earlier in the day and even later in the day than the red line.

The sunlight hitting earth must be reflecting back up to the sky, but the overcast is causing it to reflect back down again. This results in more solar energy hitting the panels. I would assume that the glass over the panels is like this as well - allowing the sunlight to pass, and some light that reflects off the panels would get reflected back to the panels by the glass.

Tuesday, March 30, 2010

Waiting for the Axe to Fall

It's been a quiet several weeks. There have been rampant rumors at work that the company is planning on shuttering my group. It's something that we've been expecting at work for the last 3-6 months, but as quarter end nears, it's possible that it may be right around the corner. So I've been a little preoccupied to do any HA stuff other than mindlessly monitoring the production of our solar panels. According to the latest rumors, the axe was to fall last Friday, but upper management had to delay it since they're waiting for our group to finish up some work before they'd be comfortable canning us all. As I sit here contemplating impending joblessness, I wonder what my next career move will be. I'm an ASIC design and verification engineer, but I'm burnt out on it and a change of career may be in the cards. I've got an unused MBA, some .NET programming skills and experience with AJAX, PHP and MySQL, so I have some options to explore. In the meantime, feel free to donate! ;).

Wednesday, March 17, 2010

xPLBattWatch - A Battery Charge Monitor

This is the first release of xPLBattWatch. This app is used to monitor the battery level and charge status of a laptop. It issues sensor.basic messages based on changes in the charge level and status. It may be a little rough, but I thought I'd throw this out there and let you play with it. More details and download here.

Friday, March 12, 2010

Solar Array Powered Up and Some Graphs

The installer powered on the solar array on Tuesday after the inspection. After he left, I installed current sensors for the solar breakers and ran those along Cat-5 back to the ECM-1240. I was debugging the charting and got it pretty much sorted out by Wednesday night. Here's the first few RRDTool graphs from Thursday.

You can see it generated nearly 21 kWH yesterday. I'm really happy with that as we typically use 22-25 kWH/day. I didn't expect to get that much production in March. Does this mean the assumptions I made in my Solar Spreadsheet may have been a little pessimistic? There's still a lot of rain & overcast in March (of which we're seeing today), so it will probably average out. We'll have to wait for April to get a good full month to compare.

With a southeast facing roof, you can see we catch the morning sun very early. The array woke up around 6:22AM and peaked around 11AM. Once the sun passed over the top of the roof around noon, production started to drop and around 2PM it started to decline rapidly. By then, it produced about 80% of the total for the day. I wish I had room on the west facing roof to catch the afternoon sun, but it would only fit maybe 4 panels - good for another 1kW. Maybe when we get an EV ;) Production stopped almost exactly at 6PM. You can see some of the spikes in production as the sun was behind some clouds.

This is just a net usage graph. Solar production for the day caught up to our daily usage by noon. Between 3-4PM, production fell below our usage and about 9PM, all our credits were used up. For yesterday, we basically paid the utility for electricity for the 3 hours from 9PM-12AM. Pretty cool.

Sunday, March 7, 2010

xPLWebControl Released

I released an xPL interface for CAI's WebControl. The app communicates with the WebControl via its web interface since it has no other means of control. You can read more about it and download it here.

Friday, March 5, 2010

New Toy: CAI WebControl and Random Updates

So I finally broke down a bought a WebControl device. It's a network enabled IO device that's been discussed heavily at CT and HS message boards. I got it from this seller on eBay. I'm surprised it actually powers on. It was shipped in a USPS Flat Rate Priority envelope. The device itself was in a small bubble pack pouch - just a single layer of bubble pack to protect the sharp corners of the device's components. The corners of the ethernet jack poked through the bubble pack, puncturing the envelope in several places. For $8.71 in shipping, is it too much to ask for 2 or 3 layers of bubble pack????

Anyway, I powered it on, assigned it a static IP address and new login info, but didn't get much further than that. I hope to test out the digital IO and 1-Wire interface this weekend before I'll believe it's undamaged. I have no idea what I'm going to use it for. I am planning on building an xPL app to interface to it, but I'm not in any big hurry. Still feeling a bit burned out on HA.

It's been 10 days since the solar installation was completed and I haven't heard from the city about inspections nor has the utility swapped out my meter. It was frustrating waiting nearly 4 months from signing the contract to the installation (due to weather & backlog), but this is even more frustrating because I just want to flip the switch!

This week I did update xPLTweet and Jab2Twit to use OAUTH for Twitter authentication. That way there's no stored username & password and has the added benefit of my apps showing up as sources for tweets :)

Thursday, February 25, 2010

Solar Panels Installed!

Here is this final product - a Sunny Boy inverter and 16 230W Sharp panels. Installation took only 1 1/2 days. It's all ready to go, just waiting on the utility to swap out the meter and for the city inspector.

Saturday, February 20, 2010

ChromeOS on Acer Aspire Netbook

Just tried out this build of ChromeOS. It boots fast, but doesn't work well with my netbook. The trackpad barely tracks and the tap to click trackpad feature doesn't work. ChromeOS really is just the web, but I need Remote Desktop to access my servers. I see no reason why ChromeOS can't have an RDP client - my Nokia N800 does. I liked Jolicloud on the netbook better, as it's really more of an OS than ChromeOS.

Monday, February 15, 2010


I just bought a DLink DNS-321 NAS. I'm hoping to use this for SageTV recordings, which are currently stored on the media server. I want to do this since I hibernate the SageTV server a lot, but would like the recordings available.

I'm going to be evaluating whether or not I can dump 4 HDHomerun streams to it while playing from 2 HD200s. I'm guessing no, but it's going to be an interesting experiment. While I was copying the existing recordings over, the maximum bandwidth I was able to achieve was 100 Mbps over gigabit links. An existing 1 hour HD recording took 5.5 GB, so that's about 12.5 Mbps. Four streams would be half of the maximum bandwidth I've seen and that doesn't include playback. If it doesn't work out, I play on using it for backups.

Friday, February 12, 2010

Dog Feeder Demo

There was a recent thread on Cocoontech about pet related automation and this is a rehash of my post there about our automated pet feeder. Here's a snippet from a screencast I did that demo'd some parts of our HA system. This clip shows the automated dog feeder and how it's controlled from our GUI, including calling our dog over using TTS and watching the result via a camera popup. (The TTS audio is dubbed in for effect - it's what was pushed out of the garage MP3 player to the backyard speakers.)

Thursday, February 11, 2010

Jab2Twit - IM your Tweets

I've just released Jab2Twit, a small app that shows up in your chat client friends list, and lets you IM your tweets. Read more and get it here.

Friday, January 29, 2010

A GUI Scripting Engine

This is very cool. Sikuli is a scripting engine that allows you to automate almost any interaction with a GUI. It can find visual elements on your screen given screen captures of what you're looking for.

Wednesday, January 27, 2010

iPad Thoughts

I don't use Apple products, but I was interested in their iPad announcement as I'm eagerly waiting for cheap tablets to use as home automation control panels. I have to admit, the $500 starting price is a lot lower than I expected, but I don't think they really had any choice. CES was filled with so many cheap tablets that Apple didn't have much pricing room, even with the Apple premium. The low iPad price should mean a very competitive tablet market. I'm hoping for some $200ish tablets in the near future.

In the meantime, I haven't done much HA work lately. I tend to do stuff in spurts and this is one of those idle periods.