Zigbee didn't work test js files

hi there,

I am testing the zigbee function on my matrix creator device.

i have successfully installed matrix-malos-zigbee. But when i was trying to run the test files under the ‘js_test’ subfolder from ’ src’ in the examples, it didn’t work. on the screen the system seems got frozen at ’ Requesting Zigbee Network Status’
when i was running the test-zigbee.js file.

i have to quit this and run another test file named ’ test_hueBulb_color.js’, i have already powered on my philips hue bulb. and after I run it, there is no response from the philip bulb and also on the screen i can see
checking connection with the Gateway

Did anyone face this issue before as well?



Hi @jja67,

Welcome to the community!

Apologies for the delayed response.

Which version of Raspbian are you using?

Try using the files linked to register the zigbee device first and then toggle it. At the end of the toggle js file, place the following code to toggle the light bulb every 2 seconds.

}, 2000);

Additionally, ensure that your light bulb is not paired with any other zigbee controller (the register command will not work if it is already paired to the MATRIX Creator as well).

Our software developer, Carlos, wrote these files to combine the test code in the malos-zigbee repo and make the workflow a bit easier for a demo we have. Let us know how it goes.

We are looking to improve our zigbee implementation which still needs some work. I’ve also found that sometimes zigbee works after a couple of reboots.


hi Samreen,

thanks for the reply.

Ok, i run the registerzigbee file and it didn’t work. Please note that the philip hue light bulb is powered on on my table near the raspberry pi when I run the js file in my raspberry pi.

here is the screenshots


and also, I have a philip hue motion sensor as well. The philip hue motion sensor didn’t get paired before. Then sensor 's orange blinking when I run the registerZigbee.js ( the orange blinking means the motion sensor is ready for pairing). but the system couldn’t detect my motion sensor device as well.

Are you using a Pi 3 w/ Raspbian Stretch?

Hi Yes, it’s Pi3 w/Raspbian Stretch

i guess i have replied to you from the email but could you receive it Samreen?


Hi @jja67,

Yes, I got your response!

Our zigbee library needs improvement to be more reliable and it is on our development list to integrate it w/ existing API’s like openHAB to help achieve this. If you have any ideas/suggestions that would be greatly appreciated.

In the meantime, I am going to have to test this and see if I can find a workaround. Please give me some time for this.

Thank you!


hi Samreen,


Also , i need to mention that the matrix kernel installation seems not installing well on my Stretch raspbian. I am not sure if this issue caused the problem or others.

i searched in the community and it seems that other users got the same issues as well.

So is there any codes or command that I can run to check if the zigbee module function is good?


the last thing,

the zigbee product that I am testing is the Philips Hue color light bulb and Philips Hue motion sensor.

I guess that should not be a issue right?


Hi @jja67,

We use Philips Hue light bulbs for zigbee as well, so those should be fine.

Your zigbee module should be okay but you can try to re-program the zigbee MCU by running em358-program.bash file in /usr/share/matrixlabs/matrixio-devices. It will likely say something like “already programmed” if it has been and that would likely mean the module itself is okay.

The kernel module installation issues should be resolved by now. Can you elaborate on what error logs you had with the kernel module installation? Are you using Raspbian Stretch with Linux kernels 4.19 (check with uname -a)?


yes the version that i am using now is Linux pi 4.19.66-v7+ #1253 SMP Thu Aug 15 11:49:46 BST 2019 armv7l GNU/Linux. so i think it’s kernels 4.19

yes i run the em358-program.bash file in `/usr/share/matrixlabs/matrixio-devices,

it shows
*** Running the program instead of the bootloader
EM358 MCU was programmed before. Not programming it again.