Zigbee2mqtt: CC2530 + CC2592 = Very long range solution

Created on 16 Apr 2019  ·  57Comments  ·  Source: Koenkk/zigbee2mqtt

изображение

The guys from our community tried to use TI cc2530 modules from EBYTE with a new cc2592 amplifier with a power of 100mW E18-MS1PA1-PCB. For this module, we had to build a special Z-Stack ZNP firmware, since there was no firmware for such an amplifier. And the results exceeded expectations!

The tests with the “round button” from Xiaomi showed that the coordinator get the signals even at a distance of 400m of direct visibility. In the house, the button works through 2 reinforced concrete walls. Those the amplifier greatly increases the range and sensitivity.

Another indicative criterion is the parameters of the link_quality signals from devices (they can be seen, for example, on the network map in iobroker.zigbee or zigbee2mqtt). For this module, link_quality shows 36–40 and good work, where the coordinator cc2531 showed 2–5 and there were interruptions in communication (3 foam-block walls, one thin wooden wall).

There is a version of this module with an external antenna connection. And there is also a 500mW E18-2G4Z27SI module, but we didn’t feel any significant difference in comparison with the 100mW module (or we couldn’t correct start it in the firmware yet), the current consumption of the 500mW module coincided with the 100mW module.

On the basis of these modules, the craftsmen made themselves coordinators and routers to cover with the network not only a residential building, but also the area around it.

изображение
изображение

The user Jager share his stick PCB in his blog.

изображение

изображение

ps. sorry for my English :)

stale

All 57 comments

sounds nice !
have you tried the ipx version E18-MS1PA1-IPX ?

feel free to submit a PR for cc2530+cc2592 support :-)

have you tried the ipx version E18-MS1PA1-IPX ?
This module works

i guess it works, just wondering if link quality comparaisons have been done with this module as well.

@lolorc

feel free to submit a PR for cc2530+cc2592 support :-)

yes. later

i guess it works, just wondering if link quality comparaisons have been done with this module as well.
Real tests have not yet done. The manufacturer claims this, but the data are clearly overestimated.
image

@lolorc

feel free to submit a PR for cc2530+cc2592 support :-)

yes. later

I hope so, because I just ordered some ;-)

I am interested in the router firmware to use it standalone in the middle of the house.

sure, we've been asking about info about the router code so we can build it ourselves, but the question has been left unanswered...
https://github.com/Koenkk/Z-Stack-firmware/issues/50
https://github.com/Koenkk/Z-Stack-firmware/issues/21
https://github.com/Koenkk/zigbee2mqtt/issues/165#issuecomment-401628955
https://github.com/Koenkk/zigbee2mqtt/issues/494
...
;-)

@wunderbaum I do not have the source code for the router. Therefore, we checked on the module with 500mW - firmware of router with cc2591 came up there

the firmwares for cc2591 should probably work on cc2592, they probably lack changes to increase the power output.

sorry...

@lolorc did not work for cc2592. I had to do a bit in the source code

Maybe someone can contact ptvoinfo for providing a router firmware for this special device.

@kirovilya Nice work! Have you tried it with IKEA bulbs? IKEA bulbs are, ee, hmm, "quite strange" :-D

What is the maximum number of devices with this firmware?

@antst I assembled the firmware based on the ZNP - there are 15 direct connect devices by default. a little later I make the PR for firmware in the Z-StacK-firmware.

Are you russian? find me in telegram :)

@MiloshCZ not test yet

@kirovilya , Hi, I have the exact same hardware, I am having issues with range which i suspect is to do with my amplifier CC2592 settings in Zstack 3.0 ZNP. I have tested with this https://github.com/kirovilya/files/blob/master/CC2530_CC2592_ZNP.hex and having no issues at all with the range but i have some custom settings enabled in ZNP which i need for my use case.

Also my code is working perfectly fine for me on CC2530 + RFX2401c (HAL_PA_LNA setting for amplifier) .Can you please help with this. Its very urgent for me. It will be great if you could share the Zstack code patch that you have applied for ZNP for getting cc2592 amplifier working.

@battuashwik Very simple: you must specify directive
HAL_PA_LNA_CC2592
instead of directive
HAL_PA_LNA
Try it. Perhaps both should be used. I'm still testing, too, maybe something else needs to be changed.

