Why don't my nodes have the same view of the mesh?

I have a specific example down below, but I’m generally curious how people discover and debug individual nodes’ representations of the mesh when it’s not consistent. Even “how do you communicate the topology effectively?” is an interesting question, I think.

I have 3 nodes plugged in to my computer, all running 2.1.9.d43ddc9 (two RAK4631 and a Nano G1 Explorer). They’ve been plugged in for more than a day, and yet the mesh is not consistent between the nodes.

❯ meshtastic --port /dev/ttyACM2 --nodes (384c)
╒═════╤═════════════════╤═══════╤═══════════╤════════════╤═════════════╤════════════╤═══════════╤═════════════════╤════════════════╤═════════╤═════════════════════╤════════════════╕
│   N │ User            │ AKA   │ ID        │ Latitude   │ Longitude   │ Altitude   │ Battery   │ Channel util.   │ Tx air util.   │ SNR     │ LastHeard           │ Since          │
╞═════╪═════════════════╪═══════╪═══════════╪════════════╪═════════════╪════════════╪═══════════╪═════════════════╪════════════════╪═════════╪═════════════════════╪════════════════╡
│   1 │ Meshtastic 384c │ 384c  │ !a78a384c │ N/A        │ N/A         │ N/A        │ 59%       │ 2.24%           │ 1.29%          │ N/A     │ 2023-08-02 18:57:31 │ a while        │
├─────┼─────────────────┼───────┼───────────┼────────────┼─────────────┼────────────┼───────────┼─────────────────┼────────────────┼─────────┼─────────────────────┼────────────────┤
│   2 │ TTGO T-Beam     │ 49b0  │ !abf849b0 │ 45.0000°   │ -75.0000°   │ 96 m       │ N/A       │ 2.24%           │ 1.31%          │ 7.00 dB │ 2023-08-02 18:57:05 │ 22 seconds ago │
├─────┼─────────────────┼───────┼───────────┼────────────┼─────────────┼────────────┼───────────┼─────────────────┼────────────────┼─────────┼─────────────────────┼────────────────┤
│   3 │ Meshtastic 37f4 │ 37f4  │ !a78a37f4 │ N/A        │ N/A         │ N/A        │ N/A       │ 3.37%           │ 1.35%          │ 6.00 dB │ 2023-08-01 23:21:29 │ 19 hours ago   │
├─────┼─────────────────┼───────┼───────────┼────────────┼─────────────┼────────────┼───────────┼─────────────────┼────────────────┼─────────┼─────────────────────┼────────────────┤
│   4 │ Meshtastic 380c │ 380c  │ !a78a380c │ 45.0000°   │ -75.0000°   │ N/A        │ N/A       │ 4.49%           │ 1.59%          │ 6.00 dB │ 2023-08-01 21:28:43 │ 21 hours ago   │
╘═════╧═════════════════╧═══════╧═══════════╧════════════╧═════════════╧════════════╧═══════════╧═════════════════╧════════════════╧═════════╧═════════════════════╧════════════════╛

❯ meshtastic --port /dev/ttyACM1 --nodes (7483)
╒═════╤═════════════════╤═══════╤═══════════╤════════════╤═════════════╤════════════╤═══════════╤═════════════════╤════════════════╤═════════╤═════════════════════╤════════════════╕
│   N │ User            │ AKA   │ ID        │ Latitude   │ Longitude   │ Altitude   │ Battery   │ Channel util.   │ Tx air util.   │ SNR     │ LastHeard           │ Since          │
╞═════╪═════════════════╪═══════╪═══════════╪════════════╪═════════════╪════════════╪═══════════╪═════════════════╪════════════════╪═════════╪═════════════════════╪════════════════╡
│   1 │ Meshtastic 7483 │ 7483  │ !95867483 │ 45.0000°   │ -75.0000°   │ N/A        │ 101%      │ 2.24%           │ N/A            │ N/A     │ 2023-08-02 18:57:34 │ just now       │
├─────┼─────────────────┼───────┼───────────┼────────────┼─────────────┼────────────┼───────────┼─────────────────┼────────────────┼─────────┼─────────────────────┼────────────────┤
│   2 │ Meshtastic 384c │ 384c  │ !a78a384c │ N/A        │ N/A         │ N/A        │ 59%       │ 2.24%           │ 1.29%          │ 5.75 dB │ 2023-08-02 18:57:27 │ just now       │
├─────┼─────────────────┼───────┼───────────┼────────────┼─────────────┼────────────┼───────────┼─────────────────┼────────────────┼─────────┼─────────────────────┼────────────────┤
│   3 │ TTGO T-Beam     │ 49b0  │ !abf849b0 │ 45.0000°   │ -75.0000°   │ 96 m       │ N/A       │ 2.24%           │ 1.31%          │ 6.75 dB │ 2023-08-02 18:57:00 │ 35 seconds ago │
├─────┼─────────────────┼───────┼───────────┼────────────┼─────────────┼────────────┼───────────┼─────────────────┼────────────────┼─────────┼─────────────────────┼────────────────┤
│   4 │ Meshtastic 37f4 │ 37f4  │ !a78a37f4 │ N/A        │ N/A         │ N/A        │ N/A       │ 3.37%           │ 1.35%          │ 7.00 dB │ 2023-08-01 23:21:24 │ 19 hours ago   │
├─────┼─────────────────┼───────┼───────────┼────────────┼─────────────┼────────────┼───────────┼─────────────────┼────────────────┼─────────┼─────────────────────┼────────────────┤
│   5 │ Meshtastic 380c │ 380c  │ !a78a380c │ 45.0000°   │ -75.0000°   │ N/A        │ N/A       │ 4.49%           │ 1.59%          │ 6.25 dB │ 2023-08-01 21:28:38 │ 21 hours ago   │
╘═════╧═════════════════╧═══════╧═══════════╧════════════╧═════════════╧════════════╧═══════════╧═════════════════╧════════════════╧═════════╧═════════════════════╧════════════════╛

