ZigBee dongle with pre-installed firmware?

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

ZigBee dongle with pre-installed firmware?

跳至解决方案
3,103 次查看
johancockx
Contributor I

Does Freescale sell any USB dongles that provide ZigBee (or at least 802.15) connectivity without requiring me to develop my own firmware?

From what I gather by looking around on internet,  the most common way to use ZigBee is by developing application-specific firmware. 

As my current project is a feasibility study only and I have limited experience with firmware development,  I would prefer to skip that step. The idea is to plug a USB dongle into an existing embedded computer and modify only the application on that computer to obtain connectivity.

There seem to be some dongles around that communicate with the host computer using an AT style command set.  My hope is that that will be sufficient to evaluate important porperties for this project,  such as maximum throughput of the ZigBee link,  and the performance of automatic network configuration.


标签 (1)
  • RF

标记 (3)
1 解答
1,684 次查看
AlanCollins
Contributor V

Hello Johan,

     Yes, no problem!!.

     You can generate different demo applications from BeeKit wireless toolkit. These demo apps have a feature called ZTC (ZigBee Test Client), which is basically a UART protocol that allows you to monitor and inject messages, in between ZigBee internal layers (AF, APS, ZDO, SS, NWK, MAC). If you enable ZTC, you can make the whole chip to become a "black box" interface. This means you can control ZigBee by UART commands (SPI and IIC are also supported). Of course, you will need to understand the ZigBee API so you know how to create/join network, start a binding process, send data, etc...

I hope this helps.

Best Regards,

Alan Collins

在原帖中查看解决方案

5 回复数
1,685 次查看
AlanCollins
Contributor V

Hello Johan,

     Yes, no problem!!.

     You can generate different demo applications from BeeKit wireless toolkit. These demo apps have a feature called ZTC (ZigBee Test Client), which is basically a UART protocol that allows you to monitor and inject messages, in between ZigBee internal layers (AF, APS, ZDO, SS, NWK, MAC). If you enable ZTC, you can make the whole chip to become a "black box" interface. This means you can control ZigBee by UART commands (SPI and IIC are also supported). Of course, you will need to understand the ZigBee API so you know how to create/join network, start a binding process, send data, etc...

I hope this helps.

Best Regards,

Alan Collins

1,684 次查看
sumitpabbi
Contributor I

Hello,

For prototyping work, I would like to connect the Freescale  ZigBee 1322x USB Dongle to a PC running Windows/Linux OS via USB port and then write a program (in C language) on the PC to control the connected ZigBee device by sending commands (e.g Join/Leave ZigBee Network, Discover ZigBee devices, etc.) to it via USB/UART interface. Does Freescale provide a Windows/Linux C library for ZTC which allows Windows/Linux C programs to directly invoke the Freescale ZigBee ZTC APIs over the USB/UART interface?

0 项奖励
回复
1,684 次查看
AlanCollins
Contributor V

Hello sumitpabbi

     Yes, Freescale provides the TestTool sotfware included in the BeeKit toolkit installer. Basically, you download ZTC enabled firmware to 1322x-USB dongle, then connect it to the PC / Linux so it will be recognized as COM port / TTY serial interface. The TestTool (works only on Windows) includes a command console for you to manually access to all the ZTC available commands at all layers of the protocol. Besides the command console, TestTool includes a scripting client so you can run your Python scripts for more exhaustive testing scenarios.  For Linux, you could use Python as resource to reproduce a similar solution.

0 项奖励
回复
1,684 次查看
sumitpabbi
Contributor I

Hello Alan,

Thanks for this information. I shall explore the Python scripting option that you have described.

Are you aware of any Windows/Linux example program in C Language for sending/receiving ZTC messages over serial interface to the 1322x USB dongle?

0 项奖励
回复
1,684 次查看
AlanCollins
Contributor V

Here is a quick example on how to open the serial port and send/receive ZTC commands using python. It works on both Linux and Windows.

import serial

import binascii

GetModeCmd = ('\x02\xA3\x02\x00\x00\xA1') #ZTC-GetMode.Request 02 A3 02 00 00 A1

GetModeRespLenght = 26

#Linux:

#zigbeeUSB = serial.Serial('/dev/ttyACM0')

#Windows

zigbeeUSB = serial.Serial('COM59')

zigbeeUSB.baudrate = 115200

zigbeeUSB.timeout = None # This is important to zigbeeUSB.read is blocking

  # until the number of bytes is received

print zigbeeUSB.portstr

print "GetMode request:"

print " ".join(hex(ord(n)) for n in GetModeCmd)

zigbeeUSB.write(GetModeCmd)

RxBuffer = zigbeeUSB.read(GetModeRespLenght)

print "GetMode response:"

print " ".join(hex(ord(n)) for n in RxBuffer)

zigbeeUSB.close()

0 项奖励
回复