Sunday, February 27, 2011

Announcing xPLChumbyTTS

I've modified our xPLAudreyTTS application to send TTS to your Chumby or Insignia Infocast. Visit our website for details.

Saturday, February 26, 2011

Free Software...What's It Worth To You?

I've always benefited from free software, like MySQL, Apache and lots of smaller applications. I think I've done a good job of paying back either by donating time or money or with my own software. Lately, I've invested a lot of my free time into writing my Panel Builder app for the Chumby platform.

It wasn't easy. I had to learn how to write Actionscript, learn how to use FlashDevelop and scoured the 'Net for code bits to help me along. As part of my learning process I wrote a couple Chumby apps before I thought of doing Panel Builder. I kept those apps private for use on my own Infocasts, as I debated whether or not I wanted to deal with supporting a public app. After all, once an app is released, people are going to want help using it or want features added, especially, if it's free software. Obviously, that takes even more of my time.

I think Panel Builder is a great app and I'm really proud of my work. I've received a lot of positive feedback and thanks which has been great. It's nice to see people write about how they now have this super touch panel that cost so little (but don't forget the 100 hours of my time). I do think Panel Builder's also at a point where it has a substantial set of features that allows you to make some very complex & flexible control panels - all for free. I'm debating whether to stop adding new features and just doing bug fixes from now on.

However, there are more features I think that could go in to make Panel Builder even more useful. A few of them:
- Built in slideshow screensaver pulling photos off your network
- Updating status labels for displaying temperatures, song tracks, etc.
- Ability to add a webcam view to a screen

So, I'd like to pose a question. What would these or other new features be worth to people? The reason I ask is that nobody's ever clicked the Donate button on my website in the 3 years I've been developing software - no matter how many features requests I've done or how much help I've provided with my apps. If nobody voluntarily donates, would they donate to unlock features?

Let's try an experiment. For a $25 total in donations, I would add the feature to add a simple webcam view to Panel Builder. How will this work? You donate what you think this feature is worth. $1. $5. Whatever. When the total of donations reaches $25, I'll release an update to Panel Builder letting you put in a simple webcam viewer (The webcam must have a URL which will return an image when accessed). Want a different feature? Propose it in a comment below.

If there aren't any donations or comments, then I can assume Panel Builder is perfect the way it is and I can move on to other projects. There's obviously details to work out. Tell me what you think in the comments.

PS. I just wanted to add that my frustration really stems from users who ask for feature after feature and have offered nothing in return. I'm not talking about monetarily either. I really appreciate the efforts of others who've also been hacking the Infocast and revealing what they found about the file system, or system calls, or have given back by making their own wares available (not necessarily Infocast related either). Granted, not everyone's going to have the skills to do these things, but maybe they should find another way to contribute instead of just taking?

Tuesday, February 15, 2011

Another Chumby App Preview - Real Time Power Monitor

Here's a short video that shows an app I'm playing around with to graph the data from our Brultech ECM-1240 power monitor. The app uses the typical fetch of a URL with XML data that Panel Builder uses to bring data in. The URL actually points to a PHP script that queries a MySQL database for the power readings and returns it formatted in XML. It does this every second using the SetInterval construct in ActionScript.

The Brultech monitor has 7 channels and is interfaced to using a custom VBScript running in our xPLSerial app. The script takes care of the handshaking with the hardware and writes the channel data to our MySQL database. Another thing the script does is send the readings over xPL to our xPLGPower app, which connects to Google's PowerMeter.

Monday, February 14, 2011

Dear Google, Am I Really Getting A Cr-48?

I was one of the thousands of users of who were bombarded by sudden burst of emails from Google's Chrome Notebook Pilot program users group (detailed here.) I did apply for the pilot program months ago, but have not received a notebook...yet. I am hopeful, as I received an email from Google apologizing for onslaught of emails. A key sentence from the apology is If you are receiving this email and have not yet received a Cr-48, you should be hearing from us soon. Apparently, there is no notification if you were chosen, other than coming home one day to find UPS dumped a box on your porch with a Cr-48 inside. Surprises are nice, but c'mon Google, give us a tracking number so someone can be around to receive the item. I wonder how many Cr-48's have "walked off" their intended owner's porch. One would figure it'd be trivial for someone at Google to write a Python script to automatically email pilot program applicants a tracking number as their Cr-48 shipped.

