CC2531 based router (firmware)

I’ve replaced my old coordinator hardware with CC2530 with an external antenna and therefore one of CC2531 was not used.

The guys on GitHub asked me to make a router firmware for СС2531 too. I’ve spent some time and prepared 3 variants:

  1. CC2531-router.hex – just a router, without diagnostics and a USB serial port.
  2. CC2531-router-diag.hex – a router with diagnostic reports and without a USB serial port.
  3. CC2531-router-diag-usb.hex – a router with diagnostic reports and a USB serial port. The firmware dumps diagnostic reports to the serial port too.

Note: This firmware is for simple CC2531 boards without an additional RF front-ends.

Buttons:

SW1 – Changes a virtual state of the router (the router sends it in a diagnostic report) and a state of the green light.
SW2:

  1. Short single press – to re-send a binding request to a coordinator (it allows you to test a connection).
  2. Long single press (about 5 seconds) – to reset the router and initiate a joining process.

Lights:

Green light – a short blink when the router connected to a network.

Red light:

  • short fast blinks (one per second) – the router is connecting to a network.
  • long blinks (one short flash per 4 seconds) – normal operations.
  • three short blinks – the router cannot send a report to a coordinator.

How to use

  1. Download and flash the firmware.
  2. Power off/on (restart) the router.
  3. Permit joining to a network on your coordinator.

===========================

UPDATE 2020-09-28

Added the “Aging” mode. The router forgets child devices that didn’t send any data for four hours. It helps when an end-device selects a new path to a coordinator.

UPDATE 2018-09-26

1. Allows a router to use all possible channels (the old firmware was used the channel #11). But now, the router will take more time to connect to a coordinator.
2. A router may report link quality for all connected neighbors.

UPDATE 2019-02-04

1. The previous version allowed to join for deleted devices.
2. СС2530 can be re-paired if you power on/power off  it three times (power on, wait 2 seconds, power off, repeat this cycle three times).


Comments
Harvey Specter
Posted at 09:57 April 6, 2021
elbueno222
Reply
Author

I am having an issue with the router firmware where my routers lose connection with the coordinator during 10 minutes, I have created an issue in github with the details: https://github.com/Koenkk/Z-Stack-firmware/issues/281

    Harvey Specter
    Posted at 10:56 April 6, 2021
    Owner
    Reply
    Author

    Hello.
    Do you have any confirmation that the problem is related to the router’s firmware? There are other issues possible: low signal level, RF noises, unstable power source, network topology.

      Harvey Specter
      Posted at 11:36 April 6, 2021
      elbueno222
      Reply
      Author

      Yes after sniffing the traffic I am sure the problem is related to the router´s firmware as the Router1 stars sending the messages to the Router2 instead of the coordinator without any reason (the routers and coordinator are in the same position). This issue happens every 2-3 days and the routers fix it themselves after 10 minutes or so, but the whole network is down during those 10 minutes. I can provide the sniff traffic if it is helpful

      Harvey Specter
      Posted at 14:14 April 6, 2021
      elbueno222
      Reply
      Author

      Yes I am sure the problem is related to the router’s firmware, please check the issue in github for details and we can continue the conversation there

Harvey Specter
Posted at 18:36 March 1, 2021
Abeltje
Reply
Author

Can you tell me why your router firmware makes the device check in every minute? Other router like devices have a check in time every hour.

    Harvey Specter
    Posted at 03:41 March 2, 2021
    Owner
    Reply
    Author

    It allows checking that the router is active. You may change this interval in the configurable firmware, or disable it at all.

Harvey Specter
Posted at 20:07 February 4, 2021
Hammad
Reply
Author

Hi, where could I get the source code for the router firmware. I would like to add additional debug information to push on the USB serial port for a research project.

    Harvey Specter
    Posted at 08:54 February 6, 2021
    Owner
    Reply
    Author

    Sorry, the sources are not available.

Harvey Specter
Posted at 20:59 February 2, 2021
Abeltje
Reply
Author

Firmware build date shows as:

2018-09-26 but flashed my CC2531 with the latest version from GitHub (Koenkk) 2020-09-29 . Is this correct?

Router checks in very often instead of once per hour. Is this correct?

Is there a possibility for you to fabricate/make a Zigbee 3.0 firmware for the CC2531? Coordinator firmware 3.0 is yet available.

    Harvey Specter
    Posted at 16:54 February 4, 2021
    Abeltje
    Reply
    Author

    Allright.. I’ve just tried every available firmware file to see if the firmware build date within Z2M would change. It didn’t. I think, but i can be wrong, that the orriginal build date is still in the updated firmware files. Is this possible?

    Also the CC2531 show as CC2530 within Z2M with the wrong picture. This would be on Koenkk’s side to change i think?

Harvey Specter
Posted at 19:21 January 17, 2021
Abeltje
Reply
Author

1.) Wich version off the Zigbee protocol does this firmware have? 1.2 or 3?
2.) When 1.2, will it properly work with my current 3.0 network?
3.) To flash my CC2531, do I flash it with the firmware provided on this site or do I flash it with the Koenkk firmware from GitHub?
4.) Are there any notable changes between the firmware here and the firmware on GitHub?

    Harvey Specter
    Posted at 03:24 January 18, 2021
    Owner
    Reply
    Author

    1. 1.2
    2. Yes.
    3,4 They are identical. Koen makes a copy of router firmware from my website.

Harvey Specter
Posted at 18:06 January 2, 2021
Julian
Reply
Author

Hi!
Thanks for all the great work!

