Skip to content

Commit

Permalink
0x8002 Data indication when ZCL UNHANDLED_EVENT
Browse files Browse the repository at this point in the history
original commit 987193603badff6800e5df44063558f15224eaf8
by mbadaire@gmail.com <mbadaire@gmail.com>
  • Loading branch information
badzz authored and G1K committed Jan 19, 2021
1 parent 8dc9307 commit 305ac12
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 3 deletions.
16 changes: 15 additions & 1 deletion Source/ZigbeeNodeControlBridge/app_zcl_event_handler.c
Original file line number Diff line number Diff line change
Expand Up @@ -360,7 +360,16 @@ PRIVATE void APP_ZCL_cbEndpointCallback ( tsZCL_CallBackEvent* psEvent )
uint16 u16Length = 0;
uint8 au8LinkTxBuffer[256];

vLog_Printf ( TRACE_ZCL,LOG_DEBUG, "\nEntering cbZCL_EndpointCallback" );
vLog_Printf ( TRACE_ZCL,LOG_DEBUG, "\nEntering cbZCL_EndpointCallback %d", psEvent->eEventType);

if (sZllState.u8RawMode == RAW_MODE_ON){
ZPS_tsAfEvent* psStackEvent = psEvent->pZPSevent;
if (psEvent->eEventType != E_ZCL_CBET_CLUSTER_UPDATE && psEvent->eEventType != E_ZCL_CBET_UNHANDLED_EVENT )
{
Znc_vSendDataIndicationToHost(psStackEvent, au8LinkTxBuffer);
return;
}
}

switch (psEvent->eEventType)
{
Expand All @@ -382,6 +391,11 @@ PRIVATE void APP_ZCL_cbEndpointCallback ( tsZCL_CallBackEvent* psEvent )
case E_ZCL_CBET_UNHANDLED_EVENT:
{
vLog_Printf ( TRACE_ZCL, LOG_DEBUG, " (E_ZCL_CBET_UNHANDLED_EVENT)" );
ZPS_tsAfEvent* psStackEvent = psEvent->pZPSevent;
if (psStackEvent->eType == ZPS_EVENT_APS_DATA_INDICATION)
{
Znc_vSendDataIndicationToHost(psStackEvent, au8LinkTxBuffer);
}
}
break;

Expand Down
13 changes: 11 additions & 2 deletions sdk/JN-SW-4170/Components/ZCIF/Source/zcl_event.c
Original file line number Diff line number Diff line change
Expand Up @@ -428,6 +428,8 @@ PRIVATE void vZCL_ZigbeeEventHandler(ZPS_tsAfEvent *pZPSevent)
sZCL_CallBackEvent.u8EndPoint = pZPSevent->uEvent.sApsDataIndEvent.u8DstEndpoint;
vZCL_PassEventToUser(&sZCL_CallBackEvent);

vZCL_HandleDataIndication(pZPSevent);

}
break;
}
Expand Down Expand Up @@ -763,7 +765,10 @@ PRIVATE void vZCL_HandleDataIndication(ZPS_tsAfEvent *pZPSevent)
if ((psClusterInstance == NULL) &&
(bZCL_OverrideHandlingEntireProfileCmd(pZPSevent->uEvent.sApsDataIndEvent.u16ClusterId) == FALSE))
{
eZCL_SendDefaultResponse(pZPSevent, E_ZCL_CMDS_UNSUPPORTED_CLUSTER);
sZCL_CallBackEvent.eEventType = E_ZCL_CBET_UNHANDLED_EVENT;
sZCL_CallBackEvent.u8EndPoint = pZPSevent->uEvent.sApsDataIndEvent.u8DstEndpoint;
vZCL_PassEventToUser(&sZCL_CallBackEvent);
//eZCL_SendDefaultResponse(pZPSevent, E_ZCL_CMDS_UNSUPPORTED_CLUSTER);
}
else
{
Expand Down Expand Up @@ -797,8 +802,12 @@ PRIVATE void vZCL_HandleDataIndication(ZPS_tsAfEvent *pZPSevent)
else
#endif
{
// fix pipiche
sZCL_CallBackEvent.eEventType = E_ZCL_CBET_UNHANDLED_EVENT;
sZCL_CallBackEvent.u8EndPoint = pZPSevent->uEvent.sApsDataIndEvent.u8DstEndpoint;
vZCL_PassEventToUser(&sZCL_CallBackEvent);

eZCL_SendDefaultResponse(pZPSevent, E_ZCL_CMDS_UNSUPPORTED_CLUSTER);
//eZCL_SendDefaultResponse(pZPSevent, E_ZCL_CMDS_UNSUPPORTED_CLUSTER);
}
}
else
Expand Down

0 comments on commit 305ac12

Please sign in to comment.