Merge pull request #363 from meshtastic/1.3_Link_Updates

More Docs Cleanup
This commit is contained in:
Garth Vander Houwen 2022-06-29 23:08:08 -07:00 committed by GitHub
commit eec30901b5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
47 changed files with 338 additions and 1143 deletions

View file

@ -1,32 +0,0 @@
---
id: channels
title: Channels
sidebar_label: Channels
sidebar_position: 3
---
## Overview
Meshtastic Channels: Can create a _somewhat_ secure method of communication on the same mesh network. The channel can be encrypted to prevent normal people from listening in on the traffic. But, it could probably be easily [cracked](https://crypto.stackexchange.com/questions/46559/what-are-the-chances-that-aes-256-encryption-is-cracked) by determined individuals. See [Channel Config](/docs/settings/channel) for more info. It is also possible that your location could be triangulated by determined individuals.
## Channels
### Primary Channel
### Secondary Channel
### Admin Channel
## Data
### Telemetry Data
### MQTT Bridges
## Encryption
## Messages
### Broadcast Messages
### Direct Messages (DMs)

View file

@ -1,20 +0,0 @@
---
id: clients
title: Clients
sidebar_label: Clients
sidebar_position: 2
---
## Overview
## Available Clients
### Android
### Commandline Interface (CLI)
### iOS
### MacOS
### Web Interface

View file

@ -1,36 +0,0 @@
---
id: external-devices
title: External Devices
sidebar_label: External Devices
sidebar_position: 5
---
## Overview
External hardware can be connected to your device using a GPIO (General Purpose Input/Output) interface. Using GPIO, you are able to connect external buttons, circuits, rotary encoders, sensors and more. Many of our modules offer solutions to implement additional functionality.
Soldering is likely required when attaching items to your device, so practice your skills elsewhere before trying on your radio. If you're not careful or don't know what your doing, you can damage your hardware.
## Features using External Devices
Many of our modules require external hardware to be attached to the device.
### Canned Message Module
Requires use of the [rotary encoder module](#rotary-encoder-module). The rotary encoder acts as an input to select one of up to 50 customizable messages. This way you can send canned messages without needing to pair your device to a phone.
### Telemetry Module
Broadcast telemetry to your mesh! Temperature, Humidity, Pressure, & VOC Gas are all options that are currently available with the supported sensors.
### External Notifications Module
Use lights, buzzers, or speakers to alert you of incoming messages.
### Rotary Encoder Module
Currently used only for the [canned message module](#canned-message-module), this module allows you to connect a rotary encoder to be used as an additional input to the device.
### Serial Module
Available for ESP32 based devices, the serial moduleallows you to send messages over the mesh by sending strings over a serial port.

View file

@ -1,9 +0,0 @@
---
id: overview
title: Meshtastic Concepts
sidebar_label: Overview of Concepts
sidebar_position: 1
---
## Overview

View file

@ -1,16 +0,0 @@
---
id: internet
title: Internet Connectivity
sidebar_label: Internet Connectivity
sidebar_position: 4
---
## Overview
Captive Portal: Using Meshtastic, you can create a separate Wifi network for you join your phone or computer on a mesh network. See [Web Interface](/docs/software/web) for more info. This is ideal in a situation where you are remote, such as in the forest, on a mountain, or if there is a major power/internet outage such as in a storm or other disaster.
## Features using Internet Connectivity
### MQTT
### Web Interface

View file

@ -1,16 +0,0 @@
---
id: mesh
title: Mesh Routing
sidebar_label: Mesh Routing
sidebar_position: 1
---
## Overview
Mesh Networking: An interconnected network by using [low-power radios](/docs/hardware) to connect other low-power radios using LoRa to be able to send and receive messages and data. This can be completely separate from any other networks such as the internet. You can start small and get two devices to start experimenting. Do not expect to stream music or videos as LoRa is intended for smaller, lower bandwidth type uses such as text communication.
As of 1.2 you can connect up to 32 devices to the network. In 1.3 we are working on having 64-80 devices connected to the network.
## Devices
## Routers

View file

@ -1,108 +0,0 @@
---
id: clients
title: Connect to Clients
sidebar_label: Connect to Clients
sidebar_position: 1
---
import { DownloadCard } from '/src/pages/downloads/_components/DownloadCard.tsx';
## Overview
There are many ways to connect to your newly flashed device. Below is a quickstart for each client that you can use to connect to your radio.
### Commandline Interface (CLI)
The CLI is currently the best way to manage your settings. It is feature rich and well documented. The [settings pages](/docs/settings) have examples for each user preference for the device. The CLI is available as a standalone executable for Windows, Mac OS or linux or as part of the [Meshtastic-python](https://github.com/meshtastic/Meshtastic-python) project. If you'd like to use python to interface with a device, see the [API documentation](https://python.meshtastic.org).
#### Installation
To install the prebuilt binary refer to: [Meshtastic-python standalone executable](/docs/software/python/python-standalone).
To install/upgrade Meshtastic-python manually, see below:
```shell title="Install Meshtastic-python (includes CLI)"
pip install meshtastic
```
```shell title="Upgrade Meshtastic-python (includes CLI)"
pip install --upgrade meshtastic
```
:::note
Some installations of python may require you to substitute 'pip3' for the 'pip' command.
:::
#### Verify Connection
After installing, run one of the following commands to see if the device is communicating correctly.
```shell title="View connected node info"
meshtastic --info
```
```shell title="View nodes detected on mesh"
meshtastic --nodes
```
For more details about CLI usage, see the [settings](/docs/settings) pages or [CLI guide](/docs/software/python/python-cli).
### Mobile Client Downloads
<ul
style={{
position: 'relative',
display: 'grid',
gap: '1.5rem',
gridTemplateColumns: 'repeat(auto-fill, minmax(280px, 1fr))',
paddingLeft: '0',
}}
>
<DownloadCard
client="Android"
imgUrl="https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png"
url="https://play.google.com/store/apps/details?id=com.geeksville.mesh&referrer=utm_source=downloads-page"
notes={[
'To sideload, ',
<a
href="https://github.com/meshtastic/Meshtastic-Android/releases/latest"
rel="noreferrer"
target="_blank"
>
download the latest .apk
</a>,
' from Github',
]}
/>
<DownloadCard
client="iOS"
url="https://testflight.apple.com/join/c8nNl8q1"
buttonText="Download on TestFlight"
notes="Currently only available in TestFlight"
/>
</ul>
### Serial
Using your preferred program (PuTTy, Serial, etc) connect to your device with the following settings to see the logs in real time.
| Baudrate | Data Bits | Parity | Stop Bits |
| :------: | :-------: | :----: | :-------: |
| `921600` | `8` | `None` | `1` |
### Web
<!--- FIXME add self hosting details link --->
The web interface is available for all browsers, but [bluetooth and serial capabilities are limited](https://github.com/meshtastic/meshtastic.js#compatibility). You can connect to your node using:
- [client.meshtastic.org](https://client.meshtastic.org)
- BLE
- HTTP
- Serial
- [ESP32 WiFi SoftAP](/docs/settings/wifi#software-access-point)
- [ESP32 as Client](/docs/settings/wifi#wifi-client)
The Meshtastic firmware incorporates an embedded web server using the [ESP32 HTTPS Server](https://github.com/fhessel/esp32_https_server) project. This allows the WiFi supporting ESP32 devices to run our web interface to access Meshtastic directly from your browser. This imports the [Meshtastic.js library](/docs/software/js/getting-started) to provide a web page capable of interacting with the device.
There is active development ongoing to fix some issues with updating the web interface from the web interface directly. Please be patient with us as we work on this. Use [Meshtastic-flasher](/docs/getting-started/flashing-firmware/meshtastic-flasher) to update your device to the current stable build which includes the web interface.

View file

@ -1,81 +0,0 @@
---
id: configuration
title: Configure Device
sidebar_label: Configure Device
sidebar_position: 2
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
The following are important steps you should take before transmitting any messages. Make sure that you have flashed your device with Meshtastic and connected with a client before proceeding.
### Set Region
:::important
Make sure to set your `region` to the correct region so you don't transmit on an incorrect frequency.
:::
The `region` variable sets which region your radio is configured to work in. It is important to ensure that you've set it to the correct region. If left `Unset`, it will default to `US` settings.
| Name | Center Frequency | Spacing | Number of Channels | Power Limit |
| :---: | :--------------: | :-----: | :----------------: | :---------: |
| US | 903.08 | 2.16 | 13 | 0 |
| EU433 | 433.175 | 0.2 | 8 | 0 |
| EU868 | 865.2 | 0.3 | 10 | 0 |
| CN | 470.0 | 2.0 | 20 | 0 |
| JP | 920.0 | 0.5 | 10 | 13 |
| ANZ | 916.0 | 0.5 | 20 | 0 |
| KR | 921.9 | 0.2 | 8 | 0 |
| TW | 923.0 | 0.2 | 10 | 0 |
| RU | 868.9 | 0.2 | 2 | 20 |
| Unset | 903.08 | 2.16 | 13 | 0 |
:::note
For more details about `region` settings, you can see the source code [here](https://github.com/meshtastic/Meshtastic-device/blob/master/src/mesh/RadioInterface.cpp)
:::
| Setting | Acceptable Values | Default |
| :--: | :---: | :------: |
| region | `Unset`, `US`, `EU433`, `EU865`, `CN`, `JP`, `ANZ`, `KR`, `TW`, `RU` | `Unset` |
<Tabs
groupId="settings"
defaultValue="cli"
values={[
{label: 'CLI', value: 'cli'},
{label: 'Android', value: 'android'},
{label: 'iOS', value: 'iOS'},
{label: 'Web', value: 'web'},
]}>
<TabItem value="cli">
```shell title="Unset Region"
meshtastic --set region Unset
```
```shell title="Set Region"
meshtastic --set region US
```
</TabItem>
<TabItem value="android">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="iOS">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="web">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
</Tabs>

View file

@ -1,11 +0,0 @@
---
id: first-steps
title: First Steps
sidebar_label: First Steps
sidebar_position: 2
---
Congratulations! Your device should now be running Meshtastic! The next few pages should help you connect to your device and do some important initial configuration. After that, you'll be able to begin testing out your device on the mesh. Welcome to Meshtastic!
## Troubleshooting
Hopefully your firmware flashing experience has been straight forward and headache free. If you've had issues, please consider updating our documentation to improve future user experiences. If you're still having issues. Reach out on the [forum](https://meshtastic.discourse.group) or [Discord](https://discord.gg/ktMAKGBnBs). Our support is 100% volunteer based. We are passionate about the project hope to help newcomers become Meshtastic experts.

View file

@ -1,41 +0,0 @@
---
id: tests
title: Mesh Testing
sidebar_label: Mesh Testing
sidebar_position: 3
---
### Connect via USB and CLI
If you have at least two radios with the Meshtastic firmware, you may consider connecting one via USB and the other battery powered. Communicate with the USB radio using a CLI like [Meshtastic-python](/docs/software/python/python-installation).
- Ensure you can run `meshtastic --info`.
- Ensure the region is set appropriately. If the radios are 915 MHz and you are in the US, then no region changes/settings are necessary. If you are in another region, you may need to run something like: `meshtastic --set region EU865`.
- Send a message `meshtastic --sendtext hello1`
- Note: The radio connected via USB will not show messages sent.
- After a few seconds the other radios will show the message. You may need to press one of the buttons on the other radio to see if the message arrived.
- Run `meshtastic --nodes` to see if other nodes show in the display.
- Messages sent from the USB radio should be sent to the other radio(s) via LoRa. The default settings should allow this to work.
### Connect via Bluetooth
The Android app is currently more robust than the iOS app. But, they both should be able to interact with the radios.
- Install Android or iOS Meshtastic app
- Start Meshtastic app
- Connect to radio(s) from inside the app
- Pair with radio(s). A paring code should show on the radio. Enter that value when prompted to pair a Bluetooth device.
- In the event you don't have a screen. double press the io button and the value will be set to 123456. (on the tbeam this is the center button)
- Send message(s) from inside the app.
- Note: The radio connected via Bluetooth will not show messages sent.
- Verify that all other radios are receiving the message(s). Might have to click on the button on the radio to see most recent message.
### Connect via WiFi/HTTP
- Configure the _wifi_ssid_ and _wifi_password_. `meshtastic --set wifi_ssid 'xxx' --set wifi_password 'yyy'` (where xxx and yyy are the appropriate values for your network)
- Reboot radio by either removing power or pressing the power button.
- Click on the button to cycle through to the screen with IP address and verify that there was a connection to the Wifi access point.
- Send message(s). `meshtastic --host 192.168.1.200 --sendtext hello`
- Note: The radio connected via Wifi will not show messages sent.
- Verify that all radios are receiving the message(s). Might have to click on the button on the radio(s) to see most recent message.
- Open up a browser to http://meshtastic.local to view the web UI (currently under development). You may need to open http://meshtastic.local/static )
- If you want to switch back to Bluetooth, you will need to set the _wifi_ssid_ and _wifi_password_ values to blank values (ex: `meshtastic --set wifi_ssid '' --set wifi_password ''`).

View file

@ -1,10 +1,9 @@
--- ---
id: flashing-esp32 id: flashing-esp32
title: Flashing ESP32 devices firmware title: Flashing ESP32 device firmware
sidebar_label: Manual Method - ESP32 devices sidebar_label: CLI Script - ESP32
pagination_prev: getting-started/flashing-firmware/flashing-firmware pagination_prev: getting-started/flashing-firmware/flashing-firmware
pagination_next: getting-started/first-steps/first-steps sidebar_position: 3
sidebar_position: 2
--- ---
import Tabs from '@theme/Tabs'; import Tabs from '@theme/Tabs';
@ -14,15 +13,11 @@ import TabItem from '@theme/TabItem';
Make sure not to power the radio on without first attaching the antenna! You could damage the radio chip! Make sure not to power the radio on without first attaching the antenna! You could damage the radio chip!
::: :::
## Prerequisites
### Device connectivity 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.
Ensure your computer is communicating with the device correctly by following [these instructions](/docs/getting-started/flashing-firmware/). 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.
### Download Latest Firmware
Firmware can be downloaded from the [Downloads](/downloads) page. Your initial installation has to happen over USB from your Mac, Windows, or Linux computer. Over the air updates are currently only available using the Android application after this initial installation.
:::note :::note
The [T-Beam 0.7](/docs/hardware/supported/tbeam#t-beam---v07) board is an earlier version of the T-Beam board, and due to changes in the design in subsequent iterations this board uses a specific firmware file different from the other T-Beam boards. The [T-Beam 0.7](/docs/hardware/supported/tbeam#t-beam---v07) board is an earlier version of the T-Beam board, and due to changes in the design in subsequent iterations this board uses a specific firmware file different from the other T-Beam boards.

View file

@ -1,10 +1,10 @@
--- ---
id: flashing-external-serial-adapter id: flashing-external-serial-adapter
title: Flashing ESP32 Devices with an External Serial Adapter title: Flashing Firmware with an External Serial Adapter - ESP32
sidebar_label: Flashing with External Serial Adapter - ESP32 Devices sidebar_label: Serial Adapter - ESP32
pagination_prev: getting-started/flashing-firmware/flashing-firmware pagination_prev: getting-started/flashing-firmware/flashing-firmware
pagination_next: getting-started/flashing-firmware/meshtastic-flasher pagination_next: getting-started/flashing-firmware/meshtastic-flasher
sidebar_position: 1 sidebar_position: 5
--- ---
import Tabs from '@theme/Tabs'; import Tabs from '@theme/Tabs';

View file

@ -1,53 +1,21 @@
--- ---
id: flashing-nrf52 id: flashing-nrf52
title: Flashing nRF52 devices firmware title: Drag & Drop NRF52 Firmware Updates
sidebar_label: Manual Method - NRF52 devices sidebar_label: Drag & Drop - NRF52
pagination_prev: getting-started/flashing-firmware/flashing-firmware pagination_prev: getting-started/flashing-firmware/flashing-firmware
pagination_next: getting-started/first-steps/first-steps pagination_next: getting-started/flashing-firmware/flashing-esp32
sidebar_position: 3 sidebar_position: 2
--- ---
import Tabs from '@theme/Tabs'; import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem'; import TabItem from '@theme/TabItem';
:::caution
Make sure not to power the radio on without first attaching the antenna! You could damage the radio chip!
:::
## Prerequisites The NRF52 based devices (LilyGO T-Echo, RAK Wisblock 4631) have the easiest firmware upgrade process. (No driver or software install is required on any platform)
### Device connectivity Connect your device to your computer with a data USB cable. Double click the reset button on your device, this will put it into bootloader mode and and a drive will appear on Windows, Mac and Linux.
Ensure your computer is communicating with the device correctly by following [these instructions](/docs/getting-started/flashing-firmware/). A new drive will be mounted on your computer. Open this drive and you should see three files: `CURRENT.UF2`, `INDEX.HTM`, and `INFO_UF2.TXT`
### Download Latest Firmware Drop the appropriate appropriate `firmware-xxxxx-1.3.x.uf2` file from the release you want to install onto this drive and the meshtastic firmware will be installed on the device. Once the file has finished copying onto the drive the device will reboot and load Meshtastic.
Firmware can be downloaded from the [Downloads](/downloads) page. Your initial installation has to happen over USB from your Mac, Windows, or Linux computer. Over the air updates are currently only available using the Android application after this initial installation.
### WisBlock RAK4631 Bootloader
Please ensure that you have updated the bootloader to the latest version using the information on the [RAK Documentation Center](https://docs.rakwireless.com/Product-Categories/WisBlock/RAK4631/Quickstart/#how-to-check-if-you-have-the-updated-rak4631-bootloader) website.
:::tip
[Meshtastic Flasher](/docs/getting-started/flashing-firmware/meshtastic-flasher) can assist you in updating the bootloader to the latest version.
:::
## Install/Update Firmware
:::caution
Be careful to install the correct load for your board. While it is unlikely that you will cause damage to your device, the wrong firmware will cause it to not work.
:::
- Connect your device to your computer with a USB cable. If your computer complains about needing to format a new drive, cancel the format command.
- Double click the `Reset` button on your device, this will put it into bootloader mode.
[<img alt="LILYGO T-Echo" src="/img/hardware/t-echo-lilygo.jpg" style={{zoom:'25%'}} />](/img/hardware/t-echo-lilygo.jpg)
- A new drive will then be mounted on your computer. Open this drive and you should see three files: `CURRENT.UF2`, `INDEX.HTM`, and `INFO_UF2.TXT`
- Copy the appropriate `firmware-xxxxx-1.2.x.uf2` file from the firmware zip file onto the new drive.
:::note
You are going to copy/drop "as is" 'firmware-xxxxx-1.2.x.uf2' (_NOT_ over the "CURRENT.UF2" file) in the volume, and the device reboot will copy it/load it correctly.
:::
- Once the file has finished copying over, the device will reboot, loading the new firmware as it does.

View file

@ -1,6 +1,6 @@
--- ---
id: flashing-firmware id: flashing-firmware
title: Firmware Flashing Prerequisites title: Flashing Firmware
sidebar_label: Flashing Firmware sidebar_label: Flashing Firmware
pagination_next: getting-started/flashing-firmware/meshtastic-flasher pagination_next: getting-started/flashing-firmware/meshtastic-flasher
sidebar_position: 1 sidebar_position: 1
@ -13,13 +13,17 @@ import TabItem from '@theme/TabItem';
Make sure not to power the radio on without first attaching the antenna! You could damage the radio chip! Make sure not to power the radio on without first attaching the antenna! You could damage the radio chip!
::: :::
## Overview ## Meshtastic Flasher GUI Application
Before you flash your device it is prudent to verify that we have proper 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. 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.
## Prerequisites ## Manual Firmware Installation
### Verify data cable Firmware can be downloaded from the [Downloads](/downloads) page. Your initial installation has to happen over USB from your Mac, Windows, or Linux computer.
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.
## Verify data cable
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. 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.
@ -29,48 +33,7 @@ Once you've located a data cable, check the following to see if you need to inst
If you know you have installed the correct driver, the following step can be used to check if your cable is a data cable. If you know you have installed the correct driver, the following step can be used to check if your cable is a data cable.
::: :::
### Test for driver installation ## Install USB to Serial Drivers
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.
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).
If you don't see your device in the following test, you either:
1. Need to [install a driver](#install-appropriate-drivers).
2. Are currently using a charging only cable.
<Tabs
groupId="operating-system"
defaultValue="linux"
values={[
{label: 'Linux', value: 'linux'},
{label: 'macOS', value: 'macos'},
{label: 'Windows', value: 'windows'},
]}>
<TabItem value="linux">
Connect your Meshtastic device to your USB port, open a `Terminal` and enter the following command:
```shell
lsusb
```
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)`.
</TabItem>
<TabItem value="macos">
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.
</TabItem>
<TabItem value="windows">
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.
</TabItem>
</Tabs>
## Install Appropriate Drivers
### ESP32 Drivers ### ESP32 Drivers
@ -171,8 +134,43 @@ With the latest versions of MacOS, the USB Serial driver is built-in. Do _NOT_ d
Reboot your computer after you have installed the driver to complete the installation. Reboot your computer after you have installed the driver to complete the installation.
::: :::
## Choose Firmware Flashing Method ### Test for driver installation
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 set device settings and configure your device. 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.
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. 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).
If you don't see your device in the following test, you either:
1. Need to [install a driver](#install-appropriate-drivers).
2. Are currently using a charging only cable.
<Tabs
groupId="operating-system"
defaultValue="linux"
values={[
{label: 'Linux', value: 'linux'},
{label: 'macOS', value: 'macos'},
{label: 'Windows', value: 'windows'},
]}>
<TabItem value="linux">
Connect your Meshtastic device to your USB port, open a `Terminal` and enter the following command:
```shell
lsusb
```
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)`.
</TabItem>
<TabItem value="macos">
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.
</TabItem>
<TabItem value="windows">
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.
</TabItem>
</Tabs>

View file

@ -1,9 +1,10 @@
--- ---
id: meshtastic-flasher id: meshtastic-flasher
title: Using Meshtastic Flasher title: Using Meshtastic Flasher
sidebar_label: Meshtastic Flasher Method sidebar_label: Meshtastic Flasher
pagination_next: getting-started/first-steps/first-steps
pagination_prev: getting-started/flashing-firmware/flashing-firmware pagination_prev: getting-started/flashing-firmware/flashing-firmware
pagination_next: getting-started/flashing-firmware/flashing-nrf52
sidebar_position: 1 sidebar_position: 1
--- ---

View file

@ -14,7 +14,7 @@ Meshtastic® is a project that lets you use inexpensive LoRa radios as a long ra
The radios automatically create a mesh to forward packets as needed, so everyone in the group can receive messages from even the furthest member. The radios will optionally work with your phone, but no phone is required. The radios automatically create a mesh to forward packets as needed, so everyone in the group can receive messages from even the furthest member. The radios will optionally work with your phone, but no phone is required.
Meshtastic uses LoRa for the long range communications and depending on settings used, the maximum theoretical group size ranges from 30-200 device nodes. Currently, each device can only support a connection from a single user at a time. Meshtastic uses LoRa for the long range communications and depending on settings used up to 80 device nodes. Each device supports a connection from a single user at a time.
<div className="indexCtasBody"> <div className="indexCtasBody">
<Link <Link
@ -25,53 +25,19 @@ Meshtastic uses LoRa for the long range communications and depending on settings
</Link> </Link>
</div> </div>
## Hardware ## Supported Hardware
### Purchasing
#### Purchase radio
The easiest way is to [buy a device with the software already installed](https://www.aliexpress.com/item/4001178678568.html). Other devices are [available](/docs/hardware/supported/tbeam). In the Americas get the 915MHz version, in Europe the 868MHz, or Asia 923MHz. See this listing by [The Things Network](https://www.thethingsnetwork.org/docs/lorawan/frequencies-by-country.html) for frequencies by specific countries.
#### Purchase battery
One option for people located in the US to buy the necessary 18650 Li-Ion battery from https://www.18650batterystore.com/. At this store, the [Sanyo NCR18650GA 3500mAh 10A Battery](https://www.18650batterystore.com/collections/featured-products/products/sanyo-ncr18650ga) is considered a good option.
#### Purchase other accessories
<div className="indexCtasBody"> <div className="indexCtasBody">
<Link <Link
className={'button button--outline button--lg cta--button'} className={'button button--outline button--lg cta--button'}
to={'/docs/hardware'} to={'/docs/category/supported-hardware'}
> >
Purchase Hardware Supported Hardware
</Link> </Link>
</div> </div>
### Initial Setup
#### Setup the Radio
When it arrives, install your antenna and make sure you install the battery correctly. Reversing the battery can damage your device. Make sure the antenna is on when you power up the board.
:::caution
Make sure not to power the radio on without first attaching the antenna! You could damage the radio chip!
:::
## Flashing Firmware ## Flashing Firmware
If your device already has Meshtastic flashed to it, you can update it over the air (OTA). Otherwise, you'll need a computer and a **data** USB cable. Flashing firmware can be done in the following ways:
- Install using Meshtastic Flasher:
This all in one application will download the appropriate firmware, detect your device, flash the device, and allow you to configure your settings.
- Install using manual method:
Manual firmware files can be downloaded from the [Downloads](/downloads) page.
The manual firmware installation method will also depend on whether you have an ESP32 based device or a nRF52 based device. See our [hardware section](/docs/hardware) to determine which microcontroller your device is based on.
<div className="indexCtasBody"> <div className="indexCtasBody">
<Link <Link
className={'button button--outline button--lg cta--button'} className={'button button--outline button--lg cta--button'}
@ -81,38 +47,6 @@ The manual firmware installation method will also depend on whether you have an
</Link> </Link>
</div> </div>
## Connect to your Device
There are many ways to connect to your new radio!
- Command line interface (CLI)
- Graphic user interface (GUI)
- Serial connection
- Bluetooth
- Web app over Wifi (in development)
<div className="indexCtasBody">
<Link
className={'button button--outline button--lg cta--button'}
to={'/docs/getting-started/first-steps/clients'}
>
Connect to Node
</Link>
</div>
## Use Meshtastic
This is the best part of Meshtastic. Deploying, testing, and optimizing your personal mesh network. Click below for first steps, configurations, and tests.
<div className="indexCtasBody">
<Link
className={'button button--outline button--lg cta--button'}
to={'/docs/getting-started/first-steps'}
>
First Steps
</Link>
</div>
## Troubleshooting ## Troubleshooting
Hopefully your "getting started" experience has been straight forward and headache free. If you've had issues, please consider updating our documentation to improve future user experiences. If you're still having issues. Reach out on the [forum](https://meshtastic.discourse.group) or [Discord](https://discord.gg/ktMAKGBnBs). Our support is 100% volunteer based. We are passionate about the project hope to help newcomers become Meshtastic experts. Hopefully your "getting started" experience has been straight forward and headache free. If you've had issues, please consider updating our documentation to improve future user experiences. If you're still having issues. Reach out on the [forum](https://meshtastic.discourse.group) or [Discord](https://discord.gg/ktMAKGBnBs). Our support is 100% volunteer based. We are passionate about the project hope to help newcomers become Meshtastic experts.

View file

@ -1,14 +0,0 @@
---
id: battery
title: Adding and sizing batteries
sidebar_label: Batteries
sidebar_position: 5
---
import { BatteryCalculator } from '../../src/components/BatteryCalculator';
Sizing a battery for a node depends on several factors.
Please use this calculator to aid you in sizing your battery.
<BatteryCalculator />

View file

@ -1,15 +0,0 @@
---
id: buttons
title: Modifying devices to add buttons
sidebar_label: Buttons
sidebar_position: 4
---
Many of the TTGO Lora32 devices do not have a program button to navigate the displayed pages. It is possible to add a button to the following device:
## TTGO Lora32 V2.1-1.6
Shorting IO12 to ground will progress the screen pages, wake up the device, etc. A simple push switch can be added for this purpose.
[<img src="/img/hardware/lora32-v2-1.6-button.jpg" style={{zoom:'30%'}} />](/img/hardware/lora32-v2-1.6-button.jpg)
[<img src="/img/hardware/lora32-v2-1.6-button-example.jpg" style={{zoom:'30%'}} />](/img/hardware/lora32-v2-1.6-button.jpg)

View file

@ -1,7 +1,7 @@
--- ---
id: gpsmodule id: gps-modules
title: External GPS Module title: External GPS Modules
sidebar_label: GPS Module sidebar_label: GPS Modules
sidebar_position: 3 sidebar_position: 3
--- ---

View file

@ -5,7 +5,7 @@ sidebar_label: Heltec
sidebar_position: 6 sidebar_position: 6
--- ---
## WiFi LoRa 32 (V2) ## WiFi LoRa 32 (V2) * Not Reccomended
- ESP32 - Wifi & Bluetooth - ESP32 - Wifi & Bluetooth
- SX127x - LoRa Transceiver - SX127x - LoRa Transceiver

View file

@ -1,16 +0,0 @@
---
id: linux
title: Linux Compatible Hardware
sidebar_label: Linux
sidebar_position: 7
---
This page is a place holder.
The device software can run on hardware that runs Linux to execute unit tests.
Fledgling support for a LoRa USB dongle has been in the works.
This page will be updated with more information as information is made available.
Please be mindful that a lot of this is incomplete, so please don't get too excited and asking for builds and/or timelines.

View file

@ -7,7 +7,7 @@ sidebar_position: 2
import Tabs from '@theme/Tabs'; import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem'; import TabItem from '@theme/TabItem';
There are several versions of the LILYGO® Lora LILYGO® Lora23 v1-2.1 * Versions other than 2.1 not reccomended with a battery
<Tabs <Tabs
groupId="t-lora" groupId="t-lora"
@ -108,6 +108,11 @@ Some of these boards contained the wrong component in the LiPo battery charging
[<img src="/img/hardware/lora-v2.1-1.6.png" alt="LILYGO® TTGO Lora V2.1-1.6" style={{zoom:'25%'}} />](/img/hardware/lora-v2.1-1.6.png) [<img src="/img/hardware/lora-v2.1-1.6.png" alt="LILYGO® TTGO Lora V2.1-1.6" style={{zoom:'25%'}} />](/img/hardware/lora-v2.1-1.6.png)
Shorting IO12 to ground will progress the screen pages, wake up the device, etc. A simple push switch can be added for this purpose.
[<img src="/img/hardware/lora32-v2-1.6-button.jpg" style={{zoom:'30%'}} />](/img/hardware/lora32-v2-1.6-button.jpg)
[<img src="/img/hardware/lora32-v2-1.6-button-example.jpg" style={{zoom:'30%'}} />](/img/hardware/lora32-v2-1.6-button.jpg)
</TabItem> </TabItem>
</Tabs> </Tabs>

View file

@ -2,7 +2,7 @@
id: wisBlock id: wisBlock
title: RAK WisBlock title: RAK WisBlock
sidebar_label: RAK WisBlock sidebar_label: RAK WisBlock
sidebar_position: 3 sidebar_position: 1
--- ---
import Tabs from '@theme/Tabs'; import Tabs from '@theme/Tabs';

View file

@ -2,7 +2,7 @@
id: techo id: techo
title: LILYGO® TTGO T-Echo devices title: LILYGO® TTGO T-Echo devices
sidebar_label: LILYGO® T-Echo sidebar_label: LILYGO® T-Echo
sidebar_position: 4 sidebar_position: 2
--- ---
The T-Echo is the latest device to be release by LILYGO® supporting a low power consumption microcontroller. The T-Echo is the latest device to be release by LILYGO® supporting a low power consumption microcontroller.

View file

@ -52,7 +52,7 @@ defaultValue="flasher"
values={[ values={[
{label: 'Android', value: 'android'}, {label: 'Android', value: 'android'},
{label: 'Apple', value: 'apple'}, {label: 'Apple', value: 'apple'},
{label: 'Command Line', value: 'cli'}, {label: 'CLI', value: 'cli'},
{label: 'Flasher', value: 'flasher'}, {label: 'Flasher', value: 'flasher'},
{label: 'Web', value: 'web'}, {label: 'Web', value: 'web'},
]}> ]}>
@ -96,14 +96,14 @@ meshtastic --set factory_reset true
<TabItem value="flasher"> <TabItem value="flasher">
:::info :::info
Device config is not available in the Flasher. All device config options are available in the Flasher.
::: :::
</TabItem> </TabItem>
<TabItem value="web"> <TabItem value="web">
:::info :::info
Device config is not available for the Web UI. All device config options are available in the Web UI.
::: :::
</TabItem> </TabItem>

View file

@ -40,7 +40,7 @@ defaultValue="flasher"
values={[ values={[
{label: 'Android', value: 'android'}, {label: 'Android', value: 'android'},
{label: 'Apple', value: 'apple'}, {label: 'Apple', value: 'apple'},
{label: 'Command Line', value: 'cli'}, {label: 'CLI', value: 'cli'},
{label: 'Flasher', value: 'flasher'}, {label: 'Flasher', value: 'flasher'},
{label: 'Web', value: 'web'}, {label: 'Web', value: 'web'},
]}> ]}>
@ -81,14 +81,14 @@ meshtastic --set gps_format GpsFormatUTM
<TabItem value="flasher"> <TabItem value="flasher">
:::info :::info
Display config is not available in the Flasher. All display config options are available in the Flasher.
::: :::
</TabItem> </TabItem>
<TabItem value="web"> <TabItem value="web">
:::info :::info
Display config is not available in the Web UI. All display config options are available in the Web UI.
::: :::
</TabItem> </TabItem>

View file

@ -13,9 +13,8 @@ Default settings values are prefered whenever possible as they consume no bandwi
|:----:|:-----------:| |:----:|:-----------:|
| [Device](device) | Device config options are: Device Role, Serial Output, Debug Log and Factory Reset. | | [Device](device) | Device config options are: Device Role, Serial Output, Debug Log and Factory Reset. |
| [Display](display) | Display config options are: Screen On Duration, Auto Carousel Interval, and GPS Format. | | [Display](display) | Display config options are: Screen On Duration, Auto Carousel Interval, and GPS Format. |
| [LoRa](lora) | LoRa config options are: Region, Modem Preset, and Number of Hops. | | [LoRa](lora) | The LoRa config options are: Region, Modem Preset, Max Hops, Transmit Power, Bandwidth, Spread Factor, Coding Rate, Frequency Offset, Transmit Disabled and Ignore Incoming Array. |
| [Position](position) | Positon config options are: GPS Enabled, GPS Update Interval, GPS Attempt Time, Fixed Postion, Smart Broadcast, Broadcast Interval and Position Packet Flags. | | [Position](position) | Positon config options are: GPS Enabled, GPS Update Interval, GPS Attempt Time, Fixed Postion, Smart Broadcast, Broadcast Interval and Position Packet Flags. |
| [Power](power) | Power config options are: Charge Current, Power Saving, Shutdown after losing power, ADC Multiplier Override Wait Bluetooth Interval, Mesh Super Deep Sleep Timeout, Super Deep Sleep Interval, Light Sleep Interval and Minimum Wake Interval. | | [Power](power) | Power config options are: Charge Current, Power Saving, Shutdown after losing power, ADC Multiplier Override Wait Bluetooth Interval, Mesh Super Deep Sleep Timeout, Super Deep Sleep Interval, Light Sleep Interval and Minimum Wake Interval. |
| [User](user) | The user config options are: Short Name, Long Name, Licensed Operator, Transmit Power at Antenna Connector, Antenna Gain and Antenna Azimuth. |
| [WiFi](wifi) | WiFi config options are: AP Mode, Hidden AP, SSID and Password. | | [WiFi](wifi) | WiFi config options are: AP Mode, Hidden AP, SSID and Password. |

View file

@ -7,7 +7,7 @@ sidebar_label: LoRa
import Tabs from '@theme/Tabs'; import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem'; import TabItem from '@theme/TabItem';
The LoRa config options are: Region, Modem Preset, and Number of Hops. LoRa config uses an admin message sending a `Config.LoRa` protobuf. The LoRa config options are: Region, Modem Preset, Max Hops, Transmit Power, Bandwidth, Spread Factor, Coding Rate, Frequency Offset, Transmit Disabled and Ignore Incoming Array. LoRa config uses an admin message sending a `Config.LoRa` protobuf.
## LoRa Config Values ## LoRa Config Values
@ -39,6 +39,41 @@ Sets the region for your node. Default is `unset`.
### Max Hops ### Max Hops
### Transmit Power
If zero then, use default max legal continuous power (ie. something that won't burn out the radio hardware)
In most cases you should use zero here. Units are in dBm.
### Bandwidth
Bandwidth in MHz
Certain bandwidth numbers are 'special' and will be converted to the appropriate floating point value: 31 -> 31.25MHz
### Spread Factor
A number from 7 to 12. Indicates the number of chirps per symbol as 1<<spread_factor.
### Coding Rate
The denominator of the coding rate. ie for 4/8, the value is 8. 5/8 the value is 5.
### Frequency Offset
This parameter is for advanced users with advanced test equipment, we do not recommend most users use it.
A frequency offset that is added to to the calculated band center frequency. Used to correct for crystal calibration errors.
### Transmit Disabled
Disable transmit (TX) from the LoRa radio. Useful for hot-swapping antennas and other tests.
Defaults to false
### Ignore Incoming Array
For testing it is useful sometimes to force a node to never listen to particular other nodes (simulating radio out of range). All nodenums listed in the ignore_incoming array will have packets they send droped on receive (by router.cpp)
## LoRa Config Client Availability ## LoRa Config Client Availability
@ -48,7 +83,7 @@ defaultValue="flasher"
values={[ values={[
{label: 'Android', value: 'android'}, {label: 'Android', value: 'android'},
{label: 'Apple', value: 'apple'}, {label: 'Apple', value: 'apple'},
{label: 'Command Line', value: 'cli'}, {label: 'CLI', value: 'cli'},
{label: 'Flasher', value: 'flasher'}, {label: 'Flasher', value: 'flasher'},
{label: 'Web', value: 'web'}, {label: 'Web', value: 'web'},
]}> ]}>
@ -80,14 +115,14 @@ Select LoRa config conmmands are available in the python CLI. Example commands a
<TabItem value="flasher"> <TabItem value="flasher">
:::info :::info
LoRa config is not available in the Flasher. All lora config options are available in the Flasher.
::: :::
</TabItem> </TabItem>
<TabItem value="web"> <TabItem value="web">
:::info :::info
LoRa config is not available for in the Web UI. All lora config options are available in the Web UI.
::: :::
</TabItem> </TabItem>

View file

@ -81,7 +81,7 @@ defaultValue="flasher"
values={[ values={[
{label: 'Android', value: 'android'}, {label: 'Android', value: 'android'},
{label: 'Apple', value: 'apple'}, {label: 'Apple', value: 'apple'},
{label: 'Command Line', value: 'cli'}, {label: 'CLI', value: 'cli'},
{label: 'Flasher', value: 'flasher'}, {label: 'Flasher', value: 'flasher'},
{label: 'Web', value: 'web'}, {label: 'Web', value: 'web'},
]}> ]}>
@ -167,14 +167,14 @@ meshtastic --pos-fields POS_UNDEFINED
<TabItem value="flasher"> <TabItem value="flasher">
:::info :::info
Position config is not available in the Flasher. All position config options are available in the Flasher.
::: :::
</TabItem> </TabItem>
<TabItem value="web"> <TabItem value="web">
:::info :::info
Position config is not available in the Web UI. All position config options are available in the Web UI.
::: :::
</TabItem> </TabItem>

View file

@ -78,7 +78,7 @@ defaultValue="flasher"
values={[ values={[
{label: 'Android', value: 'android'}, {label: 'Android', value: 'android'},
{label: 'Apple', value: 'apple'}, {label: 'Apple', value: 'apple'},
{label: 'Command Line', value: 'cli'}, {label: 'CLI', value: 'cli'},
{label: 'Flasher', value: 'flasher'}, {label: 'Flasher', value: 'flasher'},
{label: 'Web', value: 'web'}, {label: 'Web', value: 'web'},
]}> ]}>
@ -166,7 +166,7 @@ Power config is not available in the Flasher.
<TabItem value="web"> <TabItem value="web">
:::info :::info
Power config is not available in the Web UI. All power config options are available in the Web UI.
::: :::
</TabItem> </TabItem>

View file

@ -0,0 +1,86 @@
---
id: user
title: User Configuration
sidebar_label: User
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
The user config options are: Short Name, Long Name, Licensed Operator, Transmit Power at Antenna Connector, Antenna Gain and Antenna Azimuth. User config uses an admin message sending a `User` protobuf.
## User Config Values
### Short Name
### Long Name
### Licensed Operator
### Transmit Power at Antenna Connector
### Antenna Gain
### Antenna Azimuth
## Device Config Client Availability
<Tabs
groupId="settings"
defaultValue="flasher"
values={[
{label: 'Android', value: 'android'},
{label: 'Apple', value: 'apple'},
{label: 'CLI', value: 'cli'},
{label: 'Flasher', value: 'flasher'},
{label: 'Web', value: 'web'},
]}>
<TabItem value="android">
:::info
Long Name can be edited on Android.
:::
</TabItem>
<TabItem value="apple">
:::info
Short Name and Long Name user config options are available on iOS, iPadOS and macOS at Settings > Radio Configuration > User.
:::
</TabItem>
<TabItem value="cli">
All display config options are available in the python CLI. Example commands are below:
```shell title="Set Screen On Duration (Default of 0 is 10 minutes)"
meshtastic --set screen_on_secs 0
meshtastic --set screen_on_secs 120
```
```shell title="Set Auto Carousel Interval (Default of 0 is Off)"
meshtastic --set auto_screen_carousel_secs 0
// Set to 2 Minutes (120 Seconds)
meshtastic --set auto_screen_carousel_secs 120
```
```shell title="Specify GPS format on device screen"
meshtastic --set gps_format GpsFormatUTM
```
</TabItem>
<TabItem value="flasher">
:::info
All user config options are available in the Flasher.
:::
</TabItem>
<TabItem value="web">
:::info
All user config options are available in the Web UI.
:::
</TabItem>
</Tabs>

View file

@ -57,7 +57,7 @@ defaultValue="flasher"
values={[ values={[
{label: 'Android', value: 'android'}, {label: 'Android', value: 'android'},
{label: 'Apple', value: 'apple'}, {label: 'Apple', value: 'apple'},
{label: 'Command Line', value: 'cli'}, {label: 'CLI', value: 'cli'},
{label: 'Flasher', value: 'flasher'}, {label: 'Flasher', value: 'flasher'},
{label: 'Web', value: 'web'}, {label: 'Web', value: 'web'},
]}> ]}>
@ -113,14 +113,14 @@ meshtastic --set wifi_password "my password"
<TabItem value="flasher"> <TabItem value="flasher">
:::info :::info
Available in the flasher. All WiFi config options are available in the Flasher.
::: :::
</TabItem> </TabItem>
<TabItem value="web"> <TabItem value="web">
:::info :::info
Available in the web ui. All WiFI config options are available in the Web UI.
::: :::
</TabItem> </TabItem>

View file

@ -16,7 +16,7 @@ Default settings values are prefered whenever possible as they consume no bandwi
## Config Sections ## Config Sections
Meshtastic config is now broken into 6 sections. [Device](settings/config/device), [Display](settings/config/display), [LoRa](settings/config/lora), [Position](settings/config/position), [Power](settings/config/power) and [WiFi](settings/config/wifi). Meshtastic config is now broken into 6 sections. [Device](settings/config/device), [Display](settings/config/display), [LoRa](settings/config/lora), [Position](settings/config/position), [Power](settings/config/power), [User](settings/config/user) and [WiFi](settings/config/wifi).
## Module Config ## Module Config

View file

@ -37,7 +37,9 @@ Once module settings are changed, a **reset** is required for them to take effec
`--set-canned-message "<messages>"` `--set-canned-message "<messages>"`
### canned_message_module_allow_input_source ### Enabled
### Allow Input Source
Input event source accepted by the canned message module. Input event source accepted by the canned message module.

View file

@ -1,6 +1,6 @@
--- ---
id: external-notification id: external-notification
title: External Notification Module Settings title: External Notification Module Configuration
sidebar_label: External Notification sidebar_label: External Notification
--- ---
@ -9,329 +9,126 @@ import TabItem from '@theme/TabItem';
:::warning :::warning
GPIO access is fundamentally dangerous because invalid options can physically damage or destroy your hardware. Ensure that you fully understand the schematic for your particular device before trying this as we do not offer a warranty. Use at your own risk. GPIO access is fundamentally dangerous because invalid options can physically damage or destroy your hardware. Ensure that you fully understand the schematic for your particular device before trying this as we do not offer a warranty. Use at your own risk.
:::
:::note
This module requires attaching a peripheral accessory to your device. It will not work without one. This module requires attaching a peripheral accessory to your device. It will not work without one.
::: :::
## Overview The External Notification Module will allow you to connect a buzzer, speaker, LED, or other device to notify you when a message has been received from the mesh network.
The External Notification Module will allow you to connect a speaker, LED, or other device to notify you when a message has been received from the mesh network.
## External Notification Module Config Values
### Enabled
Enables the external notification module.
### Alert when receiving a bell
Specifies if an alert should be triggered when receiving an incoming bell.
### Alert when receiving a message
Specifies if an alert should be triggered when receiving an incoming message.
### Active
Specifies whether the external circuit is triggered when the device's GPIO is low or high.
### GPIO to monitor
Specifies the GPIO that your external circuit is attached to on the device.
### How long monitored GPIO is triggered
Specifies how long in milliseconds you would like your external circuit to be triggered.
Default of 0 is 1000ms
## External Notification Module Config Client Availability
<Tabs
groupId="settings"
defaultValue="flasher"
values={[
{label: 'Android', value: 'android'},
{label: 'Apple', value: 'apple'},
{label: 'CLI', value: 'cli'},
{label: 'Flasher', value: 'flasher'},
{label: 'Web', value: 'web'},
]}>
<TabItem value="android">
:::info
External notification module config is not available for Android.
:::
</TabItem>
<TabItem value="apple">
:::info
All external notification module config options are available on iOS, iPadOS and macOS at Settings > Modules > External Notification.
:::
</TabItem>
<TabItem value="cli">
All external noftification module config options are available in the python CLI. Example commands are below:
| Setting | Acceptable Values | Default |
| :-----------------------------------: | :----------------------: | :-----: |
| ext_notification_module_enabled | `true`, `false` | `false` |
| ext_notification_module_active | `true`, `false` | `false` |
| ext_notification_module_alert_bell | `true`, `false` | `false` |
| ext_notification_module_alert_message | `true`, `false` | `false` |
| ext_notification_module_output | `integer` | `0` |
| ext_notification_module_output_ms | `integer` (milliseconds) | `0` |
```shell title="Enable/Disable External Notification Module"
meshtastic --set ext_notification_module_enabled true
meshtastic --set ext_notification_module_enabled false
```
```shell title="Enable/Disable alert on incoming bell"
meshtastic --set ext_notification_module_alert_bell true
meshtastic --set ext_notification_module_alert_bell false
```
```shell title="Set GPIO active high / low (defalut of false is low)"
meshtastic --set ext_notification_module_active false
meshtastic --set ext_notification_module_active true
```
```shell title="Enable/Disable alert on incoming message"
meshtastic --set ext_notification_module_alert_message true
meshtastic --set ext_notification_module_alert_message false
```
```shell title="Set GPIO to monitor to 21"
meshtastic --set ext_notification_module_output 21
```
```shell title="Set monitored GPIO output duration (default of 0 is 1000ms)"
meshtastic --set ext_notification_module_output_ms 0
meshtastic --set ext_notification_module_output_ms 1500
```
</TabItem>
<TabItem value="flasher">
:::info
External Notification module config is not available in the Flasher.
:::
</TabItem>
<TabItem value="web">
:::info
External Notification module config is not available for the Web UI.
:::
</TabItem>
</Tabs>
:::tip :::tip
Once module settings are changed, a **reset** is required for them to take effect. Once module settings are changed, a **reset** is required for them to take effect.
::: :::
## Settings
| Setting | Acceptable Values | Default |
| :-----------------------------------: | :----------------------: | :-----: |
| ext_notification_module_active | `true`, `false` | `false` |
| ext_notification_module_alert_bell | `true`, `false` | `false` |
| ext_notification_module_alert_message | `true`, `false` | `false` |
| ext_notification_module_enabled | `true`, `false` | `false` |
| ext_notification_module_output | `integer` | `0` |
| ext_notification_module_output_ms | `integer` (milliseconds) | `0` |
### ext_notification_module_active
Specifies whether the external circuit is triggered when the device's GPIO is low or high.
:::caution
To prevent damaging your device, double check your device's schematics before attaching to the GPIO pins and setting this value.
:::
#### Specify High/Low GPIO triggers circuit
<Tabs
groupId="settings"
defaultValue="cli"
values={[
{label: 'CLI', value: 'cli'},
{label: 'Android', value: 'android'},
{label: 'iOS', value: 'iOS'},
{label: 'Web', value: 'web'},
]}>
<TabItem value="cli">
```shell title="GPIO active high"
meshtastic --set ext_notification_module_active true
```
```shell title="GPIO active low (default)"
meshtastic --set ext_notification_module_active false
```
</TabItem>
<TabItem value="android">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="iOS">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="web">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
</Tabs>
### ext_notification_module_alert_bell
Specifies if an alert should be sent when receiving an incoming bell.
#### Enable/Disable alert on incoming bell
<Tabs
groupId="settings"
defaultValue="cli"
values={[
{label: 'CLI', value: 'cli'},
{label: 'Android', value: 'android'},
{label: 'iOS', value: 'iOS'},
{label: 'Web', value: 'web'},
]}>
<TabItem value="cli">
```shell title="Enable alert on incoming bell"
meshtastic --set ext_notification_module_alert_bell true
```
```shell title="Disable alert on incoming bell"
meshtastic --set ext_notification_module_alert_bell false
```
</TabItem>
<TabItem value="android">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="iOS">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="web">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
</Tabs>
### ext_notification_module_alert_message
Specifies if an alert should be sent when receiving an incoming message.
#### Enable/Disable Alert on incoming message
<Tabs
groupId="settings"
defaultValue="cli"
values={[
{label: 'CLI', value: 'cli'},
{label: 'Android', value: 'android'},
{label: 'iOS', value: 'iOS'},
{label: 'Web', value: 'web'},
]}>
<TabItem value="cli">
```shell title="Enable alert on incoming message"
meshtastic --set ext_notification_module_alert_message true
```
```shell title="Disable alert on incoming message"
meshtastic --set ext_notification_module_alert_message false
```
</TabItem>
<TabItem value="android">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="iOS">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="web">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
</Tabs>
### ext_notification_module_enabled
Enables the module.
#### Enable/Disable the module
<Tabs
groupId="settings"
defaultValue="cli"
values={[
{label: 'CLI', value: 'cli'},
{label: 'Android', value: 'android'},
{label: 'iOS', value: 'iOS'},
{label: 'Web', value: 'web'},
]}>
<TabItem value="cli">
```shell title="Enable Module"
meshtastic --set ext_notification_module_enabled true
```
```shell title="Disable Module"
meshtastic --set ext_notification_module_enabled false
```
</TabItem>
<TabItem value="android">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="iOS">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="web">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
</Tabs>
### ext_notification_module_output
Specifies the GPIO that your external circuit is attached to on the device.
:::caution
To prevent damaging your device, double check your device's schematics before attaching to the GPIO pins and setting this value.
:::
#### Specify GPIO for circuit to monitor
<Tabs
groupId="settings"
defaultValue="cli"
values={[
{label: 'CLI', value: 'cli'},
{label: 'Android', value: 'android'},
{label: 'iOS', value: 'iOS'},
{label: 'Web', value: 'web'},
]}>
<TabItem value="cli">
:::note
Replace `GPIO` in the below command with the GPIO number your circuit is attached to.
:::
```shell title="Specify GPIO that circuit is connected to"
meshtastic --set ext_notification_module_output GPIO
```
</TabItem>
<TabItem value="android">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="iOS">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="web">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
</Tabs>
### ext_notification_module_output_ms
Specifies how long in milliseconds you would like your external circuit triggered. Default is `1000`. (Because of the way that defaults are handled in the protobufs `0` is interpreted as `1000`)
#### Specify how many milliseconds to trigger circuit
<Tabs
groupId="settings"
defaultValue="cli"
values={[
{label: 'CLI', value: 'cli'},
{label: 'Android', value: 'android'},
{label: 'iOS', value: 'iOS'},
{label: 'Web', value: 'web'},
]}>
<TabItem value="cli">
```shell title="Set to default (1000ms)"
meshtastic --set ext_notification_module_output_ms 0
```
```shell title="Set to other value"
meshtastic --set ext_notification_module_output_ms 1500
```
</TabItem>
<TabItem value="android">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="iOS">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="web">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
</Tabs>

View file

@ -12,7 +12,7 @@ Modules are included in the firmware and allow users to extend the functionality
| [Canned Message](canned-message) | Set a number of predefined messages to send out directly from the device with the use of an input device like a rotary encoder. | | [Canned Message](canned-message) | Set a number of predefined messages to send out directly from the device with the use of an input device like a rotary encoder. |
| [External Notification](external-notification) | Incoming messages are able to alert you using circuits you attach to the device (LEDs, Buzzers, etc) | | [External Notification](external-notification) | Incoming messages are able to alert you using circuits you attach to the device (LEDs, Buzzers, etc) |
| [Input Broker](input-broker) | Attach and define input devices such as external keyboards and rotary encoders. | | [Input Broker](input-broker) | Attach and define input devices such as external keyboards and rotary encoders. |
| [Range Test](range-test-module) | Send messages with GPS location at an interval to test the distance your devices can communicate. Requires (at least) one device set up as a sender and one as a receiver. The receiver(s) will log all incoming messages to a CSV. | | [Range Test](range-test) | Send messages with GPS location at an interval to test the distance your devices can communicate. Requires (at least) one device set up as a sender and one as a receiver. The receiver(s) will log all incoming messages to a CSV. |
| [Serial Module](serial) | Send messages across the mesh by sending strings over a serial port. | | [Serial Module](serial) | Send messages across the mesh by sending strings over a serial port. |
| [Store and Forward](store-and-forward) | Set a designated node to store messages and resend them to nodes with intermittent connection to a mesh. | | [Store and Forward](store-and-forward) | Set a designated node to store messages and resend them to nodes with intermittent connection to a mesh. |
| [Telemetry](telemetry) | Attach sensors to the device and transmit readings on a regular interval to the mesh. | | [Telemetry](telemetry) | Attach sensors to the device and transmit readings on a regular interval to the mesh. |

View file

@ -1,5 +1,5 @@
--- ---
id: range-test-module id: range-test
title: Range Test Module Configuration title: Range Test Module Configuration
sidebar_label: Range Test sidebar_label: Range Test
--- ---
@ -32,11 +32,11 @@ How long to wait between sending test packets. 0 is default which disables sendi
<Tabs <Tabs
groupId="settings" groupId="settings"
defaultValue="flasher" defaultValue="cli"
values={[ values={[
{label: 'Android', value: 'android'}, {label: 'Android', value: 'android'},
{label: 'Apple', value: 'apple'}, {label: 'Apple', value: 'apple'},
{label: 'Command Line', value: 'cli'}, {label: 'CLI', value: 'cli'},
{label: 'Flasher', value: 'flasher'}, {label: 'Flasher', value: 'flasher'},
{label: 'Web', value: 'web'}, {label: 'Web', value: 'web'},
]}> ]}>
@ -50,7 +50,7 @@ Range Test features are available for Android.
<TabItem value="apple"> <TabItem value="apple">
:::info :::info
Range test module config is not yet available on Apple OS's. All range test module config options are available on iOS, iPadOS and macOS at Settings > Modules > Range Test.
::: :::
</TabItem> </TabItem>
@ -64,19 +64,13 @@ All range test module config options are available in the python CLI. Example co
| range_test_module_save | `true`, `false` | `false` | | range_test_module_save | `true`, `false` | `false` |
| range_test_module_sender | `integer` (Seconds) | `0` | | range_test_module_sender | `integer` (Seconds) | `0` |
```shell title="Enable the module" ```shell title="Enable / Disable the range test"
meshtastic --set range_test_module_enabled true meshtastic --set range_test_module_enabled true
meshtastic --set range_test_module_enabled false
``` ```
```shell title="Disable the module" ```shell title="Enable / Disable range test save"
meshtastic --set range_test_module_enabled true
```
```shell title="Enable range test save"
meshtastic --set range_test_module_save true meshtastic --set range_test_module_save true
```
```shell title="Disable range test save"
meshtastic --set range_test_module_save false meshtastic --set range_test_module_save false
``` ```
@ -92,14 +86,14 @@ meshtastic --set range_test_module_sender 0
<TabItem value="flasher"> <TabItem value="flasher">
:::info :::info
Range test module config is not available in the Flasher. All range test module config options are available in the Flasher.
::: :::
</TabItem> </TabItem>
<TabItem value="web"> <TabItem value="web">
:::info :::info
Range test module config is not available for the Web UI. All range test module config options are available in the Web UI.
::: :::
</TabItem> </TabItem>
@ -134,89 +128,3 @@ http://198.168.0.15
| Long Alt | 30 | | Long Alt | 30 |
| Medium | 15 | | Medium | 15 |
| Short Fast | 15 | | Short Fast | 15 |
## Examples
### Sender Node
<Tabs
groupId="settings"
defaultValue="cli"
values={[
{label: 'CLI', value: 'cli'},
{label: 'Android', value: 'android'},
{label: 'iOS', value: 'iOS'},
{label: 'Web', value: 'web'},
]}>
<TabItem value="cli">
```shell title="Example - Sender Node"
meshtastic --set range_test_module_enabled true
meshtastic --set range_test_module_sender 60
```
</TabItem>
<TabItem value="android">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="iOS">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="web">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
</Tabs>
### Receiver Node
<Tabs
groupId="settings"
defaultValue="cli"
values={[
{label: 'CLI', value: 'cli'},
{label: 'Android', value: 'android'},
{label: 'iOS', value: 'iOS'},
{label: 'Web', value: 'web'},
]}>
<TabItem value="cli">
```shell title="Example - Receiver Node"
meshtastic --set range_test_module_enabled true
meshtastic --set range_test_module_save true
```
</TabItem>
<TabItem value="android">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="iOS">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
<TabItem value="web">
:::info
Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page.
:::
</TabItem>
</Tabs>

View file

@ -63,7 +63,7 @@ defaultValue="flasher"
values={[ values={[
{label: 'Android', value: 'android'}, {label: 'Android', value: 'android'},
{label: 'Apple', value: 'apple'}, {label: 'Apple', value: 'apple'},
{label: 'Command Line', value: 'cli'}, {label: 'CLI', value: 'cli'},
{label: 'Flasher', value: 'flasher'}, {label: 'Flasher', value: 'flasher'},
{label: 'Web', value: 'web'}, {label: 'Web', value: 'web'},
]}> ]}>
@ -77,7 +77,7 @@ Serial module config is not available for Android.
<TabItem value="apple"> <TabItem value="apple">
:::info :::info
Serial module config is not yet available on Apple OS's. All serial module config options are available on iOS, iPadOS and macOS at Settings > Modules > Serial.
::: :::
</TabItem> </TabItem>
@ -132,14 +132,14 @@ meshtastic --set serial_module_timeout 15
<TabItem value="flasher"> <TabItem value="flasher">
:::info :::info
Serial module config is not available in the Flasher. All serial test module config options are available in the Flasher.
::: :::
</TabItem> </TabItem>
<TabItem value="web"> <TabItem value="web">
:::info :::info
Serial module config is not available for the Web UI. All serial test module config options are available in the Web UI.
::: :::
</TabItem> </TabItem>

View file

@ -1,7 +1,7 @@
--- ---
id: community-atak id: community-atak
title: ATAK module title: ATAK module
sidebar_label: ATAK module sidebar_label: 1.2 ATAK module
--- ---
:::note :::note

View file

@ -1,7 +1,7 @@
--- ---
id: community-go id: community-go
title: Go command line interface title: Go command line interface
sidebar_label: Go CLI sidebar_label: 1.2 Go CLI
--- ---
:::note :::note

View file

@ -8,8 +8,8 @@ The Meshtastic ecosystem is highly extensible, and a number of community project
Current community projects: Current community projects:
- [Meshtastic module for ATAK](/docs/software/community/community-atak) (Android Team Awareness Kit) - [1.2 Meshtastic module for ATAK](/docs/software/community/community-atak) (Android Team Awareness Kit)
- [PyGUI](/docs/software/community/community-pygui) - Platform independent graphical user interface for Meshtastic devices - [1.2 PyGUI](/docs/software/community/community-pygui) - Platform independent graphical user interface for Meshtastic devices
- [Go CLI](/docs/software/community/community-go) - A command line interface using Go that requires no pre-requisites to be installed - [1.2 Go CLI](/docs/software/community/community-go) - A command line interface using Go that requires no pre-requisites to be installed
Support for these projects should be sought from their respective authors. Support for these projects should be sought from their respective authors.

View file

@ -1,7 +1,7 @@
--- ---
id: community-pygui id: community-pygui
title: PyGUI application title: PyGUI application
sidebar_label: PyGUI app sidebar_label: 1.2 PyGUI app
--- ---
:::note :::note

View file

@ -1,61 +0,0 @@
---
id: install-OSX
title: OSX Install
sidebar_label: OSX
---
(Here's some quick tips and [troubleshooting](#troubleshooting) on installing the device code from OS-X, thanks to @android606)
First time using LoRa for anything, just checking it out.
I bought a T-Beam on eBay, followed the instructions to install the firmware here:
[https://github.com/meshtastic/Meshtastic-esp32](https://github.com/meshtastic/Meshtastic-esp32)
I'm using a Mac for this, so that might account for differences in the steps to get it working. I just swapped out my SSD last month, I'm using a pretty fresh install of OS X 10.15.3/Catalina.
I got it working fairly smoothly, but there were two hang-ups I thought I'd mention:
1. I am about 0% familiar with Python, so there were some issues getting esptool.py working. Basically, this OS X comes with Python 2.7 and no pip. Pip installed okay, so I used it to install esptool. Esptool appeared to install correctly, but I couldn't get it to work to save my life. Simply typing "esptool.py" doesn't work, and I just don't know enough python to figure out why. For some reason, it installs but isn't in the \$PATH anywhere, and I don't know where it went. Python 2.7 kept giving me warning messages about being old and unsupported, so I figured that might be a hint that I should upgrade.
I ended up doing this:
- brew install pyenv (to install pyenv)
- pyenv install 3.7.7 (to install and select python 3.7.7)
- pyenv global 3.7.7 (to select the new version of python)
- brew install pip (to install pip3)
- pip3 install --upgrade esptool (note I specifically had to use "pip3", not "pip")
...then I was able to execute esptool.py
2. esptool.py didn't work though, because the virtual com port wasn't showing up as a device. I had to install a driver from Silicon Labs, which I got here:
[driver for the CP210X USB to UART bridge from Silicon Labs](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers)
After I installed that, esptool.py was completely happy and the firmware loaded right up.
### Troubleshooting
**1. Running into trouble when installing `esptool` via brew**
- Make sure that `openssl` is installed first:
```
brew install openssl
```
- Set some flags in your bash/zsh/whichever profile for `esptool` to install [cryptography](https://cryptography.io/en/latest/installation) as a dependency correctly:
```
export LDFLAGS="-L/usr/local/opt/openssl/lib"
export CPPFLAGS="-I/usr/local/opt/openssl/include"
export PKG_CONFIG_PATH="/usr/local/opt/openssl/lib/pkgconfig"
```
- attempt a reinstall of esptool
```
pip3 install --upgrade esptool
```
**2. I can't see the usb device as `/dev/tty[something]`:**
- Driver config successfully tested on Big Sur v11.6.2: https://github.com/WCHSoftGroup/ch34xser_macos

View file

@ -1,38 +0,0 @@
---
id: pinetab
title: Pinetab
sidebar_label: Pinetab
---
These are **preliminary** notes on support for Meshtastic in the Pinetab.
A RF95 is connected via a CH341 USB-SPI chip.
Pin assignments:
CS0 from RF95 goes to CS0 on CH341
DIO0 from RF95 goes to INT on CH341
RST from RF95 goes to RST on CH341
This Linux driver claims to provide USB-SPI support: https://github.com/gschorcht/spi-ch341-usb
Notes here on using that driver: https://www.linuxquestions.org/questions/linux-hardware-18/ch341-usb-to-spi-adaptor-driver-doesn%27t-work-4175622736/
Or if **absolutely** necessary could bit bang: https://www.cnx-software.com/2018/02/16/wch-ch341-usb-to-serial-chip-gets-linux-driver-to-control-gpios-over-usb/
## Portduino tasks
- How to access SPI devices via ioctl (spidev): https://www.raspberrypi.org/documentation/hardware/raspberrypi/spi/README.md#:~:text=Troubleshooting-,Overview,bus)%2C%20UARTs%2C%20etc.
- access GPIO via libgpiod?
- Use dkms to distribute driver?
- echo 100 > /sys/module/spi_ch341_usb/parameters/poll_period
## Task list
- Port meshtastic to build (under PlatformIO) for a POSIX target. spec: no screen, no GPIOs, SIM network interface, POSIX threads, POSIX semaphores & queues, IO to the console only
Use ARM Linux: https://platformio.org/platforms/linux_arm
And Linux native: https://platformio.org/platforms/native
- Test cs341 driver - just test reading/writing a register and detecting interrupts, confirm can see rf95
- Make a radiolib SPI module that targets the cs341 (and builds on Linux)
- use new radiolib module to hook pinebook LoRa to meshtastic, confirm mesh discovery works
- Make a subclass of StreamAPI that works as a POSIX TCP server
- Use new TCP endpoint from meshtastic-python

View file

@ -1,10 +0,0 @@
---
id: rak815
title: RAK815
sidebar_label: RAK815
---
Notes on trying to get the RAK815 working with meshtastic.
good tutorial: https://www.hackster.io/naresh-krish/getting-started-with-rak815-tracker-module-and-arduino-1c7bc9
(includes software serial link - possibly useful for GPS)

View file

@ -90,26 +90,15 @@ const config = {
label: 'Software', label: 'Software',
to: 'docs/software', to: 'docs/software',
}, },
],
},
{ {
label: 'Developers', label: 'Developers',
to: 'docs/developers', to: 'docs/developers',
}, },
{ ],
label: 'Other', },
items: [
{ {
label: 'Downloads', label: 'Downloads',
to: 'downloads', to: 'downloads',
activeBasePath: 'downloads',
},
{
label: 'Showcase',
to: 'showcase',
activeBasePath: 'showcase',
},
],
}, },
], ],
}, },

View file

@ -4,6 +4,8 @@ title: Meshtastic URL
sidebar_label: e sidebar_label: e
--- ---
# 1.3 Share Channel URL Should be opened in the appropriate app # QR Code Share Channel URL Should be opened in the appropriate app
For Android use the QR code scanner in the app, on Apple devices use the camera. ## Meshtastic QR Code URL Format For Firmware version 1.3
For Android use the QR code scanner in the app, on Apple devices use the camera to open the QR code URL in the Meshtastic App.