/meshtastic-matrix-relay

A relay between a Matrix.org room and a Meshtastic radio. This relay extends your Matrix.org-based communication with a LoRa-based Meshtastic radio mesh. This is not an official product of Matrix.org or Meshtastic.

Primary LanguagePythonMIT LicenseMIT

M<>M Relay

(Meshtastic <=> Matrix Relay)

A powerful and easy-to-use relay between Meshtastic devices and Matrix chat rooms, allowing seamless communication across platforms. This opens the door for bridging Meshtastic devices to many other platforms.

Features

  • Bidirectional message relay between Meshtastic devices and Matrix chat rooms, capable of supporting multiple meshnets
  • Supports serial, network, and BLE (now too!) connections for Meshtastic devices
  • Custom keys are embedded in Matrix messages which are used when relaying messages between two or more meshnets.
  • Truncates long messages to fit within Meshtastic's payload size
  • SQLite database to store node information for improved functionality
  • Customizable logging level for easy debugging
  • Configurable through a simple YAML file
  • Supports mapping multiple rooms and channels 1:1
  • Relays messages to/from a MQTT broker, if configured in the Meshtastic firmware (Note: Messages relayed via MQTT currently share the relay's meshnet_name)

We would love to support Matrix E2EE rooms, but this is currently not implemented. If you are familiar with matrix-nio, we would gladly accept a PR for this feature!

Windows Installer

The latest installer is available here

Plugins

Generate a map of your nodes

Produce high-level details about your mesh

Getting Started with Matrix

See our Wiki page Getting Started With Matrix & MM Relay.

Already on Matrix?

Join us!

Supported Platforms

The relay is compatible with the following operating systems:

  • Linux
  • MacOS
  • Windows

Refer to the development instructions for details about running the relay on MacOS and Linux.