If that is the case then how come I can still see the device?

Is that because it can still see Zigbee 2012 devices just not communicate with them? Is there a list of available features that 2012 and 2007 share?

If the devices are using a Public profile, then all you need to do is to set the ZS parameter accordingly. Then adjust your python scripts to use the specific End points and cluster ID’s the 3rd party devices wants. Also make sure that the 3rd party device can send to Digi’s Cluster ID and End points. Oh and don’t forget about the Profile ID as well.

I believe I have done so. The bind occurs. But I don’t know how to ask the X4 to query the end device for data on that bind.

You do a Recv from in your python script as well as how you declare the port. Take a look at the sample Hello world. You declare the socket to the correct Cluster ID, End point and profile ID.

This is my current code. the X4 seems to hang on the recvfrom function

DESTINATION=(“00:12:4b:00:07:b5:64:81!”, 0x09, 0x0104, 0x0402)

Create the socket, datagram mode, proprietary transport:

sd = socket(AF_XBEE, SOCK_DGRAM, XBS_PROT_APS)

Bind to endpoint 0xe8 (232):

sd.bind((“”, 0x09, 0, 0))
print “Bound now getting Temperature”

Send “Hello, World!” to the destination node, endpoint,

using the profile_id and cluster_id specified in

DESTINATION:

sd.sendto(“Hello World!”,0,DESTINATION)

payload, src_addr = sd.recvfrom(255)

print payload

print “Now Closing…”
sd.close()

DESTINATION=(“[54e3]!”, 0xe8, 0xc105, 0x11)

Needs to have the Cluster ID, End point and profile ID of the device you want to send and receive data from. You also need to have the radio is ZDO pass thru mode.

Why is your endpoint, cluster ID and Profile ID very different from mine ?

My device hangs at recvfrom still. why is this so?

DESTINATION=(SensorTagAdd, 0x09, 0x0104, 0x0402)

Create the socket, datagram mode, use APS:

sd = socket(AF_XBEE, SOCK_DGRAM, XBS_PROT_APS)

Bind to endpoint 0x07 (7):

sd.bind((CoordinatorAdd, 0x07, 0x0104, 0x0402))

payload, senderaddr = sd.recvfrom(255)

print payload

sd.close()

Thanks. Where would i find how to enable ZDO pass thru mode?

Every manufacture and product standard has different Cluster ID’s, End points and profile ID’s.

You would use the AO command to change to ZDO pass thru.