My main question as I am trying to understand what is happening with a CC2531 router: I’m wondering if there is a way to increase the diagnostic output onto the USB /dev/tty to see more of what the firmware is trying?

Background:
I’m trying to use a C2531 stick flashed with the router-diag-usb to act as a repeater on a Philips Hue network. It is my understanding that Hue Bridge will accept routers (apparently it has been done with a IKEA Tradfri repeater).
My stick is reporting ‘ready for join’ by flashing red every second.
on /dev/ttyACM0 I can see it reports that the network is not ready for joining until I initiate a search from within Hue:
PANID:F1D3,Ch:11,Join:0
PANID:F1D3,Ch:11,Join:1
PANID:F1D3,Ch:11,Join:1
PANID:F1D3,Ch:11,Join:0

It is entirely possible that the Hue bridge will not pair with a 3rd party router (i.e. the CC2531). Has anyone had any success?

Short of acquiring and flashing a second stick as a sniffer, if there is more diagnostic output available, that could help.

Also, some other additional behavior:
– Occasionally I see 11 bytes output by diag between the PANID items: eg
fe06 4180 0002 0002 0603 c2. ..A……..
– Sometimes the green light will go solid green during what looks like a pair request, other times it will blink rapidly. (All at the same time as red line is still blinking)

Thanks!

    Harvey Specter
    Posted at 12:45 January 3, 2021
    Owner
    Reply
    Author

    Sorry, but I don’t have a firmware with more debug info. A proprietary hub may accept only proprietary devices. It is a normal practice. For example, Xiaomi or Livolo do the same.

Harvey Specter
Posted at 15:51 January 1, 2021
Michael Lewis
Reply
Author

Hello, If I’ve got this router connected to a Zigbee coordinator, is there a way for that coordinator to check that this router is alive, such as by reading some attribute of the router?

For context, I’ve got a pair of cc2531s running your router and coordinator, talking to Zigbee2MQTT and forming part of an alarm system. I’d like to confirm that the power hasn’t been maliciously disconnected, hence the need for a proactive status check.
I’m wondering if there is a way to get Zigbee2MQTT to query the router for some attribute, or perhaps have the coordinator send a message back to itself but forcing it to go via the router. Ideally I’d like to avoid dependancy on any devices downstream of the router, since they might be sleeping or reachable other than via the router.
Any suggestions greatly appreciated.

    Harvey Specter
    Posted at 16:07 January 1, 2021
    Michael Lewis
    Reply
    Author

    I’ve just realised I can send a MQTT message to zigbee2mqtt//get to query for the “led” state.

      Harvey Specter
      Posted at 06:46 January 2, 2021
      Owner
      Reply
      Author

      Yes, correct. Also, the firmware sends the ‘led’ state every 60 seconds.

Harvey Specter
Posted at 17:22 October 2, 2020
Dimitris
Reply
Author

Hi. I am trying to find firmware for CC2531 with antenna to work as router.
I cant find it anywhere. It is impossible or I should just try harder to find it?
If I use yours, the only problem would be that the antenna wont work?
Thx!

    Harvey Specter
    Posted at 09:09 October 3, 2020
    Owner
    Reply
    Author

    The antenna does not have any effect on a firmware. You may use the firmware for CC2531.

      Harvey Specter
      Posted at 08:22 October 4, 2020
      Dimitris
      Reply
      Author

      You mention: “Note: This firmware is for simple CC2531 boards without additional RD front-ends.”

      What is “RD front-ends”?
      I feel (and probably am) very noob!

        Harvey Specter
        Posted at 08:29 October 4, 2020
        Owner
        Reply
        Author

        Hi! It is a typo. You should read “RF frontend”.

Harvey Specter
Posted at 10:36 August 21, 2020
elbueno222
Reply
Author

Hi, I am having an issue with my zigbee network. I have two routers CC2531 and both routers think one of the devices is connected to them, which is causing issues when trying to reach the device, is there any option to fix this issue?

We are discussing about this issue in github: https://github.com/Koenkk/zigbee2mqtt/issues/4038

    Harvey Specter
    Posted at 10:45 August 21, 2020
    Owner
    Reply
    Author

    Sorry, I cannot offer a solution. It seems the signal between the device and both routers is poor or equal. The device select one rouher, then another, then repeat.

      Harvey Specter
      Posted at 12:06 August 21, 2020
      elbueno222
      Reply
      Author

      Thanks for the quick reply, but that is not exactly the case, the signal with one of the routers is 170 and with the other is 86. I think the issue originated when the device was connected to one of the routers and I turned off that router for 5-10 minutes, during this time the device connected to the other router, but when I turned the first router back on, this router still thinks the device is connected to it when it is not. I am not sure how the router firmware works, but I think a possible solution would be for the router to clean or refresh the list of devices connected to it after it is turned on, or something similar, does this make sense?

        Harvey Specter
        Posted at 12:11 August 21, 2020
        Owner
        Reply
        Author

        The routers should be always on. Of course, the device will try to search a new path to the coordinator, if the previous router does not work.

          Harvey Specter
          Posted at 12:13 August 21, 2020
          elbueno222
          Author

          Yes, that is correct, but the first router should remove the device from its list of devices as the device is already connected to a different router, and that is not happening

          Harvey Specter
          Posted at 12:15 August 21, 2020
          Owner
          Author

          I think this path is stored on the coordinator side. Did you try to restart the coordinator?

          Harvey Specter
          Posted at 12:21 August 21, 2020
          elbueno222
          Author

          Yes, I have restarted Home Assistant many times from the moment this “double connection” issue started more than two weeks ago, but the issue is still there, and I have seen other people with similar issues when the zigbee map shows a device connected to two different routers. Maybe it is easier if we continue the conversation on github? (Koenkk can also help us)

          https://github.com/Koenkk/zigbee2mqtt/issues/4038

          Harvey Specter
          Posted at 14:15 August 24, 2020
          elbueno222
          Author

          I know as a workaround I could restart the routers and coordinator and that might fix the problem temporarily, but I am trying to find a permanent solution for everyone having a similar issue where one end device appears as connected to two different routers in the zigbee map

          Harvey Specter
          Posted at 17:03 August 25, 2020
          elbueno222
          Author

          Koenkk found a solution for this problem 🙂
          Please check it out: https://github.com/Koenkk/zigbee2mqtt/issues/4038#issuecomment-680134557

Harvey Specter
Posted at 13:29 July 31, 2020
G
Reply
Author

It seems like the router firmware is reporting the status of the LED back to the coordinator every second, which makes it hard to debug issues when having multiple CC2531 routers.

Is it possible to disable that?

    Harvey Specter
    Posted at 07:48 August 1, 2020
    Owner
    Reply
    Author

    Hi. The interval is configurable. You may do it using the “interval” command in Z2M, or you may use my configurable firmware.

      Harvey Specter
      Posted at 21:41 August 2, 2020
      G
      Reply
      Author

      I’m not using z2m, and would like to have the same features as the old firmware (reset button + toggle switch for the LED), but I have no idea how the pins are connected on the board (the usual CC2531 from AliExpress).

        Harvey Specter
        Posted at 03:31 August 3, 2020
        Owner
        Reply
        Author

        I can only offer to erase and re-flash your CC2531 with the regular router firmware again.

          Harvey Specter
          Posted at 07:09 August 3, 2020
          G
          Author

          Thanks, I guess I’ll have to figure it out, somehow 🙂

Harvey Specter
Posted at 19:29 July 9, 2020
Radoslav
Reply
Author

Hi,
thanks for this FW, I’m using it in CC2531, but I have problems with low LQI. Don’t you know, how to do hack antenna on CC2531 ? Something like this https://hackaday.io/project/163505-cc2531-usb-adapter-antenna-mod but on this PCB http://ebyte.com/en/product-view-news.aspx?id=523.

    Harvey Specter
    Posted at 11:32 July 10, 2020
    Owner
    Reply
    Author

    Hi. Sorry, but I’m not good at electronics.

Harvey Specter
Posted at 12:27 April 30, 2020
Mal Hub
Reply
Author

Hey. Does the router firmware only try to connect only to a fixed panid 1F48, any way to change it ?

    Harvey Specter
    Posted at 13:29 April 30, 2020
    Owner
    Reply
    Author

    It scans for all available networks and channels and connect to the first found network.

Harvey Specter
Posted at 10:31 March 21, 2020
Yeoh
Reply
Author

Hi, my understanding on your third firmware variant is, it will output the diagnostic report only if I connected the CC2531 to a laptop/PC, right? If i just wish to connect the CC2531 to a USB charger, it will still working fine with the third firmware variant? Also, once i flashed it, then pair with it with my another CC2531 (coordinator), it will create the mesh by itself, right?

Thanks in advance.

    Harvey Specter
    Posted at 06:52 March 22, 2020
    Owner
    Reply
    Author

    Hi,
    Yes, correct.

Harvey Specter
Posted at 10:09 January 29, 2020
Rol
Reply
Author

Hi, is it possible to switch the red blinking LED off?
Thanks

    Harvey Specter
    Posted at 03:54 February 4, 2020
    Owner
    Reply
    Author

    Hi,
    It is possible to do using the ‘config’ command. But I don’t know if your high-level system can do it.

Harvey Specter
Posted at 10:00 November 27, 2019
Ivan Conde
Reply
Author

Hi!

Thank you very much for this great firmware. How many direct device connections does it support? I want to have an idea on how many routers do I need.

Best regards

    Harvey Specter
    Posted at 11:32 November 27, 2019
    Owner
    Reply
    Author

    Hi Ivan,

    The router firmware support 18 direct devices.

Harvey Specter
Posted at 23:02 September 11, 2019
marrold
Reply
Author

Hi, you mention a 2019-02-04 update, but the file hosted on the blog and Koenkk’s github page reference the older, 2018 version. Is the 2019 version hosted anywhere?

Thanks

    Harvey Specter
    Posted at 04:08 September 12, 2019
    Owner
    Reply
    Author

    Hi, the latest version is hosted on my website. The date in the link does not matter. Just download the file.

Harvey Specter
Posted at 17:12 July 27, 2019
Alessio Di Cataldo
Reply
Author

How can I be sure that my end devices (sensors) are connected by the Router.
I have two sensors near to the router that have a very low linkquality and sometimes they will lose the connection.
The router seems correctly recognized:

zigbee2mqtt:info 7/27/2019, 7:10:03 PM MQTT publish: topic ‘zigbee2mqtt/Router_1’, payload ‘{“state”:true,”led_state”:false,”linkquality”:0,”description”:”0/0x00124B00193678AB”,”type”:”COORD”,”rssi”:2}’

    Harvey Specter
    Posted at 04:01 July 29, 2019
    Owner
    Reply
    Author

    It seems the link quality between the router and the coordinator is bad (RSSI = 2). It should be at least 20-30.

Harvey Specter
Posted at 16:05 July 16, 2019
Alec
Reply
Author

