diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ed155269..bb3a223e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -28,7 +28,7 @@ jobs: with: submodules: true - name: Generate protobuf docs - run: protoc --doc_out="docs/developers/protobufs" --doc_opt="./protobuf.tmpl,api.mdx" --proto_path="protobufs" protobufs/*.proto + run: protoc --doc_out="docs/developers/Protobufs" --doc_opt="./protobuf.tmpl,api.mdx" --proto_path="protobufs" protobufs/*.proto - uses: amondnet/vercel-action@v20 with: vercel-token: ${{ secrets.VERCEL_TOKEN }} diff --git a/docs/1.2-End-of-life/ham.mdx b/docs/1.2-End-of-life/ham.mdx index 0ada6ab4..7b673cf7 100644 --- a/docs/1.2-End-of-life/ham.mdx +++ b/docs/1.2-End-of-life/ham.mdx @@ -113,7 +113,7 @@ Remember, by doing this you are self certifying that you are licensed operate in ## Use the Python CLI -Meshtastic is designed to be used without a radio operator license. If you do have a license you can set your operator ID and turn off encryption with the [Python CLI](/docs/software/python/python-uses#ham-radio-support): +Meshtastic is designed to be used without a radio operator license. If you do have a license you can set your operator ID and turn off encryption with the [Python CLI](/docs/software/python/cli/usage#ham-radio-support): ```shell title="Expected Output" # You should see a result similar to this: diff --git a/docs/1.2-End-of-life/power.mdx b/docs/1.2-End-of-life/power.mdx index 4a9a498e..92205f8d 100644 --- a/docs/1.2-End-of-life/power.mdx +++ b/docs/1.2-End-of-life/power.mdx @@ -9,7 +9,7 @@ import TabItem from '@theme/TabItem'; ## Overview -Power settings on a Meshtastic device can be set like other user-define settings with the `--set` command see ([see Meshtastic-python](/docs/software/python/python-cli)). Some of these options are implicit in other commands. For example, when you set the device to router mode using `is_router true`, it is implied that deep sleep is disabled and we want to constantly listen for messages. Below is a list of all user-definable settings and the acceptable values that these settings can use. +Power settings on a Meshtastic device can be set like other user-define settings with the `--set` command see ([see Meshtastic-python](/docs/software/python/cli)). Some of these options are implicit in other commands. For example, when you set the device to router mode using `is_router true`, it is implied that deep sleep is disabled and we want to constantly listen for messages. Below is a list of all user-definable settings and the acceptable values that these settings can use. ## Settings diff --git a/docs/faq/index.mdx b/docs/faq/index.mdx index b38c0349..ba0feaea 100644 --- a/docs/faq/index.mdx +++ b/docs/faq/index.mdx @@ -99,12 +99,11 @@ Your Meshtastic client (Android, Web, or Python) will provide you a URL or QR co ### How do I find out more about installing (and using) Meshtastic via command line? -[See our guide here](/docs/software/python/python-installation). +[See our guide here](/docs/software/python/cli/installation). ### How do I find out more about using python to interact? -[See our guide here](/docs/software/python/python-uses). - +[See our guide here](/docs/software/python/cli/usage). @@ -149,7 +148,7 @@ Push the left PWR button for about 10 seconds. ### How can I tell the device not to sleep? - Android instructions see: [Android Usage](/docs/software/android/android-usage#configuration-options) -- Python CLI instructions see: [Python Usage](/docs/software/python/python-cli#changing-device-settings) +- Python CLI instructions see: [Python Usage](/docs/software/python/cli/usage#changing-settings) ### Why does only one RAK Meshtastic Starter kit show up in my node list? @@ -159,6 +158,7 @@ There was a bug where Meshtastic Starter kits were sent out with the same MAC ad There was a bug where Meshtastic Starter kits were sent out with the same MAC address. With a single MAC address the devices all report as being the same device. Without the battery connected, flash the starter kit device(s) to 1.2.59 and then do a factory reset, disconnect and reconnect the board and run `meshtastic --info`. + ## Amateur Radio (HAM) @@ -182,8 +182,9 @@ If you use your HAM radio license with Meshtastic, consider both the privileges ### How do I set my HAM call sign? -Please see instructions for [Enabling HAM License from the Python CLI](/docs/software/python/python-uses#ham-radio-support) +Please see instructions for [Enabling HAM License from the Python CLI](/docs/software/python/cli/usage#ham-radio-support) + ## Flasher @@ -195,6 +196,7 @@ The flasher contains no malware and completely passed the Microsoft malware scan 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). + ## Mesh @@ -210,6 +212,7 @@ Meshtastic uses LoRa peer to peer (p2p), which has allowed us to customize how w There is a [community project](https://github.com/a-f-G-U-C/Meshtastic-ZPS) that has worked out how to accomplish this. + ## Modules diff --git a/docs/getting-started/flashing-firmware/esp32/flashing-esp32.mdx b/docs/getting-started/flashing-firmware/esp32/flashing-esp32.mdx index fffddcfc..63dddeeb 100644 --- a/docs/getting-started/flashing-firmware/esp32/flashing-esp32.mdx +++ b/docs/getting-started/flashing-firmware/esp32/flashing-esp32.mdx @@ -3,7 +3,7 @@ id: flashing-esp32 title: Flashing ESP32 device firmware sidebar_label: CLI Script pagination_prev: getting-started/flashing-firmware/flashing-firmware -sidebar_position: 2 +sidebar_position: 3 --- import Tabs from '@theme/Tabs'; diff --git a/docs/getting-started/flashing-firmware/esp32/flashing-external-serial-adapter.mdx b/docs/getting-started/flashing-firmware/esp32/flashing-external-serial-adapter.mdx index 3055e89d..1679da88 100644 --- a/docs/getting-started/flashing-firmware/esp32/flashing-external-serial-adapter.mdx +++ b/docs/getting-started/flashing-firmware/esp32/flashing-external-serial-adapter.mdx @@ -2,16 +2,14 @@ id: flashing-external-serial-adapter title: Flashing Firmware with an External Serial Adapter (ESP32) sidebar_label: Serial Adapters -pagination_prev: getting-started/flashing-firmware/flashing-firmware -pagination_next: getting-started/flashing-firmware/meshtastic-flasher -sidebar_position: 3 +sidebar_position: 4 --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; :::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/getting-started/flashing-firmware/meshtastic-flasher) or [manually flashing](/docs/getting-started/flashing-firmware/esp32/flashing-esp32) +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/flashing-esp32) ::: :::caution @@ -42,28 +40,20 @@ There are multiple ways to connect the pins of the adapter to the target device: ::: Disconnect your USB to Serial Adapter from the computer before starting this process. -1) Connect the RX pin of the adapter to the TX pin of the device - -2) Connect the TX pin of the adapter to the RX pin of the device - -3) Connect a GND pin of the adapter to the GND pin of the device - -4) Connect either the 5V pin of the adapter to the 5V pin of the device (illustrated) or the 3.3V pin of the adapter to the 3.3V pin of device. - -5) Bridge GPIO 0 to GND on the device with a jumper. (This places the device into flash mode when the device is powered up) - -Example wiring featuring a T-Beam -![image](https://user-images.githubusercontent.com/9000580/168446438-d14f34a0-b92d-4716-87fd-e0c2927a35fd.png) - -6) Connect the device to a USB port on the computer - -7) Remove the jumper bridging GPIO 0 to GND - -![enter-flash-mode](https://user-images.githubusercontent.com/9000580/168446974-c31d3e9c-3397-4cb1-90a4-91ef2e4d5fac.gif) +1. Connect the RX pin of the adapter to the TX pin of the device +2. Connect the TX pin of the adapter to the RX pin of the device +3. Connect a GND pin of the adapter to the GND pin of the device +4. Connect either the 5V pin of the adapter to the 5V pin of the device (illustrated) or the 3.3V pin of the adapter to the 3.3V pin of device. +5. Bridge GPIO 0 to GND on the device with a jumper. (This places the device into flash mode when the device is powered up) + Example wiring featuring a T-Beam + ![image](https://user-images.githubusercontent.com/9000580/168446438-d14f34a0-b92d-4716-87fd-e0c2927a35fd.png) +6. Connect the device to a USB port on the computer +7. Remove the jumper bridging GPIO 0 to GND + ![enter-flash-mode](https://user-images.githubusercontent.com/9000580/168446974-c31d3e9c-3397-4cb1-90a4-91ef2e4d5fac.gif) ### Flashing -After following the steps above, your device should be in flash mode. You can flash your device using the [Meshtastic flasher](https://meshtastic.org/docs/getting-started/flashing-firmware/meshtastic-flasher) or [manual method](https://meshtastic.org/docs/getting-started/flashing-firmware/flashing-esp32) +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](https://meshtastic.org/docs/getting-started/flashing-firmware/flashing-esp32) Example using the Meshtastic Flasher ![image](https://user-images.githubusercontent.com/9000580/168447086-313e0649-1bfe-4ccb-b891-0f56059d8063.png) diff --git a/docs/getting-started/flashing-firmware/esp32/index.mdx b/docs/getting-started/flashing-firmware/esp32/index.mdx index 26822fce..5b79ba23 100644 --- a/docs/getting-started/flashing-firmware/esp32/index.mdx +++ b/docs/getting-started/flashing-firmware/esp32/index.mdx @@ -8,4 +8,6 @@ sidebar_position: 2 import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; -For ESP32 based device users (TBEAM, TLORA, Heltec etc.) 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. +## Recommended Flashing Method for ESP32 Devices + +For ESP32 based device users (TBEAM, TLORA, Heltec etc.) we recommend using the [web based installer](https://flasher.meshtastic.org) or the [Meshtastic Flasher application](/docs/software/python/flasher). The flasher application does a lot under the hood to prevent you from needing to use the terminal. It also allows you to configure your device. \ No newline at end of file diff --git a/docs/getting-started/flashing-firmware/esp32/python-flasher.mdx b/docs/getting-started/flashing-firmware/esp32/python-flasher.mdx new file mode 100644 index 00000000..fd42b885 --- /dev/null +++ b/docs/getting-started/flashing-firmware/esp32/python-flasher.mdx @@ -0,0 +1,10 @@ +--- +id: meshtastic-flasher-esp32 +title: Using Python Meshtastic Flasher +sidebar_label: Python Flasher +sidebar_position: 2 +--- + +import MFlasher from '../../../software/python/meshtastic-flasher.mdx' + + \ No newline at end of file diff --git a/docs/getting-started/flashing-firmware/esp32/web-flasher.mdx b/docs/getting-started/flashing-firmware/esp32/web-flasher.mdx new file mode 100644 index 00000000..0bf4531b --- /dev/null +++ b/docs/getting-started/flashing-firmware/esp32/web-flasher.mdx @@ -0,0 +1,9 @@ +--- +id: web-flasher +title: Using Meshtastic Web Flasher +sidebar_label: Web Flasher +sidebar_position: 1 +--- + + +[Web-based Installer](https://flasher.meshtastic.org) \ No newline at end of file diff --git a/docs/getting-started/flashing-firmware/index.mdx b/docs/getting-started/flashing-firmware/index.mdx index 396dfb23..53e87e63 100644 --- a/docs/getting-started/flashing-firmware/index.mdx +++ b/docs/getting-started/flashing-firmware/index.mdx @@ -16,7 +16,7 @@ Make sure not to power the radio on without first attaching the antenna! You cou If you have RAK NRF based devices or a LilyGO T-Echo, [the drag and drop firmware installation process](/docs/getting-started/flashing-firmware/nrf52/flashing-nrf52) is the easiest solution. -For ESP32 based device users (TBEAM, TLORA, Heltec etc.) we recommend using the [web based installer](https://flasher.meshtastic.org) or the [Meshtastic Flasher application](/docs/getting-started/flashing-firmware/meshtastic-flasher). The flasher application does a lot under the hood to prevent you from needing to use the terminal. It also allows you to configure your device. +For ESP32 based device users (TBEAM, TLORA, Heltec etc.) we recommend using the [web based installer](https://flasher.meshtastic.org) or the [Meshtastic Flasher application](/docs/software/python/flasher). The flasher application does a lot under the hood to prevent you from needing to use the terminal. It also allows you to configure your device. ## Manual Firmware Installation diff --git a/docs/getting-started/flashing-firmware/nrf52/flashing-nrf52.mdx b/docs/getting-started/flashing-firmware/nrf52/flashing-nrf52.mdx index 4365299f..1bf315fb 100644 --- a/docs/getting-started/flashing-firmware/nrf52/flashing-nrf52.mdx +++ b/docs/getting-started/flashing-firmware/nrf52/flashing-nrf52.mdx @@ -14,10 +14,14 @@ import TabItem from '@theme/TabItem'; Before flashing confirm that you have [RAK4631](https://docs.rakwireless.com/Product-Categories/WisBlock/RAK4631/) and not a [RAK4631-R](https://docs.rakwireless.com/Product-Categories/WisBlock/RAK4631-R/) If this is not the case, fear not. The hardware is identical but requires changing the bootloader. Instructions on how to do this are located [here](/docs/getting-started/flashing-firmware/nrf52/#convert-rak4631-r-to-rak4631). ::: -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) +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. -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. +Download and unzip the latest frimware from [Meshtastic Downloads](https://meshtastic.org/downloads). -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` +1. Connect your device to your computer with a data USB cable. +2. Double click the reset button on your device (this will put it into bootloader mode) +3. Notice a new drive will be mounted on your computer (Windows, Mac, or Linux) +4. Open this drive and you should see three files: `CURRENT.UF2`, `INDEX.HTM`, and `INFO_UF2.TXT` +5. Drop the appropriate appropriate `firmware-DEVICE_NAME-vx.x.x-xxxxxxx.uf2` file from the release you want to install onto this drive -Drop the appropriate appropriate `firmware-DEVICE_NAME-vx.x.x-xxxxxxx.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. +Once the file has finished copying onto the drive, the device will reboot and install the Meshtastic firmware. \ No newline at end of file diff --git a/docs/getting-started/flashing-firmware/nrf52/index.mdx b/docs/getting-started/flashing-firmware/nrf52/index.mdx index 3816e057..3dc0d6b2 100644 --- a/docs/getting-started/flashing-firmware/nrf52/index.mdx +++ b/docs/getting-started/flashing-firmware/nrf52/index.mdx @@ -8,6 +8,7 @@ sidebar_position: 2 import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; +## Recommended Flashing Method for NRF52 Devices If you have RAK NRF based devices or a LilyGO T-Echo, [the drag and drop firmware installation process](/docs/getting-started/flashing-firmware/nrf52/flashing-nrf52) is the easiest solution. diff --git a/docs/getting-started/flashing-firmware/nrf52/python-flasher.mdx b/docs/getting-started/flashing-firmware/nrf52/python-flasher.mdx new file mode 100644 index 00000000..02776928 --- /dev/null +++ b/docs/getting-started/flashing-firmware/nrf52/python-flasher.mdx @@ -0,0 +1,10 @@ +--- +id: meshtastic-flasher-nrf52 +title: Using Python Meshtastic Flasher +sidebar_label: Python Flasher +sidebar_position: 1 +--- + +import MFlasher from '../../../software/python/meshtastic-flasher.mdx' + + \ No newline at end of file diff --git a/docs/getting-started/serial-drivers/serial-drivers-esp32.mdx b/docs/getting-started/serial-drivers/serial-drivers-esp32.mdx index c5789890..cdd342cf 100644 --- a/docs/getting-started/serial-drivers/serial-drivers-esp32.mdx +++ b/docs/getting-started/serial-drivers/serial-drivers-esp32.mdx @@ -5,6 +5,9 @@ sidebar_label: ESP32 Drivers sidebar_position: 1 --- +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + ## Install USB to Serial Drivers ### ESP32 Drivers @@ -21,29 +24,31 @@ values={[ {label: 'macOS', value: 'macos'}, {label: 'Windows', value: 'windows'}, ]}> + -[CP210X USB to UART bridge - Download](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers) +- [CP210X USB to UART bridge - Download](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers) +- [CH9102 Driver - Linux Download](http://www.wch-ic.com/downloads/CH341SER_LINUX_ZIP.html) -[CH9102 Driver - Linux Download](http://www.wch-ic.com/downloads/CH341SER_LINUX_ZIP.html) + - - -[CP210X USB to UART bridge - Download](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers) + -[CH9102 Driver - MacOS Download](https://github.com/WCHSoftGroup/ch34xser_macos) +- [CP210X USB to UART bridge - Download](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers) +- [CH9102 Driver - MacOS Download](https://github.com/WCHSoftGroup/ch34xser_macos) - - + -[CP210X USB to UART bridge - Download](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers) -[CH9102 Driver - Windows Download](http://www.wch.cn/downloads/CH343SER_ZIP.html) + -[CH9102 Driver - Windows Download (Direct Download for Windows 7)](https://github.com/Xinyuan-LilyGO/CH9102_Driver) +- [CP210X USB to UART bridge - Download](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers) +- [CH9102 Driver - Windows Download](http://www.wch.cn/downloads/CH343SER_ZIP.html) +- [CH9102 Driver - Windows Download (Direct Download for Windows 7)](https://github.com/Xinyuan-LilyGO/CH9102_Driver) + + - :::important diff --git a/docs/getting-started/serial-drivers/serial-drivers-nrf52.mdx b/docs/getting-started/serial-drivers/serial-drivers-nrf52.mdx index 1e81d07c..7b054b8b 100644 --- a/docs/getting-started/serial-drivers/serial-drivers-nrf52.mdx +++ b/docs/getting-started/serial-drivers/serial-drivers-nrf52.mdx @@ -5,6 +5,9 @@ sidebar_label: NRF52 Drivers sidebar_position: 2 --- +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + ## Install USB to Serial Drivers ### NRF52 Drivers @@ -17,14 +20,16 @@ values={[ {label: 'macOS', value: 'macos'}, {label: 'Windows', value: 'windows'}, ]}> + -[CH9102 Driver - Linux Download](http://www.wch-ic.com/downloads/CH341SER_LINUX_ZIP.html) +- [CH9102 Driver - Linux Download](http://www.wch-ic.com/downloads/CH341SER_LINUX_ZIP.html) - - + -[CH9102 Driver - MacOS Download](https://github.com/WCHSoftGroup/ch34xser_macos) + + +- [CH9102 Driver - MacOS Download](https://github.com/WCHSoftGroup/ch34xser_macos) :::caution With the latest versions of MacOS, the USB Serial driver is built-in. Do _NOT_ download the USB device drivers unless required. If you downloaded/installed any already, please remove them: @@ -51,12 +56,14 @@ With the latest versions of MacOS, the USB Serial driver is built-in. Do _NOT_ d ::: - - + -[CH9102 Driver - Windows Download](http://www.wch-ic.com/downloads/CH341SER_EXE.html) + + +- [CH9102 Driver - Windows Download](http://www.wch-ic.com/downloads/CH341SER_EXE.html) + + - :::important diff --git a/docs/settings/config/user.mdx b/docs/settings/config/user.mdx index b4f21613..4dd9757a 100644 --- a/docs/settings/config/user.mdx +++ b/docs/settings/config/user.mdx @@ -67,7 +67,7 @@ values={[ All User config options are available in the python CLI. Example commands are below: -Please see instructions for [Enabling HAM License](/docs/software/python/python-uses#ham-radio-support) +Please see instructions for [Enabling HAM License](/docs/software/python/cli/usage#ham-radio-support) ```shell title="Set the LongName Value" meshtastic --set-owner 'your node name' diff --git a/docs/software/device/remote-admin.mdx b/docs/software/device/remote-admin.mdx index 896fc999..afd33a58 100644 --- a/docs/software/device/remote-admin.mdx +++ b/docs/software/device/remote-admin.mdx @@ -136,7 +136,7 @@ ls_secs: 301 Completed getting preferences ``` -For further reading, I recommend starting out with [Meshtastic-python](/docs/software/python/python-cli) if you haven't already gone through this (hopefully you have since you are reading this). But for a full reference to the settings you can change, please see: +For further reading, I recommend starting out with [Meshtastic-python](/docs/software/python/cli/) if you haven't already gone through this (hopefully you have since you are reading this). But for a full reference to the settings you can change, please see: [Settings Overview](/docs/settings) and [Complete list of user settings in Protobufs](/docs/developers/protobufs/api#radioconfiguserpreferences) diff --git a/docs/software/device/remote-hardware-service.mdx b/docs/software/device/remote-hardware-service.mdx index bb6f796a..5578696d 100644 --- a/docs/software/device/remote-hardware-service.mdx +++ b/docs/software/device/remote-hardware-service.mdx @@ -12,7 +12,7 @@ GPIO access is fundamentally dangerous because invalid options can physically da This feature uses a preinstalled module in the device code and associated command line flags/classes in the python code. You'll need to be running at least version 1.2.23 (or later) of the python and device code to use this feature. ::: -You can get the latest python tool/library with `pip3 install --upgrade meshtastic` on Windows/Linux/OS-X. See the [python section](/docs/software/python/python-installation) for more details. +You can get the latest python tool/library with `pip3 install --upgrade meshtastic` on Windows/Linux/OS-X. See the [python section](/docs/software/python/cli/installation) for more details. ## Supported operations in the initial release @@ -133,7 +133,7 @@ By default, the pin may be "off" or "on". (It will most likely "off".) See the s ## Doing GPIO operations -You can programmatically do operations from your own python code by using the Meshtastic `RemoteHardwareClient` class. See the [python API](/docs/software/python/python-installation) documentation for more details. +You can programmatically do operations from your own python code by using the Meshtastic `RemoteHardwareClient` class. See the [python API](/docs/software/python/cli/installation) documentation for more details. ## Using GPIOs from the python CLI diff --git a/docs/software/go/_category_.yml b/docs/software/go/_category_.yml new file mode 100644 index 00000000..bee7e630 --- /dev/null +++ b/docs/software/go/_category_.yml @@ -0,0 +1,7 @@ +label: Golang +collapsible: true # make the category collapsible +position: 7 +link: + type: generated-index + title: Golang + slug: /software/go \ No newline at end of file diff --git a/docs/software/go/cli.mdx b/docs/software/go/cli.mdx new file mode 100644 index 00000000..f5662352 --- /dev/null +++ b/docs/software/go/cli.mdx @@ -0,0 +1,9 @@ +--- +id: golang-cli +title: Meshtastic Go CLI +sidebar_label: CLI +--- + +:::info +This project is currently in progress +::: \ No newline at end of file diff --git a/docs/software/go/desktop.mdx b/docs/software/go/desktop.mdx new file mode 100644 index 00000000..e1c24992 --- /dev/null +++ b/docs/software/go/desktop.mdx @@ -0,0 +1,9 @@ +--- +id: golang-desktop +title: Meshtastic Desktop +sidebar_label: Desktop +--- + +:::info +This project is currently in progress +::: \ No newline at end of file diff --git a/docs/software/go/library.mdx b/docs/software/go/library.mdx new file mode 100644 index 00000000..4a58d1f0 --- /dev/null +++ b/docs/software/go/library.mdx @@ -0,0 +1,9 @@ +--- +id: golang-library +title: Meshtastic Go Library +sidebar_label: Go Library +--- + +:::info +This project is currently in progress +:::s \ No newline at end of file diff --git a/docs/software/js/_category_.yml b/docs/software/js/_category_.yml index 2dfef08e..b9c3cd23 100644 --- a/docs/software/js/_category_.yml +++ b/docs/software/js/_category_.yml @@ -1,5 +1,4 @@ - -position: 7 # float position is supported +position: 6 # float position is supported label: 'Javascript' collapsible: true # make the category collapsible link: diff --git a/docs/software/python/_category_.yml b/docs/software/python/_category_.yml index b1debdd7..4dbc557b 100644 --- a/docs/software/python/_category_.yml +++ b/docs/software/python/_category_.yml @@ -1,7 +1,6 @@ - -position: 4 # float position is supported -label: Python CLI +label: Python collapsible: true # make the category collapsible +position: 5 # float position is supported link: type: generated-index title: Python diff --git a/docs/software/python/cli.mdx b/docs/software/python/cli/cli.mdx similarity index 99% rename from docs/software/python/cli.mdx rename to docs/software/python/cli/cli.mdx index bbe18ef1..0ed94282 100644 --- a/docs/software/python/cli.mdx +++ b/docs/software/python/cli/cli.mdx @@ -1,10 +1,10 @@ --- id: python-cli title: Meshtastic Command Line Interface -sidebar_label: Meshtastic CLI +sidebar_label: Python CLI --- -# Meshtastic CLI Guide +# Meshtastic Python CLI Guide The python pip package installs a "meshtastic" command line executable, which displays packets sent over the network as JSON and lets you see serial debugging information from the meshtastic devices. This command is not run inside of python, you run it from your operating system shell prompt directly. If when you type "meshtastic" it doesn't find the command and you are using Windows: Check that the python "scripts" directory is in your path. diff --git a/docs/software/python/development.mdx b/docs/software/python/cli/development.mdx similarity index 97% rename from docs/software/python/development.mdx rename to docs/software/python/cli/development.mdx index bb1fcfb0..b88ac473 100644 --- a/docs/software/python/development.mdx +++ b/docs/software/python/cli/development.mdx @@ -1,7 +1,7 @@ --- -id: python-development +id: development title: Meshtastic Python Development -sidebar_label: Python Development +sidebar_label: Development --- ## A note to developers of this lib diff --git a/docs/software/python/installation.mdx b/docs/software/python/cli/installation.mdx similarity index 99% rename from docs/software/python/installation.mdx rename to docs/software/python/cli/installation.mdx index 9101ef54..bd9fe585 100644 --- a/docs/software/python/installation.mdx +++ b/docs/software/python/cli/installation.mdx @@ -1,7 +1,8 @@ --- -id: python-installation +id: installation title: Meshtastic-python installation sidebar_label: Installation +sidebar_position: 1 --- import Tabs from '@theme/Tabs'; diff --git a/docs/software/python/uses.mdx b/docs/software/python/cli/uses.mdx similarity index 98% rename from docs/software/python/uses.mdx rename to docs/software/python/cli/uses.mdx index 0fc0dd0a..8651f35a 100644 --- a/docs/software/python/uses.mdx +++ b/docs/software/python/cli/uses.mdx @@ -1,7 +1,8 @@ --- -id: python-uses -title: Uses of the meshtastic command line interface tool -sidebar_label: Use Cases +id: usage +title: Using the Meshtastic CLI +sidebar_label: Usage +sidebar_position: 2 --- This section covers using the "meshtastic" command line executable, which displays packets sent over the network as JSON and lets you see serial debugging information from the Meshtastic devices. diff --git a/docs/software/python/using_library.mdx b/docs/software/python/library.mdx similarity index 96% rename from docs/software/python/using_library.mdx rename to docs/software/python/library.mdx index 5d5711cd..f44a51ce 100644 --- a/docs/software/python/using_library.mdx +++ b/docs/software/python/library.mdx @@ -1,7 +1,7 @@ --- -id: python-using-library -title: using the Meshtastic-python library -sidebar_label: Using the Python Library +id: python-library +title: Using the Meshtastic Python Library +sidebar_label: Python Library --- An example using Python 3 code to send a message to the mesh, get and set a radio configuration preference: diff --git a/docs/getting-started/flashing-firmware/meshtastic-flasher.mdx b/docs/software/python/meshtastic-flasher.mdx similarity index 99% rename from docs/getting-started/flashing-firmware/meshtastic-flasher.mdx rename to docs/software/python/meshtastic-flasher.mdx index de1c7171..aa524410 100644 --- a/docs/getting-started/flashing-firmware/meshtastic-flasher.mdx +++ b/docs/software/python/meshtastic-flasher.mdx @@ -1,5 +1,5 @@ --- -id: meshtastic-flasher +id: flasher title: Using Meshtastic Flasher sidebar_label: Meshtastic Flasher sidebar_position: 1 diff --git a/docs/software/python/stream.mdx b/docs/software/python/stream.mdx deleted file mode 100644 index 696cb190..00000000 --- a/docs/software/python/stream.mdx +++ /dev/null @@ -1,23 +0,0 @@ ---- -id: python-stream -title: Meshtastic-python stream protocol -sidebar_label: Stream Protocol ---- - -# Stream protocol - -Documentation on how out protobufs get encoded when placed onto any stream transport (i.e. TCP or serial, but not UDP or BLE) - -## Wire encoding - -When sending protobuf packets over serial or TCP each packet is preceded by uint32 sent in network byte order (big endian). -The upper 16 bits must be 0x94C3. The lower 16 bits are packet length (this encoding gives room to eventually allow quite large packets). - -Implementations validate length against the maximum possible size of a BLE packet (our lowest common denominator) of 512 bytes. If the -length provided is larger than that we assume the packet is corrupted and begin again looking for 0x4403 framing. - -The packets flowing towards the device are ToRadio protobufs, the packets flowing from the device are FromRadio protobufs. -The 0x94C3 marker can be used as framing to (eventually) resync if packets are corrupted over the wire. - -Note: the 0x94C3 framing was chosen to prevent confusion with the 7 bit ascii character set. It also doesn't collide with any valid utf8 encoding. This makes it a bit easier to start a device outputting regular debug output on its serial port and then only after it has received a valid packet from the PC, turn off unencoded debug printing and switch to this -packet encoding. diff --git a/docs/software/web/index.mdx b/docs/software/web/index.mdx index 7b09575f..f0c4d87e 100644 --- a/docs/software/web/index.mdx +++ b/docs/software/web/index.mdx @@ -2,6 +2,7 @@ id: web-app-software title: Web interface overview sidebar_label: Web Interface +sidebar_position: 8 --- @@ -46,7 +47,7 @@ The method with the least platform support, uses the [Web Serial API](https://we ## Updating -The web interface is now included in firmware releases. 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. +The web interface is now included in firmware releases. 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/software/python/flasher) to update your device to the current stable build which includes the web interface. :::warning @@ -65,7 +66,7 @@ The first time your device restarts after enabling WiFi, it will take an additio ### Problem: File not found: /static/index.html :::note -This issue is likely found on old versions of the web interface. Device firmware now includes the web interface and the file system has been changed. Flashing the device with [Meshtastic-flasher](/docs/getting-started/flashing-firmware/meshtastic-flasher) will update you to the current web interface. Access to the files in the filesystem is actively being developed, but is not currently available. +This issue is likely found on old versions of the web interface. Device firmware now includes the web interface and the file system has been changed. Flashing the device with [Meshtastic-flasher](/docs/software/python/flasher) will update you to the current web interface. Access to the files in the filesystem is actively being developed, but is not currently available. ::: Cause: This most likely means that the file system for the web server has not been loaded. You probably used esphome-flasher or some other GUI tool to flash the firmware. @@ -81,7 +82,7 @@ Option 3) Flash the device with the SPIFFS instructions in platform.io. ### Insufficient space to upload new files :::note -This issue is likely found on old versions of the web interface. Device firmware now includes the web interface and the file system has been changed. Flashing the device with [Meshtastic-flasher](/docs/getting-started/flashing-firmware/meshtastic-flasher) will update you to the current web interface. Access to the files in the filesystem is actively being developed, but is not currently available. +This issue is likely found on old versions of the web interface. Device firmware now includes the web interface and the file system has been changed. Flashing the device with [Meshtastic-flasher](/docs/software/python/flasher) will update you to the current web interface. Access to the files in the filesystem is actively being developed, but is not currently available. ::: Cause: Typically a small partition has been set aside from previous firmware installed on the module. Instructions for how to fix this can be found on the [ESP32-Partitions](/docs/software/web/web-partitions-software) page. diff --git a/docs/software/web/partitions.mdx b/docs/software/web/partitions.mdx index 098505fe..02b981c9 100644 --- a/docs/software/web/partitions.mdx +++ b/docs/software/web/partitions.mdx @@ -5,7 +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/getting-started/flashing-firmware/meshtastic-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. Flashing the device with [Meshtastic-flasher](/docs/software/python/flasher) should fix these partition issues and update you to the current web interface. FIXME - Investigate and rewrite document to reflect the current ESP32 Partition mitigation. ::: diff --git a/src/pages/downloads/index.tsx b/src/pages/downloads/index.tsx index 717b411c..6f5570a4 100644 --- a/src/pages/downloads/index.tsx +++ b/src/pages/downloads/index.tsx @@ -46,7 +46,7 @@ const Firmware = (): JSX.Element => { 'To download using ', pip, ' follow ', - + these instructions , '.', @@ -167,7 +167,7 @@ const Firmware = (): JSX.Element => { , or the{' '}