Hi,
I’m trying to use XBee with my custom board which is based on SAM3S. I’m programming the custom board using the Atmel Studio.
Does anyone have experience using the XBee with an ARM microcontroller? Maybe someone has made a library for that?
Hi,
I’m trying to use XBee with my custom board which is based on SAM3S. I’m programming the custom board using the Atmel Studio.
Does anyone have experience using the XBee with an ARM microcontroller? Maybe someone has made a library for that?
Yes.
Xbee uses a serial UART interface so it’s compatible with any computer/micro with a UART.
Look too at the Teensy3; it’s an ARM CPU, inexpensive, has most of the Arduino libraries downloadable. The Atmel ARM doesn’t have much of such, as it doesn’t much address the hobby/student market.
Decide if you need the XBee API mode - which all non-trival apps need. You either adapt code for that API, write your own, etc. Lots of folks have; me to, for ARM7, ARM Cortex. Lots of public domain.
I’ve used Atmel Studio, though lately, most of my work is is with freeware Eclipse as the IDE, supporting many different targets, including a Teensy3 its equivalents.
One can develop on MS Windows (or Linux) using a serial port interface to the XBee pair, then take the same C/C++ code and libraries to a microprocessor after it’s debugged on the PC. Much easier than flash-and-crash debugging on the microprocessor.
I don’t use the Arduino (AVR or ARM) IDE- too crude.
Here’s one example
Hi Steve, thanks for the reply!
Thanks for the Teensy suggestion, but I’m currently making a custom mcu board, so that’s why I need to code into a raw ARM chip directly.
My experience with XBee is only using the arduino XBee library which makes use of the API mode. So I think it’ll be more comfortable for me to use the API mode again this time.
Could you share with me on the steps to develop a library (preferably in C) for a 2 way communication using the API mode ? Or if you don’t mind, I’m really interested to look at the codes you made for the ARM7 and Cortex you mentioned
Any of the ARM or other processors dev packages should have serial read/write functions. Then the ‘C’ XBee API libraries can be ported over to almost any other processor. The only change would be the serial read and write functions need to match the serial library function of the new processor/development package.
I'd think that if you have the skills to do a custom MCU board, and write or acquire all the I/O drivers and bootloaders, etc., for it, that adapting the widely available versions of the XBee Series 1 support for their binary API would be simple in comparison. There are versions in C, C++ and Python. I've used all.ajienikicio:
Hi Steve, thanks for the reply!Thanks for the Teensy suggestion, but I’m currently making a custom mcu board, so that’s why I need to code into a raw ARM chip directly.
My experience with XBee is only using the arduino XBee library which makes use of the API mode. So I think it’ll be more comfortable for me to use the API mode again this time.
Could you share with me on the steps to develop a library (preferably in C) for a 2 way communication using the API mode ? Or if you don’t mind, I’m really interested to look at the codes you made for the ARM7 and Cortex you mentioned
Series 2 XBee are far more complex and ZigBee only. Digimesh for series 1 is a better meshing network, free, if you don’t need ZigBee. If you don’t need meshing, use series 1, far simpler.