Hello and thank you for making this great firmware.
I am using your CC2531 router firmware with deconz. It is all working fine, but I would like to disable the once per 4 sec blinking red light. I see from the previous comments that in October 2018 someone also requested this feature.
Do you have plans to implement it?

    Harvey Specter
    Posted at 10:31 July 18, 2019
    Owner
    Reply
    Author

    It is necessary to send the report configuration request to the coordinator, where maxInterval = minInterval = 65535. Below is the example for zigbee2mqtt:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
        const attrId = 'onOff';
        const value = 65535;
        return {
            cid: cid,
            cmd: 'configReport',
            cmdType: 'foundation',
            zclData: [{
                direction: 0,
                dataType: zclId.attrType(cid, attrId).value,
                attrData: value,
                minRepIntval: value,
                maxRepIntval: value,
            }],
            cfg: cfg.default,
        };
      Harvey Specter
      Posted at 02:23 November 12, 2019
      Paul
      Reply
      Author

      noob question, but how do I do that?

        Harvey Specter
        Posted at 04:10 November 12, 2019
        Owner
        Reply
        Author

        Hello,

        Do you mean to assemble it from various parts physically?

Harvey Specter
Posted at 04:09 June 28, 2019
Mike
Reply
Author

Hi,

Could you please explain a bit more about what SW1 does? What does the “virtual state of the router (the router sends it in a diagnostic report)” mean? Does it route the same way in both states? (I see that it’s sending a different value of onOff which gets translated into state in HA by zigbee2mqtt, but what does this actually *mean*?)

Thanks

    Harvey Specter
    Posted at 04:17 June 28, 2019
    Owner
    Reply
    Author

    Hi Mike.

    It means nothing important. It is the state of the green led.

      Harvey Specter
      Posted at 04:43 June 28, 2019
      Mike
      Reply
      Author

      ok, thanks! I saw some people saying it mattered, some it didn’t… I didn’t see any change, but I wanted to make sure I wasn’t missing something 🙂

Harvey Specter
Posted at 18:36 April 5, 2019
Santi
Reply
Author

I have the same issue, router red blinking and not pairing with coordinator at all, any advice?

Thank you!

Harvey Specter
Posted at 17:33 March 31, 2019
Hai
Reply
Author

I upload fw for C2531 as router but can’t connect to coordinator (red led blink quickly).
My coordinator also use other C2531. Please help me.

    Harvey Specter
    Posted at 04:12 April 1, 2019
    Owner
    Reply
    Author

    Please, check the following: your coordinator allows joining, the distance between the router and the coordinator is short.

Harvey Specter
Posted at 10:39 March 22, 2019
Mific
Reply
Author

Hello,

I have an end device (Xiaomi Aqara) paired with my CC2531 coordinator. Everything is OK.

I power on my CC2531 router (flashed with the latest firmware). The router is correctly paired to my CC2531 coordinator => see debug traces
0/0x00124B0014B93838,COORD,Depth:0,Assoc:0
0/0x00124B0014B93838,COORD,Depth:0,Assoc:0
0/0x00124B0014B93838,COORD,Depth:0,Assoc:0

but the end device is not seen by the router (is it normal ?).

Then I try to re-paired my end device with the router (I put the end device close to the router but the router far away – 10m – from the coordinator). The traces are as follows :

0/0x00124B0014B93838,COORD,Depth:0,Assoc:0
19105/0x00158D000204719F,CHILD_RFD,Depth:2,Assoc:0
0/0x00124B0014B93838,COORD,Depth:0,Assoc:0
19105/0x00158D000204719F,CHILD_RFD,Depth:2,Assoc:0
0/0x00124B0014B93838,COORD,Depth:0,Assoc:0
19105/0x00158D000204719F,CHILD_RFD,Depth:2,Assoc:0

Any ideas on how to get the router to transmit data to the coordinator ?

    Harvey Specter
    Posted at 11:40 March 28, 2019
    Owner
    Reply
    Author

    It is possible, your device prefers the direct path to the coordinator.

Harvey Specter
Posted at 06:21 March 16, 2019
Owen
Reply
Author

I’ve flashed a CC2531 with the latest firmware but it’s having trouble joining. The red light just keeps flashing every second or so.

The serial debug shows the following:

PANID:1A62,Ch:11,Join:1

PANID:1A62,Ch:11,Join:1

PANID:1A62,Ch:11,Join:1

PANID:1A62,Ch:11,Join:1

PANID:1A62,Ch:11,Join:1

PANID:1A62,Ch:11,Join:1

PANID:1A62,Ch:11,Join:1

This is the correct network, if I cycle joining on/off the Join:1 turns to Join:0.

I’ve tried it with a spare CC2531 and it isn’t working either.

I’ve got 16 sensors on the base coordinator and I can see MQTT traffic so I know there’s life there.

Any ideas on how to get the new router(s) to join the mesh?

    Harvey Specter
    Posted at 14:12 March 18, 2019
    Owner
    Reply
    Author

    Sorry, I don’t have ideas. It looks the coordinator does not accept a connection.

Harvey Specter
Posted at 02:59 January 31, 2019
Quatuor
Reply
Author

I’m using CC2531-diag as a router for Homeassistant zha and I see the router sending some information on ZCL cluster id 0x11. Where I can find formatting of those messages, like fields and fields data type/descriptions?

Harvey Specter
Posted at 09:53 January 1, 2019
Wael Eweda
Reply
Author

The signal if very week i got a netowrk map from zigbee2mqtt the link level is 2 and it is still connected to the cordinator

Harvey Specter
Posted at 07:28 December 31, 2018
Wael Eweda
Reply
Author

