Z-Stack_3.x.0 coordinator 20240710

This commit is contained in:
Koen Kanters 2024-08-24 22:21:45 +02:00
parent 15c27041a5
commit 85d2fc7a6c
16 changed files with 186711 additions and 639 deletions

View File

@ -1,23 +1,33 @@
# 20240710
- Fixed firmware instability issues introduced in the 20230507 firmware
- Fix `NWK_TABLE_FULL` errors
- SimpleLink SDK 7.41.00.17
# 20230507
- Enable child aging to fix issues like [#13478](https://github.com/Koenkk/zigbee2mqtt/issues/13478) (but not for older Xiaomi devices as they do not implement child aging correctly which gets them kicked out of the network)
- Increase message timeout from 7 to 8 seconds to increase message delivery success rate for devices using a 7.5 seconds poll interval ([#13478](https://github.com/Koenkk/zigbee2mqtt/issues/13478#issuecomment-1501188485))
- Improve performance with larger network
- Optimize table sizes
- Increase `stack_size` from `1024` to `8192`
- Optimize table sizes
- Increase `stack_size` from `1024` to `8192`
- Add firmware for CC1352P7 and CC2652R7
- SimpleLink SDK 7.10.00.98
# 20221226
- Improve performance/reliability for larger network (100+ devices)
- Increase request retry attempts
- Increase routing table sizes
- SimpleLink SDK 6.10.01.01 ([changelog](https://software-dl.ti.com/simplelink/esd/simplelink_cc13xx_cc26xx_sdk/6.10.01.01/exports/changelog.html))
# 20220219
- Fix Touchlink crash
- SimpleLink SDK 5.40.00.40 ([changelog](https://software-dl.ti.com/simplelink/esd/simplelink_cc13xx_cc26xx_sdk/5.40.00.40/exports/changelog.html))
# 20211217
- SimpleLink SDK 5.30.01.01 ([changelog](https://software-dl.ti.com/simplelink/esd/simplelink_cc13xx_cc26xx_sdk/5.30.01.01/exports/changelog.html))
- Increase memory heap
- Turn on/off leds when joining is enabled/disabled
@ -25,6 +35,7 @@
- Allow setting transmit power for CC2652P/CC1352P greater than 5dBm (max 20dBm), default transmit power is set to 9dBm
# 20210708
- SimpleLink SDK 5.10.00.48 ([changelog](http://software-dl.ti.com/simplelink/esd/simplelink_cc13x2_26x2_sdk/5.10.00.48/exports/changelog.html))
- Increase MAC buffers, increases performance on message burst and reduces MAC_TRANSACTION_OVERFLOW errors
- LED control
@ -32,39 +43,48 @@
- Forward message to host even when profileID does not match
# 20210120
- Optimize network parameters (according to https://www.ti.com/lit/an/swra650b/swra650b.pdf)
- Change default CC2652R/CC2652RB/CC1352P-2/CC2652P transmit power from 0dBm to 5dBm
- Potential fix for Hue end devices disconnecting
- SimpleLink SDK 4.40.00.44 ([changelog](http://software-dl.ti.com/simplelink/esd/simplelink_cc13x2_26x2_sdk/4.40.00.44/exports/changelog.html))
# 20201026
- SimpleLink SDK 4.30.00.54 ([changelog](http://software-dl.ti.com/simplelink/esd/simplelink_cc13x2_26x2_sdk/4.30.00.54/exports/changelog.html))
- Expose `AssocAdd` function
# 20200925
- SimpleLink SDK 4.20.01.04 ([changelog](http://software-dl.ti.com/simplelink/esd/simplelink_cc13x2_26x2_sdk/4.20.01.04/exports/changelog.html))
- Allow support for Samsung SmartThings PGC410EU presence sensor ([link](https://github.com/Koenkk/zigbee2mqtt/issues/4055))
- Fix commands to long sleeping end devices failing when directly connected to coordinator (e.g. Xiaomi JTYJ-GD-01LM/BW)
# 20200805
- Expose `AssocRemove` function
- SimpleLink SDK 4.20.00.35 ([changelog](http://software-dl.ti.com/simplelink/esd/simplelink_cc13x2_26x2_sdk/4.20.00.35/exports/changelog.html))
# 20200417
- SimpleLink SDK 4.10.00.78 ([changelog](http://software-dl.ti.com/simplelink/esd/simplelink_cc13x2_26x2_sdk/4.10.00.78/exports/changelog.html)) (+ SimpleLink SDK 3.40.00.02 ([changelog](http://software-dl.ti.com/simplelink/esd/simplelink_cc13x2_26x2_sdk/3.40.00.02/exports/changelog.html)))
- Remove and rediscover route on source route failure (should fix issues with e.g. Hue enddevices dropping off) ([more info](https://e2e.ti.com/support/wireless-connectivity/zigbee-and-thread/f/158/t/883629))
- Fix devices not able to reconnect when attempt unsecured rejoin ([more info](https://e2e.ti.com/support/wireless-connectivity/zigbee-and-thread/f/158/p/882650/3265311))
- Enable parent announce, fixes devices not reachable when changing parents while coordinator is down.
# 20191106
- Increase max number of Zigbee 3.0 devices that can join to 200
# 20191015
- Increased group command buffer
# 20191010
- Update to `SIMPLELINK-CC13X2-26X2-SDK_3.30.00.03`
- Add CC1352P_2 firmware
# 20190426
- Initial version.
- Initial version.

View File

@ -1,27 +1,37 @@
# Compiling the firmware
## Setup development environment
1. Download and install [simplelink_cc13xx_cc26xx_sdk_7_10_00_98](https://www.ti.com/tool/SIMPLELINK-CC13XX-CC26XX-SDK#downloads)
1. Download and install [Code Composer Studio 12.3.0.00005](http://www.ti.com/tool/CCSTUDIO)
1. Download and install [SIMPLELINK-LOWPOWER-F2-SDK 7.41.00.17](https://www.ti.com/tool/download/SIMPLELINK-LOWPOWER-F2-SDK/7.41.00.17)
1. Download and install [Code Composer Studio 12.6.0](https://www.ti.com/tool/download/CCSTUDIO/12.6.0)
## Compiling
1. Create a folder called `workspace` in the folder where the SDK is installed. In the SDK installation folder you should see files like `Makefile` and `license_simplelink_cc13xx_cc26xx_sdk_7_10_00_98.txt`.
1. Create a folder called `workspace` in the folder where the SDK is installed. In the SDK installation folder you should see files like `Makefile` and `license_simplelink_cc13xx_cc26xx_sdk_7_41_00_17.txt`.
1. Start Code Composer Studio, it will ask you to select a workspace folder, select the `workspace` folder you created in the previous step.
1. Go to *File -> Import -> Code Composer Studio -> CCS Projects -> Select* search-directory: `simplelink_cc13xx_cc26xx_sdk_7_10_00_98/examples/rtos`.
1. Go to _File -> Import -> Code Composer Studio -> CCS Projects -> Select_ search-directory: `simplelink_cc13xx_cc26xx_sdk_7_41_00_17/examples/rtos`.
1. Select:
- `znp_CC1352P_2_LAUNCHXL_tirtos7_ticlang`
- `znp_CC26X2R1_LAUNCHXL_tirtos7_ticlang`
- `znp_LP_CC1352P7_4_tirtos7_ticlang`
- `znp_LP_CC2652R7_tirtos7_ticlang`
- `znp_LP_CC2652RB_tirtos7_ticlang`
1. Press *Finish*.
- `znp_CC1352P_2_LAUNCHXL_tirtos7_ticlang`
- `znp_CC26X2R1_LAUNCHXL_tirtos7_ticlang`
- `znp_LP_CC1352P7_4_tirtos7_ticlang`
- `znp_LP_CC2652R7_tirtos7_ticlang`
- `znp_LP_CC2652RB_tirtos7_ticlang`
1. Press _Finish_.
1. In Code Composer Studio, expand the 5 projects and for each open `znp.syscfg`, expand `Power Management` and change `Minimal Poll Period (ms)` to `1000`, change it back to `100` immediately and save the file.
1. Copy `firmware.patch` to the SDK installation folder, open a Git Bash in this folder and apply the patch using `git apply firmware.patch --ignore-space-change`.
1. Build the 5 projects; right click -> *Build project*.
- **Important:** by default the **launchpad** variant of the CC1352P2_CC2652P (= `znp_CC1352P_2_LAUNCHXL_tirtos7_ticlang`) is build. To build the **other** variant comment `#define LAUNCHPAD_CONFIG 1` in `preinclude.h` (located under `Stack/Config/`), don't forget to save.
1. Build the 5 projects; right click -> _Build project_.
- **Important:** by default the **launchpad** variant of the CC1352P2_CC2652P (= `znp_CC1352P_2_LAUNCHXL_tirtos7_ticlang`) is build. To build the **other** variant comment `#define LAUNCHPAD_CONFIG 1` in `preinclude.h` (located under `Stack/Config/`), don't forget to save.
1. Once finished, the firmware can be found under `znp_*_tirtos7_ticlang/default/znp_*_tirtos7_ticlang.hex`
- `znp_CC1352P_2_LAUNCHXL_tirtos7_ticlang.hex` -> CC1352P-2 and CC2652P based boards
- `znp_CC26X2R1_LAUNCHXL_tirtos7_ticlang.hex` -> CC2652R based boards
- `znp_LP_CC1352P7_4_tirtos7_ticlang.hex` -> CC1352P7 based boards
- `znp_LP_CC2652R7_tirtos7_ticlang.hex` -> CC2652R7 based boards
- `znp_LP_CC2652RB_tirtos7_ticlang.hex` -> CC2652RB based boards
- `znp_CC1352P_2_LAUNCHXL_tirtos7_ticlang.hex` -> CC1352P-2 and CC2652P based boards
- `znp_CC26X2R1_LAUNCHXL_tirtos7_ticlang.hex` -> CC2652R based boards
- `znp_LP_CC1352P7_4_tirtos7_ticlang.hex` -> CC1352P7 based boards
- `znp_LP_CC2652R7_tirtos7_ticlang.hex` -> CC2652R7 based boards
- `znp_LP_CC2652RB_tirtos7_ticlang.hex` -> CC2652RB based boards
## Binary `maclib_*.a` changes in `firmware.patch`
Note that the `firmware.patch` patches the binary `maclib_*.a` files.
These changes are required to fix the coordinator crashing when the TX power is set to 5+.
In SDK 7.10.02.23 TI made changes to `macSetTxPowerVal` which introduced this issue.
The patch reverts these changes.
The patched `maclib_*.a` files were provided by a TI employee and will only work for the 7.41.00.17 SDK.

File diff suppressed because it is too large Load Diff

View File

@ -1,39 +1,39 @@
{
"index_version":"1675873866",
"firmware_type":{
"coordinator":{
"stack":[
"index_version": "1724530770",
"firmware_type": {
"coordinator": {
"stack": [
{
"Z-Stack_3.0.x":"20190523"
"Z-Stack_3.0.x": "20190523"
},
{
"Z-Stack_3.x.0":"20221226"
"Z-Stack_3.x.0": "20221226"
},
{
"Z-Stack_3.x.0": "20230507"
},
{
"Z-Stack_3.x.0": "20240710"
}
],
"stack_default":"Z-Stack_3.x.0"
"stack_default": "Z-Stack_3.x.0"
},
"router":{
"stack":[
[
"Z-Stack_3.x.0",
"20221102"
]
],
"stack_default":"Z-Stack_3.x.0"
"router": {
"stack": [["Z-Stack_3.x.0", "20221102"]],
"stack_default": "Z-Stack_3.x.0"
}
},
"boards":{
"LAUNCHXL-CC26xR1":"CC2652R",
"LAUNCHXL-CC1352P-2":"CC1352P2_CC2652P_launchpad",
"zzh":"CC2652R",
"zzhp":"CC1352P2_CC2652P_other",
"zzhp-lite":"CC1352P2_CC2652P_other"
"boards": {
"LAUNCHXL-CC26xR1": "CC2652R",
"LAUNCHXL-CC1352P-2": "CC1352P2_CC2652P_launchpad",
"zzh": "CC2652R",
"zzhp": "CC1352P2_CC2652P_other",
"zzhp-lite": "CC1352P2_CC2652P_other"
},
"bsl-config":{
"CC2652R":"0x00057FD8:0xC50DFEC5",
"CC1352P2_CC2652P_launchpad":"0x00057FD8:0xC50FFEC5"
"bsl-config": {
"CC2652R": "0x00057FD8:0xC50DFEC5",
"CC1352P2_CC2652P_launchpad": "0x00057FD8:0xC50FFEC5"
}
}