-
Notifications
You must be signed in to change notification settings - Fork 130
X10RFX10SecRFXCOM
toc While this page is written with misterhouse in mind, it's not misterhouse specific and contains generic info that would be useful to most. On one side, it looks at supported protocols and frequencies, and the other side looks at hardware, antennas, and misterhouse configuration.
It was written by Marc MERLIN, reachable on the misterhouse-users sf.net list, as a way to gather all the information he gathered while learning about the interfaces and protocols. Comments/fixes are welcome.
These are the main signals of interest in the 310Mhz band:
- X10 powerline RF signals (X10RF)
- X10 remotes
- X10 security (DS10A)
- RFXSensor / RFXPower / RFXMeter
- MR26a is the cheapest and can perform ok with an external antenna hack but it only supports X10RF and X10 remotes.
- CM19a is a USB version of the MR26a, along with USB support and support for receiving X10Sec codes in addition to just X10RF codes. I would not spend $50 for this when you can get the W800 for not much more, including a real antenna, but if you already have one lying around, or got it for cheap, you can use it.
- CM15a is part of the Active Home Pro solution, and is a slightly better RF receiver and sender than the CM19a, which support both power line and RF. The mochad based gateway code below only supports receiving RF, although receiving powerline should work with minimal work. Do not buy instead of a W800 for misterhouse, but you could mostly use it in misterhouse if you have to.
- W800 is a custom made third party receiver from WGL designs that was designed for receiving X10RF and X10Sec data with misterhouse and others. It'll only receive the most significant bits from RFXSensor/Power/Meter (it does X10 security fine though). It comes with an external antenna out of the box and can be had in USB or Serial. The serial version is recommended if you plan on putting the receiver far from your computer since it is easier to extend a serial connection than a USB one. Note that X10 security devices actually have an ID that is longer than a byte and that you are losing extra ID bits if you read them with a W800. Most folks won't care if they have a few, but if you plan on doing serious use of X10sec, the 310Mhz module for rfxcom and full length decoding of that protocol may be better for you.
- The 310Mhz module for the rfxcom can receive everything, but it has to be ordered from Europe (or through a US importer) and costs around $150 instead of $80 for a W800. The rfxcom is recommended if you also plan on buying a 433.92Mhz receiver module (see below), or if you want to use a 310Mhz RFXSensor (the RFXMeter is just not a good deal in the US, you need to buy 2 of them to measure both phases and you'll get much better monitoring (7 or 14 different loads) with one or two brultech ECM 1240
Europe does not use the 310Mhz band and uses 433.92Mhz instead (which is legal to use in the US too). W800 comes in a 433.92Mhz flavour if you want to save a few bucks, but W800 is not capable of decoding more than 4 bytes and most senders in that frequency send more bytes, so you'll likely want to get an rfxcom 433.92Mhz instead (rfxcom receiver take daughter boards and can receive both 310Mhz and 433.92Mhz).
In the US, 433.92Mhz is only used by Oregon Scientific weather sensors. Yet, since you can get a barometer, thermometre, hygrometre, wind direction/speed and rainfall for pretty cheap with Oregon sensors, it may make sense to get an rfxcom 433.92Mhz just for that... Oregon sensors are all wireless, and therefore more convenient to setup than 1-wire equivalents (see http://www.hobby-boards.com/catalog/index.php?cPath=22 for 1-wire options), but if you only need one oregon sensor, buying a $150 rfxcom receiver for 433.92Mhz may be a bit overkill and 1-wire may be a better deal if you can run cable.
Note: there are other devices that send data over 433.92Mhz in the US like Chaney Instruments "AcuRite" weather sensors, but the rfxcom is just not compatible with them. Others like the more expensive Davis are spread sprectrum, so those definitely won't work with an rfxcom (but you could just connect your computer to the receiving base station, as explained below):
Even better: if you buy the WMR968 (yes, you want to the old one with more sensors and solar panels, the new ones aren't actually better), you can use the Weather_wmr968.pm module in misterhouse and use the RF receiver built in the WMR968. The only downsides of this approach are a) you need a serial cable between your WMR968 console and your misterhouse PC. b) you can only read as many sensors as that console was meant to read (i.e you can't have two BTHR968 since the console is hardwired to only read one).
If you go for the rfxcom receiver, it can be ordered from Holland, or from a US importer for a little more money: http://cheapertronics.com/products.php?category_id=64 . You could also get the dual band receiver: $230 ($206 direct): http://www.cheapertronics.com/product_details.php?item_id=27 .
Whether a dual band rfxcom receiver makes sense for you is an individual decision. I personally bought both a 310Mhz W800 and a 433.92Mhz rfxcom because I prefer having X10 decoding directly inside mh (which you can't do with an rfxcom receiver, you need the xpl gateway), and having 2 receivers gives me the flexibility of locating the receivers and their antennas in different locations of my house.
In Europe, X10 devices use the 433.92Mhz band and are typically more expensive than the same US versions. On the upside, I'm told they have real quartz and actually emit on the frequency they are supposed to (the US ones are cheaper but can be way off spec).
That said, 433.92Mhz is used for a *whole* lot more than just X10 in Europe, see the list of devices an rfxcom can receive from.
X10RF and X10 security at 310Mhz do not have a quartz and depend on a little loop to send on the right frequency. Depending on how they were built and how many times they were dropped :) they can be quite out of frequency (I've seen some all the way from 308Mhz to 312Mhz while receivers like the rfxcom really like to see things in the 309.60-310.40 Mhz range). The W800's reception is a bit wider but not much. In my experience, some sensors sending at 312Mhz or above are unlikely to be picked up by the W800 (and I'm told the rfxcom receiver is even less sensitive outside of the correct frequency).
See this page explaining how to twiddle the loop, but basically I recommend you get or borrow a HAM radio and sort your devices by what frequency they transmit on since bending the loop didn't really give lasting results for me. The ones that are too far off, you can try to fix by pushing or pulling the loop, but to be honest it's hard to really fix the frequency in a durable fashion that way (the loop kinds of bends back by itself, unless you glue it to keep the bend in place). Your other option is to place the more out of spec senders closer to the receiver.
Two more things to consider for reception range is how much noise there is on the 310Mhz band (use a ham radio to listen), and how many times the sender sends its command:
- HR12A x10 remote: 6 times or infinitely if you hold the button.
- DS10A security sensor: 5 times
- MS12A motion sensor: 5 times
- KR19A keychain remote: 5 times
- CM17A/CK18A firecracker (serial port sender): 5 times
- SS13A wall switch: 1-2 times only but more if you hold the button longer.
- HC40TX keychain remote: 3 times only
Now, to improve antenna range, there are many options:
- Passive antennas: http://jvde.us/x10/passive.pdf
- Receiver Antennas like the ground plane quarter wave antenna: http://www.cocoontech.com/forums/index.php?showtopic=126, a dipole antenna: http://marc.merlins.org/perso/linuxha/post_2010-06-25_Rfxcom_-W800_-and-MR26a-on-misterhouse_-X10Sec-Garage-and-Mailbox-Setup.html, or turnstile antenna: http://www.shed.com/tutor/mr26ant.html
- Misc Radio stuff: quarter wave for 310Mhz is 9.5 inches: http://www.csgnetwork.com/freqwavelengthcalc.html and radiation patterns for antenna positioning : http://www.hams4u.com/kc0pet/typical%20antenna%20radiation%20patterns.pdf or even a signal amp: http://www.radioshack.com/product/index.jsp?productId=2103913 (the signal amp has to be tuned carefully and may be more useful if you have a long cable to your antenna; too much gain will make things worse).
In my experience the half wave antenna that came with the rfxcom worked fine at 433.92Mhz in an environment where I was having range issues with 310Mhz. I'm even picking up some unknown neighbour's temp sensor, which is likely to be at least 100m from my receiver.
The stock antenna is pretty good. You can also try a ground plane antenna (http://www.cocoontech.com/portal/articles/tutorials/home-automation/10-how-to-improve-your-x-10-rf-reception and http://marc.merlins.org/Pix/Perso/Computers/W800_Rfxcom_Antennas_/100_W800_Quarter_Wave_Ground_Plane_Antenna.html), or a dipole antenna (http://marc.merlins.org/Pix/Perso/Computers/W800_Rfxcom_Antennas_/112_W800_Dipole_Antenna.html). For me the dipole antenna improved reception a little bit but not nearly as much as putting the antenna in my attic and running a long serial cable to it (extend the serial cable, not the RG-6 cable, that would attenuate the signal too much).
I found out that both the W800USB and W800RF32A devices only really need 50mA, so whether you use the USB one or the wall wart serial one, reception quality should be about the same (I tried them both side to side).
So long story short:
- W800USB and W800RF32 performed very similarly for me as far as range and sensitivity were concerned.
- Both only need 50mA but if you are planning on locating your antenna somewhere central in your attic or wherever, it's easier to extend a serial port than a USB port.
- The reception didn't work throughout my house until I found "the right place" in my attic and enhanced the antenna by using a bipole antenna: http://marc.merlins.org/Pix/Perso/Computers/W800_Rfxcom_Antennas_/110_W800_Dipole_Antenna.html and http://marc.merlins.org/Pix/Perso/Computers/W800_Rfxcom_Antennas_/112_W800_Dipole_Antenna.html
- For more details, see: http://marc.merlins.org/perso/linuxha/post_2010-06-25_Rfxcom_-W800_-and-MR26a-on-misterhouse_-X10Sec-Garage-and-Mailbox-Setup.html
I solved a coverage hole in my house by putting an MR26a I already had in addition to my W800. X10sec devices (DS10A) are only received by the W800 but in my bedroom, I mostly cared to have additional reception for stick on wall RF10 switches (SS13A) and the MR26a did great for that. I put a ground plane antenna on my MR26a and that definitely helped the reception coverage.
So, the MR26a is pretty useless with the stock antenna, you'll want a ground plane antenna or dipole antenna as described above, but you'll specifically want to modify the device to add an F connector as explained here: http://www.shed.com/tutor/mr26ant.html (ignore the TV antenna modification, the 2 other antennas I described are easier to build, especially the dipole antenna).
So, my MR26a solved a coverage hole in my bedroom, but the W800 in my attic didn't quite reach my outside mailbox every time, so I added a CM19a I had lying around since it will receive and decode both X10RF and X10Sec codes (as well as probably other things on that frequency).
Effectively, a CM19a is pretty close to an MR26a hardware-wise (except for being USB) and also needs an antenna mod to be worthwhile: http://www.shed.com/tutor/mr26ant.html (also ignore the TV antenna modification, and focus on adding the F connector so that you can connect regular antenna cables). See above text on antennas you can add.
The CM15a is only directly supported for receiving RF data, although it could be use for power line data with minimal hacking.
You can see the antenna modification and debug info on my blog entry on CM19a and CM15a support for misterhouse via mochad and external antenna modification
Sending data can be achieved even if it is not supported directly (see below).
Both work the same way if configured inside misterhouse. For MR26a, you must use the misterhouse code, for W800, you have at least two other options (see below).
You can put this in mh.private.ini: for linux code
- debug=mr26,w800
W800_port = /dev/W800
Windows ------------
W800_module=X10_W800
W800_port=COM2
W800_baudrate=4800
MR26_module = X10_MR26
MR26_port = /dev/MR26a code #CMxx
The CMxx misterhouse module is gateway support for CM15a and CM19a. Make sure you read about the antenna modification above to make this module worthwhile.
Misterhouse SVN, as of 2011/06, grew a new module lib/X10_CMxx which adds support for both CM15a and CM19a through mochad.
This is the relevant section from lib/X10_CMxx.pm:
- Download and install mochad: http://sourceforge.net/projects/mochad/ (make sure that your version supports the --raw-data option. If your mochad is too old, upgrade to something newer than 0.1.7)
- Use these mh.ini parameters to enable this code:
- debug=cmxx
CMxx_fifo = /var/run/cm19a code The way this will work is that at least on linux udev will be configured to run mochad.scr, which in turn will run mochad and sent its output to a fifo: /var/run/cm19a, which this module reads from.
Now, this code is receive only, which is mostly what you care about in misterhouse: you want an X10RF to be registered and trigger the appropriate state code. If you need to send data, it is not directly supported by misterhouse, but it is pretty trivially done by running something like code system("echo 'rf a14 off' | nc -q1 localhost 1099"); code Sure, it's a bit hackish, but it works :)
W800 with mh vs rfx-perl's rfx-w800 vs Iranger's rfx-xpl and rfxcom with xpl-rfxcom vs Iranger's rfx-xpl
If you have an rfxcom device, you can only use xpl-rfxcom and then gateway xpl to misterhouse. It works, but it's a bit more complicated in the case of things like X10RF. You also have the option of using Iranger's rfx-xpl. Note however that the iranger code is a bit involved to get running, Greg is very helpful for helping you set it up, but it requires a full setup with a real XPL hub and DCM to configure the first half of his code via XPL and then the rest is done via its built-in web server as opposed to an easy to edit config file. Last I checked, Iranger's rfx-xpl did a slightly better job with the rfxcom device and decoding Oregon weather sensor messages (compared xpl-perl's to xpl-rfxcom), so I use his code with a script of mine to log XPL weather to disk and get output like this: code STR918,WGR918 addr: 232, chan: 0 wind: 33 ° NNE, speed 1.20 m/s / 2 kts average 1.00 m/s / 1 kts battery level 100%
RGR126,RGR682,RGR918 addr: 147, chan: 0 rain: total 1157 mm, 0 mm/hr, count 9
STR918,WGR918 addr: 232, chan: 0 wind: 48 ° NE, speed 1.60 m/s / 3 kts average 1.00 m/s / 1 kts battery level 100%
THGR918 addr: 225, chan: 1 temp: 23.70 °C / 74.66 °F hum: 43 % comfort battery level 80%
STR918,WGR918 addr: 232, chan: 0 wind: 49 ° NE, speed 1.60 m/s / 3 kts average 1.00 m/s / 1 kts battery level 100%
BTHR918N,BTHR968 addr: 230, chan: 0 temp: 26.50 °C / 79.70 °F hum: 45 % normal baro: 1014 Hg / 29.94 inHg, forecast: partly cloudy
STR918,WGR918 addr: 232, chan: 0 wind: 42 ° NE, speed 2.20 m/s / 4 kts average 1.00 m/s / 1 kts battery level 100%
THGR918 addr: 225, chan: 1 temp: 23.70 °C / 74.66 °F hum: 43 % comfort battery level 80%
STR918,WGR918 addr: 232, chan: 0 wind: 357 ° N, speed 1.40 m/s / 2 kts average 1.00 m/s / 1 kts battery level 100%
RGR126,RGR682,RGR918 addr: 147, chan: 0 rain: total 1157 mm, 0 mm/hr, count 9 code
Now, for a W800 you can also use rfx-xpl and xpl-w800, but thre doesn't seem to be much of a benefit to going through the extra layer of XPL vs just using misterhouse's built in w800 support. More specifically:
- the xpl-w800 gateway was a bit lacking for X10 remote codes
- misterhouse xpl code doesn't seem to know how to process X10RF codes (x10.basic). The code could be added but for now it only deals with x10.security (this is a clear problem if you plan on using X10RF remotes). FIXME, really?
- by using the w800 code inside misterhouse, I can also use the MR26a code and have redundant reception of codes in the same format (xpl gatewaying of w800 is different for misterhouse syntax).
- if you are debugging w800 range, you however definitely want to use xpl-w800 as it will show each packet being received, how many times the sender sent the packet and how damaged each reception was :)
Note that W800 code in misterhouse other than subversion code newer than 2010/05 has a bug that will discard data resent within too close an interval. This means that if you are testing reception by sending a code many times in a row while moving the transmitter, you are going to miss some of the codes. Upgrade to svn code and consider using rfx-w800 during range debugging like so:
xpl-w800 --interface eth1 --w800-tty /dev/W800 --w800-verbose
Processing: 609f00ff
xpl-trig/x10.basic: bnz-w800.gargamel -> * - on a1
Processing: 609f00ff
Processing: 609f00ff
Processing: 609f00ff
Processing: 609f00ff
Processing: 609f00ff
Processing: 609f20df
xpl-trig/x10.basic: bnz-w800.gargamel -> * - off a1
Processing: 609f20df
Processing: 609f20df
Processing: 609f20df
Processing: 609f20df
Processing: df609f00
Note how much more detailled this is for RF debugging: you see how many times the command was sent and if it wasn't not quite received, what the analog analog data received was (you can see the digits being off by a bit). This will show you both RF interference and how resilient your sender is (by sending up to 6 times instead of just 2). For comparison, misterhouse does some handy dedupping, but that's not handy for signal strength checks (that said, you can set debug=mr26,w800 in mh.private.ini if you'd like a bit of extra debugging).
X10RF Data Receiving in Iranger's rfx-xpl, xpl-perl's W800 module and built in misterhouse W800 support
For comparison, here is the same data received in rfx-pl, xpl-w800, and misterhouse: code
rfx-xpl
X10 Sec: addr 234 (F8) DS10/90/SD90/Visonic Normal
X10 Sec: addr 234 (F8) DS10/90/SD90/Visonic Alert
xpl-w800
xpl-trig/security.zone: bnz-w800.gargamel -> * - alert/x10secea state=true
xpl-trig/x10.security: bnz-w800.gargamel -> * - alert 234 delay=min
misterhouse:
17/04/2010 21:59:12 W800: security: unmatched device 0xea (state = NormalMin)
17/04/2010 21:59:12 W800: security: unmatched device 0xea (state = AlertMin)
If you need to gateway X10RF commands received through a W800 to powerline X10 modules, you'll want something like this for each X10 device to gateway: code
- list the mh variable of X10 devices you want to gateway, and $PLM is whatever you called your PLM in insteon.mht
{
$PLM->_xlate_mh_x10($obj->state, $obj) if ($obj->state_now);
}
XPL_SENSOR, bnz-rfxcom.terminator:thgr228n.8e, XPL_Temp_RDC, Salon, temp
XPL_SENSOR, bnz-rfxcom.terminator:thgr228n.8e, XPL_Humidity_RDC, Salon, humidity
XPL_SENSOR, bnz-rfxcom.terminator:thr128.0e, XPL_Temp_2nd, Salon, temp
XPL_SENSOR, bnz-rfxcom.terminator:thn132n.60, XPL_Temp_Cham_Julie, Salon, temp
XPL_SENSOR, bnz-rfxcom.terminator:gr101.63, XPL_Poids_Roger, Salon, weight
XPL_X10SECURITY, bnz-rfxcom.terminator:235, XPL_Porte10, Salon
XPL_X10SECURITY, bnz-rfxcom.terminator:130, XPL_Porte4, Salon
XPL_X10BASIC, bnz-rfxcom.terminator:o8, XPL_Sonnette, Cuisine
XPL_SENSOR, bnz-mirror.terminator:000008d0021a0352c129170000,
code An example of code showing how to read XPL and use values for temperature: code
if ($XPL_Temp_RDC->state_now) {
my $temperature;
$temperature=$XPL_Temp_RDC->state;
print_log "Temp state=$temperature";
$main::Weather{TempSpare3}=$temperature;
&weather_updated;
}
if ($XPL_Porte10->state_now) {
my $to;
my $alarm;
$to=$config_parms{alarm_email};
$alarm=$XPL_Porte10->state;
print_log "Porte 10 : $to $alarm";
if ( $alarm eq "alert" ){
net_mail_send(account => 'xxxxxx', from => '[email protected]', to =>
'[email protected]', text => 'Door Open ', subject => 'Door Open 10 ');
if ($mode_security->{state} eq 'armed') {
my $SMS_Orange_Porte10;
$SMS_Orange_Porte10 = new Orange_SMS_Item("zzzzzzzzz","123456789");
$SMS_Orange_Porte10->send("Door+Open+10");
print_log 'Send sms 10';
}
}
This is the quickest way to see what you're receiving on the XPL side: code
gargamel:~# xpl-logger -i eth1 -v
Listening on 192.168.205.3:40800
Sending on 192.168.205.255
192.168.205.3:56650 [xpl-stat/hbeat.app: bnz-listener.gargamel -> *]
192.168.205.3:56650 [xpl-trig/sensor.basic: bnz-owfs.gargamel -> * - 28.57B659020000[temp]=55.5125]
192.168.205.3:56650 [xpl-stat/sensor.basic: bnz-owfs.gargamel -> * - EE.E749CB010800[temp]=55.4]
192.168.205.3:56650 [xpl-trig/sensor.basic: bnz-owfs.gargamel -> * - 10.A8D1ED010800[temp]=68]
192.168.205.3:56650 [xpl-stat/sensor.basic: bnz-owfs.gargamel -> * - 10.2223EF010800[temp]=75.9875]
192.168.205.3:56650 [xpl-trig/sensor.basic: bnz-owfs.gargamel -> * - 10.52D1ED010800[temp]=65.975]
192.168.205.3:56650 [xpl-trig/sensor.basic: iranger-rfx.C0A8CD030021dfr9 -> * - RGR918[count]=729]
192.168.205.3:56650 [xpl-trig/sensor.basic: iranger-rfx.C0A8CD030021dfr9 -> * - RGR918[count]=0]
Another option from: Lieven Hollevoet <[email protected]></[email protected]>:
Alternatively, you could write a custom script in xpl-perl to query the xPL node and to store the responses in an RRD database: http://code.google.com/p/hasy/source/browse/trunk/netnode/software/utility_monitor/meterlog.pl
First, if you're in the US, you really only care about Oregon Scientific weather sensors and the RFXSensor/RFXPower/RFXMeter devices (which can be had in 310Mhz too). All the rest below is pretty much for Europeans
- RFXPower & RFXMeter devices,
My Whole House RFXMeter Power Monitor Installation http://board.homeseer.com/showthread.php?t=126106
How to monitor Water, Gas and Electricity consumption with Rfxcom http://www.bwired.nl/How_rfxcom.asp
From: Lieven Hollevoet <[email protected]></[email protected]> http://lika.be/wp/2010/03/xpl-enabled-utility-meter-monitor/
rfxpower US install: http://board.homeseer.com/showthread.php?t=126106
RfxMeter is nice but only if your utilities use a wheel that can reflect a light beam or emit a light pulse you can count with the meter (for PG&E gas in CA, see this: http://www.jjoseph.org/misc_projects/meter_reading_with_a_webcam ) FIXME http://www.rfxcom.com/sensors.htm $171 one port $355 three ports $92 one power module $63 per RF rfxsensor (1-wire gateway)
RFXSensor would be useful if you don't already have 1-wire wiring. If you have a one wire network, it's much simpler/cheaper to use that though.
In Europe, you have:
- X10 lighting sensors and remotes, X10 security sensors
- Digimax,
- KlikAanKlikUit,
- Chacon,
- NEXA / Proove
http://www.elektronikforumet.com/wiki/index.php?title=RF_Protokoll_-_Nexa/Proove_%28%C3%A4ldre,_ej_sj%C3% A4lvl%C3%A4rande%29&redirect=no yet another X10 RF equivalent
- Domia Lite,
- ByeByeStandBy,
- ELRO AB600,
- Intertechno
- Düwi
- Oregon Scientific Body Weight Scale,
- ATI Remote Wonder,
- HomeEasy,
- cent-a-meter
- Electrisave,
- OWL CM113
- Visonic
- Harrison
Misterhouse XPL Pages: http://misterhouse.wikispaces.com/xAP+and+xPL+-+Getting+Started http://misterhouse.wikispaces.com/xPL+-+Integrating+Common+Devices+and+Applications http://misterhouse.wikispaces.com/Using+xAP+and+xPL+Displays
Interfaces http://xplproject.org.uk/wiki/index.php?title=Main_Page (also offers better support for owfs than xAP/oxc)
http://www.xpl-perl.org.uk/ not many details, other page may have more <<< got xpl-perl from here http://www.xpl-perl.org.uk/download/xpl-perl-0.10.pdf http://www.xplmonkey.com/rf.html
http://wiki.binkey.nl/index.php/XPL-perl lists all the available gateways
xpl hub: http://www.xpl4java.org/xPL4Linux/
http://www.iranger.com/page4/files/rfxRFXCOMRFreceiverxPLgate.html RFXCOM RF receiver xPL gateway by "Greg Satz" <[email protected]></[email protected]>
I haven't released the source yet. It is written in C and is based on Gerry Duprey's xPL Library at http://xpl4java.org/xPL4Linux/. It is my plan to release it as source but without the RFX decoding as the author of the RFX device has requested it be kept undisclosed. I am uncertain what is in the xpl-perl package as it has evolved since I looked at it. The version I wrote supports up to 8 USB or ethernet RFX devices as well as w800 devices (total). It supports all the Oregon Scientific sensors though not all of them have been tested. Each capability of the sensor is a different xPL sensor name and type and can be enabled for xPL reporting. For example battery status can be reported separately. Temperature and humidity sensors can update RRD graphs. The xPL sensor.request schema is supported to return current values. A web interface exists to configure the sensor reporting status and names.
The app basically does what it needs to as a good first pass but it needs further revision. I also want to add transmitter and RFXmitter support.
http://xpl4java.org./xPL4Java/ get DCM to oconfigure the iranger rfx-xpl
http://www.xplmonkey.com/rf.html -> xPLRFX for windows