❯ meshtastic --port /dev/ttyACM0 --nodes (c4d2)
╒═════╤═════════════════╤═══════╤═══════════╤════════════╤═════════════╤════════════╤═══════════╤═════════════════╤════════════════╤═════════╤═════════════════════╤════════════════╕
│   N │ User            │ AKA   │ ID        │ Latitude   │ Longitude   │ Altitude   │ Battery   │ Channel util.   │ Tx air util.   │ SNR     │ LastHeard           │ Since          │
╞═════╪═════════════════╪═══════╪═══════════╪════════════╪═════════════╪════════════╪═══════════╪═════════════════╪════════════════╪═════════╪═════════════════════╪════════════════╡
│   1 │ Meshtastic c4d2 │ c4d2  │ !9c4fc4d2 │ 45.0000°   │ -75.0000°   │ 98 m       │ 85%       │ 4.76%           │ N/A            │ N/A     │ 2023-08-02 18:57:44 │ a while        │
├─────┼─────────────────┼───────┼───────────┼────────────┼─────────────┼────────────┼───────────┼─────────────────┼────────────────┼─────────┼─────────────────────┼────────────────┤
│   2 │ Meshtastic 384c │ 384c  │ !a78a384c │ N/A        │ N/A         │ N/A        │ 59%       │ 2.24%           │ 1.29%          │ 6.25 dB │ 2023-08-02 18:57:32 │ just now       │
├─────┼─────────────────┼───────┼───────────┼────────────┼─────────────┼────────────┼───────────┼─────────────────┼────────────────┼─────────┼─────────────────────┼────────────────┤
│   3 │ TTGO T-Beam     │ 49b0  │ !abf849b0 │ 45.0000°   │ -75.0000°   │ 96 m       │ N/A       │ 2.24%           │ 1.31%          │ 6.50 dB │ 2023-08-02 18:57:05 │ 35 seconds ago │
├─────┼─────────────────┼───────┼───────────┼────────────┼─────────────┼────────────┼───────────┼─────────────────┼────────────────┼─────────┼─────────────────────┼────────────────┤
│   4 │ Meshtastic 37f4 │ 37f4  │ !a78a37f4 │ N/A        │ N/A         │ N/A        │ N/A       │ 3.37%           │ 1.35%          │ 7.00 dB │ 2023-08-01 23:21:29 │ 19 hours ago   │
├─────┼─────────────────┼───────┼───────────┼────────────┼─────────────┼────────────┼───────────┼─────────────────┼────────────────┼─────────┼─────────────────────┼────────────────┤
│   5 │ Meshtastic 380c │ 380c  │ !a78a380c │ 45.0000°   │ -75.0000°   │ N/A        │ N/A       │ 4.49%           │ 1.59%          │ 7.00 dB │ 2023-08-01 21:28:42 │ 21 hours ago   │
╘═════╧═════════════════╧═══════╧═══════════╧════════════╧═════════════╧════════════╧═══════════╧═════════════════╧════════════════╧═════════╧═════════════════════╧════════════════╛

I also have 3 other nodes, 1 of which is plugged in (49b0) and the other two were on battery power but have now died (37f4 and 380c).

Specifically, node 7483 and c4d2 know about 384c but 384c has not discovered the other two. Is this a configuration issue? Is there a way to “force” 384c to discover the others?

Are all the settings of the nodes the same? Specifically the “Role” is important for this.

Normally the ‘NodeInfo’ (which is how devices discover each other) is sent out when you boot the devices and then every three hours, but it is also requested when another node hears a packet from a node it doesn’t know yet. So you can try sending a message from 7483 and c4d2, then it would trigger it if 384c can hear it.

Also, if they’re very close to each other (plugged in to the same computer), it might be the radios are overloaded. You could try placing them at least a room apart. Is 384c the Nano G1 Explorer by any chance?

It is, yes - why do you ask?

Then it’s more likely it has to do with the hardware.

I would try placing them further apart and then check e.g. via a Bluetooth connection (or another computer) if 7483 and c4d2 appear in the node list of 384c.