diff --git a/meshtastic/deviceonly.options b/meshtastic/deviceonly.options index 82dffcf4..d6aae0c4 100644 --- a/meshtastic/deviceonly.options +++ b/meshtastic/deviceonly.options @@ -10,8 +10,9 @@ *NodeInfoLite.channel int_size:8 *NodeInfoLite.hops_away int_size:8 +*NodeInfoLite.next_hop int_size:8 *UserLite.long_name max_size:40 *UserLite.short_name max_size:5 *UserLite.public_key max_size:32 # public key -*UserLite.macaddr max_size:6 fixed_length:true +*UserLite.macaddr max_size:6 fixed_length:true \ No newline at end of file diff --git a/meshtastic/deviceonly.proto b/meshtastic/deviceonly.proto index 55aa9a77..c506137f 100644 --- a/meshtastic/deviceonly.proto +++ b/meshtastic/deviceonly.proto @@ -153,6 +153,11 @@ message NodeInfoLite { * Persists between NodeDB internal clean ups */ bool is_ignored = 11; + + /* + * Last byte of the node number of the node that should be used as the next hop to reach this node. + */ + uint32 next_hop = 12; } /* @@ -237,4 +242,4 @@ message ChannelFile { * NodeDB.cpp in the device code. */ uint32 version = 2; -} +} \ No newline at end of file diff --git a/meshtastic/mesh.options b/meshtastic/mesh.options index f474988c..26182a21 100644 --- a/meshtastic/mesh.options +++ b/meshtastic/mesh.options @@ -38,6 +38,8 @@ *MeshPacket.hop_limit int_size:8 *MeshPacket.hop_start int_size:8 *MeshPacket.channel int_size:8 +*MeshPacket.next_hop int_size:8 +*MeshPacket.relay_node int_size:8 *QueueStatus.res int_size:8 *QueueStatus.free int_size:8 @@ -75,4 +77,4 @@ *ChunkedPayload.chunk_count int_size:16 *ChunkedPayload.chunk_index int_size:16 -*ChunkedPayload.payload_chunk max_size:228 +*ChunkedPayload.payload_chunk max_size:228 \ No newline at end of file diff --git a/meshtastic/mesh.proto b/meshtastic/mesh.proto index 27915a2c..181f27e2 100644 --- a/meshtastic/mesh.proto +++ b/meshtastic/mesh.proto @@ -1233,6 +1233,18 @@ message MeshPacket { * Indicates whether the packet was en/decrypted using PKI */ bool pki_encrypted = 17; + + /* + * Last byte of the node number of the node that should be used as the next hop in routing. + * Set by the firmware internally, clients are not supposed to set this. + */ + uint32 next_hop = 18; + + /* + * Last byte of the node number of the node that will relay/relayed this packet. + * Set by the firmware internally, clients are not supposed to set this. + */ + uint32 relay_node = 19; } /* @@ -2040,4 +2052,4 @@ message ChunkedPayloadResponse { */ resend_chunks resend_chunks = 4; } -} +} \ No newline at end of file