Monday, August 29, 2005

Daemons in my closet

Well I've been busy coding and I now have the Insteon daemon to show for it! I wouldn't get too excited as it's an Alpha quality daemon but it's probably enough to get started. I've modeled it after Dan Lanciani's x10d. You type in commands like a1aon or p3pdimpdim and the Insteon PLC sends the commands. I need to fix the response that the insteond returns but it will send the command. Now the more important part is the Insteon stuff. To send an Insteon command type !i 00.01.b4 on ff. The 00.01.b4 is the address written on the LampLinc or ApplianceLinc. The command on is the command to turn on the device and the ff is the hex dim/bright level of the device (where ff is full on). So far I haven't been able to use fast on (I don't even know if the device supports it) or played with the dim rates or speeds (yeah you can adjust those :-). I do see ACKs and NAKs (for non existent devices or errors) so it looks like the Insteon protocol is filling in the holes where X10 is really lacking (2 way communication). I've also been able to ping the devices (and even get a NAK for non-existent devices, cool). I haven't figured out how to ask for a devices current state (hey I'm still reading!).

Now for some important details, the program is released under the GPL. Currently I only support the serial PLC. I'll work on the USB version when I get one and get some time (an important project is underway so I may not be able to work on the code for a while). I've included a quickly put together readme so there is at least some documentation. The source code (yes you have to compile it) is Alpha quality. It's inconsistent in some places and lacks proper comments (or the comments are 'Greek'). And lastly it's not done so not all the commands are supported yet.

So what are my goals for this project? One is to be able to support the current collection of X10 modules I have. Second is the support the Insteon modules I'll be getting. Lastly to improve the reliability of the communication of the power line network. Insteond (and Insteon) looks like it's well on it's way to fulfilling those goals.

Thursday, August 18, 2005

A happier camper ...

Well now I'm a happier camper! I have my Insteon PLC3 controller working with my insteond daemon. I made one really big mistake in my code initially, I used a strncpy instead of a memcpy (I'm moving bytes not strings). So far I'm able to properly send commands (X10 and Insteon) to the controller and the other devices react properly. I've only done some light interpretation of what the device is sending back to Linux. Really this is only stage one of many stages. I'll need to create the Salad assembler & downloader for Linux so I can assemble and download the SALad programs. The I'll need the device manager (hopefully in MH) and more to follow. This looks like it can be a very powerful replacement of X10. Hopefully it's a lot more reliable too.

Monday, August 15, 2005

Tempest in a tea pot.

Well I've stirred up a hornet's nest on Broadband Reports.com. I posted a message in reply to a thread about Comcast with 2 computers? (the user wanted to know if he could use NAT with more than one computer). That thread split in to [Split] Comcast Gunning for NAT Users?. While CTCEO is correct that it is in violation to have a service plan for one computer and then access the internet with more than one computer (using a NAT router). I really doubt that Comcast is going to hunt down all the users using NAT and kick them off their service. Their competition (Verizon DSL in my area) does support this and the majority of Comcast's users have purchased a NAT Firewall as a first line of defense from Internet predators.

In the past I've been critical of Comcast's Internet service for what they've not been doing (though they have improved it over the years I still think they need to add things like QoS). This is one of the times I think Comcast will not go after folks directly for this breach of the Terms of Service. They may be able to use it as a way of getting rid of a trouble maker on their service but as a source of revenue (upgrade to the Home Networking Service Plan or leave) it's bound to backfire and cause lots of bad press.

While on the subject of Firewalls I just saw an interesting piece on InfomationWeek where AT&T's CIO, Hossein Eslambolchi outlines the "10 Top Pitfalls Of Implementing Converged IP Networks". While Mr. Eslambolchi is discussing business enterprises his point actually extends to the home and home automation. Especially security, open standards, capacity and new services (SoIP, Services over IP - much better than my XoIP, everything/anything over IP). Computer Security is an area sorely lacking in the home and I'm not sure how to go about improving it. Open Standards has been something the Open Source community has been screaming about for a long time. Capacity, well just see one of my diatribes on bandwidth upgrades (see Summertime Musings) and finally new services, Internet TV/Tivo, VoIP, gaming, Internet radio and podcasting. It won't be long before we see home network management for all the computer equipment that will need to upgraded via the internet. Really it's started with the Virus & Adware protection service we're seeing available for Microsoft products.

Sunday, August 07, 2005

DOH! Better support ...

I just to went to Active House Pro - SDK forum, looking for an update on CM15A information we've been asking X10 for (it's been 9+ months). X10 promised that when things calm down they would provide the information. So far the Open Source community hasn't seen anything (we are unimpressed). Now lets compare this to a competitor of X10, Insteon. The other day I received a call from Insteon asking if they could help me in any way (very nice). I explained the situation and asked if I would be able to get my hands on a USB controller later after I've gotten that far in my work. Their response was yes, no problem. And I did explain that this was an open source project (not commercial, nothing for sale). The folks at Insteon seem to understand and they don't seem to have a problem with that. So why am I wasting my time with X10. Hmm ...

Jane, get me off this crazy thing!

Oh what an interesting week! I've been playing with Asterisk and I'm reading all sorts of manuals on dial plans, macros and the SPA-3000 (ATA, and VoIP to PSTN device). I've borrowed another 4 port ATA (analog telephone adapter), it's a little expensive but does work quite well. So far it hasn't been much trouble and seems to work OK. The actual trouble has been with the configuration of the SPA-3000 and the problem is not Sipura's! I've been using Firefox and I tend to open lots of tabs (don't even bother suggesting IE, I'm Linux and I love using the tabs). Well it seems that if you open too many tabs (with lots of Java and JavaScript) it tends to blow up from time to time. If one of the open tabs is the SPA-3000 window a mangled reply gets sent to the SPA-3000 when Firefox crashes and the SPA-3000 gets hosed up to the point where I have to reset it to factory defaults. So far I've reset it 5 times. Each time I try to remember what I did to get it working. It's complicated because there's a dial plan for the SPA line 1, (you plug the telephone in there) a dial plan for PSTN (Public Switched Telephone Network) and a dial plan for the VoIP portion. So far I've managed to get calls to and from the extensions (local VoIP to local VoIP), extensions to FWD (local VoIP to external VoIP), extensions to the PSTN (VoIP to PSTN) and PSTN to the extensions (well just to the main extension). I also have the voice mail working. I have a new recording for incoming calls (a gsm message) and I need to build a new macro to use that message instead of the extensions message. Now my only troublemaker left is my Grandstream BT100 IP phone. I have no dial tone and you can't call it (goes to voice mail). Despite all the trouble I'm getting a pretty good understanding of how things work. That doesn't mean I know what I'm doing but at least I've got a working setup. An now onto my X10 stuff (I've got various confusion going on there too).