Packet Monitor β
The Packet Monitor is a diagnostic tool that displays raw Meshtastic packets as they are received from the mesh network. It provides visibility into the low-level packet traffic for debugging and analysis purposes.

Accessing the Packet Monitor β
The Packet Monitor is available in two locations:
- Sidebar tab β Click the Packet Monitor icon in the sidebar for a full-page view
- Map panel β The Packet Monitor also appears at the bottom of the Map tab
Both views require the packetmonitor:read permission and must be enabled in Settings.
What the Packet Monitor Shows β
Incoming Packets Only
The Packet Monitor displays only incoming packets received from the mesh network. It acts as a "radio sniffer" showing what your node hears over the air, not what MeshMonitor transmits.
Packets That Appear β
| Packet Type | Description |
|---|---|
| TEXT_MESSAGE (1) | Text messages received from other nodes |
| POSITION (3) | GPS position updates from nodes |
| NODEINFO (4) | Node information broadcasts |
| ROUTING (5) | Routing acknowledgments and errors |
| ADMIN (6) | Administrative messages |
| PAXCOUNTER (34) | Paxcounter telemetry |
| TELEMETRY (67) | Device/environment telemetry |
| TRACEROUTE (70) | Traceroute responses |
| NEIGHBORINFO (71) | Neighbor information |
Packets That Do NOT Appear β
The following packets are not logged to the Packet Monitor:
Outgoing packets sent by MeshMonitor:
- Outgoing text messages - Messages you send via the chat interface
- Outgoing traceroute requests - Traceroutes initiated manually or by Auto Traceroute
- Outgoing position requests - Position exchange requests
- Auto-acknowledge responses - Automated replies sent by MeshMonitor
- Auto-welcome messages - Welcome messages sent to new nodes
- Auto-announcements - Scheduled announcement messages
Internal management packets (to/from local node):
- ADMIN_APP (6) - Administrative packets for local device configuration
- ROUTING_APP (5) - Routing acknowledgments to/from your connected node
These internal packets are filtered to reduce noise and keep the log focused on actual mesh traffic. ADMIN and ROUTING packets between remote nodes on the mesh are still logged.
This is by design - the Packet Monitor shows mesh network traffic, not MeshMonitor's internal operations or local device management.
Filtering Packets β
Use the packet type dropdown to filter by specific packet types (portnums). Common filters include:
- All Types - Show all received packets
- TEXT_MESSAGE - Show only text messages
- POSITION - Show only position updates
- TELEMETRY - Show only telemetry data
- TRACEROUTE - Show only traceroute responses
- NODEINFO - Show only node information packets
Traceroute Filter
If you filter on TRACEROUTE and see no results, this likely means no traceroute operations have been performed on your mesh recently. Traceroute packets only appear when:
- A node on your mesh initiates a traceroute
- The traceroute response is received back
To see traceroute packets, initiate a traceroute from MeshMonitor's Node Details page or from another device on your mesh.
Packet Information β
Each packet entry shows:
- Timestamp - When the packet was received
- From Node - The sending node's ID and name
- To Node - The destination (broadcast or specific node)
- Channel - The channel number
- Port Type - The Meshtastic portnum/application type
- SNR/RSSI - Signal quality metrics
- Hop Count - Number of hops the packet traveled
- Encrypted - Whether the packet was encrypted
- Payload Preview - A summary of the packet contents
Permissions β
Access Permission β
Viewing the Packet Monitor requires the packetmonitor:read permission. This is granted by default to all users (including Anonymous). Administrators can revoke it per-user in Settings > Users. The Packet Monitor permission is read-only β there is no write mode.
Packet Filtering by Permission β
Once a user has access to the Packet Monitor, the packets they see are filtered based on their other permissions:
| Packet Type | Permission Required |
|---|---|
| Encrypted packets | None β always visible (content is unreadable) |
| Decrypted channel packets | channel_N:read for the packet's channel (0-7) |
| Direct Messages (TEXT_MESSAGE_APP to a specific node) | messages:read (Direct Messages: Read) |
| Other decrypted packets (POSITION, TELEMETRY, etc.) | channel_N:read for the packet's channel |
| Packets with no channel info | Always visible |
Admin users bypass all filtering and see all packets.
Example
A user with packetmonitor:read, channel_0:read, and channel_1:read (but no messages:read) will see:
- All encrypted packets
- Decrypted packets on channels 0 and 1
- Non-DM packets on channels 0 and 1
- Not direct message text packets (they need
messages:readfor those)
Use Cases β
The Packet Monitor is useful for:
- Debugging connectivity issues - See if packets are being received
- Analyzing mesh traffic patterns - Understand what types of traffic flow through your node
- Verifying encryption - Check which packets are encrypted vs unencrypted
- Signal quality analysis - Monitor SNR/RSSI values over time
- Troubleshooting packet delivery - Verify packets are reaching your node