mirror of
https://github.com/meshtastic/Meshtastic-Android.git
synced 2026-04-20 22:23:37 +00:00
Hops Away implementation (#966)
* Initial Hops Away feature * Generate our own hopsAway, comparing hopStart to hopLimit * Remove import of hopsAway from device nodeInfo, as this only shows 0 when hopStart isn't included on packets (with this info, we can't differentiate between a node which is Hops Away but on old firmware, or nodes which are on new firmware but direct. Both are 0) Check if hopStart is 0 but hopLimit is not 0, if true set hopsAway to -1. Show nodes with hopsAway with -1 with a (!) appended to the RSSI details, to show this probably isn't true. (eg they are using old firmware) Change the default of hopsAway to -1, until we know it is direct (0) or hops away (1+) * tidy up: move from nested if else to when * Revert Project_Default.xml * Move hopsAway when block in to updateNodeInfo() block above it. Move hopsAway var to end of NodeInfo Class. Schema update due to change above. * hopsAway now follows firmware implementation. hopsAway now imported from radio (installNodeInfo) * reformat --------- Co-authored-by: andrekir <andrekir@pm.me>
This commit is contained in:
parent
261af4be62
commit
47b2ecc8aa
6 changed files with 459 additions and 9 deletions
|
|
@ -1019,8 +1019,12 @@ class MeshService : Service(), Logging {
|
|||
updateNodeInfoTime(it, rxTime)
|
||||
it.snr = packet.rxSnr
|
||||
it.rssi = packet.rxRssi
|
||||
}
|
||||
|
||||
// Generate our own hopsAway, comparing hopStart to hopLimit.
|
||||
if (packet.hopStart != 0 && packet.hopLimit <= packet.hopStart) {
|
||||
it.hopsAway = packet.hopStart - packet.hopLimit
|
||||
}
|
||||
}
|
||||
handleReceivedData(packet)
|
||||
}
|
||||
}
|
||||
|
|
@ -1314,6 +1318,7 @@ class MeshService : Service(), Logging {
|
|||
}
|
||||
|
||||
it.channel = info.channel
|
||||
it.hopsAway = info.hopsAway
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue