This commit is contained in:
Koen Kanters 2019-10-12 14:38:48 +02:00
parent f3f55b4f66
commit 7368e9e7fe
6 changed files with 104 additions and 58 deletions

View File

@ -5,70 +5,41 @@ This repository contains various Z-Stack coordinator firmwares.
<table>
<tr>
<td><b>Z-Stack</b></td>
<td><b>Type</b></td>
<td><b>Device</b></td>
<td><b>Zigbee</b></td>
<td><b>Direct children</b></td>
<td><b>Routes</b></td>
<td><b>Notes</b></td>
</tr>
<tr>
<td rowspan="4">Z-Stack_Home_1.2</td>
<td rowspan="4">Default</td>
<td rowspan="2">Z-Stack_Home_1.2 (default)</td>
<td>CC2531</td>
<td>1.2 HA</td>
<td>20</td>
<td>30/0</td>
<td></td>
</tr>
<tr>
<td>CC2530</td>
<td>CC2530, CC2530 + CC2591, CC2530 + CC2592</td>
<td>1.2 HA</td>
<td>16</td>
<td>30/0</td>
<td></td>
</tr>
<tr>
<td>CC2530 + CC2591</td>
<td>1.2 HA</td>
<td>16</td>
<td></td>
</tr>
<tr>
<td>CC2530 + CC2592</td>
<td>1.2 HA</td>
<td>16</td>
<td></td>
</tr>
<tr>
<td rowspan="4">Z-Stack_Home_1.2</td>
<td rowspan="4">Source routing</td>
<td>CC2531</td>
<td>Z-Stack_Home_1.2 (source_routing)</td>
<td>CC2531, CC2530, CC2530 + CC2591, CC2530 + CC2592</td>
<td>1.2 HA</td>
<td>5</td>
<td>40/40</td>
<td></td>
</tr>
<tr>
<td>CC2530</td>
<td>1.2 HA</td>
<td>5</td>
<td></td>
</tr>
<tr>
<td>CC2530 + CC2591</td>
<td>1.2 HA</td>
<td>5</td>
<td></td>
</tr>
<tr>
<td>CC2530 + CC2592</td>
<td>1.2 HA</td>
<td>5</td>
<td></td>
</tr>
<tr>
<td>Z-Stack_3.0.x</td>
<td>Default</td>
<td rowspan="2">Z-Stack_3.0.x</td>
<td>CC2531</td>
<td>3.0</td>
<td>15</td>
<td>40/0</td>
<td>
- <a href="https://github.com/Koenkk/zigbee2mqtt/issues/1445">WIP (see #1445)</a>
<br/>
@ -76,15 +47,37 @@ This repository contains various Z-Stack coordinator firmwares.
</td>
</tr>
<tr>
<td>Z-Stack_3.x.0</td>
<td>Default</td>
<td>CC2652R</td>
<td>CC2530, CC2530 + CC2591, CC2530 + CC2592</td>
<td>3.0</td>
<td>20</td>
<td>10</td>
<td>40/0</td>
<td>
- <a href="https://github.com/Koenkk/zigbee2mqtt/issues/1445">WIP (see #1445)</a>
<br/>
- Max 40 Zigbee 3.0 devices
</td>
</tr>
<tr>
<td rowspan="2">Z-Stack_3.x.0</td>
<td>CC26X2R1</td>
<td>3.0</td>
<td>50</td>
<td>100/200</td>
<td>
- <a href="https://github.com/Koenkk/zigbee2mqtt/issues/1429">WIP (see #1429)</a>
<br/>
- Max 40 Zigbee 3.0 devices
- Max 100 Zigbee 3.0 devices
</td>
</tr>
<tr>
<td>CC1352P_2</td>
<td>3.0</td>
<td>50</td>
<td>100/200</td>
<td>
- <a href="https://github.com/Koenkk/zigbee2mqtt/issues/1429">WIP (see #1429)</a>
<br/>
- Max 100 Zigbee 3.0 devices
</td>
</tr>
</table>
@ -98,11 +91,11 @@ This depends:
### Legend
- *Z-Stack:* Z-Stack is the Zigbee stack for Texas Instruments Zigbee devices
- *Type:* The source routing firmware allows the coordinator to remember the routes to the devices. Improves performance for larger (40+ nodes) networks. For more information read [Large ZigBee Networks and Source Routing
](http://cms.digi.com/resources/documentation/digidocs/90001537/references/r_large_zigbee_networks-source_routing.htm?TocPath=Working%20with%20Zigbee%7C_____14). Because of memory limitations, the number of direct children are reduced for these firmwares.
- *Device:* The Zigbee hardware
- *Zigbee:* Zigbee version, for more information read [What's New in Zigbee 3.0](http://www.ti.com/lit/an/swra615a/swra615a.pdf)
- *Direct children:* Number of children that directly can join the coordinator. Note that this is **not** the maximum network size. For more information, read [the Zigbee2mqtt FAQ about device limit](http://www.zigbee2mqtt.io/information/FAQ.html#i-read-that-zigbee2mqtt-has-a-limit-of-15-devices-is-this-true)
- *Routes:* This indicates how many routes the coordinator can keep in memory. For example 100/200 would mean that: 100 normal routes and 200 source routes can be kept in memory. 0 source routes mean that source routing is disabled. Source routes improve the performance for larger (40+ nodes) networks. For more information read [Large ZigBee Networks and Source Routing
](http://cms.digi.com/resources/documentation/digidocs/90001537/references/r_large_zigbee_networks-source_routing.htm?TocPath=Working%20with%20Zigbee%7C_____14).
#### Notes
- Due to new security requirements in Zigbee 3.0, Zigbee 3.0 coordinators can only support a limited amount of Zigbee 3.0 devices. For Zigbee 1.2 coordinators there is no limit on the max number of Zigbee 3.0 devices that can join.

Binary file not shown.

Binary file not shown.

View File

@ -1,5 +1,31 @@
From f5d92b64b46c6b17d093480bde0e82ba4e2b3ed5 Mon Sep 17 00:00:00 2001
From: Koen Kanters <koenkanters94@gmail.com>
Date: Sat, 12 Oct 2019 14:29:02 +0200
Subject: [PATCH] Patch
---
.../Application/mt/mt_sys.c | 6 ++-
.../Application/mt/mt_version.c | 2 +-
.../Application/mt/revision_info.h | 4 ++
.../Stack/Config/preinclude.h | 49 +++++++++++++++++++
.../Stack/Config/znp_cnf.opts | 2 +
.../Stack/af/af.c | 14 ++++--
.../Stack/sys/zglobals.c | 4 +-
.../Application/mt/mt_sys.c | 6 ++-
.../Application/mt/mt_version.c | 2 +-
.../Application/mt/revision_info.h | 4 ++
.../Stack/Config/preinclude.h | 49 +++++++++++++++++++
.../Stack/Config/znp_cnf.opts | 2 +
.../Stack/af/af.c | 14 ++++--
.../Stack/sys/zglobals.c | 4 +-
14 files changed, 148 insertions(+), 14 deletions(-)
create mode 100644 znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Application/mt/revision_info.h
create mode 100644 znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Stack/Config/preinclude.h
create mode 100644 znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Application/mt/revision_info.h
create mode 100644 znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Stack/Config/preinclude.h
diff --git a/znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Application/mt/mt_sys.c b/znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Application/mt/mt_sys.c
index e9ca64c..7ae61c3 100644
index e9ca64c..04873f9 100644
--- a/znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Application/mt/mt_sys.c
+++ b/znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Application/mt/mt_sys.c
@@ -510,9 +510,10 @@ static void MT_SysVersion(void)
@ -14,6 +40,16 @@ index e9ca64c..7ae61c3 100644
OsalPort_memcpy(verStr, (uint8_t *)MTVersionString, sizeof(MTVersionString));
#if (defined MAKE_CRC_SHDW) || (defined FAKE_CRC_SHDW) //built for bootloader
@@ -1327,7 +1328,8 @@ static void MT_SysNvWrite(uint8_t *pBuf)
else
{
/* Attempt to write data (existing) to the specified item */
- error = pZStackCfg->nvFps.writeItemEx( nvId, dataOfs, dataLen, pBuf );
+ error = pZStackCfg->nvFps.writeItem( nvId, dataLen, pBuf );
+ // error = pZStackCfg->nvFps.writeItemEx( nvId, dataOfs, dataLen, pBuf );
}
}
diff --git a/znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Application/mt/mt_version.c b/znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Application/mt/mt_version.c
index 64dd210..4deedea 100644
--- a/znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Application/mt/mt_version.c
@ -29,22 +65,23 @@ index 64dd210..4deedea 100644
1, /* Software maintenance release number */
diff --git a/znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Application/mt/revision_info.h b/znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Application/mt/revision_info.h
new file mode 100644
index 0000000..8acffe6
index 0000000..50e85b0
--- /dev/null
+++ b/znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Application/mt/revision_info.h
@@ -0,0 +1,4 @@
+#ifndef APPLICATION_MT_REVISION_INFO_H_
+#define APPLICATION_MT_REVISION_INFO_H_
+#define CODE_REVISION_NUMBER 20191010
+#define CODE_REVISION_NUMBER 20191011
+#endif
diff --git a/znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Stack/Config/preinclude.h b/znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Stack/Config/preinclude.h
new file mode 100644
index 0000000..b96265e
index 0000000..b2a03e1
--- /dev/null
+++ b/znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Stack/Config/preinclude.h
@@ -0,0 +1,47 @@
@@ -0,0 +1,49 @@
+#define INCLUDE_REVISION_INFORMATION
+#define MT_SYS_KEY_MANAGEMENT 1
+#define FEATURE_NVEXID 1
+
+// Save memory
+#undef NWK_MAX_BINDING_ENTRIES
@ -87,7 +124,8 @@ index 0000000..b96265e
+ * Scale other device tables appropriately
+ */
+#define NWK_MAX_DEVICE_LIST 50
+#define ZDSECMGR_TC_DEVICE_MAX 200
+// Setting this from 100 to 200 causes NV issues; further investigation required
+#define ZDSECMGR_TC_DEVICE_MAX 100
+#define MAX_NEIGHBOR_ENTRIES 20
+#define MAX_RTG_ENTRIES 100
diff --git a/znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Stack/Config/znp_cnf.opts b/znp_CC1352P_2_LAUNCHXL_tirtos_ccs/Stack/Config/znp_cnf.opts
@ -142,7 +180,7 @@ index 55dfb43..396f8b0 100644
//========== TouchLink NWK configuration ===============
// Values used by Router when starts a network as initiator
diff --git a/znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Application/mt/mt_sys.c b/znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Application/mt/mt_sys.c
index e9ca64c..7ae61c3 100644
index e9ca64c..48746d6 100644
--- a/znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Application/mt/mt_sys.c
+++ b/znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Application/mt/mt_sys.c
@@ -510,9 +510,10 @@ static void MT_SysVersion(void)
@ -157,6 +195,16 @@ index e9ca64c..7ae61c3 100644
OsalPort_memcpy(verStr, (uint8_t *)MTVersionString, sizeof(MTVersionString));
#if (defined MAKE_CRC_SHDW) || (defined FAKE_CRC_SHDW) //built for bootloader
@@ -1327,7 +1328,8 @@ static void MT_SysNvWrite(uint8_t *pBuf)
else
{
/* Attempt to write data (existing) to the specified item */
- error = pZStackCfg->nvFps.writeItemEx( nvId, dataOfs, dataLen, pBuf );
+ error = pZStackCfg->nvFps.writeItem( nvId, dataLen, pBuf );
+ //error = pZStackCfg->nvFps.writeItemEx( nvId, dataOfs, dataLen, pBuf );
}
}
diff --git a/znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Application/mt/mt_version.c b/znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Application/mt/mt_version.c
index 64dd210..4deedea 100644
--- a/znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Application/mt/mt_version.c
@ -172,22 +220,23 @@ index 64dd210..4deedea 100644
1, /* Software maintenance release number */
diff --git a/znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Application/mt/revision_info.h b/znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Application/mt/revision_info.h
new file mode 100644
index 0000000..8acffe6
index 0000000..50e85b0
--- /dev/null
+++ b/znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Application/mt/revision_info.h
@@ -0,0 +1,4 @@
+#ifndef APPLICATION_MT_REVISION_INFO_H_
+#define APPLICATION_MT_REVISION_INFO_H_
+#define CODE_REVISION_NUMBER 20191010
+#define CODE_REVISION_NUMBER 20191011
+#endif
diff --git a/znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Stack/Config/preinclude.h b/znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Stack/Config/preinclude.h
new file mode 100644
index 0000000..b96265e
index 0000000..b2a03e1
--- /dev/null
+++ b/znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Stack/Config/preinclude.h
@@ -0,0 +1,47 @@
@@ -0,0 +1,49 @@
+#define INCLUDE_REVISION_INFORMATION
+#define MT_SYS_KEY_MANAGEMENT 1
+#define FEATURE_NVEXID 1
+
+// Save memory
+#undef NWK_MAX_BINDING_ENTRIES
@ -230,7 +279,8 @@ index 0000000..b96265e
+ * Scale other device tables appropriately
+ */
+#define NWK_MAX_DEVICE_LIST 50
+#define ZDSECMGR_TC_DEVICE_MAX 200
+// Setting this from 100 to 200 causes NV issues; further investigation required
+#define ZDSECMGR_TC_DEVICE_MAX 100
+#define MAX_NEIGHBOR_ENTRIES 20
+#define MAX_RTG_ENTRIES 100
diff --git a/znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Stack/Config/znp_cnf.opts b/znp_CC26X2R1_LAUNCHXL_tirtos_ccs/Stack/Config/znp_cnf.opts
@ -284,3 +334,6 @@ index 55dfb43..396f8b0 100644
//========== TouchLink NWK configuration ===============
// Values used by Router when starts a network as initiator
--
2.21.0 (Apple Git-122)