XBee Radios in .NET Gadgeteer Devices

I have posted a scenario for using XBee Radios in .NET Gadgeteer devices. You can do quite a lot with simple AT command protocol and an instance of Gadgeteer.Interfaces.Serial as in the following snippet.

See http://wp.me/p1TEdE-m0 for the details. I included information and screen shots that show how to configure and flash XBee radios.

Did you try using this:

Have not tried the community driver yet because I wanted to get my head around the basics of XBee configuration. I was starting from zip. One of my cohorts says XBees are noisy. I wanted to keep it simple, using only AT protocol.
It looks as if the driver on Codeplex has the handle on API protocol. I will try it when I need more than one-line communication.

Good information Mike, thanks!

Didn’t realize that the configuration was so complicated. I was thinking about using them in a future project, I’ll keep this bookmarked to help me out then.

You have to set XBee Modem, the Function Set, the PAN ID, the Destination Address High, and the Destination Address Low. It actually isn’t very complicated, but it can take a while to figure out the details and how to use the tool X-CTU.

Yes X-CTU is not very friendly but once you get used to it it’s ok. There are some third party configuration tools but I have tried them but is stick to X-CTU.

I agree with Mike that if all you expect is to have a wireless serial bridge between two devices AT mode is all you have to use. However this is a great overkill to use XBee for that purpous (especially series 2). I know that after you configure the XBee all you do is send and receive data using serial port but you can pay 5 times less for nordic modules and still get the same effect (with the difference that you will not use serial port but the driver library). If you want to get your money’s worth you should enable API mode in your XBee and use all the goodies it brings. This is however the case if you want to have a network of devices not just two communicating wirelessly.

Thanks, Gralin. Good information! I expect to follow this up with more interesing uses of the XBees but it’s good to know about the more economical alternative.

Do you mean that XBees cannot be networked in AT mode? I can try this easily enough, but maybe you have tried this.

Now my problem is that running my test application overnight led to some kind of overload, I think of the Spider mainboard. After running all night, it will not respond to the state changes on the Web service it polls for state changes. It was polling the Web service every 40 seconds with a non-blocking http request.

The Nordics sound good and are cost-effective alternative to the XBees. But correct me if I am wrong … the Nordics don’t have near the range.

For me I would like to make an autonomous vehicle (ground or air or water) than can travel maybe a mile or so away from my base station.

@ mhectorgato - there is a long range version of the nordic that supposedly goes 800-1000m. I just got a couple, but have yet to test the max range.

http://iteadstudio.com/store/index.php?main_page=product_info&cPath=7&products_id=419

@ mhectorgato

In my opinion XBee is not about range either. I think it’s strongest point is the ease of creating a network where nodes can: join, leave, sleep, send p2p and broadcast messages. You pay extra for those things so it’s good to calculate if this is what you are looking for in your project.

@ Mike

Yes you can communicate with more than one XBee using the AT mode. The problem is that it becomes more dificult as in AT firmware you have to switch between the transparent mode (the one where all data is send to the recipient) and AT command mode (in which you can set module parameters). So if you want to send data to some other node you have to switch to AT mode (send ‘+++’ and wait), set the destination address, leave the AT mode and send the data. As a contrast, if you are using API mode you can do all that using a single command. API mode is not only about making you life easier, it also offers things that are not possible in AT mode (I think delivery confirmation is one example).

Mike would you be interested in helping us with the library I have mentioned? It seems that you have some good tutorial writter skils and we are in desperate need of this kind of help :slight_smile:

Thanks, Gralin, for the invitation to particpate and write up the XBee driver. I’ll try to get up to speed on it as soon as I can. There are quite a few things on the lst.

Yep! :wink:

I can write but barely talk, so it all evens out.

I prefere writing (read: coding) rather than talking too :wink:

How is the community Xbee driver coming along? Is it in beta yet (such that you’re interested in getting users to try it out?)

The beta is missing just a few things. I wanted to take care of it this weekend but had some technical problems (we have a linux based key cabinet at work and it hang so there was no way go get to my desk). Please expect some announcement until end of this week.

He-he! Time to switch to “fez based key cabinet”! :wink:

That would be awsome but those things are not cheap so i doubt anyone would allow me to mess with it :wink: The cabinet we have is based on PC platform with Geode processor. The new generation have ARM.

Wow, that’s a serious way to lock up your keys. That could definitely keep a teenager from sneaking out at night…hmmmm. :wink: