At command timesout but Remote At command works

I am using an arduino based micro controller for interfacing with a programmable XBee PRO 900HP 200K. During setup I want to be able to set the Channel Mask, TX Power Level, Network ID, Sleep Mode, and some other AT Command Parameters.

This had been working for me earlier, but this morning all of my AT Commands began timing out and failing. Thinking it might be an issue with the arduino board I am using I switched to the Digi Dev board and XCTU to try communicating with the board.

I am able to detect the module (We’ll call it ModA) through the com port and it shows up in the list of radio modules in XCTU. I am also able to find it as a remote module using a separate module (ModB). However, I am unable to read the radio settings of ModA when trying to read it through the COM port (AT Commands), but if I read ModA’s settings through ModB (Remote AT Commands) I am able to read out all of the settings. To my suprise the radio was not set to sleep (SM=0), even though I had been previously setting it to pinsleep mode (SM=1)

Any ideas what is happening here and what may have changed to cause this behavior when it had been working fine last week?

I have also tried using the another programmable radio module and I am getting the same issues, however when I use a non-programmable radio module (like ModB) I am able to perform AT commands as expected. So the issues seems to be with trying to use a programmable radio module, but still doesn’t explain why it was working earlier, but now it is failing.

Sounds like the Guard times or command mode character along with a few other settings may have been changed. What I would suggest is reloading the radios firmware to the module using the default settings. You may choose to do this via the UART with the recovery function or the Restore function (ATRE) sent as a remote AT command.

1 Like

Oh and what is the full part number of the Programmable module you are working with? Using a Programmable along with an Arduino really defeats the purpose of the Programmable as all you are doing is having two processor talk to each other and then have the 2nd one tell the radio what to do.

Performing the reset fixed the issue with issuing AT commands via XCTU, but I can still no longer set them with my arduino. Perhaps there is a conflict when trying to use a programmable XBEE. (Yes I realized it defeats the purpose, but I had them on hand and they were working well enough before today) The program loaded to my micro doesn’t seem to have issues using the non-programmable and messing with their settings, but it caused the same issue with the reset programmable XBee.

The Code for your Arduino wants to use or access the XBee in API mode 2 where as the transparent application the Programmable XBee is most likely running wants to use the radio in Transparent mode. The two simply do not communicate like that.

Oh one other thing, since you restore the XBee to defaults, try enabling it in API mode and then setting the baud rate to 115.2kbps. This is on the RF processor and not the Freescale processor.