Am having issue where my end devices are not connecting to my routers ( the are Xiaomi Switches and Sensors ) where they are with a 5 cm radius wile my router is getting connected the router with out any issues

    Harvey Specter
    Posted at 15:19 December 31, 2018
    Owner
    Reply
    Author

    The end devices search for the best path to the coordinator. Is it possible, there is no reason to send data through the router.

Harvey Specter
Posted at 15:27 December 10, 2018
Adam
Reply
Author

I’m hoping you can help.

I flashed the latest router firmware using Texas Instruments Flash Programmer (v1).

I enable joining on my zigbee2mqtt

I used the USB debugging and this is what I get over and over from Putty:

PANID:EE00,Ch:11,Join:0
PANID:1A62,Ch:11,Join:1
PANID:13B,Ch:15,Join:0
PANID:D6B,Ch:20,Join:0
PANID:31AB,Ch:25,Join:0

But the router will not join the coordinator. I’ve tried pressing SW2 and then holding for 5 seconds and neither does anything.

What can I try next?

    Harvey Specter
    Posted at 04:02 December 11, 2018
    Owner
    Reply
    Author

    Hi,

    The router found several networks around, and the only one allows to connect.
    PANID:1A62,Ch:11,Join:1
    Is it your network based on zigbee2mqtt? Is it possible this is a Xiaomi gateway?

    Try to change a channel number in the zigbee2mqtt settings (if you didn’t pair other devices yet).

Harvey Specter
Posted at 15:34 December 2, 2018
Mihail
Reply
Author

Sorry for the noob question, but how were these firmwares produced?

    Harvey Specter
    Posted at 08:35 December 3, 2018
    Owner
    Reply
    Author

    I use the Z-Stack 1.2.2 from Texas Instruments and the corresponding compiler.

Harvey Specter
Posted at 15:26 November 18, 2018
Wael
Reply
Author

Hi Can u please add a SBL version of the same firmware that can be uploaded by the serial boot loader for the people without a debugger

    Harvey Specter
    Posted at 04:28 November 19, 2018
    Owner
    Reply
    Author

    Hi,

    In any case, you need a debugger for first uploading :).

      Harvey Specter
      Posted at 13:17 March 29, 2020
      Tino
      Reply
      Author

      Even it was a Zigbee2mqtt coordinator before and I just want to make it a router?

        Harvey Specter
        Posted at 05:23 March 30, 2020
        Owner
        Reply
        Author

        Yes, no problems.

Harvey Specter
Posted at 22:16 October 23, 2018
Tiago Marques
Reply
Author

Hello,
I’ve been using a cc2531 as a router, and noticed that some info gets lost when passing trough the router.
Checking graphviz output, the devices connected to the cc2531 router have no link information. They do work (if I take the router off they stop working) but without router info.

“0x00158d0001a64b58″ [label=”{0x00158d0001a64b58|EndDevice|Xiaomi Aqara temperature, humidity and pressure sensor (WSDCGQ11LM)|online}”];
“0x00158d0001a36711″ [label=”{0x00158d0001a36711|EndDevice|Xiaomi Aqara temperature, humidity and pressure sensor (WSDCGQ11LM)|online}”];
“0x00158d0001a36711” -> “0x00124b0012022458″ [label=”41”]

In this example only the second sensor has the origin of the package. 0x00158d0001a36711 (xiaomi sensor) -> delivered to 0x00124b0012022458 (coordinator)

there should be a line for the 0x00158d0001a64b58 sensor like: “0x00158d0001a64b58” -> “0x00124b0012013a42″ [label=”41”], where 0x00124b0012013a42
is the CC2531 Router

Is there a way we can pass this info? I’ll leave the entire graphviz output in this link: https://hastebin.com/ipuhosidil.bash

thanks for your great work on this firmware

    Harvey Specter
    Posted at 04:01 October 24, 2018
    Owner
    Reply
    Author

    Hello. I’ve fixed this problem in the latest firmware. Please, re-download and re-flash it.

Harvey Specter
Posted at 17:54 October 15, 2018
Peder
Reply
Author

Good job.
Been looking through description and comments as I was searching for a way to disable to red blinking every 4th second. It this possible anyhow? E.g. by sending a mqtt message?

    Harvey Specter
    Posted at 04:13 October 16, 2018
    Owner
    Reply
    Author

    Hello,

    I’m sorry, but this is not possible in the current version.

      Harvey Specter
      Posted at 19:56 October 21, 2018
      Peder
      Reply
      Author

      Okay. But would be an excellent feature.

      Also – my router sends: ‘zigbee2mqtt/0x00124b0018ed3c96’, payload: ‘{“state”:false,”linkquality”:115}’

      Is state:false correct?

Harvey Specter
Posted at 17:52 October 6, 2018
John
Reply
Author

The router is blinking red every 4 seconds. I see this message through usb (I use diag_usb):
0/0x00158D0002280C3A,COORD,Depth:0,Assoc:0

Does this means the router is connected to my coordinator?
Should I also see messages from a sensor connected to the same coordinator through debug on this router?