Hey, tried that already, not working. I tried applying patches mentioned in https://e2e.ti.com/support/wireless-connectivity/zigbee-and-thread/f/158/p/758643/2802562#2802562 , still no luck, was wondering if you have done something else to get it working.

@battuashwik look at the proposed patch https://github.com/Koenkk/Z-Stack-firmware/issues/71, I think the main changes for you will be in the hal_board_cfg.h file

@battuashwik look at the proposed patch Koenkk/Z-Stack-firmware#71, I think the main changes for you will be in the hal_board_cfg.h file

Hey thanks, got it working and works much better than my rfx2401c amplifier.

Hey @ptvoinfo ! Can you build "router-firmware" with cc2530+cc2592 ?

Whow, my order came quick! I already have the small item.
Hopefully @ptvoinfo makes us a routing firmware.

I keep my fingers crossed and owe you a beer ;)

I am using this Chip now for quite a while but I made a UART Version out of it since I don’t line USB dongles.
https://drive.google.com/file/d/1YfYTegq1n7-A1CzsvAAA9TlK87XtGEHA/view?usp=drivesdk

Currently I am running the KronKk Firmware but I will try kirovilya‘s tonight.

Hello guys ...2 question ...
To program this little friend ... it's the same pin connection that is used for cc2530?

Where is the appropriate coordinator and router for this lovely units?

Best regards from Chile 👌

The firmware is just 2 steps above:
https://github.com/Koenkk/zigbee2mqtt/issues/1437#issuecomment-487658726

For programming use the pinout from the flasher here:
Chapter 2, cc debugger pinout and connect the P2.1, P2.2 etc to the according ones on the CC2592-module as described here:
https://www.aliexpress.com/item/CDEBYTE-2Pcs-Lot-Smart-Home-Automation-Module-E18-MS1PA1-PCB-2-4GHz-CC2530-Wireless-Zigbee-Module/32803068018.html

Thanks for your help my friend ...today I will start my experimentation 👌👌

I have doubts about the connections...the cc2530 flashing procedure indicates use 2 vcc connections between the module and the cc debuger...but according to the manual of these modules only have 1 vcc pin (number 2) ...where is the second vcc pin?

@drbios you need to connect the 2nd and 9th contact between each other, then the ccdebugger will work fine
image

@kirovilya doing that means provide 3.3v + 3.3v = 6.6v to the pin2 of this modules?

@drbios why 6.6v? just connect the pins (blue line)
image

Really sorry about 6.6v comment...I though that pin2 and pin9 of the debugger were 3.3 volt 🤦‍♂️
Now I will try again with this conection configuration.

Thanks Thanks thanks 👌👌👌

now it works !!
this is my "programmer interface" XD

20190513_131310

thanks

Thanks a lot @kirovilya and @ptvoinfo for the solution. And thanks to Jager for the PCB and the parts list. It really works. I have a coordinator and a router for the time being and have connected close to 24 devices. All works well. I have used the coordinator firmware from https://github.com/Koenkk/Z-Stack-firmware/blob/master/coordinator/Z-Stack_Home_1.2/bin/CC2530_CC2592_20190515.zip and router firmware from http://ptvo.info/wp-content/uploads/2018/09/cc2530_cc2592_1.2.2a.44539_firmware.zip

I have a small issue though , with the current board and connections, I could not tell if the board is connected to a network or not. So is there a way I can add a LED to indicate this ?

Thanks in Advance. And once again great work.

I still have issue with stability of firmware.
“Naked” cc2530 works like charm in test setup with 20 devices.
With this fronted coordinator hangs after sometime, like it used to be with older 2530.
I assume that adding fronted somehow reduces available memory.
Btw, maxheap is different for naked 2530 and with frontend.

Is it possible to make firmware for 12 devices max or so? Even 10.
But not 5, as in max_stability

I am using this Chip now for quite a while but I made a UART Version out of it since I don’t line USB dongles.
https://drive.google.com/file/d/1YfYTegq1n7-A1CzsvAAA9TlK87XtGEHA/view?usp=drivesdk

Currently I am running the KronKk Firmware but I will try kirovilya‘s tonight.

@Ormerod2 could you provide the files for the UART version? i like this :)

for me it was impossible to build... my soldering skills ain't good enough

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

Hello kirovilya,
You can tutorial me how to build ZNP firmware
This is my preprocessing

