SparkFun Forums 

Where electronics enthusiasts find answers.

All things pertaining to wireless and RF links
User avatar
By mhixson
#93871
I have a device that basically needs to tell a Linux system when it has been tripped. It needs to do this wirelessly within a range of a couple hundred feet. This communication only needs to be 1 way and it really doesn't need to transfer anything more than 1 bit of information (basically, "I was tripped.")
I was thinking about using an Arduino and XBee, but that is starting to seem like overkill for this application.
Any thoughts would be appreciated.
By lukemalpass
#93885
434 radio transmitter receivers are cheapest and simpliest, just send the pin high on transmitter, and the receiver goes high. Not brilliant for range or sending meaningful data without error handling or encoding but you shouldn't need that.
By riden
#93999
It is a bit misleading saying that just turning on the transmitter will result in a logic change on the other end. These receivers have an automatic gain control and you will see random noise on the output in the absence of a transmitted signal. You could also see interference from nearby devices (weather stations, etc.) that use the exact same frequency.

To get these devices to work properly, you need some type of encoding/decoding system to ensure that the receiver only responds to your transmitter. You can roll your own with a couple of micro controllers or use an encoder/decoder pair like these:

http://www.rentron.com/remote_control/R8_4BIT.htm
User avatar
By mhixson
#94014
Thanks for the info, riden. I'd like this system to be as simple to put together as possible so it's looking to me like it might make more sense for me to just go with a XBee. I could transmit more data with it and I could keep it secure if I need to.

So I'm thinking my system will look like this:

sensor->Arduino Pro Mini->XBee - -air- -> XBee --> something -> USB -> computer

Does the "something" need to be an Arduino or is there a simpler way to go from the XBee straight into USB?
By riden
#94016
If you are going the XBee route, why don't you use the built in I/O mirroring? Buffer and level shift the inputs and outputs and you're good to go.

Edit: Sorry. I didn't catch the part about USB. For that, you can use either a PIC or AVR chip as both have USB support.

For example:
http://www.obdev.at/products/vusb/index.html
By nomore
#94022
How about sensor->xbee->air->xbee->usb zigbee regulator?
User avatar
By mhixson
#94046
Well, that's a good question. I hadn't really considering interfacing the sensor directly to the XBee. I'm thinking that I might actually like having the Arduino in there so that I can send more information, such as a sensor identifier or something (in the event that I have several sensors).
By riden
#94048
The XBee has multiple inputs which can be either digital or analog and the XBee transmits its id, so I'd think it is a strong candidate unless cost is a major factor for your project.
User avatar
By mhixson
#94049
So on the listening end let's say I have an XBee USB board connected to a Linux box. Would multiple XBee transmitters appear to be individual serial devices? Or do I have to listen to 1 serial stream and determine which XBee device has transmitted which data?
By waltr
#94051
mhixson wrote:So on the listening end let's say I have an XBee USB board connected to a Linux box. Would multiple XBee transmitters appear to be individual serial devices? Or do I have to listen to 1 serial stream and determine which XBee device has transmitted which data?
Ah, that depends on whether the XBee connected to the Linux box is running AT or API command mode (firmware on series 2 XBees).

In AT mode the serial is passed through as if the XBees weren't there (also called transparent mode). In API mode, the sending XBee's address is embedded in the packet (frame) received. The frame must be decode to extract the senders address as well as the data sent.
By riden
#94052
From your first post, it seemed you needed a single point-to-point communication. However, it is possible for multiple XBee devices to talk to the same endpoint, but I haven't had occasion to do that in a real application. Others on this forum, stevech in particular, can give you more enlightened information.

BTW, I noted in your first post that you were looking for several hundred feet range. You need to make sure that you can communicate over that range at the frequency of the RF devices. Most XBees communicate in the 2.4 GHz band, and things like walls, trees, etc. have a major impact on range. This is less of a problem for lower frequency devices, but you don't get all the niceties that the XBee provides.