Or will a sensor only connect through a router when it cannot connect to the gateway itself?

    Harvey Specter
    Posted at 12:01 October 7, 2018
    Owner
    Reply
    Author

    Hi,

    Yes, this info means that the router was connected to your coordinator. The router will also output info for neighbors.

      Harvey Specter
      Posted at 17:43 October 7, 2018
      John
      Reply
      Author

      Can I see when a sensor is connected to the router and the router is sending the sensor message to the coordinator?
      Or will a sensor only connect through a router when it cannot connect to the gateway itself?

        Harvey Specter
        Posted at 04:02 October 8, 2018
        Owner
        Reply
        Author

        The sensor searches for the best path to a coordinator. Therefore it may connect to your coordinator directly. If your sensor will appear in the field of view of your router you’ll see a message in router output.

          Harvey Specter
          Posted at 21:25 December 10, 2018
          John Brattinga
          Author

          Just to make sure:

          I have a router, coordinator and sensor all in 1 meter range of each other.
          I think the router is connected to the coordinator because I see these messages on the router (cc2531) serial output:
          0/0x00158D0002280C3A,COORD,Depth:0,Assoc:0
          0/0x00158D0002280C3A,COORD,Depth:0,Assoc:0
          0/0x00158D0002280C3A,COORD,Depth:0,Assoc:0

          Now I activate the sensor. With a sniffer I see the sensor sending and it is received on the coordinator.
          But I don’t see anything on the router output.
          Should this not be the case?
          If yes what should be wrong?

          Harvey Specter
          Posted at 04:10 December 11, 2018
          Owner
          Author

          Hi,

          The sensor should appear as NEIGHBOR after some time. But in your case, the sensor will not use the router because it found a better path to the coordinator.

Harvey Specter
Posted at 13:52 October 2, 2018
Kai
Reply
Author

Hi,

what are the numbers in the filename of the zip file?

Would it be possible to add the release date into the filename?

Thanks

    Harvey Specter
    Posted at 14:13 October 2, 2018
    Owner
    Reply
    Author

    Hi,

    The release data exists in the file path 🙂

Harvey Specter
Posted at 13:49 October 2, 2018
kaelsaes
Reply
Author

Hi,

is it possible that my CC2531 with your new firmware connected inadvertently with my HUE bridge which uses zigbee channel 25 ?

Thanks.

    Harvey Specter
    Posted at 14:15 October 2, 2018
    Owner
    Reply
    Author

    Hi,

    Yes, this is possible if your bridge permits joining. The router connects to the first found network that permits joining.

Harvey Specter
Posted at 14:19 September 1, 2018
Kirov Ilya
Reply
Author

Hey. Thanks for the router firmware.
I and many others use it. But there is one remark.
The current firmware does not send a list of nearby devices in response to the request of mgmtLqiReq, but the other zigbee-routers do this. As a result, the list of connected devices and the quality of communication to them are not visible. I use this to build a network map.
https://github.com/ioBroker/ioBroker.zigbee/issues/40#issuecomment-414063084

Could you share the source code of the firmware or a method how to assemble the firmware so that I can experimentally try to fix the situation. You can send it personally to the emal.
Or, try to assemble the firmware from MT_ZDO_MGMT, it is possible in this case will be sent the necessary information.

    Harvey Specter
    Posted at 05:42 September 2, 2018
    Owner
    Reply
    Author

    Hi Ilya,

    I’ve used the “SampleLight” example and didn’t remove anything. MT_ZDO_MGMT is not specified in the project settings (C compiler – Preprocessor).

    Harvey Specter
    Posted at 22:21 October 23, 2018
    Tiago
    Reply
    Author

    Hi Kirov,
    I’m having the same issue. Ever got to solve this?
    thanks
    Tiago

Harvey Specter
Posted at 09:39 August 15, 2018
baerengraben
Reply
Author

Thank you for your work! I got two Sticks (one coordinator and one router) working! Amazing Job, thumb up!!!

Harvey Specter
Posted at 09:04 August 14, 2018
TLu
Reply
Author

License preventing sharing share Zstack source code but we can still share diff files. With TI’s source & your patch files it would be possible to anyone to participate development and to it maybe a bit more better.

Example i’m interested to replace xiaome coordinator with any solution where source code is available as i need to maintain system 10-20 years and without source code it’s not really possible.
Im also interested to connect one wire temperature sensors directly to CC2531 but it’s not worth to do if system is not public. (I currently have my totally own made zigbee network in home and i can expand it but i would like use some not so proprietary stuff)

Harvey Specter
Posted at 22:09 July 17, 2018
lolorc
Reply
Author

hi,
as far as I tested the channel is 11, I’ve forced the channel to 11 with zigbee2mqtt, then devices were still paired. so I guess the channel is really 11. I’m trying to run a zigate (jn5168) a sniffer but documentation is *beeep* as hell. I guess my next tries will be to recompile cc2530+cc2591 firmware myself and see what I can alter/enable/disable to make them work all along.

    Harvey Specter
    Posted at 04:14 July 18, 2018
    Owner
    Reply
    Author

    Hi,

    Unfortunately, I don’t have this hardware device and I cannot test this coordinator. Did you try a firmware file where “Security LinkJoin” words exist in the file name? (like CC2531ZNP-Pro-Secure_LinkKeyJoin.hex)

      Harvey Specter
      Posted at 07:36 July 18, 2018
      lolorc
      Reply
      Author

      Hi,

      I haven’t found such firmware, I guess I’ll have to compile it myself.

        Harvey Specter
        Posted at 15:21 July 19, 2018
        John
        Reply
        Author

        If you download zstack then you can find it here: Z-Stack Home 1.2.2a.44539\Projects\zstack\ZAP\ZNP-HexFiles\CC2530

Harvey Specter
Posted at 11:06 July 17, 2018
lolorc
Reply
Author

I’ve just specified it to be 11 even it’s it’s the default in zigbee2mqtt, still working with the devices, still no luck with the router. I guess I should try to run a sniffer to see if it’s really using channel 11.
The firmware I’m using on the cc2530+CC2591 is https://github.com/Koenkk/Z-Stack-firmware/blob/master/coordinator/CC2530_CC2591/bin/CC2530_CC2591ZNP-Prod.hex

