Merge branch 'master' into bluetooth_pin

This commit is contained in:
Ben Meadors 2022-12-04 19:40:02 -06:00 committed by GitHub
commit 02f1ba9b2d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 983 additions and 1055 deletions

View file

@ -11,7 +11,7 @@ import TabItem from '@theme/TabItem';
The Bluetooth config options are: Enabled, Pairing Mode and Fixed PIN Value. Bluetooth config uses an admin message sending a `Config.Bluetooth` protobuf. The Bluetooth config options are: Enabled, Pairing Mode and Fixed PIN Value. Bluetooth config uses an admin message sending a `Config.Bluetooth` protobuf.
:::info :::info
On ESP32 Bluetooth will be disabled if WiFi is enabled. The WiFi setting takes precedence. ESP32 Devices: Bluetooth will be disabled if WiFi is enabled. The WiFi setting takes precedence.
::: :::
## Bluetooth Config Values ## Bluetooth Config Values
@ -30,7 +30,14 @@ Finally, `NO_PIN` disables PIN authentication.
### Fixed PIN ### Fixed PIN
If your pairing mode is set to fixed PIN this is the value of that fixed 6 digit pin. Default value is 123456. For all other pairing modes, this number is ignored. 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.
## Configure Bluetooth Config ## Configure Bluetooth Config
@ -46,22 +53,35 @@ values={[
<TabItem value="android"> <TabItem value="android">
:::info :::info
Bluetooth config is not available for Android.
All Bluetooth config options are available for Android.
1. Open the Meshtastic App
2. Navigate to: **Vertical Ellipsis (3 dots top right) > Advanced Settings > Bluetooth Config**
::: :::
</TabItem> </TabItem>
<TabItem value="apple"> <TabItem value="apple">
:::info
All Bluetooth config values are available on iOS, iPadOS and macOS. All Bluetooth config values are available on iOS, iPadOS and macOS.
1. Open the Meshtastic App 1. Open the Meshtastic App
2. Navigate to: **Settings > Radio Configuration > Position** 2. Navigate to: **Settings > Radio Configuration > Bluetooth (BLE)**
:::
</TabItem> </TabItem>
<TabItem value="cli"> <TabItem value="cli">
:::info
All Bluetooth module config options are available in the python CLI. Example commands are below: All Bluetooth module config options are available in the python CLI. Example commands are below:
:::
| Setting | Acceptable Values | Default | | Setting | Acceptable Values | Default |
| :-----------------------: | :-----------------: | :-----: | | :-----------------------: | :-----------------: | :-----: |
| `bluetooth.enabled` | `true`, `false` | `true` | | `bluetooth.enabled` | `true`, `false` | `true` |
@ -81,7 +101,12 @@ meshtastic --set bluetooth.fixed_pin 111111
<TabItem value="web"> <TabItem value="web">
:::info :::info
All Bluetooth module config options are available for the Web UI. All Bluetooth module config options are available for the Web UI.
1. Open the Meshtastic Web UI.
2. Navigate to: **Device Config > Bluetooth**
::: :::
</TabItem> </TabItem>

View file

@ -29,7 +29,7 @@ Defaults to 'Simple'.
Available Values: Available Values:
* `DEFAULT` * `DEFAULT`
* `SIMPLE` operate as an dumb UART tunnel. What goes in will come out, Requires a channel named 'gpio'. * `SIMPLE` operate as an dumb UART tunnel. What goes in will come out, Requires a channel named 'serial'.
* `PROTO` not implemented yet, but will expose the Protobuf Client API on this serial port * `PROTO` not implemented yet, but will expose the Protobuf Client API on this serial port
* `TEXTMSG` Will send the string received over the serial port as a Text Message for Display on the other devices. * `TEXTMSG` Will send the string received over the serial port as a Text Message for Display on the other devices.
* `NMEA` Will output a NMEA 0183 Data stream containing the internal GPS or fixed position and other node locations as Waypoints (WPL). * `NMEA` Will output a NMEA 0183 Data stream containing the internal GPS or fixed position and other node locations as Waypoints (WPL).
@ -159,12 +159,12 @@ This module requires attaching a peripheral accessory to your device. It will no
Default is to use RX GPIO 16 and TX GPIO 17. Default is to use RX GPIO 16 and TX GPIO 17.
### Basic Usage: ### Basic Usage:
1. Enable the module by setting `serial_module_enabled` to `1`. 1. Enable the module by setting `serial.enabled` to `1`.
2. Set the pins (`serial.rxd` / `serial.txd`) for your preferred RX and TX GPIO pins. On tbeam boards it is recommended to use: 2. Set the pins (`serial.rxd` / `serial.txd`) for your preferred RX and TX GPIO pins. On tbeam boards it is recommended to use:
- RXD 35 - RXD 35
- TXD 15 - TXD 15
3. Set `serial.timeout` to the amount of time to wait before we consider your packet as "done". 3. Set `serial.timeout` to the amount of time to wait before we consider your packet as "done".
4. (Optional) In serial_module.h set the port to `PortNum_TEXT_MESSAGE_APP`if you want to send messages to/from the general text message channel. 4. (Optional) set serial.mode to TESTMSG if you want to send messages to/from the general text message channel
5. Connect to your device over the serial interface at `38400 8N1`. 5. Connect to your device over the serial interface at `38400 8N1`.
6. Send a packet up to 240 bytes in length. This will get relayed over the mesh network. 6. Send a packet up to 237 bytes in length. This will get relayed over the mesh network.
7. (Optional) Set `serial.echo` to `1` and any message you send out will be echoed back to your device. 7. (Optional) Set `serial.echo` to `1` and any message you send out will be echoed back to your device.

View file

@ -5,9 +5,13 @@ sidebar_label: ESP32 Device
sidebar_position: 2 sidebar_position: 2
--- ---
:::info
The recommended method for firmware flashing is the [Web-Based Installer.](https://flasher.meshtastic.org)
:::
## Flashing Method for ESP32 Devices ## Flashing Method for ESP32 Devices
1. The [Web-based installer](https://flasher.meshtastic.org) requires either Chrome or Edge browsers but is an excellent choice for quickly flashing devices. 1. The [Web-Based Installer](https://flasher.meshtastic.org) requires either Chrome or Edge browsers but is an excellent choice for quickly flashing devices. **This is the recommended method for firmware flashing, especially for those new to the project, due to its ease of use.**
2. The [Python Flasher](/docs/software/python/flasher) does a lot under the hood to prevent you from needing to use the terminal. It also allows you to configure your device. 2. The [Python Flasher](/docs/software/python/flasher) does a lot under the hood to prevent you from needing to use the terminal.
3. The [CLI Script](/docs/getting-started/flashing-firmware/esp32/cli-script) is considered the "manual process" for flashing firmware. 3. The [CLI Script](/docs/getting-started/flashing-firmware/esp32/cli-script) is considered the "manual process" for flashing firmware.
4. Flashing your device using an [external serial adapter](/docs/getting-started/flashing-firmware/esp32/external-serial-adapter) should only be attempted as a last resort if no other method has been successful. 4. Flashing your device using an [external serial adapter](/docs/getting-started/flashing-firmware/esp32/external-serial-adapter) should only be attempted as a last resort if no other method has been successful.

File diff suppressed because one or more lines are too long

View file

@ -21,20 +21,20 @@
"@heroicons/react": "^2.0.13", "@heroicons/react": "^2.0.13",
"@leenguyen/react-flip-clock-countdown": "^1.3.1", "@leenguyen/react-flip-clock-countdown": "^1.3.1",
"@mdx-js/react": "^1.6.22", "@mdx-js/react": "^1.6.22",
"@meshtastic/meshtasticjs": "^0.6.113", "@meshtastic/meshtasticjs": "^0.6.115",
"autoprefixer": "^10.4.13", "autoprefixer": "^10.4.13",
"base64-js": "^1.5.1", "base64-js": "^1.5.1",
"dotenv": "^16.0.3", "dotenv": "^16.0.3",
"framer-motion": "^6.5.1", "framer-motion": "^6.5.1",
"postcss": "^8.4.18", "postcss": "^8.4.19",
"react": "^17.0.2", "react": "^17.0.2",
"react-dom": "^17.0.2", "react-dom": "^17.0.2",
"react-icons": "^4.6.0", "react-icons": "^4.7.1",
"react-responsive-carousel": "^3.2.23", "react-responsive-carousel": "^3.2.23",
"swr": "^1.3.0", "swr": "^1.3.0",
"tailwindcss": "^3.2.3", "tailwindcss": "^3.2.4",
"url-search-params-polyfill": "^8.1.1", "url-search-params-polyfill": "^8.1.1",
"use-breakpoint": "^3.0.3" "use-breakpoint": "^3.0.4"
}, },
"devDependencies": { "devDependencies": {
"@docusaurus/module-type-aliases": "2.2.0", "@docusaurus/module-type-aliases": "2.2.0",
@ -43,8 +43,8 @@
"@tsconfig/docusaurus": "^1.0.6", "@tsconfig/docusaurus": "^1.0.6",
"@types/node": "^18.11.9", "@types/node": "^18.11.9",
"@types/react": "^18.0.25", "@types/react": "^18.0.25",
"@types/react-dom": "^18.0.8", "@types/react-dom": "^18.0.9",
"prettier": "^2.7.1", "prettier": "^2.8.0",
"typescript": "^4.8.4" "typescript": "^4.9.3"
} }
} }

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 143 KiB