Last updated: 08/03/2020, info about first prototype and initial testing

Overview

zig-a-zig-ah! preview

zig-a-zig-ah! (zzh, for short) is little USB-stick form factor dev board for multiprotocol RF tinkering.

It features:

  • TI CC2652R or CC2652RB (discussion) SimpleLink™ multi-standard wireless MCU, a multiprotocol 2.4 GHz wireless microcontroller targeting Thread, Zigbee®, Bluetooth® 5 Low Energy, IEEE 802.15.4g, IPv6-enabled smart objects (6LoWPAN) and proprietary systems.
  • Communicates with the host computer via the common CH340 USB-UART bridge, no manual driver installation needed in most cases (Windows and Linux).
  • Self-programming via the TI CC-series serial bootstrap loader (as long as it is not disabled in code!), pushbutton on the default BSL pin to put the device into this mode.
  • cJTAG debug header, in case you disable BSL by accident or want a proper debug interface. Sadly this is not a standard header due to space constraints, see below for the details of a small "debug adapter" board.
  • SMA antenna port for an external antenna of your choice. Go wild or pick something discrete.

Think of it as an upgrade to the ubiquitous CC2531 USB Sticks commonly used for Zigbee tinkering. CC2652 has a much beefier processor, more memory and a sane free compiler that should enable easier development compared to the old 8051 based CC2530/1 devices.

Click here to subscribe to the Electrolama mailing list to be notified of project updates and when kits/assembles units go on sale.

Current status

08/03/2020

First prototype unit built and passed all preliminary tests!

One of the nice things about these new chips from TI is the inclusion of a serial bootloader in the ROM. Enabled by default at the factory and available unless modified by the application otherwise, this means that you can burn code without needing an external programmer:

Obligatory blinkenlights:

Debug adapter to get access to the cJTAG programming interface. Also can be used to perform RF tests using TI software:

Finally, a quick test of zigbee2mqtt:

A little more work is needed before I am happy releasing this but it is close!

Revision A, Draft 3 design files in the repository, some minor changes expected before the first proper release. Follow the development progress on this Twitter thread.

Also thinking of a second variant that uses CC2652P, sadly not pin compatible with CC2652R (or CC2652RB) so this will have be a new board spin. "P" part has a built-in PA (but no LNA) and should provide better range.

Interested in this? Ping me and let me know what you think

Instructions

Flashing using BSL

In it's default configuration the chip used supports programing over USB via an embedded bootloader. To activate flashing press and hold the programing button whilst inserting the stick. cc2538-bsl can be used to flash the board and works on both Windows and Linux.

$ ./cc2538-bsl.py -p /dev/ttyUSB0 -evw firmware.hex

Zigbee2MQTT

Zigbee2MQTT has beta support for the chipset used on this board, this is not an offically supported configration and your millage may vary. You will need to flash a beta version of the coordinator from https://github.com/Koenkk/Z-Stack-firmware/tree/develop.

Sample Config

serial:
  port: /dev/ttyUSB0
advanced:
  rtscts: false

Purchase

Assembled versions of zig-a-zig-ah! will be made available soon.

Click here to subscribe to the Electrolama mailing list to be notified of project updates and when kits/assembles units go on sale.

Downloads

  • coming soon

License

zig-a-zig-ah! is designed by Electrolama / Omer Kilic and licensed under the Solderpad Hardware License 2.0.

ACKs

Thanks to:

  • @GeorgeIoak and @matthewvenn for design review and comments during early prototyping
  • Fredrik K for his domain expertise, design review and (much appreciated!) RF help
  • @KoenKK for his work on the great zigbee2mqtt project and testing prototypes
  • @egelmex for testing prototypes, improving docs and being an all around cool dude

Name credit goes to @9600, this had a much boring name before he suggested zig-a-zig-ah!

Contact

Ping @OmerK