meshtastic/docs/getting-started/flashing-firmware/index.mdx

184 lines
6.8 KiB
Plaintext
Raw Normal View History

2022-03-01 11:33:22 -08:00
---
2022-03-01 14:30:47 -08:00
id: flashing-firmware
title: Flashing Firmware
2022-04-27 19:45:12 -07:00
sidebar_label: Flashing Firmware
2022-05-15 09:11:39 -07:00
pagination_next: getting-started/flashing-firmware/meshtastic-flasher
2022-04-27 19:45:12 -07:00
sidebar_position: 1
2022-03-01 11:33:22 -08:00
---
2022-03-08 23:51:46 -08:00
2022-03-01 11:33:22 -08:00
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
2022-04-29 14:39:06 -07:00
:::caution
Make sure not to power the radio on without first attaching the antenna! You could damage the radio chip!
:::
2022-06-29 21:03:35 -07:00
For most users we recommend using the [Meshtastic Flasher application](/docs/getting-started/flashing-firmware/meshtastic-flasher). It does a lot under the hood to prevent you from needing to use the terminal. It also allows you to configure your device.
2022-06-29 17:36:49 -07:00
2022-06-29 21:03:35 -07:00
If you choose to flash the firmware using the manual method, [ESP32 based devices](/docs/getting-started/flashing-firmware/flashing-esp32) and [NRF52 based devices](/docs/getting-started/flashing-firmware/flashing-nrf52) have different methods. Select the appropriate one. If you don't know what chipset your device is, take a look at our supported hardware section.
2022-06-29 17:36:49 -07:00
2022-06-29 21:03:35 -07:00
## Download Latest Firmware
2022-06-29 17:36:49 -07:00
2022-06-29 21:03:35 -07:00
Firmware can be downloaded from the [Downloads](/downloads) page. Your initial installation has to happen over USB from your Mac, Windows, or Linux computer.
### Flashing NRF52 Based Devices
2022-06-29 17:36:49 -07:00
2022-06-29 21:03:35 -07:00
### Flashing ESP32 Based Devices
For ESP32 devices if the device already has a version of Meshtastic installed using the OTA firmware upgrade tool in the Android app is the friendliest path for users. OTA firmware updates are not yet available on Apple platforms.
2022-06-29 17:36:49 -07:00
2022-06-29 21:03:35 -07:00
If your ESP32 device does not have Meshtastic pre-installed flashing
Before you flash your device start by verifiying connectivity with the device being flashed. Outlined below are steps that can be taken to verify connectivity and, if necessary, to install the appropriate drivers. If you end up needing to install drivers be sure to reboot your computer afterwards to verify the installation is complete.
2022-03-01 11:33:22 -08:00
2022-03-01 14:49:06 -08:00
### Verify data cable
2022-03-01 11:33:22 -08:00
2022-03-01 14:28:56 -08:00
Verify you have a data cable (not a charging only cable) before proceeding. There's no definitive way to determine the difference in cables if you aren't willing to pull it apart. Trying out a few cables will be the best way to verify.
2022-03-01 12:55:11 -08:00
2022-03-01 14:55:29 -08:00
Once you've located a data cable, check the following to see if you need to install a driver to communicate with your device.
2022-03-01 14:28:56 -08:00
:::tip
2022-03-01 14:31:46 -08:00
If you know you have installed the correct driver, the following step can be used to check if your cable is a data cable.
2022-03-01 14:28:56 -08:00
:::
2022-03-01 11:34:03 -08:00
2022-03-01 14:51:22 -08:00
### Test for driver installation
2022-03-01 15:03:59 -08:00
You can verify that you have a proper data cable (rather than a charge-only type cable) and that the appropriate drivers for your system are installed by performing the following test. Select your operating system below.
2022-03-13 10:51:15 -07:00
If you can see your device, you are ready to flash the firmware. Skip to the [Choose Firmware Flashing Method section](#choose-firmware-flashing-method).
2022-03-01 14:55:29 -08:00
If you don't see your device in the following test, you either:
2022-03-01 14:56:05 -08:00
1. Need to [install a driver](#install-appropriate-drivers).
2022-03-01 14:55:29 -08:00
2. Are currently using a charging only cable.
2022-03-01 11:33:22 -08:00
<Tabs
2022-03-08 23:51:46 -08:00
groupId="operating-system"
defaultValue="linux"
values={[
{label: 'Linux', value: 'linux'},
{label: 'macOS', value: 'macos'},
{label: 'Windows', value: 'windows'},
]}>
<TabItem value="linux">
2022-03-01 11:34:03 -08:00
Connect your Meshtastic device to your USB port, open a `Terminal` and enter the following command:
```shell
2022-03-01 11:34:03 -08:00
lsusb
```
2022-03-01 11:33:22 -08:00
2022-03-01 11:34:03 -08:00
You should see something like: `ID xxxx:xxxx Silicon Labs CP210x UART Bridge`, `ID xxxx:xxxx QinHeng Electronics USB Single Serial`, or `FIXME (WISBLOCK OUTPUT)`.
2022-03-08 23:51:46 -08:00
</TabItem>
<TabItem value="macos">
2022-03-01 11:33:22 -08:00
2022-03-01 11:34:03 -08:00
Navigate to `Apple Menu  > About This Mac > System Report... > Hardware > USB`. You should see something like `CP210X USB to UART Bridge Controller`, `CH9102 USB to UART Bridge Controller`, or `WisCore RAK4631 Board`. If not download the appropriate drivers below.
2022-03-01 11:33:22 -08:00
</TabItem>
<TabItem value="windows">
2022-03-01 11:34:03 -08:00
Navigate to `Device Manager > Ports (COM & LPT)`. You should see something like `Silicon Labs CP210X USB to UART Bridge (COM5)`, `Silicon Labs CH9102 USB to UART Bridge (COM5)`, or `FIXME (WISBLOCK OUTPUT)`. If not download the appropriate drivers below.
2022-03-01 11:33:22 -08:00
</TabItem>
</Tabs>
## Install Appropriate Drivers
### ESP32 Drivers
2022-03-01 12:55:11 -08:00
You may need to install a driver from Silicon Labs for the [CP210X USB to UART bridge](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers)
2022-03-01 14:23:45 -08:00
Some newer boards may require the CH9102 (CH340/CH341) Driver.
2022-03-01 12:55:11 -08:00
2022-03-01 11:33:22 -08:00
<Tabs
2022-03-08 23:51:46 -08:00
groupId="operating-system"
defaultValue="linux"
values={[
{label: 'Linux', value: 'linux'},
{label: 'macOS', value: 'macos'},
{label: 'Windows', value: 'windows'},
]}>
<TabItem value="linux">
2022-03-01 11:33:22 -08:00
2022-03-01 12:55:11 -08:00
[CP210X USB to UART bridge - Download](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers)
[CH9102 Driver - Linux Download](http://www.wch-ic.com/downloads/CH341SER_LINUX_ZIP.html)
2022-03-01 11:33:22 -08:00
</TabItem>
<TabItem value="macos">
2022-03-01 12:55:11 -08:00
[CP210X USB to UART bridge - Download](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers)
2022-03-24 22:48:46 -07:00
[CH9102 Driver - MacOS Download](https://github.com/WCHSoftGroup/ch34xser_macos)
2022-03-01 12:55:11 -08:00
2022-03-01 11:33:22 -08:00
</TabItem>
<TabItem value="windows">
2022-03-01 12:55:11 -08:00
[CP210X USB to UART bridge - Download](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers)
[CH9102 Driver - Windows Download](http://www.wch.cn/downloads/CH343SER_ZIP.html)
[CH9102 Driver - Windows Download (Direct Download for Windows 7)](https://github.com/Xinyuan-LilyGO/CH9102_Driver)
2022-03-01 11:33:22 -08:00
</TabItem>
</Tabs>
:::important
Reboot your computer after you have installed the driver to complete the installation.
:::
2022-03-01 11:33:22 -08:00
### NRF52 Drivers
<Tabs
2022-03-08 23:51:46 -08:00
groupId="operating-system"
defaultValue="linux"
values={[
{label: 'Linux', value: 'linux'},
{label: 'macOS', value: 'macos'},
{label: 'Windows', value: 'windows'},
]}>
<TabItem value="linux">
2022-03-01 11:33:22 -08:00
2022-03-01 12:55:11 -08:00
[CH9102 Driver - Linux Download](http://www.wch-ic.com/downloads/CH341SER_LINUX_ZIP.html)
2022-03-01 11:33:22 -08:00
</TabItem>
<TabItem value="macos">
2022-03-24 22:48:46 -07:00
[CH9102 Driver - MacOS Download](https://github.com/WCHSoftGroup/ch34xser_macos)
2022-03-01 12:55:11 -08:00
:::caution
With the latest versions of MacOS, the USB Serial driver is built-in. Do _NOT_ download the USB device drivers unless required. If you downloaded/installed any already, please remove them:
<details>
<summary>Removing the CH34x (CH340/CH341) USB Drivers</summary>
<div>
<div>
If you have already downloaded/installed the MacOS WCH-IC CH340
("CH341SER_MAC") drivers via the CH34x_Install_V1.5.pkg, you will have to
Uninstall the kernel extension:
<br />
<br />
1. Unplug your device
<br />
2. Open the Terminal and run:
<br />
3. sudo rm -rf /Library/Extensions/usbserial.kext
<br />
4. Reboot
2022-03-01 12:55:11 -08:00
</div>
</div>
</details>
:::
2022-03-01 11:33:22 -08:00
</TabItem>
<TabItem value="windows">
2022-03-01 12:55:11 -08:00
[CH9102 Driver - Windows Download](http://www.wch-ic.com/downloads/CH341SER_EXE.html)
2022-03-01 11:33:22 -08:00
</TabItem>
</Tabs>
2022-03-01 14:22:41 -08:00
2022-03-01 15:17:17 -08:00
:::important
Reboot your computer after you have installed the driver to complete the installation.
2022-06-29 21:03:35 -07:00
:::