DIY Programmable XBee (S2B,S2C) ZigBee integration with SmartThings

Just thought to share that XBee S2C is now considered a Legacy Digi product succeeded by XBee 3 :vulcan_salute: The good news is that all of the modules seem to have HCS08 on board, making all of them programmable. That’s awesome! :sun_with_face:

BAse on what I see that is only a chip. What would you need to but, for the US, to put this in play as a ZigBee repeater

They still offer the XBee3 in TH and SMT configurations for easy migrations from S2C. Similarly to S2C, one would just need to configure it as a Router, join the ST network and it should also work as a repeater in the network. I need to order couple of them to make sure the interoperability is still there… it’s exciting as it has been a while since Digi introduced any new XBee modules.

I’ve raised the interoperability question with ZigBee HA networks via Digi forums. :crossed_fingers:

It also appears that you can do micropython right in the chip. Which is
much nicer.

Digi.com is really thin on the details though. Although the MicroPython promise seems interesting, it’s something I’d expect to be running on the EFM32 chip, not HCS08. I guess we’ll hear more on the Embedded World 2018 event (27 February - 1 March)

I bought the items in this list, you may not need or want all that. It’s an old list too, so possibly better choices available.

I have posted in this thread and the thread I linked to about my adventures creating a repeater out of the parts I ordered.

I have one in my shed and it has worked well.

For anyone interested, here is more info about MicroPython in Digi’s products (Programming Guide). It also includes plenty of examples.

There’s also a blog post about it.

Within the guide, they are referring to their Cellular Modem products, but there’s no doubt that the XBee3 ZigBee radios will function similarly and provide the same overall development experience.

Some quick takeaways based on that:

  1. You can write MicroPython directly via XCTU, there’s a special MicroPython terminal included.
  2. There’s a special AP mode 4 which puts the radio to MicroPython REPL mode. (Read–Eval–Print Loop), evaluating the code as you type. But there are other modes like flash mode where a block of code gets flashed to the device right away.
  3. Code is executed directly on the EFM32 chip
  4. HCS08 is not in the picture when it comes to MicroPython
  5. The documentation does not indicate if the MicroPython code can be updated remotely. All the examples are for local execution only (radio must be attached via serial to the computer running XCTU)

I ordered one to play with, should be here soon!

1 Like

Which model did you end up getting and from where? Can you add a link to the site?

Yea I got a pro-SMT version: https://www.mouser.com/ProductDetail/Digi-International/XB3-24Z8PS/?qs=W0yvOO0ixfF%2b1O%2bvZuLjaw%3D%3D&utm_source=eciaauthorized&utm_medium=aggregator&utm_campaign=XB3-24Z8PS&utm_term=XB3-24Z8PS&utm_content=Digi-International

The non-pro are $10 cheaper, but no one has them.

I also assume I would have to construct the frame myself more or less. It seems like I should be able to basically construct the whole frame to send before hand with just the 01/00 for on/off and send it without all the setup using the wpan send command, am I thinking of this correctly?

Thanks for the link. There is no MicroPython manual available for the ZigBee radios. I’m hoping there are libraries created for easy ZigBee frame sending. Otherwise, you’d need to construct them manually, yes…

That frame question was in reply to the current C code, these forums make
threads a bit confusing.

Oh, well, your understanding is correct. You can look what pxbee/pan/zigbee/* provides you in terms of helpers, but the ZigBee part of the SDK was left to a very incomplete state. You could write your own abstraction layer that could be used more generally, that would be cool! :slight_smile:

As the XBee3 includes the HCS08 processor, one can always hope that a new version of the SDK will be released promptly that has the ZigBee abstraction more complete :crossed_fingers:

Were you able to order one? Not sure if they do international shipping.

Not yet. Mouser does international shipping, but I’m going for the XB3-24Z8ST model (TH + SMA connector), which is not in stock yet. (They should get them on the 22nd of Feb. :crossed_fingers:)

I got mine and it appears the current firmware doesn’t support MicroPython right now… have a question into Digi.

That is sad to hear. Let us know how it goes. I posted to the forums to get more information, all I got was a recommendation to reach out to the sales staff, which I did. I found out they are completely clueless on what they are selling and their job/task is just to bring in new “sales projects” :face_with_head_bandage:

Here’s the digi thread I created, please upvote or add for more visibility into the issue: Digi Technical Support Forums

Cheers! :beers:

Here you go:

“presales team said AP mode will be available with later firmware versions
in 2018 when the XBee 3 WiFi is going to be released. Those will support AP
mode and micropython”

So yea. Booooo!

1 Like

Thanks for the info. But what about the HCS08, is it still there? can you access it? can you still upload the app firmware to it via the bootloader?

1 Like