--- name: meshtastic description: "Manage, flash, debug, and configure Meshtastic nodes, custom CA HTTPS firmware, and Web Client integration. USE FOR: Meshtastic radio CLI, Heltec V4, ESP32 NVS TLS certs, OTA/USB flashing, web client connections. DO NOT USE FOR: general networking without Meshtastic, unrelated Bluetooth/LoRa devices. **UTILITY SKILL**" --- # Meshtastic Manage Meshtastic radios (Heltec V4 / ESP32-S3), custom CA HTTPS certificates, latency tuning, and web client integration. ## Routing USE FOR: - Meshtastic CLI commands over TCP/Wi-Fi (`192.168.20.140`) or USB serial (`/dev/cu.usbmodem1101`). - Custom local CA TLS certificate provisioning into ESP32 NVS (`MeshtasticHTTPS`). - Latency optimizations in `WebServer.cpp` for fast TLS handshakes. - Troubleshooting Web Client connection tests and mixed-content browser restrictions. - Flashing and recovering firmware/partitions using `esptool`. DO NOT USE FOR: - Non-Meshtastic LoRa radios or generic network debugging. ## Common Operations ### CLI Over Wi-Fi & USB ```bash # Query node status over Wi-Fi meshtastic --host meshtastic.local --info # Query over USB serial meshtastic --port /dev/cu.usbmodem1101 --info # Inspect device metadata meshtastic --host 192.168.20.140 --device-metadata ``` ### Verify HTTPS & Certificate ```bash # Verify TLS without -k against trusted local CA curl -v https://meshtastic.local/api/v1/fromradio # Inspect cert chain and SAN on port 443 echo | openssl s_client -connect 192.168.20.140:443 -servername meshtastic.local 2>/dev/null | openssl x509 -text -noout ``` ### Flash Custom Firmware via USB ```bash # Write custom firmware image to app0 (0x10000) esptool --port /dev/cu.usbmodem1101 --baud 921600 write_flash 0x10000 firmware-custom/firmware-heltec-v4-2.7.26.54e0d8d.bin ``` ### Safety Backup NVS ```bash # Backup NVS partition (contains Wi-Fi, channels, and node config) esptool --port /dev/cu.usbmodem1101 read_flash 0x9000 0x5000 backups/nvs_backup.bin ``` ## Architecture & References - [tls-ca-provisioning.md](references/tls-ca-provisioning.md): NVS certificate injection, DER formatting, and root CA trust. - [flashing-and-hardware.md](references/flashing-and-hardware.md): Heltec V4 partition table, OTA port 3232 limits, and USB flashing. - [web-client-integration.md](references/web-client-integration.md): Browser mixed-content rules, client 2.5s timeout patch, and 50ms loop interval tuning.