We’ve got a few thousand XBee Pro S1 modules installed in our devices in the field and we’ve been getting a few recently sent back because the xbees aren’t working; on investigation they all had the default settings like a brand new XBee.
Has anybody got any idea what might be happening? Could be our software sending the wrong command but I didn’t think there was a “Factory defaults” command or anything?
All, the only way for an XBee module to restore to defaults after they have been written to memory using the WR command, is for an ATRE, WR command to be issued.
The same here.
Using S1 then S2 for years without any problems, then XBee3 802.15.4 and some devices are reset to factory defaults.
Module configuration is done using XCTU, module is updated to latest firmware version, plugged into our device.
The devices just send data transparently, no AT commands.
Since the issue is not frequent, it’s quite hard to capture it : I am on this issue since 3 weeks, without any clue on what is happening…
We gave up in the end, I read the xbee settings on boot and check if it’s using our custom network id. If it is I read the settings from the xbee and save them. If not I write the saved settings back to the xbee. It works, but it’s pretty poor that it’s necessary.
Oh, and I also tapped the serial lines and recorded all traffic to and from the xbee for three weeks with a PLC turning the system off and on every ten minutes to record this happening. I can confirm that during that time we never sent an xbee write command but this still happened.
We have anther product with an embedded XBee setup procedure; it never fails; this does not mean that the module is not reset to defaults from time to time.
I am using Through Hole modules only, I wonder if there was some subtle hardware changes between S2 and XBee3 particularly on RESET and DIN/CONFIG?
On you side, do you drive RESET with an open drain IO? Also; In some posts, I have seen that a pull up resistor is used on DIN…
I probably will implement a XBee config validation/update process if I don’t find any hardware issue.
This can happen if parameter settings are assigned but not written with a ATWR command. The assigned settings will be lost on a reset or a power cycle. If no settings have been written the module will revert to factory defaults.
A low voltage or out of spec power conditions could account for unexpected behavior - for example, issuing a write command during a brown out condition may not complete, or could corrupt a location in volatile memory. Theoretically a recovery could be needed by the micro to defaults. The module is not tested for out-of-specification conditions so a solid recovery routine is recommended for battery powered applications or inconsistent power situations.