The idea of Meshtastic:
Metastatic is an open source community mesh communications system. The idea is to provide communications without traditional infrastructure such as phone lines or mobile phone companies.
The Beginnings of my Meshtastic Journey:
My original intent was to purchase a small and very portable Cyberdeck sort of device. I already have a Valve SteamDeck, which can function as a very fast, capable and portable Linux PC. I was looking for something much smaller, and primarily for exploring my RF surroundings. I had certainly heard of the Flipper Zero, but wasn't particularly interested in a tamagotchi with little boards sticking out of the top (and still not having a keyboard).
To this end, I learned of the LillyGo T-LoRa Pager. Here was a device with at least somewhat of a keyboard, a potentially very useful scroll wheel (rotary encoder), a TFT widescreen display, and IO so that I can still have boards sticking out of the top for "various RF purposes".
However, it wasn't lost on me that the intended purposes of the LillyGo T-LoRa Pager, is (Duh) LoRa communications, and since multiple firmwares can be installed simultaneously, I planned to explore Meshtastic.
My first mistake was to place my order from LillyGo on the very first day of Lunar New Year. OK, my bad, no problem... I'll wait.
...But I couldn't wait... The Mesh was calling me. Overnight shipping from "a certain large retailer" and I was in possession of a HelTec V4 --- a postage stamp sized module with a OLED display, and "More Powwwaaaar!" (28 dbm or RF output power). I was sure that I would be dominating the Nationwide Mesh by the next evening.
It hasn't quite worked out that way. What will follow will be more that just a little bit of a rant about the pile of dung that I have been playing in for several weeks now. However -- Dung Beetle that I am however, I'm happy I've rolled Meshtastic home -- and in every pile of dung, if one looks hard enough, one may find a few bits of value.
My intent here is not to criticize an Open Source project. My intent is to provide helpful hints for users trying or considering Meshtastic, and to document things that need to be improved in both Meshtastic compatible Hardware, and in the Meshtastic code base. I've contributed code and fixes to other Open Source projects in the past, but at this point, jumping to something as large and complex as the entire Mestastic code base is probably not going to happen. This, with a little humour and sarcasm, is my contribution.
I do encourage those interested to try Meshtastic. Despite some frustrations, Meshtastic is a great idea -- for both community communications, or in the event of an actual emergency, or significant infrastructure failure. Meshtastic is Cool, Fun, an excellent was to get into modern communications electronics, network communication, HAM radio, etc.
I want to see Meshtastic thrive.
Installation:
Wanting to stay reasonably close to an Open-Source purist, my intent was to avoid the Google Chrome "web serial" interface. As we will see, I did end up installing Chrome later. However, I was successful at going the purely Ubuntu way of installing ESP32 firmware. This method doesn't seem to be described any place else, but if you are comfortable with the command line, it is straight forward, safe, and quick.
I already had the official Espressif esptool installed from the Ubuntu App Store.
NOTE: Excepting Physical or Electrical Damage, it is impossible (or at least difficult) to "Brick" an ESP32 device. You should always be able to return the device to DFU mode and replace corrupted firmware using the steps below. Experiment away.
To install Meshtastic on the HelTec V4, I did the following:
NOTE: USB "Drivers" are not required on Linux. You may have to grant permissions to use your PC's USB ports in serial mode. This is well covered elsewhere. I am assuming you have a normal USB "A" to "C" cable connected to an available port on your PC.
- Download firmware-esp32s3-2.7.15.567b8ea.zip (Current Released version as of this writing) from https://github.com/meshtastic/firmware/releases/
- Find the correct binary firmware from the zip file for the Heltec V4. In this case it was: firmware-heltec-v4-2.7.15.567b8ea.bin
- Starting with the unit unconnected (un-powered), Hold the Boot button (not Reset) while plugging in the USB cable. (NOTE: Especially the higher-powered Heltec V4 can be permanently degraded or destroyed from high SWR if operated without a proper load connected to the LoRa Antenna Terminal at all times.)
Do the Following:
Code: Select all
espressif-esptool.esptool erase-flash
...
espressif-esptool.esptool --chip ESP32S3 write-flash 0x0 'Downloads/firmware-esp32s3-2.7.15.567b8ea/firmware-heltec-v4-2.7.15.567b8ea.bin'
...
This took a total of about 45 seconds, and I was greeted with the Mestastic //\ logo upon hitting reset.
NOTE for LillyGo T-LoRa Pager: If you want to use your LillyGo T-LoRa Pager for Meshtastic only, the Firmware can be installed in the same manner. I suggest using a newer "Alpha" firmware since there are several new upgrades for functionality and battery life for the T-LoRa Pager. I am running 2.7.19 (alpha). If you want to install Launcher (Suggested), obtain the Launcher firmware from https://github.com/bmorcelli/Launcher as shown above, and then copy the appropriate Meshtastic Firmware to the SD card, and install Mesthastic from within Launcher.
As this thread continues, I will add sections for other categories of hints and work-arounds, as well as other issues, bugs, and suggestions.