Merge pull request #44 from mapnull/hotfix-1.4
fix a possible parent repeater loop
This commit is contained in:
@@ -47,6 +47,7 @@ void MyGateway::begin(rf24_pa_dbm_e paLevel, uint8_t channel, rf24_datarate_e da
|
|||||||
}
|
}
|
||||||
|
|
||||||
nc.nodeId = 0;
|
nc.nodeId = 0;
|
||||||
|
nc.parentNodeId = 0;
|
||||||
nc.distance = 0;
|
nc.distance = 0;
|
||||||
inclusionMode = 0;
|
inclusionMode = 0;
|
||||||
buttonTriggeredInclusion = false;
|
buttonTriggeredInclusion = false;
|
||||||
|
|||||||
@@ -289,7 +289,7 @@ boolean MySensor::process() {
|
|||||||
if (repeaterMode && command == C_INTERNAL && type == I_FIND_PARENT) {
|
if (repeaterMode && command == C_INTERNAL && type == I_FIND_PARENT) {
|
||||||
if (nc.distance == 255) {
|
if (nc.distance == 255) {
|
||||||
findParentNode();
|
findParentNode();
|
||||||
} else {
|
} else if (sender != nc.parentNodeId) {
|
||||||
// Relaying nodes should always answer ping messages
|
// Relaying nodes should always answer ping messages
|
||||||
// Wait a random delay of 0-2 seconds to minimize collision
|
// Wait a random delay of 0-2 seconds to minimize collision
|
||||||
// between ping ack messages from other relaying nodes
|
// between ping ack messages from other relaying nodes
|
||||||
|
|||||||
Reference in New Issue
Block a user