Skip to content

gtaylor/baymesh-cli

Repository files navigation

Baymesh CLI and Python library

A WIP and unofficial baymesh CLI and Python library for validating nodes that are a part of the Meshtastic Bay Area Group's mesh network. It's most useful as a way to doublecheck your work after following the Bayme.sh Getting Started Guide, since the settings can be fiddly and easy to get wrong.

Status

This project is in an experimental state. No support is offered yet!

Requirements

  • Python 3.11+
  • macOS, Linux, or Windows

Installing

To install the baymesh CLI, install via Homebrew:

brew install gtaylor/baymesh/baymesh

Or PyPi:

pypi install baymesh

Usage

Setting your node up to work with the Bay Mesh

To run your node through a guided setup flow, connect it via USB and run:

baymesh setup

This will leave you with a set of reasonable defaults applied to your node.

Validating your node's configs

If you'd like to make sure that your node is compliant with the Bay Mesh Recommended Settings, connect it via USB and run:

baymesh validate

The CLI will recommend settings changes if it finds anything out of spec.

Contributing

To get your environment set up, you'll need the uv package manager. See Installing uv. Once uv is installed, do the following:

git clone git@github.com:gtaylor/baymesh-cli.git
cd baymesh-cli
make setup-dev
# Do your dev work here and run linters and tests afterwards:
make

License

The contents of this repository are licensed under the GPLv3. A copy of the license may be found in the LICENSE file in the repo root.