From 58bb7169a0f87d3c9e4bc9c0068f3b82b62d438c Mon Sep 17 00:00:00 2001 From: Kevin Hester Date: Mon, 8 Feb 2021 10:15:02 +0800 Subject: [PATCH] use nodenum as the default nodeid --- src/mesh/NodeDB.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/mesh/NodeDB.cpp b/src/mesh/NodeDB.cpp index ea79e6ccb..dc27276ab 100644 --- a/src/mesh/NodeDB.cpp +++ b/src/mesh/NodeDB.cpp @@ -265,16 +265,15 @@ void NodeDB::installDefaultDeviceState() // Init our blank owner info to reasonable defaults getMacAddr(ourMacAddr); - sprintf(owner.id, "!%02x%02x%02x%02x%02x%02x", ourMacAddr[0], ourMacAddr[1], ourMacAddr[2], ourMacAddr[3], ourMacAddr[4], - ourMacAddr[5]); - memcpy(owner.macaddr, ourMacAddr, sizeof(owner.macaddr)); // Set default owner name - pickNewNodeNum(); // Note: we will repick later, just in case the settings are corrupted, but we need a valid - // owner.short_name now + pickNewNodeNum(); // based on macaddr now sprintf(owner.long_name, "Unknown %02x%02x", ourMacAddr[4], ourMacAddr[5]); sprintf(owner.short_name, "?%02X", (unsigned)(myNodeInfo.my_node_num & 0xff)); + sprintf(owner.id, "!%08x", getNodeNum()); // Default node ID now based on nodenum + memcpy(owner.macaddr, ourMacAddr, sizeof(owner.macaddr)); + // Restore region if possible if (oldRegionCode != RegionCode_Unset) radioConfig.preferences.region = oldRegionCode;