Make use of TX options in the NXP backend and send permit join to short address broadcast, not group
This commit is contained in:
parent
1eed81562a
commit
72150b6bfb
@ -328,7 +328,7 @@ ZigbeeInterfaceNxpReply *ZigbeeBridgeControllerNxp::requestEnqueueSendDataGroup(
|
|||||||
payloadStream << profileId;
|
payloadStream << profileId;
|
||||||
payloadStream << clusterId;
|
payloadStream << clusterId;
|
||||||
payloadStream << sourceEndpoint;
|
payloadStream << sourceEndpoint;
|
||||||
payloadStream << static_cast<quint8>(SecurityModeUnsecure);
|
payloadStream << static_cast<quint8>(txOptions);
|
||||||
payloadStream << radius;
|
payloadStream << radius;
|
||||||
payloadStream << static_cast<quint16>(asdu.size());
|
payloadStream << static_cast<quint16>(asdu.size());
|
||||||
for (int i = 0; i < asdu.size(); i++) {
|
for (int i = 0; i < asdu.size(); i++) {
|
||||||
@ -364,7 +364,7 @@ ZigbeeInterfaceNxpReply *ZigbeeBridgeControllerNxp::requestEnqueueSendDataShortA
|
|||||||
payloadStream << profileId;
|
payloadStream << profileId;
|
||||||
payloadStream << clusterId;
|
payloadStream << clusterId;
|
||||||
payloadStream << sourceEndpoint;
|
payloadStream << sourceEndpoint;
|
||||||
payloadStream << static_cast<quint8>(SecurityModeUnsecure);
|
payloadStream << static_cast<quint8>(txOptions);
|
||||||
payloadStream << radius;
|
payloadStream << radius;
|
||||||
payloadStream << static_cast<quint16>(asdu.size());
|
payloadStream << static_cast<quint16>(asdu.size());
|
||||||
for (int i = 0; i < asdu.size(); i++) {
|
for (int i = 0; i < asdu.size(); i++) {
|
||||||
@ -400,7 +400,7 @@ ZigbeeInterfaceNxpReply *ZigbeeBridgeControllerNxp::requestEnqueueSendDataIeeeAd
|
|||||||
payloadStream << profileId;
|
payloadStream << profileId;
|
||||||
payloadStream << clusterId;
|
payloadStream << clusterId;
|
||||||
payloadStream << sourceEndpoint;
|
payloadStream << sourceEndpoint;
|
||||||
payloadStream << static_cast<quint8>(SecurityModeUnsecure);
|
payloadStream << static_cast<quint8>(txOptions);
|
||||||
payloadStream << radius;
|
payloadStream << radius;
|
||||||
payloadStream << static_cast<quint16>(asdu.size());
|
payloadStream << static_cast<quint16>(asdu.size());
|
||||||
for (int i = 0; i < asdu.size(); i++) {
|
for (int i = 0; i < asdu.size(); i++) {
|
||||||
|
|||||||
@ -225,12 +225,12 @@ ZigbeeNetworkReply *ZigbeeNetworkNxp::requestSetPermitJoin(quint16 shortAddress,
|
|||||||
// Get the power descriptor
|
// Get the power descriptor
|
||||||
ZigbeeNetworkRequest request;
|
ZigbeeNetworkRequest request;
|
||||||
request.setRequestId(generateSequenceNumber());
|
request.setRequestId(generateSequenceNumber());
|
||||||
request.setDestinationAddressMode(Zigbee::DestinationAddressModeGroup);
|
request.setDestinationAddressMode(Zigbee::DestinationAddressModeShortAddress);
|
||||||
request.setDestinationShortAddress(static_cast<quint16>(shortAddress));
|
request.setDestinationShortAddress(static_cast<quint16>(shortAddress));
|
||||||
request.setProfileId(Zigbee::ZigbeeProfileDevice); // ZDP
|
request.setProfileId(Zigbee::ZigbeeProfileDevice); // ZDP
|
||||||
request.setClusterId(ZigbeeDeviceProfile::MgmtPermitJoinRequest);
|
request.setClusterId(ZigbeeDeviceProfile::MgmtPermitJoinRequest);
|
||||||
request.setSourceEndpoint(0); // ZDO
|
request.setSourceEndpoint(0); // ZDO
|
||||||
request.setRadius(0);
|
request.setRadius(10);
|
||||||
|
|
||||||
// Build ASDU
|
// Build ASDU
|
||||||
QByteArray asdu;
|
QByteArray asdu;
|
||||||
|
|||||||
Reference in New Issue
Block a user