Compare commits

...
2 Commits
Author SHA1 Message Date
pdxlocationsandGitHub b0f260ad3d Fix formatting in README diagram
Updated diagram formatting for clarity.
2026-08-27 11:12:06 -07:00
pdxlocations c0be23cf5a Update installation instructions in README files for clarity 2026-08-01 08:44:00 -07:00
2 changed files with 20 additions and 19 deletions
+19 -18
View File
@@ -2,6 +2,8 @@
**A tiny, dependency-free Meshtastic client for MicroPython.** **A tiny, dependency-free Meshtastic client for MicroPython.**
[![PyPI](https://img.shields.io/pypi/v/micromesh.svg)](https://pypi.org/project/micromesh/)
MicroMesh lets a small MicroPython board talk to a Meshtastic radio over UART. Use it MicroMesh lets a small MicroPython board talk to a Meshtastic radio over UART. Use it
to receive messages, send text and position packets, inspect the node list, or power a to receive messages, send text and position packets, inspect the node list, or power a
full-screen terminal dashboard. full-screen terminal dashboard.
@@ -9,10 +11,9 @@ full-screen terminal dashboard.
No protobuf compiler runs on the board. No threads. No `google.protobuf`. Just a UART, No protobuf compiler runs on the board. No threads. No `google.protobuf`. Just a UART,
three wires, and regular Python. three wires, and regular Python.
> [!NOTE] MicroMesh intentionally provides a focused, lightweight client for embedded projects.
> MicroMesh is young and intentionally small. It supports the most useful Meshtastic For the complete desktop feature set, use the official
> client operations, but it is not yet a complete replacement for the official desktop [`meshtastic`](https://github.com/meshtastic/python) package.
> [`meshtastic`](https://github.com/meshtastic/python) package.
## What can it do? ## What can it do?
@@ -41,8 +42,8 @@ three wires, and regular Python.
The XIAO is the computer running MicroMesh. The Meshtastic device is the LoRa radio. The XIAO is the computer running MicroMesh. The Meshtastic device is the LoRa radio.
```text ```text
Mac / PC XIAO RP2040 Meshtastic radio Mac / PC XIAO RP2040 Meshtastic radio
┌─────────┐ USB/REPL ┌────────────────┐ UART ┌─────────────────┐ ┌─────────┐ USB/REPL ┌────────────────┐ UART ┌─────────────────┐
│ terminal│◀─────────────▶│ MicroPython + │◀────────▶│ Meshtastic │◀──▶ LoRa │ terminal│◀─────────────▶│ MicroPython + │◀────────▶│ Meshtastic │◀──▶ LoRa
│ or UI │ │ MicroMesh │ 3 wires │ firmware │ │ or UI │ │ MicroMesh │ 3 wires │ firmware │
└─────────┘ └────────────────┘ └─────────────────┘ └─────────┘ └────────────────┘ └─────────────────┘
@@ -204,7 +205,7 @@ package is present on the board.
```sh ```sh
source .venv/bin/activate source .venv/bin/activate
python -m pip install -e . pyserial python -m pip install micromesh pyserial
``` ```
Windows users also need: Windows users also need:
@@ -255,7 +256,7 @@ If the Meshtastic radio itself is connected to your computer over USB, the deskt
talk directly to it. Do not use `--xiao-bridge` in this mode. talk directly to it. Do not use `--xiao-bridge` in this mode.
```sh ```sh
python -m pip install -e . pyserial python -m pip install micromesh pyserial
python -m serial.tools.list_ports -v python -m serial.tools.list_ports -v
python examples/curses_dashboard.py /dev/cu.YOUR_RADIO_PORT python examples/curses_dashboard.py /dev/cu.YOUR_RADIO_PORT
``` ```
@@ -426,18 +427,18 @@ Or copy the package directory manually:
mpremote fs cp -r micromesh :lib/ mpremote fs cp -r micromesh :lib/
``` ```
For CPython development: Install the published package from PyPI:
```sh
python -m pip install -e .
```
After the first PyPI release:
```sh ```sh
python -m pip install micromesh python -m pip install micromesh
``` ```
For editable CPython development from a repository checkout:
```sh
python -m pip install -e .
```
## Supported scope ## Supported scope
MicroMesh currently models the most useful portions of the Meshtastic API: MicroMesh currently models the most useful portions of the Meshtastic API:
@@ -469,8 +470,8 @@ sending, input validation, and configuration state.
## Releasing to PyPI ## Releasing to PyPI
Maintainers publish with GitHub Trusted Publishing; no long-lived PyPI token is stored MicroMesh publishes with GitHub Trusted Publishing, so no long-lived PyPI token is
in the repository. Configure the pending publisher with: stored in the repository. The publisher configuration is:
| Setting | Value | | Setting | Value |
| --- | --- | | --- | --- |
@@ -481,7 +482,7 @@ in the repository. Configure the pending publisher with:
| Environment | `pypi` | | Environment | `pypi` |
Keep the version in `pyproject.toml`, `package.json`, and `micromesh/__init__.py` in Keep the version in `pyproject.toml`, `package.json`, and `micromesh/__init__.py` in
sync. Publishing a matching GitHub release, such as `v0.1.0`, builds, validates, and sync. Publishing a matching GitHub release, such as `0.1.0`, builds, validates, and
uploads the wheel and source distribution. uploads the wheel and source distribution.
## License ## License
+1 -1
View File
@@ -18,7 +18,7 @@ connection statistics, known nodes, and received messages, and it can send broad
messages. It can connect directly to a radio or through a XIAO RP2040 UART bridge. messages. It can connect directly to a radio or through a XIAO RP2040 UART bridge.
```sh ```sh
python -m pip install -e . pyserial python -m pip install micromesh pyserial
python examples/curses_dashboard.py /dev/cu.usbmodem123456 python examples/curses_dashboard.py /dev/cu.usbmodem123456
``` ```