Skip to main content

MMRelay

Meshtastic ↔ Matrix Relay

MMRelay is a self-hosted bridge between a Meshtastic meshnet and Matrix. It runs as a long-lived service, connects to one Meshtastic node, logs in to Matrix with a bot account, and relays eligible traffic between configured Meshtastic channels and Matrix rooms.

Meshtastic meshnet ⇄ Meshtastic node ⇄ MMRelay ⇄ Matrix rooms

How it works at a glance

  • Meshtastic side: MMRelay connects to a Meshtastic node over Serial, BLE, or TCP/network (for example, a node reachable over Wi-Fi).
  • Matrix side: MMRelay joins configured rooms using a dedicated Matrix bot account.
  • Room/channel mapping: each configured Matrix room is associated with a Meshtastic channel number. Multiple Matrix rooms may use the same channel.
  • Bidirectional relay: eligible mesh traffic can be posted to mapped Matrix rooms, and eligible Matrix traffic can be transmitted on the mapped Meshtastic channel.
  • Identity boundary: messages posted into Matrix are sent by the MMRelay bot. Meshtastic sender names and node IDs are preserved as attribution; they are not Matrix-authenticated identities.

For the full conceptual model—including meshnet terminology, the recommended relay-node setup, message flow, mapping behavior, and the identity/trust boundary—see How MMRelay Works.

Start here

Highlights

  • Bidirectional Meshtastic ↔ Matrix message relay
  • Multiple meshnets and configurable room/channel mappings
  • Serial, BLE, and TCP/network Meshtastic connections
  • Matrix end-to-end encryption support
  • Replies and reactions across the bridge
  • Message formatting and payload-size handling for Meshtastic
  • SQLite-backed node/message state
  • Docker and Kubernetes deployment support
  • Core, community, and local plugin support
  • Optional MQTT integration through Meshtastic firmware

E2EE: MMRelay uses mindroom-nio with vodozemac for encrypted Matrix rooms. Cross-signing applies to the Matrix bot device only; it does not authenticate Meshtastic identities. See the E2EE guide, especially before resetting authentication or cross-signing state.

Meshtastic library: MMRelay uses mtjk, a Meshtastic Python fork with additional BLE, connection-lifecycle, and thread-safety work used by this project.

Plugins

MMRelay can be extended with built-in core plugins, Git-managed community plugins, and local custom plugins. Plugins run inside the MMRelay process, so install third-party code only from sources you trust.

Community

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mmrelay-1.4.0.tar.gz (976.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mmrelay-1.4.0-py3-none-any.whl (441.9 kB view details)

Uploaded Python 3

File details

Details for the file mmrelay-1.4.0.tar.gz.

File metadata

  • Download URL: mmrelay-1.4.0.tar.gz
  • Upload date:
  • Size: 976.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for mmrelay-1.4.0.tar.gz
Algorithm Hash digest
SHA256 6d78c984f5e54d184ed052dff884172c614baaf8a0d4032bef341613c2bc9815
MD5 7f2ddb2c47106ba488129a62c6adfa73
BLAKE2b-256 aed9ffa5e6f0c72fb19a69179459c21fa7d3745fa9a139c1babd6a8aa0456c9e

See more details on using hashes here.

Provenance

The following attestation bundles were made for mmrelay-1.4.0.tar.gz:

Publisher: pypi-publish.yml on jeremiah-k/meshtastic-matrix-relay

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mmrelay-1.4.0-py3-none-any.whl.

File metadata

  • Download URL: mmrelay-1.4.0-py3-none-any.whl
  • Upload date:
  • Size: 441.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for mmrelay-1.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f0d33862fb220a1827cf0016da0312289ad9360a6b59980ec1e068d81bbf845e
MD5 0c9393f3603c0aa780e8d11710df5399
BLAKE2b-256 880e3766b4bf00bc3f0ecf6de165865c9b4039c1adc9dd47e31cb1404abef01d

See more details on using hashes here.

Provenance

The following attestation bundles were made for mmrelay-1.4.0-py3-none-any.whl:

Publisher: pypi-publish.yml on jeremiah-k/meshtastic-matrix-relay

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.4.0 This release

2 files

1.3.8

2 files

1.3.7

2 files

1.3.6

2 files

1.3.5

2 files

1.3.4

2 files

1.3.3

2 files

1.3.2

2 files

1.3.1

2 files

1.3.0

2 files

1.2.11

2 files

1.2.10

2 files

1.2.9

2 files

1.2.8

2 files

1.2.7

2 files

1.2.6

2 files

1.2.5

2 files

1.2.4

2 files

1.2.3

2 files

1.2.2

2 files

1.2.1

2 files

1.2.0

2 files

1.1.4

2 files

1.1.3

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0

2 files

1.0.11

2 files

1.0.10

2 files

1.0.9

2 files

1.0.8

2 files

1.0.7

2 files

1.0.6

2 files

1.0.5

2 files

1.0.4

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page