I have a very simple setup, using two XBee S2C modules. One coordinator and one end device, set up for I/O line passing. I wanted the End to sleep if/when the Coord ‘goes away’ (power off, for example). This way, the End would become disassociated and enter a cyclic sleep to conserve battery power. When I remove the coordinator, the end device does not enter a cyclic sleep. It doesn’t sleep at all, unless I reset it. Then, it sleeps for the time specified by DP but then wakes up and never sleeps again. I think this is using more power than ever, as it keeps attempting to associate with an absent Coord. Am I not configuring correctly, or do I misunderstand what the DP command is supposed to do?
Disassociated Cyclic Sleep (DP) command, does not seem to be cyclic at all.
what firmware version are you working with?
2001 is what XCTU says
Turn off association and just use the default settings with SM used.
I talked with Digi app engineer & he said the same thing. I did this, making both modules as End Device and disabling association. But when I remove power from what had been the coordinator, the remote still does channel scanning & consumes more power than when it is cycling per DM. Digi says it’s not supposed to do this, but my ammeter says it is…
Do you still have the A1 and A2 commands set?
Pardon my typo in last reply, I said DM where I meant DP.
Both A1 & A2 are set to 0 on both ends. CH & ID are set the same on both ends. SC is set to limit to only the channel that matches CH (hoping it would cut down on scanning).
I should mention that my application has no means to issue AT commands to the radios, or this would be a lot easier. The radios, once configured, are meant to autonomously relay I/O information without processor or software control. The problem is that one end will be powered off about 2/3 of the time. I need the remote end to go into what I’m considering “deep sleep”, only periodically checking to see if the other is powered back up. DP fits the bill, but only gets activated on Reset or powerup.
I’m starting to think that the solution is to re-enable association and DP, and have the remote (End Device) trigger a one-shot (74LVC123) when the other end powers off. The pulse from the one-shot can hit the Reset pin of the remote, causing it to cycle per DP until the coordinator comes back online, at which time it will associate & operate normally. This scenario works when I manually reset the End with the button on the eval board. This requires bi-directional I/O line passing, which seems to work…more testing today to find out for sure.
I don’t know what you are seeing but I just set two S2C modules with the following settings:
Node 1 Node 2
D1 4 D1 3
AP1 IC FF
In this configuration, I can toggle D1 high and low and see the output of it.
I then set SM to 4 and a SP of 5 seconds on the output node.
Observed that the sleep was about 5 seconds.
Power off the Non sleeping node and I did not observe any change to the sleep time of the sleeping node.
Reset my radios to default settings & tried your configuration. Problem went away.
I must have had something set improperly from too much experimentation! Thanks for the help!
I built on this to implement what I described above, so that I have two different sleep cycles, depending on whether the non-sleeper is active or not. Working pretty well after some tweaking to the settings.
My remote now goes from 300 mS sleep cycle, to 10 second sleep cycle when the Coordinator goes offline. This will greatly extend battery life!