Harvey Specter
Posted at 10:25 July 17, 2018
lolorc
Reply
Author

Hi,

I’ve read about this issue in the comment, but zigbee2mqtt says it’s using channel 11 and I’ve not specified any channel in its config;
I can try to force it to 11 in the config and see if I have to rebind the devices.

Harvey Specter
Posted at 16:02 July 16, 2018
lolorc
Reply
Author

Hi,
I don’t really get what’s the purpose of SW1.
Any idea on why a CC2531 router pairs perfectly with a CC2531 coordinator and not with a CC2530+CC2591 coordinator ?

    Harvey Specter
    Posted at 17:09 July 16, 2018
    Owner
    Reply
    Author

    Is it possible a channel number is not 11?

Harvey Specter
Posted at 18:45 July 9, 2018
kaelsaes
Reply
Author

Are your routers building up a mesh network?
Can I cascade several routers?

Is the CC2531 router only pairing with a CC2531 coordinator or can it also pair with a HUE ZigBee bridge?

Thanks

    Harvey Specter
    Posted at 18:52 July 9, 2018
    Owner
    Reply
    Author

    Mesh network: yes
    Cascade: yes
    HUE bridge: I don’t know. I didn’t use it.

Harvey Specter
Posted at 05:12 July 9, 2018
kaelsaes
Reply
Author

Thanks.

But how can I check if the router works correct?
As I said I can’t see a positive effect when the router ist paired with the coordinator. Some devices are still having problems sending data to the coordinator even if the router is placed in the same room.

I flashed the third version of your firmware although I only use a CC2531 with a USB charger. Is this okay?

Thanks.

    Harvey Specter
    Posted at 05:21 July 9, 2018
    Owner
    Reply
    Author

    Yes, you need cc2531 and a power plug only for the router.

    The debug version of my firmware (with USB and diagnostic messages) can output debug messages to the USB port. You may use any com port terminal and capture these messages (a portable computer is required). There you may see devices in the field of view of the router. The Cc2531 router can cover 5-15 meters.

Harvey Specter
Posted at 19:31 July 8, 2018
John
Reply
Author

Is the source also available?

    Harvey Specter
    Posted at 04:28 July 9, 2018
    Owner
    Reply
    Author

    Sources (ZStack) you can freely download from the TI website.

      Harvey Specter
      Posted at 16:52 July 9, 2018
      John
      Reply
      Author

      I mean the sources with your adjustments 🙂

        Harvey Specter
        Posted at 18:51 July 9, 2018
        Owner
        Reply
        Author

        The license agreement does not allow to share Zstack source code.

          Harvey Specter
          Posted at 19:27 July 17, 2018
          John
          Author

          Can you tell me which sample? application you used as source for this router?
          And can you also tell me which symbols you used (like you described on the CC2530 based Zigbee coordinator and router blog)?

          Thanks in advance

          Harvey Specter
          Posted at 04:10 July 18, 2018
          Owner
          Author

          Hi,

          This is the sample “SampleLight” source code. It is necessary to change files in the “HAL-Target” group in the project workspace (compare with the ZNP project). I’ve used the following symbols:

          1
          2
          3
          4
          5
          6
          7
          8
          9
          10
          11
          12
          13
          14
          15
          16
          17
          18
          19
          20
          21
          22
          23
          24
          25
          26
          27
          28
          29
          30
          31
          32
          33
          34
          35
          SECURE=1
          TC_LINKKEY_JOIN
          NV_INIT
          NV_RESTORE
          xHOLD_AUTO_START
          xZTOOL_P1
          MT_TASK
          MT_APP_FUNC
          MT_SYS_FUNC
          xMT_ZDO_FUNC
          xLCD_SUPPORTED=DEBUG
          HAL_LCD=FALSE
          HAL_SPI=FALSE
          MULTICAST_ENABLED=FALSE
          ZCL_READ
          xZCL_WRITE
          ZCL_REPORT
          xZCL_EZMODE
          ZCL_BASIC
          xZCL_IDENTIFY
          ZCL_ON_OFF
          xZCL_SCENES
          xZCL_GROUPS
          xZCL_LEVEL_CTRL
          xZCL_DIAGNOSTIC
          ZCL_DISCOVER
          FEATURE_SYSTEM_STATS
          MT_UART_DEFAULT_BAUDRATE=HAL_UART_BR_115200
          MT_UART_DEFAULT_OVERFLOW=FALSE
          HAL_LED=TRUE
          MT_UTIL_FUNC
          HAL_KEY=TRUE
          ZSTACK_MANUFACTURER_CODE=4447
          BLINK_LEDS
          HAL_UART=FALSE
Harvey Specter
Posted at 19:18 July 8, 2018
kaelsaes
Reply
Author

Okay, thanks.

But how does the router work?

Some of my Xiaomi devices are loosing the connection to the coordinator no matter if the router is installed or not.

    Harvey Specter
    Posted at 04:31 July 9, 2018
    Owner
    Reply
    Author

    The router works like repeater. You must place it in the middle between the coordinator and your device.

Harvey Specter
Posted at 12:27 July 8, 2018
kaelsaes
Reply
Author

Hi,

I paired successfully the CC2531 router with the CC2531 coordinator.

Do I have to delete manually the Xiaomi devices from the coordinator and re-pair them with the router?

