Xbee extending

I’m a super newbie trying to extend the range of my Smartthings hub’s Zigbee network and from your posts it seems like you have probably learnt a lot trying to do a similar thing.

I’ve bought a 3 pin plug-in-to-the-wall Digi XBee 888-XR-Z14-CW1P3 which i understand is the Xbee-Pro ZB.

I also bought this Xstick to allow my PC to communicate with it https://www.digi.com/products/models/xu-z11.

I installed XCTU on my PC and managed to scan and find Xstick and then clicked the network button attached to it in XCTU and found what i assume was the wall plug.

I then tried to follow this blog post https://www.falco.co.nz/electronic-projects/xbee-to-smartthings1 to figure out what to do next:

I tried changing various settings manually to match the guy’s screenshot but the options available to me didnt precisely match his screen shot https://image.jimcdn.com/app/cms/image/transf/dimension=337x1024:format=png/path/sbcce6f3d99ac720f/image/i36f5e496e0848ed7/version/1422060779/image.png1 (this may be because he is using a slightly different Xbee, i’m not sure).

Instead, I then tried looking for ‘Zigbee Endpoint API firmware’ (from what I assume were various drop down menus of batch settings) as the guy instructs, but couldnt find anything that exactly matched what that phrase. I wrote some of the closest options to the wallplug but in the process of doing so received various error messages ultimately ended up unable to see the wallplug at all.

I’ve now managed to get my xstick to see the wallplug again but have no idea what to do now.

@JohnR can you help?

This is what XCTU looks like now

Okay I will take a stab at this but can use some help as I’m a bit rusty. @JDRoberts may be able to shed more light on the subject. Let’s start with the big picture. What you need to do is get both ZigBee devices to join the SmartThings ZigBee network. The challenge here is you must use the USB stick to configure the power plug’s ZigBee radio with the security settings SmartThings requires. Once you give it that configuration you will no longer be able to talk to it until both devices join the SmartThings ZigBee network. You can get yourself into a situation where the two devices are bricked and useless unless you can do some type of out of band reset to start over.
The security settings are in the XML configuration file found in this post I made a couple of years ago. You will not be able to just load the older config files into your device’s radios. You will have to make the changes manually for each parameter.
A lot of water has gone under the bridge since I designed my last ZigBee device for SmartThings. One thing they added about a year ago is support for the ZigBee leave network command. If the cloud doesn’t like a ZigBee device it can send a ZigBee leave network command to force it off the network. I don’t know what triggers this. However, it is possible that something in the SmartThings cloud sees the power plug, decides it’s not a supported device, and sends the leave network command. This will cause your device to connect work for a few minutes and then just disappear. I don’t know if they are doing this now or not but they were headed down that road. Just a heads up.

1 Like

Thanks John

I have now put XB24-ZB, ZigBee Router API, 23A7 radio firmware on the dongle as per your instructions in your first post on this page FAQ: Mapping your ZigBee network with Digi's XCTU and followed the other numbered instructions.

I went into console mode in XCTU and it now looks like this (see below pic) so i guess i’ve done something but im not sure what!

I think the top left icon is the xstick, the red icon is smartthings and the far right green icon is the wall plug. I assume that the two purple icons are smartthings sensors.

So what next? How do i get my wall plug to act as an extender? I havent done anything directly to it yet. Wont the fact that i’ve made the xstick a router rather than coordinator now prohibit me from programming the wall plug as needed? (it cant see the plug as a child now when i do a scan )

Good job. Now your USB stick is part of your SmartThings ZigBee network. You need to do the same thing to your power plug. Using the XCTU program look at the settings of your USB stick and note the ones that have changed from their default. You changed them when you loaded my xml config file for the USB stick. You can tell if a parameter has been changed from the default because it will have a blue triangle in the lower right corner of the input box. Write them all down so you can manually enter them into the power plug’s input boxes. The KY Encryption Key box will be blank and not appear as if you changed it. But you did, the field is write only, so you can’t see the key. Here is the publicly available ZigBee HA key you will need to use for that field:

