Cheapest wireless switch?

What is the cheapest way to send the status of a simple open/close switch to an arduino, wirelessly, up to 100'?

By light.

Emitter ------> Reciever

How about when there is no line of sight? And multiple switches?

Then you'll need to use something else. Maybe sound?

xbee. it might be the easiest one anyway. You don't even need an arduino on the control side either. and on the recieving side the xbee can send the commands it recieves to an arduino to stop the circuit.

you technically don't even need to make any changes to the arduino. You can attach a relay to the arduino's power rail and use a xbee to turn that on and off. Therefore if your arduino fails but your xbee is still running, you wireless stop mechanism will still work.

I may eventually have around 30 of these wireless switches. Xbee would be far too expensive. However, I suppose I could put an IR emitter on the switches and put an IR receiver on a central Xbee in each room. An Xbee for each of 6 rooms and around 5 switches per room. The primary use of these switches is to detect if a window/door is open or closed. If anyone has a better or even cheaper solution, I'm still open.

Worth looking at 433MHz modules? (Although not sure how having multiple ones would go.)

--Phil.

Seems like since the windows aren't portable, and 100' isn't that far, a wired solution may be cheaper and more robust. You could pass the signals down 100' of CAT5 cable, I think the voltage drop would be small enough that it'd be OK.

Alternatively you could gather all your sensor data up at the site to be monitored, and use an RS-485 chip to send the data in a message over a cable. RS-485 is designed for long transmission lengths, and you can get converter chips which are the equivalent of the MAX232 to do the level conversion.

Anyways you might still be keen on wireless - just discussing all options.

I'd recommend the X-10 products, but that's the opposite of what you want to do. Can you give us a few more details?

your IR solution should work, however you won't be able to tell which window is open or close (you would however be able to tell which room there is an issue in though). Also your ir transmitters have to have a direct line of sight with the recievers. RF recievers and transmitters are slightly more expensive and are shorter range but line of sight is no longer a problem with them.

I don't know how the Cat5 standard works (I'm guessing you can use any wire as long as you connect the corresponding wire to the reciever)

I've only every used rs485 in industrial applications and might be overkill for this project, but it should work for your purpose. the major benefit of this protocol, is you can send serial commands from all 30 windows to one reciever. You would however need some sort of a TTL-RS485 chip on all the transmitters and a rs458-UART chip the reciever. the only one I could find was this one and its super expensive: RS485 to TTL Converter / Adapter (Industrial) – CommFront

For my purposes, it does need to be wireless. I would like to be able to make each switch for less than $5 (excluding batteries). Line of sight for the IR idea wouldn't be a problem but I'd still need to figure a way to be able to identify exactly which switch was open or closed.

X10 would be ideal as I can get wireless rf window switches (DS10A) for $3.50/each and an rf receiver (W800RF32A) for $75. The receiver is meant to be plugged into a computers serial port and used with compatible software but having never used X10 before, I'm not sure how to grab the data using just an arduino, although I'm sure it's possible. I don't have any of them to tear apart, but if anyone thinks it should work and has any ideas... I'll give it a try.

The end result I'm looking for is to have a layout of my house in a picture frame, with leds on each window/door. If a window/door is open, the corresponding led would light up.

Well communicatio from the w800 to the arduino might be a little bit hard. I myself have never worked with X10.

However here are a few details that might help you:
the receiver outputs commands through rs232. Using a max232 chip you can connect this to the arduino's serial port.

Here is the link to the communication protocol:
http://www.wgldesigns.com/protocols/w800rf32_protocol.txt

Now you would just have to parse the commands using the Serial library and turn on the corresponding LED.

I hesitate, because I think X10 security may have a slightly different format than regular X10. However . . .
http://www.arduino.cc/playground/X10/ReceiveX10

(the result . . . http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1239988351)