Thursday, February 3, 2011

Learning How to Embed Graphics in Flash


This is just a quick post to show a screen I'm playing around with for the Infocast. The buttons are the free Black Glass buttons from GUI ja Board. I created the "HOME" button by using the blank button provided in the set and a little tinkering in GIMP. And the requisite short video.

Monday, January 31, 2011

Panel Builder for Insignia Infocast

I've completed my latest Chumby app called Panel Builder. It let's you create a control panel on your Infocast, specifying the layout, buttons, labels and actions in an XML file served by your own web server. This sample XML file shows the different aspects you can control. For example, you can create rectangular, circular, triangular and ellipsoid shaped buttons. You control the button color, border color, position, size, text label (size, color & position). You can also create just plain labels and have the option to add status graphics (to show on/off state perhaps?). Actions are defined in the XML file as well and use a PHP script on your server to issue commands. You specify the "root" URL in the XML file, then specify individual actions for each button by specifying the rest of the URL which gets appended to the root URL. You can see the XML file above for examples. A sample PHP script can be viewed here. The app is waiting to get through the Chumby approval process, so I will provide the link when it's available. In the meantime, here's a screenshot showing the different elements that can be created and a YouTube video of the sample screen in use (If you listen closely, you may hear some X10 light switches going clunk in the background in response to button presses).


If you find this useful, donations are greatly appreciated :)

Update: Panel Builder was just approved 2/1 and is now available from the Chumby website.

Sunday, January 16, 2011

First Flash App - SageTV Controller on Insignia Infocast

I've written my first Flash app. It's a remote control panel for SageTV and it runs natively on our Insignia Infocasts (which are Chumbies under the covers). It was a bit of work for me to understand Actionscript and figure out everything to make it work, but I've gotten to a point where I can show my progress. I started off using the Chumby2MPD sample code and the FlashDevelop package for the development. Each button on the app fetches a URL to a PHP script running on my Apache webserver, while passing it the command to be issued. The PHP script in turn issues an xPL message directed to the SageTV xPL plugin, which interprets the message and controls SageTV.

Here's a screenshot of the interface on the Infocast:

And here's a video of it in action.

Monday, January 10, 2011

Samsung Epic 4G, What I Don't Like

I've been using an HTC Touch Pro for the past 2+ years. I had unlocked it and installed WinMo 6.5, which gave it a nice mid-life kick. With our 2 year contract with Sprint over, the wife and I recently sprung for the Samsung Epic 4G and in the process, upgraded our Sprint SERO plans from $30/mo to the SERO Premium plan w/ 4G data at $50/mo. A big percentage increase in our monthly rate, but with 500 minutes and unlimited m2m/SMS/data/roaming data it's still $20-30 lower than plans from competing cell providers.

I've had it about a week and I figured it's time to write up my thoughts on this new toy. Let's start with the annoyances.

- Bluetooth visibility goes away after 2 minutes making bluetooth proximity all but useless. It's built into the kernel this way making it difficult to change. A big step down from WinMo.
- Voice commands over bluetooth does not exist - this was something I used *ALL* the time in WinMo. It is supposedly coming in Froyo, but Sprint & Samsung are really lagging on this. By the time Froyo hits for the Epic, it'll be time to upgrade to Gingerbread.
- In WinMo, you can turn off the 3G data connection after you're done with it, but it'll turn back on when you launch an app that needs it. In Android, if you turn off 3G data and you later start an app that needs it, it bitches about there not being a data connection. You have to manually enable data.
- When you make an appointment using the built-in calendar, it will default to the phone's calendar, which won't sync to your Google Calendar. You have to manually select that you want this appointment to be in your GCal for it to sync. Never had this problem with OggSync and WinMo. Why is the Google integration here so lame?
- On the other hand, Latitude binds to the Google account you set up your phone with and you have no option to change it, unless you re-setup your phone. This is lame. On WinMo, I used a different Google account for my Latitude tracking.
- I really miss PocketPutty, WinMo's Remote Desktop and Hamachi2 that I had running on the TouchPro. I have found alternatives to Putty and RDP, but they're just not as good.
- The TTS voice on Google Maps navigation is HORRID. How does the Sprint navigation app have a voice 100x better? Bing's WinMo voice is also way better.

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.