Skip to main content

📡 Meshtastic for SKYNET2

This documentation describes a production-ready Meshtastic infrastructure using:

  • Proxmox

  • Privileged LXC

  • MeshMonitor (serial bridge mode)

  • Mosquitto MQTT (LAN + TLS Internet access)

  • Cloudflare DNS

  • Let’s Encrypt certificates

  • Optional Discord integration (documented elsewhere)Integrations

This guide assumes:

  • You are self-hosting

  • You want full control

  • You are not relying on Meshtastic’s public MQTT infrastructure

     

     

What This Setup Does

This infrastructure provides:

  • A hardwired Meshtastic node connected via USB to a server
  • A central MeshMonitor instance acting as:
    • Network monitor
    • Message hub
    • Serial bridge
  • A secure MQTT broker allowing:
    • Remote users (cellular / internet) to participate
    • Integration with other systems (Discord, dashboards, automations)
  • A clean separation between:
    • RF mesh traffic
    • Internet transport
    • User-facing services
  • Key Design Decisions
    • MeshMonitor is the source of truth
    • The core node does NOT use Wi-Fi
    • MQTT is optional and client-driven
    • No Docker required
    • No VM required
    • Everything runs natively in one LXC

High-Level Architecture

[ Meshtastic Nodes ]
        ↓ RF
[ Core Node via USB ]
        ↓ Serial
[ MeshMonitor ]
        ↓
[ Mosquitto MQTT ]
   ↓            ↓
 Internet    LAN Services

Chapters

General Information

iX1Le9Kg6vV24fGC-drawing-1-1766028396.png

Random things and other notes I've encountered along the way

Infrastructure

Everything server-side

2.1 Proxmox Container Setup

Container Requirements

    Debian-based LXC (Debian 12 recommended) Privileged container (required for USB access) Static IP recommended

    Why Privileged?

    USB serial access inside LXC is vastly simpler and more reliable when privileged.
    Security tradeoff is acceptable for this use case.

    Â