From 4caaa3a0a85326c040e966f63c35a95cd36634f2 Mon Sep 17 00:00:00 2001 From: tiyn Date: Tue, 10 Dec 2024 23:27:03 +0100 Subject: [PATCH] meshtastic: added meshtastic and a basic setup guide --- wiki/meshtastic.md | 63 +++++++++++++++++++++++++++++++++++++++++ wiki/microcontroller.md | 2 ++ 2 files changed, 65 insertions(+) create mode 100644 wiki/meshtastic.md diff --git a/wiki/meshtastic.md b/wiki/meshtastic.md new file mode 100644 index 0000000..1cece6f --- /dev/null +++ b/wiki/meshtastic.md @@ -0,0 +1,63 @@ +# Meshtastic + +[Meshtastic](https://meshtastic.org/) is an off-grid protocol using LoRa. +To use Meshtastic a node and a phone using the corresponding Meshtastic app to connect to it is +needed. + +## Setting Up a Meshtastic Node + +To setup a Meshtastic Node a device that is capable of communicating via LoRa is needed. +Often used devices are [microcontrollers](/wiki/microcontroller.md) based on the +[ESP32-chip](/wiki/microcontroller.md#esp32) like the LILYGO TTGO T-BEAM or the Heltec V3, devices +based on the nRF52-chip like the RAK4631 and the LILYGO TTGO T-Echo or devices based on the +RP2040-chip like the Raspberry Pi Pico or the RAK11310 are needed. + +After the device acquisition the meshtastic firmware needs to be flashed on the device. +This can be done using the [official Meshtastic Web Flasher](https://flasher.meshtastic.org/). +After selection of the device and the firmware the flashing process can be started. +The flasher works especially well on [Chrome-based Browsers](/wiki/web_browser.md). + +The firmware can also be flashed using the command line. +To first check if the device is connected correctly the +[Python-package](/wiki/programming-languages/python.md) `esptool` can be used which can be +installed using [pip](/wiki/programming-languages/python.md#modules). +Some [package managers](/wiki/linux/package_manager.md) of +[Linux-based operating systems](/wiki/linux.md) also feature a standalone `esptool` package. +The following command will output the chip of the device connected. + +```sh +esptool chip_id +``` + +Please note that on Linux sometimes the command varies a bit. +`esptool.py chip_id` is also common depending on the used distribution. +Because the command needs hardware access it also is possible that `sudo`-rights are needed. + +After confirming that the device is recognized by esptool the flashing can be achieved by +downloading the firmware that corresponds with the selected device and running the +`device-install.sh` (for Linux and Mac) or the `device-install.bat` script (for +[Windows](/wiki/windows.md)). + +The firmware can be downloaded from the [official website](https://meshtastic.org/downloads/) or +[the GitHub page of the project](https://github.com/meshtastic/firmware/releases). +Make sure to select the firmware (starting with `firmware-`) `zip`-archive that corresponds with +your target device. +Afterwards unzip it and run one of the following commands depending on your operating system. +Make sure to adjust `` and `` accordingly. + +```sh +./device-install.sh -f firmware--.bin +device-install.bat -f firmware--.bin +``` + +To update a device to a newer firmware version one of the following commands can be used. + +```sh +./device-update.sh -f firmware---update.bin +./device-update.bat -f firmware---update.bin +``` + +After this the flashing of the firmware is done. +Connect the Meshtastic app of your mobile phone to the node via Bluetooth and continue by +configuring the node. +Then the node and you are ready to communicate with other nodes and users. diff --git a/wiki/microcontroller.md b/wiki/microcontroller.md index d9ccad2..f630c1d 100644 --- a/wiki/microcontroller.md +++ b/wiki/microcontroller.md @@ -7,6 +7,8 @@ It contains a processor, memory and programmable in- and output. The ESP32 is a cheap and low-energy microcontroller made by Espressif Systems. It features Wi-Fi and [Bluetooth](/wiki/bluetooth.md). +Some variants of this chip also include LoRa-capability and can be used to communicate via +[Meshtastic](/wiki/meshtastic.md). ### Flash Firmware on the ESP32