mirror of
https://github.com/Koenkk/Z-Stack-firmware.git
synced 2024-07-02 16:14:41 +02:00
167 lines
6.0 KiB
Diff
167 lines
6.0 KiB
Diff
diff --git a/Components/mt/MT_VERSION.c b/Components/mt/MT_VERSION.c
|
|
index f374554..720a8fe 100644
|
|
--- a/Components/mt/MT_VERSION.c
|
|
+++ b/Components/mt/MT_VERSION.c
|
|
@@ -21,7 +21,7 @@
|
|
its documentation for any purpose.
|
|
|
|
YOU FURTHER ACKNOWLEDGE AND AGREE THAT THE SOFTWARE AND DOCUMENTATION ARE
|
|
- PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED,
|
|
+ PROVIDED �AS IS� WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED,
|
|
INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY, TITLE,
|
|
NON-INFRINGEMENT AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL
|
|
TEXAS INSTRUMENTS OR ITS LICENSORS BE LIABLE OR OBLIGATED UNDER CONTRACT,
|
|
@@ -69,7 +69,7 @@
|
|
*****************************************************************************/
|
|
const uint8 MTVersionString[] = {
|
|
2, /* Transport protocol revision */
|
|
- 0, /* Product ID */
|
|
+ 2, /* Product ID */
|
|
2, /* Software major release number */
|
|
7, /* Software minor release number */
|
|
2, /* Software maintenance release number */
|
|
diff --git a/Components/mt/revision_info.h b/Components/mt/revision_info.h
|
|
new file mode 100644
|
|
index 0000000..3755669
|
|
--- /dev/null
|
|
+++ b/Components/mt/revision_info.h
|
|
@@ -0,0 +1 @@
|
|
+#define CODE_REVISION_NUMBER 20190423
|
|
\ No newline at end of file
|
|
diff --git a/Components/stack/af/AF.c b/Components/stack/af/AF.c
|
|
index 5e54237..988416f 100644
|
|
--- a/Components/stack/af/AF.c
|
|
+++ b/Components/stack/af/AF.c
|
|
@@ -405,10 +405,18 @@ void afIncomingData( aps_FrameFormat_t *aff, zAddrType_t *SrcAddress, uint16 Src
|
|
#if !defined ( APS_NO_GROUPS )
|
|
// Find the first endpoint for this group
|
|
grpEp = aps_FindGroupForEndpoint( aff->GroupID, APS_GROUPS_FIND_FIRST );
|
|
- if ( grpEp == APS_GROUPS_EP_NOT_FOUND )
|
|
- return; // No endpoint found
|
|
+ if ( grpEp == APS_GROUPS_EP_NOT_FOUND ) {
|
|
+ // No endpoint found, default to endpoint 1.
|
|
+ // In the original source code there is a return here.
|
|
+ // This prevent the messags from being forwarded.
|
|
+ // For our use-case we want to capture all messages.
|
|
+ // Even if the coordinator is not in the group.
|
|
+ epDesc = afFindEndPointDesc( 1 );
|
|
+ }
|
|
+ else {
|
|
+ epDesc = afFindEndPointDesc( grpEp );
|
|
+ }
|
|
|
|
- epDesc = afFindEndPointDesc( grpEp );
|
|
if ( epDesc == NULL )
|
|
return; // Endpoint descriptor not found
|
|
|
|
@@ -425,6 +433,12 @@ void afIncomingData( aps_FrameFormat_t *aff, zAddrType_t *SrcAddress, uint16 Src
|
|
epDesc = pList->epDesc;
|
|
}
|
|
}
|
|
+ else if ( aff->DstEndPoint == 10 || aff->DstEndPoint == 11 ) {
|
|
+ if ( (epDesc = afFindEndPointDesc( 1 )) )
|
|
+ {
|
|
+ pList = afFindEndPointDescList( epDesc->endPoint );
|
|
+ }
|
|
+ }
|
|
else if ( (epDesc = afFindEndPointDesc( aff->DstEndPoint )) )
|
|
{
|
|
pList = afFindEndPointDescList( epDesc->endPoint );
|
|
diff --git a/Components/stack/sys/ZGlobals.c b/Components/stack/sys/ZGlobals.c
|
|
index d170283..292659a 100644
|
|
--- a/Components/stack/sys/ZGlobals.c
|
|
+++ b/Components/stack/sys/ZGlobals.c
|
|
@@ -212,7 +212,11 @@ uint8 zgEndDeviceConfiguration = END_DEV_CONFIGURATION;
|
|
//
|
|
// NOTICE: Before enabling Child Aging make sure to review all the related
|
|
// definitions in this file, especially zgNwkParentInformation.
|
|
-uint8 zgChildAgingEnable = TRUE;
|
|
+
|
|
+/**
|
|
+ * Disable child aging, otherwise Xiaomi devices are being kicked off the network.
|
|
+ */
|
|
+uint8 zgChildAgingEnable = FALSE;
|
|
|
|
//========== TouchLink NWK configuration ===============
|
|
// Values used by Router when starts a network as initiator
|
|
diff --git a/Projects/zstack/ZNP/Source/preinclude.h b/Projects/zstack/ZNP/Source/preinclude.h
|
|
new file mode 100644
|
|
index 0000000..e113fdc
|
|
--- /dev/null
|
|
+++ b/Projects/zstack/ZNP/Source/preinclude.h
|
|
@@ -0,0 +1,63 @@
|
|
+// Shared accross all firmwares
|
|
+#define TC_LINKKEY_JOIN
|
|
+#define FAKE_CRC_SHDW
|
|
+#define ASSERT_RESET
|
|
+#define INCLUDE_REVISION_INFORMATION
|
|
+#define SECURE 1
|
|
+#define BDB_FINDING_BINDING_CAPABILITY_ENABLED 0
|
|
+#define ZDSECMGR_TC_DEVICE_MAX 30
|
|
+#define DISABLE_GREENPOWER_BASIC_PROXY
|
|
+#define MT_SYS_KEY_MANAGEMENT 1
|
|
+#define TP2_LEGACY_ZC
|
|
+
|
|
+// Save memory
|
|
+#undef NWK_MAX_BINDING_ENTRIES
|
|
+#define NWK_MAX_BINDING_ENTRIES 1
|
|
+#undef APS_MAX_GROUPS
|
|
+#define APS_MAX_GROUPS 1
|
|
+
|
|
+// Disabling MULTICAST is required in order for proper group support.
|
|
+// If MULTICAST is not disabled, the group adress is not included in the APS header
|
|
+#define MULTICAST_ENABLED FALSE
|
|
+
|
|
+// Save memory, see swra635.pdf
|
|
+#define HAL_LCD FALSE
|
|
+#define HAL_ADC FALSE
|
|
+
|
|
+/**
|
|
+ * Reduce BCAST_DELIVERY_TIME and increase MAX_BCAST time.
|
|
+ * BCAST_DELIVERY_TIME is the length of time a broadcast message is kept in the broadcast table
|
|
+ * MAX_BCAST is the max number of messages that are in the broadcast table
|
|
+ * If e.g. BCAST_DELIVERY_TIME = 1 second and MAX_BCAST = 10; 10 broadcast messages per second can be send.
|
|
+ *
|
|
+ * Zigbee2mqtt has a fixed delay of 170ms between each command.
|
|
+ * Therefore a BCAST_DELIVERY_TIME = 20 (= 2 seconds) and MAX_BCAST = 12 allows us to send
|
|
+ * 2 / 12 = 1 group command per 166ms, which is just below the zigbee2mqtt delay.
|
|
+ * Therefore the broadcast table will never get full.
|
|
+ */
|
|
+#define BCAST_DELIVERY_TIME 20
|
|
+#undef MAX_BCAST // avoids incompatible redefinition of macro warning
|
|
+#define MAX_BCAST 12
|
|
+
|
|
+/**
|
|
+ * CC2531
|
|
+ */
|
|
+#if defined FIRMWARE_CC2531
|
|
+ #define NWK_MAX_DEVICE_LIST 15
|
|
+ #define MAX_NEIGHBOR_ENTRIES 8
|
|
+ #define CC2531ZNP
|
|
+ #define MAXMEMHEAP 3227
|
|
+
|
|
+/**
|
|
+ * CC2530
|
|
+ */
|
|
+#elif defined FIRMWARE_CC2530
|
|
+ #define TODO 1
|
|
+
|
|
+/**
|
|
+ * CC2530 + CC2591
|
|
+ */
|
|
+#elif defined FIRMWARE_CC2530_CC2591
|
|
+ #define TODO 1
|
|
+
|
|
+#endif
|
|
\ No newline at end of file
|
|
diff --git a/Projects/zstack/ZNP/Source/znp.cfg b/Projects/zstack/ZNP/Source/znp.cfg
|
|
index 2b8d56d..adb5e42 100644
|
|
--- a/Projects/zstack/ZNP/Source/znp.cfg
|
|
+++ b/Projects/zstack/ZNP/Source/znp.cfg
|
|
@@ -107,3 +107,4 @@
|
|
-DMT_APP_FUNC
|
|
-DMT_APP_CNF_FUNC
|
|
|
|
+--preinclude=preinclude.h
|
|
\ No newline at end of file
|