BDB_FINDING_BINDING_CAPABILITY_ENABLED=0
TC_LINKKEY_JOIN
HAL_UART_DMA_RX_MAX=128
MAXMEMHEAP=2765
NWK_MAX_DEVICE_LIST=10
ZDSECMGR_TC_DEVICE_MAX=30
DISABLE_GREENPOWER_BASIC_PROXY
POWER_SAVING
FEATURE_SYSTEM_STATS
MT_GP_CB_FUNC
ASSERT_RESET
MAKE_CRC_SHDW

it's not working

@leanderseidlitz Use ready-made firmware from here https://github.com/Koenkk/Z-Stack-firmware/tree/master/coordinator/Z-Stack_Home_1.2/bin including for cc2592.
And here is the build instruction https://github.com/Koenkk/Z-Stack-firmware/blob/master/coordinator/Z-Stack_Home_1.2/COMPILE.md

Nice instruction, thanks @kirovilya

Hey guys. Just wanted to let you know, that I've built a module based on the E18-MS1PA1-IPX for the GPIO header of the Pi: https://allgeek.de/2020/06/22/zigbee-modul-fuer-den-raspberrypi-cc2530-mit-homegear-oder-zigbee2mqtt/ (german)

cc2530-cc2592-zigbee-module-300x240

It's open source but we also sell ready made modules. So hit me up, if you need anything.

Hey guys. Just wanted to let you know, that I've built a module based on the E18-MS1PA1-IPX for the GPIO header of the Pi: https://allgeek.de/2020/06/22/zigbee-modul-fuer-den-raspberrypi-cc2530-mit-homegear-oder-zigbee2mqtt/ (german)

cc2530-cc2592-zigbee-module-300x240

It's open source but we also sell ready made modules. So hit me up, if you need anything.

Wow that's nice. How can I get one or two long range one? Does it come with the same firmware ?

They are sold in our online Shop, the link is in the blog article. We preflash the modules with Z-Stack Coordinator Firmware 1.2 oder 3.0.x.
Don't want to hijack the issue for marketing, so hit me up with an email at [email protected].

@codmpm i sadly can't find the files that are open source :) I have some of the SMD-modules here, as i wanted to start something myself but never did :) is there a chance to get the platine and casedesign for the Long Range Router somewhere? :) love the sleek look!

Hey @XRyu, the case for the router is here: https://www.thingiverse.com/thing:4192704
Did not manage to put the pcb files on github, yet.

Get in touch with me. Maybe I can get you some prototype PCB's where the LED of the router was wired as a power indicator. My email is in the comment before yours.

Here's the correct issue for CC2530 routers: https://github.com/Koenkk/zigbee2mqtt/issues/52

Sorry, I am very new to this. Can I direct solder the E18-MS1PA1-IPX to Raspberry Pi uart without any PCB board?

@lily148 get in touch with me via [email protected]... I'll send you one pcb for the E18-MS1PA1-IPX.
I have some spare pcb's from our module: https://shop.codm.de/automation/zigbee/15/zigbee-cc2530-cc2592-long-range-raspberry-pi-funkmodul-v0.3?c=5

Hey,
I was working on e18-ms1pa1-ipx and I want to know is CC2530ZNP-Pro-Secure_LinkKeyJoin.hex for coordinator and router-cc2530-cc2591-diag.hex for router works fine together?

And I want to know that is it possible to connect this module directly to arduino (tx and rx) as coordinator or router?

@fahimehorvatinia , I tested direct solder the pin to my Pi tx and rx, it works. No extra PCB is needed but you need to have better soldering skill. Otherwise, @codmpm 's PCB module might be better choice.

@lily148 ,
Hi,
I connected this module directly to Computer via (usb to ttl) module, but i couldn't set up communication .
how did you connect it directly?
this is my pin connection.
VCC->3.3
GND->GND
P0.3 ->TX
P0.2 -> Rx
and this is the error that I got.
image

@fahimehorvatinia , what is did was direct connect the board to the Pi uart port. That's it.
By the way, had you already flash the firmware or download your program into the board via CC debugger?

@lily148 I've download cc2530-cc2592.hex file to the module using cc debugger.
image
And after that I connected e18-ms1pa1-ipx module to computer(using usb to ttl converter).
Is there any software that I make sure connection is ok?
I just used ebyte software configuration to get parameters and it failed.

@fahimehorvatinia , I am not sure... because I am not using the ebyte software nor using any USB to ttl. I just direct connect to the uart pin on the Pi.

Was this page helpful?
0 / 5 - 0 ratings