View Full Version : X10 CM11A Plugin Development
Darmok
October 13th, 2002, 03:55 PM
I've been messing with X10 a fair ammount recently and have run across quite a bit of code for the CM11A PC interface module that comes with the IBM Home Director starter kit and the Active Home Starter kit. The CM11A has 2 way communication vs output only on the CM17A Firecracker. It also has memory space to store routines that it can execute even when the PC is off. I'm controlling my X10 stuff through girder by having it trigger commands on IBM Home Director, but I think it would be even nicer to have direct control through girder.
The other cool thing would be to set up girder input of X10 commands through the CM11A. That way an X10 motion sensor could send an X10 command to Girder through the CM11A and girder could respond by triggering other X10 commands, and or launching apps or whatever. The problem I have is that while I've found some code, most of it is in VB and I don;t have a VB compiler and I'm very rusty at coding. Anyway if anyone is interested in developing something like this, I'd be glad to post the code or reference pages that I've run across.
Anyone interested in messing with this, its only about $30 to get an IBM Home Director Starter kit from http://www.Smarthome.com or http://www.x10.com. Even RadioShack.com carries the ActiveHome kit which uses the same controller, for around $50. These kits come with one CM11A computer interface module, a kinda cheesy 6 in 1 Universal IR remote with RF X10 capabilities, a RF reciever base, which doubles as an appliance module and a single dimmable lamp module. The active home kit also has an RF X10 keychain remote.
Mark F
October 13th, 2002, 03:55 PM
I don't have the CM11A but I am getting a 2 way X-10 transceiver from SmartHome.com in the next 2 weeks for which I will build a Girder plug-in. This will be a 2-way (send/receive) plug-in, much as you describe so Girder can act as the X-10 controller software. When I get this working for the module I bought, I'll see if I can retro-fit the code to do the CM11A protocol, too.
Looking at the CM11A programming manual, it doesn't look too hard. My biggest CM11A concern is the stuff in the memory space. Looks a bit complicated.
This is a long term project so don't expect something next week but I'd like to have this finished before May. :-)
Darmok
October 13th, 2002, 03:55 PM
That's great! Which Tranciever are you going with? As far as the memory stuff on the CM11A, as I understand it, it can generally be ignored when using it strictly as a tranciever. I have a bunch of visual basic code that looks fairly strait forward if you want any of it.
Mark F
October 13th, 2002, 03:55 PM
I ordered the PowerLinc (http://www.smarthome.com/1132.html). I also ordered the 1132S, serial connector. I will probably end up getting a CM11A also but I don't like the AAA battery requirement. (Hello! It's contained in a WALL PLUG! :) ) I already have the CM17A (Firecracker) but, as you noted, it is only one way and the programming interface isn't published. Ah, boys and their toys.
When I do the CM11A plug-in, leaving the memory part out could be an option in the first few versions (to iron out the TX/RX bugs) but would eventually be required. I'm a user too. I know the drill. :)
Thanks for the source code offer. I'd like to not base this on someone else's code, if I can, as copyrights are VERY important to me. (That is, not infringing someone else's!) However, if I get stuck, I'll keep the offer in mind.
On a tangent, I'm thoroughly convinced that VisualBasic is the language used in programmer's hell. I dislike it *intensely* and avoid it as much as I can. There, I've admitted it! :)
I'll let you know how things go.
Caffiend
October 13th, 2002, 03:55 PM
The batteries in the CM11A are just to store the macros in the unit. They aren't a requirement.
Darmok
October 13th, 2002, 03:55 PM
Ha, yeah I understand the reluctance to use Visual Basic code, I don't have VB compiler to play with but it was the only code I ran across. All code I've run across is open source, and not copywritten. I have found code for the firecracker too, but I don't remember what kind of code it was, I can post links to sites if you're interested.
Darmok
October 13th, 2002, 03:55 PM
hmmm interesteing, that last post showed up as being from caffiend rather than from me.
Mark F
October 13th, 2002, 03:55 PM
Update: I still haven't received my transceiver (should ship tomorrow) BUT I found the FireCracker protocol documented on the www.x10.com site so I can try that out as a first pass.
Glad to here the batteries are only for the memory option on the CM11A. It would be really stupid to require them for normal operation.
I'll let you know how things progress.
Caffiend
October 13th, 2002, 03:55 PM
Anxiously awaiting anything you make. I'll beta test too. I have the CM17A Firecracker and CM11A computer interface modules so either way. I'd be happy with just the one-way CM17A, but having two-way with the CM11A would be super cool. If Girder could respond to X-10 that would be great. An All Lights Off command could turn off my A/V equipment. I'm already using the CM11A Communication Bridge with command-line arguments to get some X-10 control from Girder, but if Girder could also know the status of lamps and react accordingly AND perform macros. Oh man, too much coffee, I'm getting way too excited over here...
[Edited by Caffiend on 02-26-2001 at 02:56 PM GMT]
Mark F
October 13th, 2002, 03:55 PM
:) :) :)
Mark F
October 13th, 2002, 03:55 PM
UPDATE: The CM17A portion is just about done. I'm having some "between commands" timing issues that I think I can solve in the next couple of evenings. We can arrange for me to send it to you at that point. I don't want to place this on Ron's site until someone else has played with it a bit (beta testing :) ).
You mentioned a scenerio where a plugin maintains hardware state information (lamp module A2 is ON) and acts differently based on this state. The user interface for this type of state and logic will not be simple to implement. Therefore, the first versions of the X10 command plugin I'm building will have send/receive capability (whatever the attached device has) only.
On a different note, I got my Firecracker for <$10. It has two RF remotes that work anywhere in my house to generate X10 commands. When I get the new transceiver (X10 send/receive) hooked to the PC and write the Girder plugin ... :) Yeah, way too much coffee.
Darmok
October 13th, 2002, 03:55 PM
Its great to see you developing this plugin for Girder. I wish I had a Firecracker to test this for you. Maybe I'll have to pick one up. Are you planning to write a CM11A version too?
Mark F
October 13th, 2002, 03:55 PM
Yes, the CM11A is third on my plugin list right now.
1 - Firecracker (CM17A) (almost done)
2 - PowerLinc (1132 from www.smarthome.com)
3 - CM11A (Home Director)
4a - X10 state and logic
4b - Permanent popup (status window)
The time between 1 and 2 shouldn't span more than ~3 weeks. The time between 2 and 3 should be pretty minimal (~2 weeks?) as the protocols look a lot alike. I'm probably going to buy a CM11A so I can test stuff out here. :)
Caffiend
October 13th, 2002, 03:55 PM
It's great that your making progress. I've actually resigned myself to the fact that I'm going to have to learn to program in order to get specialized software that I want. It would be some time before I'd be able to interface a comm port though... I really don't know how the status conditional stuff could be done, or that it's really that useful. I could use HomeSeer to do anything that required branching through its scripting. If you have X-10 and haven't checked out HomeSeer, you're really missing out.
HomeSeer: http://www.keware.com
-will
[Edited by Caffiend on 03-02-2001 at 12:02 PM GMT]
Mark F
October 13th, 2002, 03:55 PM
I just sent Ron the BETA verion. Time to get some sleep. :) I'll start the bi-directional version when I get up.
Coppertone
October 13th, 2002, 03:55 PM
Hi Mark,
I just wanted to let you know that I'm eagerly awaiting your work on the CM11A plugin. It's the missing link for me -- and I'm so glad to know you're planning on working on it. I'd hoped that your CM17A plugin might work partially on the CM11A but unfortunately that did not prove to be true. I guess I'll just have to be patient.
I'll be watching this forum to track your progress. Good luck and godspeed ;-).
/Coppertone
Caffiend
October 13th, 2002, 03:55 PM
Coppertone,
I've got a technique for using the CM11A with Girder that works pretty well.
Here's a copy of my post from another thread:
Hey Mark, I was wondering how your X-10 stuff was coming along. That file is installed with the X-10 Activehome software.
http://www.x10.com/home/offer.cgi?SOFT1,../software1.htm
Here's what I've been doing until now:
I run x10com32 on Windows start to load the "communication bridge".
Then use Girder's O.S.->Execute to send to x10com32.
The syntax for that is "x10com32 b2 on" or "x10com32 a5 dim to 050%". Which works great, but I was trying to figure out a way to use registers to simplify the 255 possible combinations, from the Pronto end and the Girder end.
I just realized I can only use registers to hold a numerical value, so it's not as simple as I wanted.
Ideally, I would push A then 5 then On and the command would execute, currently I have to have a discrete A5-On button, which would become extremely unwieldy, especially once you start throwing in Dim functions too.
I ended up using a batch file that can take three registers as parameters then convert them to the string that X10COM32 wants. (e.g. "x10exec.bat 2 3 1" becomes "x10com32.exe B3 On".) This works for me until there is native support. Let me know if you want to try it and need help.
-will
indygreg
October 13th, 2002, 03:55 PM
did you ever get the powerlinc up and running. i am in the middle of trying to do that myself using the serial control.
greg
indygreg
October 13th, 2002, 03:55 PM
scratch that. i got it working. serial plugin talking to powerlinc.
greg
jcase
October 13th, 2002, 03:55 PM
What devices will the firecracker plugin work with.
I've been wanting to play around with x10 for quite some time now. But I've been putting it off. When I order I want to make sure that Girder will work with whatever I get.
Mark F
October 13th, 2002, 03:55 PM
The firecracker is a send-only device. I've used it with lamp and appliance modules.
Ron
October 13th, 2002, 03:55 PM
I've heard that the slink-e plugin might be of some help,...... I know someone reported that.
jcase
October 13th, 2002, 03:55 PM
Does the firecracker plugin work with the Radio Shack interface which appears to be the same as the CM11A. I have found a radio shack that has the CM11A Radio Shack version for sale for $5, I bought 2 of them.
thanks
Mark F
October 13th, 2002, 03:55 PM
John - No, the Firecracker plugin only works with the Firecracker (CM17A) interface. If the RS stuff is CM11A compatible, the ActiveHome application comes with a command line interface that can be executed from within Girder. X10COM was mentioned above.
Image
October 13th, 2002, 03:55 PM
Sorry for digging up an old thread, BUT did a CM11A plug-in ever get developed?
I understand that I can send X10 commands from Girder. However, I'm interested in Girder detecting/receiving a specific X10 event and then running a app or script.
Any suggestions? Thanks.
-- John
Image
October 13th, 2002, 03:55 PM
Well, no answer yet...
So, let me phrase it another way:
Is anybody using Girder with the CM11A device for X10 control?
-- John
Mark F
October 13th, 2002, 03:55 PM
I didn't build a CM11A plugin.
The Serial plugin works with the powerlinc device mentioned above and does two way stuff.
The SLink-e device has an X-10 portion and a Girder plugin.
Mastiff
October 13th, 2002, 03:55 PM
I use Girder with HomeSeer, and that works great. You can make batchfiles for Girder to call, and they will trigger any event in the X-10 control that you'd like. For instance: I have two pc's running Girder, the HTPC and my server. To the server I've attached the CM11A, so when I press pause the DVD will pause and the lights go on. Neat, huh?
_________________
Tor - managing director of the Cinema Inferno home theater
<font size=-1>[ This Message was edited by: mastiff on 2002-02-08 13:18 ]</font>
SteveV
October 13th, 2002, 03:55 PM
...Is anybody using Girder with the CM11A device for X10 control?
Yes, using Girder with the Slink-e. IR RX/TX and X10 TX work very well with this setup. I've managed to "teach" Girder incoming X10 events but there are some problems that need to be addressed before this can be declared fully functional. Sending X10 signals is not an issue however.
--Steve
Wysocki
October 31st, 2002, 12:45 AM
Steve:
PLEASE tell me just how you use the Slinke plugin in Girder to send X10 commands. I have Slinkeserv running and it sees the X10 CM11a on com2. I went into Girder options, Slinke plugin, settings and defined the X10 controller. I pointed to the cm11a.cde driver file but I don't know what port (if any) or other settings I should use there.
I created a command and selected the Slinke plugin. The settings button though didn't show any command strings for the X10 device. I guess this is because there are so many possible commands one could send. SO WHERE DO I SPECIFY THE COMMANDS (and what is the syntax)?
THANX for any help!
Terry
Wysocki
November 18th, 2002, 12:42 PM
Sorry for a followup post on this, but I can't find anywhere / anyone that details HOW to max the CM11A work with the Girder/Slinke plugin. Steve, if you're still out there, could you give some details?
Caffiend: I'm a Girder newbie and "...use registers to simplify..." seems like an oxymoron. Could you post a file as an example?
Mastiff: I'd be willing to buy homeseer if I thought it would improve things over activehome, but I've already spent a ton on software/hardware that I ended up not using in this project. How is the homeseer batch file any better than the activehome x10com32?
SteveV
November 19th, 2002, 05:59 AM
Wysocki,
Sorry for the delayed response--I missed your post on 10/31 :(
Anyway, I'll assume you've been able to get other devices working correctly with Girder and the Slink-e. Let me know if this isn't the case and I'll provide additional detailed info.
See the attached cm11a device file. It should be all you need to get x10 working using Girder and the Slink-e. Let me know how you make out.
Good luck -- Steve
Wysocki
November 23rd, 2002, 07:43 PM
Ok, now we're getting somewhere! I got the cm11a to work with Girder and Slinkx (thru Mainlobby) with SOME success. I took the device file, edited it for my housecode and a couple of devices, and what I tested works with Girder. However, thru Slinkx, only the ON and OFF commands worked, the DIM and BRIGHT didn't. Any ideas?
I was also a bit confused by the "status" items in the device file (how do you use them?):
#C14 FAMILY ROOM HT STATUS
0: on[c14]:ht_on
0: off[c14]:ht_off
#F10 DISH 6000 ON/OFF STATUS 0=OFF
0: on[f10]:dish_6000_is_on
0: off[f10]:dish_6000_is_off
#F11 DISH 6000 SD/HD STATUS 0=SD
0: on[f11]:dish_6000_is_sd_mode
0: off[f11]:dish_6000_is_hd_mode
(I had to put a blank after the colons above to kill the happy faces!)
SteveV
November 26th, 2002, 06:04 AM
Do the DIM and BRIGHT commands work using Girder? They're working OK for me although I've found that it is possible to "flood" the powerline with tons of dim or bright signals if you hold the remote's button down too long. Adding an anti-repeat delay solves the flooding problem but makes the dim/bright action very coarse. This should be pretty easy to solve--I just haven't had the time or need to do it.
I thought I removed the status stuff from the file :oops: The Slink-e plugin has the capability to be "taught" incoming X10 signals. The status stuff uses X10 PowerFlash modules to send an X10 command when certain events occur in my HT. I was primarilly interested in maintaining state variables for my satelite receiver which doesn't have discrete SD/HD codes. While this all sounds good in theory, it's pretty unreliable so I don't use it much.
--Steve
Wysocki
November 26th, 2002, 08:25 PM
Under Girder, DIM and BRIGHT work fine. I guess I'll move this question to the Slinke forum because it appears the problem is really in the Slinkx interface. I was confused because the device file is used by both Slinkx and Girder so it seemed like there was a closer tie in the two products (and I couldn't see why one would work and the other not).
rickd
December 4th, 2002, 03:02 AM
HNey guys I have a slinke for ir under girder what do I need to start X10ing using Girder and or slinkserv
Do I need a CM11a first.
Thanks Rick
SteveV
December 4th, 2002, 05:35 AM
Do I need a CM11a first.
Yup. And don't forget that you'll also need to have a free com port on the PC your Slink-e is connected to.
--Steve
andybryant9
December 21st, 2002, 04:09 PM
I use Girder with HomeSeer, and that works great. You can make batchfiles for Girder to call, and they will trigger any event in the X-10 control that you'd like.
How do you trigger an event in HomeSeer from Girder? Sounds like you are creating a batch file that then triggers an event in HomeSeer. I can't find a way to trigger an event in HS from the command line.
Help!
Cheers, Andy.
andybryant9
December 23rd, 2002, 03:46 PM
I found a homeseer plugin called seerserver on www.gadgetland.net, but I'm having some reliability problems.
http://www.gadgetland.net/modules.php?op=modload&name=Forums&file=viewtopic&topic=20&forum=2
Homeseer did used to publish a tool called hsc.exe, but I think they've discontinued it, so I reckon support will die at some point.
I've thought about trying a direct interface to my CM12A (UK version of CM11A), but that would probably conflict with homeseer (and homeseer has some useful functions of it's own...)
Homeseer does have an activex interface that you can call from a web server, but I've never done any activex programming. Would it be possible to create (or adapt) an activex plugin for Girder that provided a more direct (& reliable) route into homeseer? Ideally this would also allow two way control - allowing you to query the status of devices in homeseer, or run homeseer scripts.
Any offers?
Andy.
graemef
December 26th, 2002, 03:53 AM
I have stuck an EXE I knocked up in the general forum. It allows you to pass X10 commands via a command line interface. It supports the CM11A interface.
I have not looked at making Girder plugins, but may have a wirl a bit later on. This gets me out of trouble at the moment.
Cheers
Graeme
graemef
December 26th, 2002, 05:49 PM
I have modified the X10.Exe application so
1. It only allows a single instance to run at a time
2. You can pass either a single command or a text file of multiple commands
The format of the text file is
COM1
A 3 On
A 2 Off
A 3 Dim 50
etc
To pass a single command
X10 Com1 A 3 Dim 50
To pass a text file
X10 file.txt
Cheers
Graeme
bgkorn
December 31st, 2002, 04:52 PM
Do I need a CM11a first.
Yup. And don't forget that you'll also need to have a free com port on the PC your Slink-e is connected to.
--Steve
Does the Slink-e plug-in work with slinkserv, or does it require unshared access to the slink-e?
SteveV
December 31st, 2002, 05:05 PM
bgkorn,
Welcome to Girder :)
It uses slinkserv.
--Steve
pulp_136
May 14th, 2003, 07:30 AM
Mastiff wrote:
"I use Girder with HomeSeer, and that works great. You can make batchfiles for Girder to call, and they will trigger any event in the X-10 control that you'd like. For instance: I have two pc's running Girder, the HTPC and my server. To the server I've attached the CM11A, so when I press pause the DVD will pause and the lights go on. Neat, huh? "
Mastiff seems to have done exactly what I'm looking for. I'm not intresting in sending X10 commands directly from Girder but sending Girder events to Homeseer. That way I could have Girder recieve the IR commands through the IR Reciever and send them to Homeseer that is then going to execute X10 commands.
Mastiff, could you please share with us how you have done it? How do you send the commands (local or network), do you use any plug-ins? Is your setup reliable?
thanks
pulp
vBulletin® v3.7.4, Copyright ©2000-2008, Jelsoft Enterprises Ltd.