Merge branch 'master' into display-config

This commit is contained in:
charminULTRA 2023-07-04 23:41:54 -04:00 committed by GitHub
commit f83cc1635a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
13 changed files with 37 additions and 290 deletions

View file

@ -157,15 +157,6 @@ If you use your HAM radio license with Meshtastic, consider both the privileges
- On iPhone navigate to Settings -> User and set Long Name to your Ham Radio callsign, then activate the slider for 'Licensed Operator'.
- Instructions for Enabling HAM License from the Python CLI can be found [here](/docs/software/python/cli/usage#ham-radio-support).
<!-- Flasher -->
## Flasher
### Why does my operating system flag Meshtastic Flasher as having malware?
The flasher contains no malware and completely passed the Microsoft malware scanning. It appears that a lot of file download services are using the Windows Defender data, so if you're seeing alerts of a detected trojan please [update your Windows Defender definitions](https://www.microsoft.com/en-us/wdsi/defenderupdates).
### What if I'm still having issues on Windows 10?
It's been reported that `App execution aliases` might conflict with one another and prevent python3 from being able to run properly. There is an example of a fix located [here](https://github.com/meshtastic/Meshtastic-gui-installer/issues/154).

View file

@ -28,16 +28,16 @@ Specify pairing mode.
`FIXED_PIN` uses the fixed PIN that should then be additionally specified.
Finally, `NO_PIN` disables PIN authentication.
### Fixed PIN
If your pairing mode is set to `FIXED_PIN`, the default value is 123456. For all other pairing modes, this number is ignored. A custom integer (6 digits) can be set via the Bluetooth config options.
### Default Pairing Mode
The default pairing mode will be determined based on whether the device has or does not have a screen attached to it during the first boot (or with a stale device state) unless manually configured via the Bluetooth config options.
- **Screen Attached:** If your device boots up for the first time (or with a stale device state), and a screen is detected, the default pairing mode will be set to `RANDOM_PIN`. Should the attached screen be removed after the device has already been booted, the default pairing mode of `RANDOM_PIN` will remain unless manually changed to `FIXED_PIN` or `NO_PIN`. It is recommended the pairing mode be updated prior to removing the attached screen.
- **No Screen Attached:** If your device boots up for the first time (or with a stale device state), and no screen is detected, the default paring mode will be set to `FIXED_PIN` with the aforementioned default value unless manually configured to a custom value.
- **No Screen Attached:** If your device boots up for the first time (or with a stale device state), and no screen is detected, the default paring mode will be set to `FIXED_PIN` with the default value listed below unless manually configured to a custom value.
### Fixed PIN
If your pairing mode is set to `FIXED_PIN`, the default value is 123456. For all other pairing modes, this number is ignored. A custom integer (6 digits) can be set via the Bluetooth config options.
## Configure Bluetooth Config

View file

@ -128,7 +128,6 @@ values={[
{label: 'Android', value: 'android'},
{label: 'Apple', value: 'apple'},
{label: 'CLI', value: 'cli'},
{label: 'Flasher', value: 'flasher'},
{label: 'Web', value: 'web'},
]}>
<TabItem value="android">
@ -205,15 +204,6 @@ meshtastic --set lora.override_duty_cycle true
meshtastic --set lora.override_duty_cycle false
```
</TabItem>
<TabItem value="flasher">
:::info
Only `lora.region` can be set via the GUI flasher. Refer to other clients for any other config.
:::
</TabItem>
<TabItem value="web">

View file

@ -41,10 +41,6 @@ pytest -m smoke1
You need permissions in the GitHub project to make a build
:::
### Meshtastic-flasher
A `meshtastic-flasher` release consists of publishing the release to PyPi https://pypi.org/project/meshtastic-flasher/ as well as producing single-executable files that are downloadable from Github https://github.com/meshtastic/Meshtastic-gui-installer/releases.
#### Instructions - automated
- Go to Actions / Make Release / Run Workflow https://github.com/meshtastic/Meshtastic-gui-installer/actions/workflows/release.yml

View file

@ -5,8 +5,7 @@ sidebar_label: ESP32 partitions
---
:::caution
It has been reported that some of this information is out of date. Flashing the device with [Meshtastic-flasher](/docs/software/python/flasher) should fix these partition issues and update you to the current web interface.
It has been reported that some of this information is out of date.
FIXME - Investigate and rewrite document to reflect the current ESP32 Partition mitigation.
:::

View file

@ -10,7 +10,7 @@ import TabItem from "@theme/TabItem";
import Link from "@docusaurus/Link";
:::info
This information will likely only be helpful if you've already attempted to go through the prerequisites and processes outlined in [meshtastic flasher](/docs/software/python/flasher) or [manually flashing](/docs/getting-started/flashing-firmware/esp32/cli-script)
This information will likely only be helpful if you've already attempted to go through the prerequisites and processes outlined in [manually flashing](/docs/getting-started/flashing-firmware/esp32/cli-script)
:::
:::caution
@ -55,10 +55,7 @@ Disconnect your USB to Serial Adapter from the computer before starting this pro
### Flashing
After following the steps above, your device should be in flash mode. You can flash your device using the [Meshtastic flasher](/docs/software/python/flasher) or [manual method](/docs/getting-started/flashing-firmware/esp32/cli-script)
Example using the Meshtastic Flasher
![image](https://user-images.githubusercontent.com/9000580/168447086-313e0649-1bfe-4ccb-b891-0f56059d8063.png)
After following the steps above, your device should be in flash mode. You can flash your device using the [manual method](/docs/getting-started/flashing-firmware/esp32/cli-script)
After flashing the device is complete, reset your device (via the RST button if available).
If you have the Meshtastic Python CLI installed, you can run `meshtastic --noproto` to connect the device again over the adapter and view the serial output to confirm Meshtastic installed correctly.
@ -66,14 +63,9 @@ If you have the Meshtastic Python CLI installed, you can run `meshtastic --nopro
### Troubleshooting
In the Meshtastic Flasher, device detection may not work when using the external USB to Serial adapter. You might need to manually select the correct device type from the drop-down.
![image](https://user-images.githubusercontent.com/9000580/168447197-206f7e14-debe-4b6a-bb2a-7647418075e4.png)
Sometimes you might receive an error for COM port permission in the Meshtastic Flasher or the manual device install scripts, this can be caused by a number of different issues.
You might receive an error for COM port permission in the manual device install scripts, this can be caused by a number of different issues.
You might need to run the process as an administrator, check to ensure software like Cura isn't monopolizing COM ports, or reboot.
![image](https://user-images.githubusercontent.com/9000580/168447232-1a3af39b-e3cc-44b9-bc3a-32843a9e6f1f.png)
## Connect and Configure Device

View file

@ -1,11 +0,0 @@
---
id: python-flasher
title: Using Meshtastic Python Flasher
sidebar_label: Python Flasher
sidebar_position: 2
---
import MFlasher from "../../../software/python-flasher.mdx";
import Link from "@docusaurus/Link";
<MFlasher components={props.components} />

View file

@ -9,4 +9,11 @@ sidebar_position: 2
The nRF52 based devices have the easiest firmware upgrade process. No driver or software install is required on any platform.
1. The [Drag & Drop](/docs/getting-started/flashing-firmware/nrf52/drag-n-drop) firmware installation method is considered the "manual process" and recommended as the easiest solution.
### Drag & Drop
nRF52 devices use the [Drag & Drop](/docs/getting-started/flashing-firmware/nrf52/drag-n-drop) installation method to install firmware releases.
### Factory Erase
You may wish to perform a [Factory Erase](/docs/getting-started/flashing-firmware/nrf52/nrf52-erase) prior to installing firmware to clear data that may change format and location between releases.
### Convert RAK4631-R to RAK4631
If your device did not come with the Arduino bootloader you will need to [perform the conversion](/docs/getting-started/flashing-firmware/nrf52/convert-rak4631r).

View file

@ -1,11 +0,0 @@
---
id: python-flasher
title: Using Meshtastic Python Flasher
sidebar_label: Python Flasher
sidebar_position: 2
---
import Link from "@docusaurus/Link";
import MFlasher from "../../../software/python-flasher.mdx";
<MFlasher components={props.components} />

View file

@ -59,7 +59,7 @@ Some cables only provide _charging_, verify that your cable is also capable of _
:::caution
With the latest versions of MacOS, USB Serial drivers are built-in. Do _NOT_ download the USB device drivers unless required. You may [test for installed serial drivers](/docs/getting-started/serial-drivers/test-serial-driver-installation) before continuing.
nRF52 devices typically do not require serial drivers. They use the UF2 bootloader which makes the devices appear as flash drives. Do _NOT_ download the USB device drivers unless required to install UF2 support.
:::

View file

@ -11,6 +11,12 @@ import Link from "@docusaurus/Link";
## Install nRF52 USB to Serial Drivers
:::caution
nRF52 devices typically do not require serial drivers. They use the UF2 bootloader which makes the devices appear as flash drives. Do _NOT_ download the USB device drivers unless required to install UF2 support.
:::
<Tabs
groupId="operating-system"
defaultValue="windows"
@ -22,17 +28,16 @@ values={[
<TabItem value="linux">
- [CH9102 Driver - Linux Download](http://www.wch-ic.com/downloads/CH341SER_LINUX_ZIP.html)
- [CH34x Driver - Linux Download](http://www.wch-ic.com/downloads/CH341SER_LINUX_ZIP.html)
</TabItem>
<TabItem value="macos">
- [CH9102 Driver - macOS Download](https://github.com/WCHSoftGroup/ch34xser_macos)
:::caution
:::info
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.
With the latest versions of MacOS, the USB Serial driver is built-in. If you downloaded/installed any already, please remove them.
:::
@ -47,11 +52,18 @@ Uninstall the kernel extension:
3. `sudo rm -rf /Library/Extensions/usbserial.kext`
4. Reboot
### Install the CH34x Driver
- [CH34x Driver- macOS Download](https://github.com/WCHSoftGroup/ch34xser_macos)
</TabItem>
<TabItem value="windows">
- [CH9102 Driver - Windows Download](http://www.wch-ic.com/downloads/CH341SER_EXE.html)
- [CH34x Driver - Windows Download](http://www.wch-ic.com/downloads/CH341SER_EXE.html)
</TabItem>

View file

@ -1,218 +0,0 @@
---
id: flasher
title: Using Meshtastic Python Flasher
sidebar_label: Python Flasher
slug: /software/python/flasher
sidebar_position: 5
---
import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";
import Link from "@docusaurus/Link";
:::caution
This method is no longer supported. Please use a [supported method](/docs/getting-started/flashing-firmware).
:::
***
:::caution
Make sure not to power the radio on without first attaching the antenna! You could damage the radio chip!
:::
## Overview
Meshtastic Flasher (aka m-flasher) is a graphical user interface for flashing [supported devices](/docs/hardware) with Meshtastic.
The following operating systems are currently supported: Windows, Mac, and Ubuntu.
## Prerequisites
### Verify that Python3 is installed
<Tabs
groupId="operating-system"
defaultValue="linux"
values={[
{label: 'Linux', value: 'linux'},
{label: 'macOS', value: 'macos'},
{label: 'Windows', value: 'windows'},
]}>
<TabItem value="linux">
```shell title="Check python3 version"
python3 --version
# If version is less than v3.6, please update python3
```
</TabItem>
<TabItem value="macos">
```shell title="Check python3 version"
python3 --version
# If version is less than v3.6, please update python3
```
</TabItem>
<TabItem value="windows">
```shell title="Check python3 version"
python3 --version
# If version is less than v3.9+, please update python3
```
</TabItem>
</Tabs>
### Install or Update Python3
<Tabs
groupId="operating-system"
defaultValue="linux"
values={[
{label: 'Linux', value: 'linux'},
{label: 'macOS', value: 'macos'},
{label: 'Windows', value: 'windows'},
]}>
<TabItem value="linux">
```shell title="Install python3, pip, and venv"
sudo apt update
sudo apt upgrade
sudo apt install -y python3 python3-pip python3-venv
```
</TabItem>
<TabItem value="macos">
- [Download directly from python.org](https://www.python.org/downloads/macos/)
- [Homebrew](https://brew.sh/): `brew install python@3.9`
- [MacPorts](https://www.macports.org/)
</TabItem>
<TabItem value="windows">
- [Download directly from python.org](https://www.python.org/downloads/windows/)
</TabItem>
</Tabs>
### Install or Upgrade App
For **Windows**, the [installer](https://github.com/meshtastic/Meshtastic-gui-installer/releases/download/winapp1.0.3/meshtastic-flasher.zip) will manage installing python and flasher updates automatically.
For **macOS** and **Linux**, it is recommended that you install using `pip`.
Note: Update an existing installation using `pip install meshtastic-flasher -U`
<Tabs
groupId="operating-system"
defaultValue="linux"
values={[
{label: 'Linux', value: 'linux'},
{label: 'macOS', value: 'macos'},
{label: 'Windows', value: 'windows'},
]}>
<TabItem value="linux">
```shell title="Install 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
# 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
```
```shell title="Running Meshtastic Flasher"
meshtastic-flasher
```
</TabItem>
<TabItem value="macos">
```shell title="Install 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
```
```shell title="Running Meshtastic Flasher"
meshtastic-flasher
```
</TabItem>
<TabItem value="windows">
```shell title="Install 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
```
```shell title="Running Meshtastic Flasher"
meshtastic-flasher
```
</TabItem>
</Tabs>
## Flashing the Device
The Meshtastic Flasher will flash the latest firmware on 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:
1. Click the **GET VERSIONS** button to get the versions available (from GitHub).
2. Click the **DETECT DEVICE** button to determine the port and device variant connected.
3. 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](https://github.com/meshtastic/Meshtastic-gui-installer/issues)
The code can be found at the [Meshtastic-gui-installer repo](https://github.com/meshtastic/Meshtastic-gui-installer)
## 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](https://wiki.qt.io/Qt_for_Python)
- Ubuntu 20.04 is the version used for testing, it may work with other versions.
- See [README](https://github.com/meshtastic/Meshtastic-gui-installer/blob/master/README.md) for more details.
## Connect and Configure Device
After flashing the Meshtastic firmware to the device, you can proceed with the initial configuration.
<div className="indexCtasBody">
<Link
className={"button button--outline button--lg cta--button"}
to={"/docs/getting-started/initial-config"}
>
Connect and Configure Device
</Link>
</div>

View file

@ -284,8 +284,8 @@ function Home() {
style={{ display: "flex", justifyContent: "center" }}
>
<p>
The Meshtastic Flasher application can assist you in flashing
the firmware and configuring settings.
The Meshtastic Web-Based Flasher & Clients can assist you in
flashing the firmware and configuring settings.
</p>
</div>
</div>