Other Parts Discussed in Thread: Z-STACK
器件型号: CC1352R
主题中讨论的其他器件: Z-stack
尊敬的 TI 论坛:
我正在尝试实现一种类似于 ZigBee 使用的 Orphan 联接(NLDE-join.request(孤立)) 的机制、其中设备通过 Orphan 扫描来查询短地址(这是一种关联)。 请注意、我不使用 ZigBee、而是直接使用来自 TI 15.4 Stack 的 IEEE 802.15.4 基元 (simplelink_cc13xx_cc26xx_sdk_8_32_00_07)。
我还使用了 CC1352R1。
我 在设备中的扫描请求与此类似:
voidScanRequest(void){ // The PAN ID should not be necessary, but there is no ACK to the // coordinator realigment command without this. ApiMac_mlmeSetReqUint16(ApiMac_attribute_panId,5); ApiMac_mlmeSetReqUint16(ApiMac_attribute_coordShortAddress,0x0001); ApiMac_mlmeScanReq_t scanReq; memset(&scanReq, 0, sizeof(ApiMac_mlmeScanReq_t)); scanReq.phyID = 0; // using 2.4Ghz O-QPSK for now scanReq.channelPage = 0; memset(scanReq.scanChannels, 0, sizeof(scanReq.scanChannels)); // Clear all firstuint8_t defaultChannelMask[17] = {0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};memcpy(scanReq.scanChannels,defaultChannelMask,17); // CH 11-14scanReq.scanType = ApiMac_scantype_orphan;scanReq.maxResults = 0;scanReq.permitJoining = false;scanReq.linkQuality = false;scanReq.percentFilter = 255;memset(&scanReq.sec, 0, sizeof(ApiMac_sec_t)); // no securityApiMac_mlmeScanReq(&scanReq);}在我的协调器中,我的 MLME-orphan.indication 给出了如下的 orphan 响应:
voidOrphanIndication(ApiMac_mlmeOrphanInd_t *params){ ApiMac_mlmeOrphanRsp_t orphanRsp; memset(&orphanRsp, 0, sizeof(ApiMac_mlmeOrphanRsp_t)); orphanRsp.shortAddress = 0xDEAF; // fixed short address orphanRsp.associatedMember = true; orphanRsp.orphanAddress[0] = params->orphanAddress[0]; orphanRsp.orphanAddress[1] = params->orphanAddress[1]; orphanRsp.orphanAddress[2] = params->orphanAddress[2]; orphanRsp.orphanAddress[3] = params->orphanAddress[3]; orphanRsp.orphanAddress[4] = params->orphanAddress[4]; orphanRsp.orphanAddress[5] = params->orphanAddress[5]; orphanRsp.orphanAddress[6] = params->orphanAddress[6]; orphanRsp.orphanAddress[7] = params->orphanAddress[7]; memset(&orphanRsp.sec, 0, sizeof(ApiMac_sec_t)); // no security ApiMac_mlmeOrphanRsp(&orphanRsp);}使用 监听器、我可以看到孤立通知命令、协调器校正及其 ACK 正在发送。 但是、Scan CONFIRM 返回状态 234(无信标)、这意味着在孤立扫描的情况下未收到协调器校正命令、或者由于某种未知原因由 MAC 进行了过滤。 还值得注意的是、我的 responseWaitTime 设置为 32(IEEE 802.15.4 描述的默认值)
孤儿扫描是否有其他要求可用于此目的? 有什么建议吗?
我附上了 Sniff 的屏幕截图(显然不允许使用 pcap) 
感谢您的帮助。
此致、
Alberto G.