This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Why Zigbee is not capable for live audio streaming

Other Parts Discussed in Thread: CC2530, CC2538

Theoretical Bandwidth of zigbee is 250kbps(~31kBps) and live speech streaming will be only 32kbps(4kBps). After deep studies on ZStack, we can send only 126Bytes(payload will be 80Bytes) in one transmission. Practically i could able to send 80Bytes as payload continuously with in the interval 10millisecond.

10x 100 = 1Second

80*100 = 8000bytes = 64Kpbs. Which more enough to stream audio data.

Note:- I have tested with One Coordinator and One End Device.

  • Hi,

    Add a router in between, see how the BPS drops.

    By the way, in our tests the actual measured BPS (full duplex) was ~4KBps

  • Not sure what your question really is, the test worked or not?

    But I think the expectation that you will be able to transmit a new frame every 10ms is a little too optimistic. You are working with an 8bit CPU running an OSAL and internally many buffers are allocated, processed and copied before the frame finally ends up at the transmitting antenna, and then the same thing the other way round on the receiver.

    If you want to stream digital audio over RF in the ISM band according to industry standards, use Bluetooth.

  • If you use AMR-NB speech codec with 4.75k bitrate, it might work.

  • No i used Speex Codec which is also with narrowband of 8khz with 4k bitrate. I have used different microcontroller for codec only. That is i connected mic on primary controller where the codec is running and it gives data to CC2530 where the zigbee stack is running. After receiving the data from UART, CC2530 will stream to Coordinator. 

           My question is can i run that speech codec on CC2530(or CC2538) with Zstack running on it. Intention is, if some condition occur then only it should live stream data(After compressing it by codec) to other zigbee device by calling the plugins of respective codec.

  • The computing power is absolutely not enough to do Speex codec on CC2530. As for CC2538, it might be possible if you do a fully optimization on Speex codec.

  • I know while starting the network,  Coordinator will check for free channel and start a network with that channel. Is there any way to create multiple channel at least two channel. My plan is weird, but let me tell you and suggest me that we can do it or not. I think data rate of zigbee is 250kbit/sec for one channel. If i create a two channel. Then one End point of the End device will communicate to coordinator in one channel and other End point  of same End Device will communicate in other channel.So that, other Endpoint transmitting data need not to wait for other. Is it possible.

  • No, you can't create two channel in the same zigbee network.