This library provides a command-line interface (CLI) for managing the user settings of Meshtastic nodes and provides an easy API for sending and receiving messages over mesh radios. Events are delivered using a publish-subscribe model, and you can subscribe to only the message types you are interested in.
The [Meshtastic-python repo](https://github.com/meshtastic/Meshtastic-python) is an excellent source of information. If you wish to view the code or contribute to the development of the Python library or the command-line interface, please visit the Meshtastic Python [GitHub page](https://github.com/meshtastic/Meshtastic-python).
Before installing, ensure that your system meets the following requirements:
- **Serial Drivers**: Your computer should have the required serial drivers installed for the [CP210X USB to UART bridge](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers) or the [CH9102](http://www.wch.cn/downloads/CH343SER_ZIP.html) (for some newer boards).
- **Python**: Python 3 should be installed on your system. Check with `python3 -V` and install it if necessary.
- **pip**: The Python package installer pip should be installed. Check with `pip3 -V` and install it if necessary.
After ensuring the requirements are met, follow the installation instructions for your operating system in the tabbed section below.
To install the Meshtastic CLI, select the tab for your operating system and follow the step-by-step instructions for installing via `pip`. For Ubuntu only, you can alternatively install the [Standalone version](#standalone-installation-ubuntu-only) if you prefer.
- If there is no seral device shown that matches the device you are using, please review our [Install Serial Drivers](/docs/getting-started/serial-drivers/) page before proceeding.
- If there is no serial device shown that matches the device you are using, please review our [Install Serial Drivers](/docs/getting-started/serial-drivers/) page before proceeding.
- If there is no serial device shown that matches the device you are using, please review our [Install Serial Drivers](/docs/getting-started/serial-drivers/) page before proceeding.
When installing Python, make sure to select the option to "Add Python to PATH" or check the box that says "Add Python to environment variables". If you missed this during installation, you can add Python to your system's PATH manually after installation. Failing to do so may result in errors when trying to use Python or pip commands.
- Install [Termux from F-Droid](https://f-droid.org/en/packages/com.termux) or [Github Releases](https://github.com/termux/termux-app/releases). The Google Play store version has been deprecated.
Be aware that the Meshtastic CLI is not able to control the nodes over USB through termux, but you can control devices over Wifi using the `--host x.x.x.x` option with the device IP address (ESP32 or Pico W only). Wifi connection is currently under development and may not be working properly just yet. If you would like to provide feedback or test this feature, please visit our [forum](https://meshtastic.discourse.group) or join our [Discord server](https://discord.gg/ktMAKGBnBs) for more information.