KY Encryption Key 5A6967426565416C6C69616E63653039

Now that you have all settings written down you will need to reconnect to the power plug. Not sure how you’re going to do that but the USB stick needs to be reset back to the way it was before so you can talk with the power plug. Once you establish communications with the power plug you can use the XCTU to configure it “over the air” with all the parameters you just wrote down. Make sure you get them right because as soon as you hit save on your power plug you will no longer be able to communicate with it. It will start looking to join a ZigBee network and you can tell SmartThings to open the network for joining just like you did with the USB stick.
Couple more tips: I would use the XCTU to back up the power plug and USB stick default settings and their new settings once you get everything connected. You will also want to make sure the power plug is using the latest ZigBee firmware.

1 Like

Hi John

I actually didnt load your xml config file as i thought you said in your last message not to and to manually input the config instead, so thats what i did.

Anyway. as per your last message, i noted down what had changed on the stick config, reconnected to my power plug and input the same stuff. ( I’m a bit confused tho; couldnt i have just put the config into the power plug settings from the off? Why did i need to change the xstick, then write down what i’d changed,only to go back to the power plug and enter that info in?)

Anyway, when i tried to write the changes to the powerplug I got ‘error writing AT parameters.>connection timeout’ and all the settings seem to have written apart from the KY setting.

I’ve gone in to smartthings and clicked the plus to add a device. how do i find out if its working as an extender?

I’ll let John help you with all the initial process, but once you have the plug joined to the SmartThings hub so that it is recognized as an on/off switch it will automatically act as a router (repeater) regardless of whether its state is on or off, you don’t have to do anything else.

Whether it will stay joined to the network is, as John said, an entirely different question.

Thanks @JDRoberts . I dont think it has worked at the moment :frowning:
How can i check if the plug has joined the smartthings network? At the moment the plug is showing solid green light which i think means its not on a network

It will show up in the things list in the SmartThings mobile app if it is correctly joined. It can’t be used as a repeater until that happens.

1 Like

The XCTU utility will not let you use radio configurations (the xml file) between different radios. You must have an xml file just for that radio. To make an xml file you just have to save your radios config with the XCTU.

If you got a write error then the parameter did not get updated properly. You will need to manually fill in all the necessary fields. Make sure the values you put in are the right place and not over a max or min for that field. The XCTU has very good help built in, just hover your mouse over the field to see a pop up with information. Once you have all the fields entered then write the whole configuration to the power plug. If you write the fields one at a time (as you enter them) you will lose communications with your power plug before you finish. You must write them all at once.

If your device doesn’t have the key your not connected to SmartThings. Your device won’t be allowed to join the ZigBee network without the key.

Hi John. I don’t understand what your first para means or us asking me to do?

I put all the xstick settings in manually rather than using your config file on your other post and wrote them to it. Then I looked at what had the blue triangle next to it and wrote down those values.

Then I reverted to original firmware, connected to the wall plug , typed in those values to the wall plug and wrote them to it.

They all changed but the ky value And I got an error message for it.

I’ll try and go through it all again but Im not currently clear why it was necessary to change the config on the xstick only to change it back again and enter what i’d put into it, into the plug. Couldn’t I just put those settings in the plug in the first place? Also how will i know when I’ve done everything right and it’s successfully joined the network?

I wonder if we are not on the same page. When your usb stick is talking to the wall plug you need to open the wall plug’s settings not the usb stick’s settings. The wall plug will show up just bellow the usb stick. Click on the wall plug to see its settings. You need to manually change the settings to the wall plug not the USB stick.

Yep .For clarity this is what I’ve done:

First of all you asked me to change xstick settings as per the article
you linked to and input settings from your config file.

I did that, then wrote down the bits that had blue triangle on them, then
reverted xstick to original settings so it would see the wall plug.

Then you asked me to input what I had written down (blue triangle values)
into the wall plug settings.

I did that.

Okay good we are on the same page and your doing everything I asked.

So its not letting you enter the encryption key? Do you know what the error was?
If it won’t let you set the encryption key, you may need to update the firmware of your power plug. What options do you have under firmware upgrade for your power plug? I’m looking for a list of firmware names with version numbers by them. We may need to pick one and upload it to your power plug.

