meshtastic/docs/getting-started/meshtastic-flasher.md
2022-03-04 13:11:13 -07:00

5.3 KiB

id title sidebar_label pagination_next
meshtastic-flasher Using Meshtastic Flasher Using Meshtastic Flasher getting-started/clients

import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem';

Overview

Meshtastic Flasher is a graphical user interface for flashing supported devices with Meshtastic.

Prerequisites

Install Meshtastic Flasher by either downloading the executable file or installing using pip. The following operating systems are currently supported: Windows, Mac, and Ubuntu.

Check Data Cable

Plug your device into your computer using a USB cable and then do the following: :::important You may need to install a driver from Silicon Labs for the CP210X USB to UART bridge

Some newer boards may require the drivers for the CH9102 Windows or Direct Download for Windows 7. For CH9102 Mac. Click the big blue button with the down arrow. Be sure to open up the application and click "Install" after the package is installed. Also, reboot. :::

<Tabs groupId="operating-system" defaultValue="linux" values={[ {label: 'Linux', value: 'linux'}, {label: 'macOS', value: 'macos'}, {label: 'Windows', value: 'windows'}, ]}>

Connect your Meshtastic device to your USB port, open a Terminal and enter the following command:

lsusb

You should see something like: ID 10c4:ea60 Silicon Labs CP210x UART Bridge for CP210X or ID 1a86:55d4 QinHeng Electronics USB Single Serial for CH9102

Navigate to Apple Menu  > About This Mac > System Report... > Hardware > USB. You should see something like CP210X USB to UART Bridge Controller. If not download the appropriate drivers

Navigate to Device Manager > Ports (COM & LPT). You should see something like Silicon Labs CP210X USB to UART Bridge (COM5). If not download the appropriate drivers

Install using pip

<Tabs groupId="operating-system" defaultValue="linux" values={[ {label: 'Linux', value: 'linux'}, {label: 'macOS', value: 'macos'}, {label: 'Windows', value: 'windows'}, ]}>

python3 --version
# ensure you are using at least python v3.6
# change to a directory where you want to create a python virtual environment
mkdir some_dir
cd some_dir
# if the following command fails, it might tell you what package to install
python3 -m venv venv
# activate the python virtual environment
source venv/bin/activate
# your prompt should change - it should include "(venv) in the front
# upgrade pip
pip install --upgrade pip
pip install meshtastic-flasher
meshtastic-flasher
python3 --version
# ensure you are using at least python v3.6
# change to a directory where you want to create a python virtual environment
mkdir some_dir
cd some_dir
python3 -m venv venv
# activate the python virtual environment
source venv/bin/activate
# your prompt should change - it should include "(venv) in the front
# upgrade pip
pip install --upgrade pip
pip install meshtastic-flasher
meshtastic-flasher
# open a command prompt
# create a new directory for the python virtual environment
cd c:\
mkdir some_dir
cd some_dir
# check that python version is sufficient, must be at least v3.9+
python -m venv venv
# activate the python virtual environment
venv\Scripts\activate
# your prompt should change - it should have (venv) at the beginning
pip install meshtastic-flasher
meshtastic-flasher

Flashing the Device

The Meshtastic Flasher will flash the latest firmware to esp32 and nrf52 devices. This is a newly developed application (as of February 1, 2022), so there may be some issues discovered as it is tested by users.

There are three steps:

  • Click the "GET VERSIONS" button to get the versions available (from GitHub).
  • Click the "DETECT DEVICE" button to determine the port and device variant connected.
  • Click the "FLASH" button to flash the version selected, using the port selected to the device.

Issues?

If you run into an issue, please create a ticket here: Flasher Issues

The code can be found at the Meshtastic-gui-installer repo

Known limitations

The following are known limitations:

  • Raspberry Pi is not available, since it is arm-based and there are no pre-built libraries for PySide
  • Ubuntu 20.04 is the version used for testing, it may work with other versions
  • see README for more details