I've had a look around but can't find a clear answer.

Can ZigBee Smart Energy Profile 2.0 devices send unsolicited messages to a data concentrator without a poll from the concentrator? Like measurements or event data?

  • \$\begingroup\$ Can a zigbee initiate a transmission - that's what this question boils down to. \$\endgroup\$
    – Andy aka
    Commented Oct 29, 2015 at 8:29
  • \$\begingroup\$ It can, but it has varying devices that follow a client-server architecture. Servers are devices that expose services and clients access them. So the question is whether a server can also send events to clients without being polled by a client device. \$\endgroup\$ Commented Oct 29, 2015 at 8:35
  • \$\begingroup\$ This is a question therefore about protocols and not about EE. \$\endgroup\$
    – Andy aka
    Commented Oct 29, 2015 at 8:43
  • \$\begingroup\$ Please inform me which one of the Stack Exchange is more suited for a question on protocols? \$\endgroup\$ Commented Oct 29, 2015 at 9:05
  • \$\begingroup\$ I'm not sure but I'm sure someone will come along and point you in the right direction. \$\endgroup\$
    – Andy aka
    Commented Oct 29, 2015 at 9:19

1 Answer 1


I think you are getting confused, or confusing me, with some of your terminology.

Devices = EndDevice - If that is what you mean, typically battery powered devices that sleep.

Concentrator = Coordinator - I assume you mean Coordinator, concentrator means something different in ZigBee and is only used in a certain routing scheme.

Poll = Data Request - An EndDevice can sleep and as such needs a parent. The parent can be a Router or the Coordinator and stores messages destined for the child EndDevice until it wakes and sends a Data Request to its Parent, this data Request is sometimes refered to as a "Poll". The Parent sends a MAC acknowledgement in response, with a "Frame Pending" bit to indicate to the EndDevice that it should stay awake to receive some queued messages.

With ZigBee terminology out of the way; Yes, an EndDevice (or Coordinator/Concentrator or Router) can wake and send messages to the Coordinator (or any other device) at any time once it has joined the network and passed through the secure joining process, and has a parent to forward on the messages. The issue for an EndDevice is in the other direction, it will only receive and act on a message when it wakes and "Polls" the parent for any queued messages. The other issue is typically where to send the message, even if you are sending to the Coordinator and known it is network address 0x0000, you still do not know the EndPoint number (which is defined by the device manufacturer). There are various mechanism used to discover this, typically in SE a Match Descriptor request is used to discover the address/endpoint of a device supporting a particular cluster.

Regards, TC.

  • \$\begingroup\$ Thanks TC that helps a lot. So, if a coordinator needed information from an end device? How would you aggregate data from a bunch of end devices? From your description, it would seem that data on end devices are only accessible if the end devices are awake, so can coordinators wake end devices and poll for data? \$\endgroup\$ Commented Oct 29, 2015 at 9:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.