Now i cant see the plug from the Xstick :frowning:

Hi John @JohnR , @JDRoberts

I seem to have done all the steps now (after re-establishing connection with the router plug).

I opened smart things and searched and it found ‘thing’ so I added it.

I’ve just tested to see if it has extended the range and i’m afraid it doesn’t seem to have done anything.

Occasionally my xstick (set as ZigBee coordinator 21a7) is seeing the router when I scan for it but its saying ‘could not initialise device’ under ‘function’/

When i try and click on the router it says it is not initialised saying ‘This may occur if the device was sleeping when discovered’ and gives an option to try and initialise, which fails

The diagram now looks like this and the light on the router is flashing.

Help! (Please, thank you)

Why do you have your xstick set as a ZigBee coordinator? That is not part of my instructions. You can only have one ZigBee coordinator per ZigBee network. The SmartThings hub is your ZigBee coordinator. What you have done is created a second ZigBee network that has nothing to do with your SmartThings network. I bet you had to do this to reestablish communications to your plug. The fact that you have a “thing” in your SmartThings database may be a good indication at one time you were connected to it. But now you are not connected to SmartThings. When you get connected you will see other ZigBee devices show up in your network map.

Hi @JohnR the xstick was set as api coordinator when i purchased it.

What do you want me to set it as alternatively?

This eve I have removed the ‘thing’ from smartthings , unplugged the xtstick, held down the button on the digi wall plug router and opened up smartthings app and gone to ‘add device’ and readded the ’ thing’ . I’ve then turned off the smartthings hub for a while in the hope of the sensors 'rerouting through the digi wall plug.

However. My range does not seem to have improved at all.

Please help

Caution, tuff love ahead:
You seem to be repeating the same steps over and over and asking the same questions. My case in point is at one time you followed my suggestion on how to configure the xStick and got it connected to your SmartThings network. You even saw other ZigBee devices. Scroll up to this post Xbee extending. You’re now asking how to do it again? I understand when you work on something part time you forget where you left off.
I think you need to re-read this post. Think about everything you have tried and come up with a list of steps you need to perform in chronological order. Post that list here and I will do my best to help as time permits.

Hi John

I really appreciate your help.

I have diligently followed your directions at every stage.

The reason my xstick is configured as a coordinator, is because that is how it was configured when i bought it and in the following instruction you told me to reset it to how it was before : "Now that you have all settings written down you will need to reconnect to the power plug. Not sure how you’re going to do that but the USB stick needs to be reset back to the way it was before so you can talk with the power plug. "

This evening i tried to go back to the begining. I set the stick as a router API, manually changed the settings to those in your xml file, and added it as a thing to smartthings. I have looked in network mode and been able to see the router plug and smartthings hub.

I have then written down all the things with blue triangle in the settings.

In the meantime I have established that another ‘thing’ showing up in my smartthings app might be the router plug. I think this because when i removed it from smartthings the router plug light became constant (indicating it is not on a network) and then when i re-add it in smartthings the light flashes again.


  1. If i now need to reconnect to the wall plug by resetting the xstick “back to the way it was before” how do i do that without reverting it (the xstick) to being a coordinator (which is what it was before)?

  2. Which of these is true:
    "When you get connected [to the smartthigns network] you will see other ZigBee devices show up in your network map."
    "as soon as you hit save on your power plug [and it is set to join the smartthings network] you will no longer be able to communicate with it. " (therefore i wouldnt be able to see it in a network map accessed via my xstick)

  3. if my router plug is on my smartthings network why does it not seem to be improving the range

Hi @JohnR

I’m still fairly confident that the ‘thing’ showing up in my smartthings app is the router plug as when i remove the 'thing device from smartthings the router plug light stops blinking and goes constant (indicating it is not on a network) . When i re-add it in smartthings the light flashes again (Indicating it is on a network).

Is this sound thinking ?

If So, any idea why it does not appear to be extending the range of my network at all?