Thanks.

    Harvey Specter
    Posted at 15:13 July 8, 2018
    Owner
    Reply
    Author

    This is not necessary. In any case all devices must be paired with a coordinator.

      Harvey Specter
      Posted at 11:58 November 26, 2019
      Stefano
      Reply
      Author

      I have one question, i have about 32 devices in my network and one coordinator with normal fw and one router, CC2531 but i can’t add other device… it seems that the coordinator have no more slots… is possible? if yes how can i do to add more devices via the router instead of the coordiator?
      i have also created an issue here with some useful images for debug.

      https://github.com/Koenkk/zigbee2mqtt/issues/2405
      Thanks a Lot

Harvey Specter
Posted at 12:19 July 5, 2018
Adrian
Reply
Author

Quick question regarding the CC2531 router, is the channel hardcoded?
i am using zigbee2mqtt and in the config you can set the channel, i tried changing to a zigbee channel far away from my wifi 2.4g channels to help remove any interference. i can successfully pair any device except the router when i have a channel specified in the config file, removing channel in config file, the router does pair with the coordinator. any ideas?

    Harvey Specter
    Posted at 18:24 July 5, 2018
    Owner
    Reply
    Author

    Yes, the channel number (11) is hardcoded in the current version.

      Harvey Specter
      Posted at 14:36 July 6, 2018
      Adrian Bishop
      Reply
      Author

      Thanks for confirming it, thought i was going mad trying to get it to pair. Will it be possible to change in a future update?

        Harvey Specter
        Posted at 18:18 July 6, 2018
        Owner
        Reply
        Author

        I will try to solve this problem after summer holidays.

          Harvey Specter
          Posted at 07:52 September 16, 2018
          John
          Author

          Did you already have time to change this?

          Harvey Specter
          Posted at 12:39 September 16, 2018
          Owner
          Author

          Yes, I’m working on it right now :). But I cannot estimate the release date of this update.

      Harvey Specter
      Posted at 13:41 July 10, 2018
      John
      Reply
      Author

      Does this mean it will only connect with a coordinator on channel 11?
      Or is this only used for a device connecting to the router?

        Harvey Specter
        Posted at 18:01 July 10, 2018
        Owner
        Reply
        Author

        All devices in one Zigbee network use the same channel number. If the channel number is different then this is another (different) network with another coordinator.

Harvey Specter
Posted at 16:52 June 15, 2018
Tiago
Reply
Author

Hello,

I’m having the following error when connecting the CC2531 as a router (connecting to another CC2531)
It was working before, until I add some IKEA devices. Then this error start. I’ve deleted all config from zigbee2mqtt a number of times, trying to find the device that was causing the problem. I then arrive to the CC2531 with router firmware as it is the only one connected. The error is:

2018-6-15 17:48:57 INFO Currently 1 devices are joined:
2018-6-15 17:48:57 INFO 0x00124b0012013a42 (0x00124b0012013a42): CC2530.ROUTER – Texas Instruments [CC2530 router](https://ptvo.info/cc2530-based-zigbee-coordinator-and-router-112/) (Router)
2018-6-15 17:48:57 INFO Connecting to MQTT server at mqtt://192.168.1.201:1883
/app/lib/zigbee.js:79
this.shepherd.find(device.ieeeAddr, 1).getDevice().update({
^
TypeError: Cannot read property ‘getDevice’ of undefined
at devices.forEach (/app/lib/zigbee.js:79:55)
at Array.forEach ()
at Zigbee.handleReady (/app/lib/zigbee.js:77:17)
at emitNone (events.js:106:13)
at ZShepherd.emit (events.js:208:7)
at Immediate._onImmediate (/app/node_modules/zigbee-shepherd/lib/shepherd.js:89:18)
at runCallback (timers.js:789:20)
at tryOnImmediate (timers.js:751:5)
at processImmediate [as _immediateCallback] (timers.js:722:5)
npm
ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] start: `node index.js`
npm ERR! Exit status 1
npm
ERR!
npm ERR! Failed at the [email protected] start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
2018-06-15T16:48:57.983Z pm2:client Calling daemon method pm2:getMonitorData on rpc socket:/root/.pm2/rpc.sock

Any ideas on how to proceed?
thanks,
Tiago

    Harvey Specter
    Posted at 05:00 June 16, 2018
    Owner
    Reply
    Author

    Hi,

    This problem is not related with the firmware directly. I’m using the same routers in my home without any problems. Unfortunately, I don’t have IKEA devices to examine this problem more deeply.

Harvey Specter
Posted at 19:23 May 29, 2018
John
Reply
Author

I have a xiaomi sensor which is sometimes out of range of the xiaomi gateway.
Is it possible to add this router between an existing Xiaomi sensor and the Xiaomi gateway?
If yes, what will be the procedure to make this work ?
How do I connect the router to the gateway and how connect the sensor to the router?

    Harvey Specter
    Posted at 04:20 May 30, 2018
    Owner
    Reply
    Author

    Sorry, this router was designed for networks based on alternative gateways (not the Xiaomi gateway). I didn’t test it with the Xiaomi gateway.

      Harvey Specter
      Posted at 19:22 January 6, 2019
      John
      Reply
      Author

      I can confirm it is working as a router with a xiaomi gateway.

        Harvey Specter
        Posted at 21:28 March 5, 2019
        Thomas
        Reply
        Author

        How did you link it?

        Harvey Specter
        Posted at 13:29 June 9, 2019
        Peter
        Reply
        Author

        How did you connect it to the Xiaomi Gateway?

          Harvey Specter
          Posted at 04:08 June 10, 2019
          Owner
          Author

          I’m sorry, but I didn’t try my routers with Xiaomi Gateways.

Newer Comments »

Leave a Reply to Owner
Cancel Reply