Description
In this series, we explore LoRa mesh networking with Meshtastic and MeshCore, two open-source projects that let you send encrypted text messages and sensor data over several kilometers without cell service, Wi-Fi, or a satellite subscription. Over six episodes, we'll flash and configure nodes for both protocols, build a solar-powered repeater to extend the network's range, connect a sensor to a Meshtastic node to transmit telemetry, and finally bridge the mesh to a Home Assistant server over MQTT so you can log and visualize that data. If you've been hearing buzz about these protocols but don't know where to start, this series is for you.
To follow along with the series, you will need the following hardware:
SenseCAP Card Tracker T1000-E: https://www.digikey.com/en/products/detail/seeed-technology-co-ltd/114993369/24814479
XIAO ESP32S3 & Wio-SX1262 Kit: https://www.digikey.com/en/products/detail/seeed-technology-co-ltd/102010611/25835813
XIAO nRF52840 & Wio-SX1262 Kit: https://www.digikey.com/en/products/detail/seeed-technology-co-ltd/102010710/26553900
SenseCAP Solar Node P1-Pro: https://www.digikey.com/en/products/detail/seeed-technology-co-ltd/114993633/26834458
Raspberry Pi 4 or 5 (for Home Assistant in the final episode): https://www.digikey.com/en/products/detail/raspberry-pi/SC0195-9/12159401
Note that LoRa hardware is region-specific. Check the frequency band for your country before ordering. The United States and most of the Americas use 915 MHz, while Europe uses 433 MHz and 868 MHz. The SenseCAP P1 Pro's included antenna covers 868 to 915 MHz.
For this episode, you will also need:
Grove BME680 environmental sensor: https://www.digikey.com/en/products/detail/seeed-technology-co-ltd/101020513/9369933
You can read a full write-up of everything we cover in this video here: https://www.digikey.com/en/maker/tutorials/2026/intro-to-lora-mesh-part-5-meshtastic-and-mqtt-with-home-assistant
Meshtastic wasn't designed for IoT, but it turns out to be a cheap and effective way to cover the last mile (the final hop between a remote sensor and the rest of your network). In this episode, we turn a second Meshtastic node into a gateway that joins your Wi-Fi network, listens for telemetry on the mesh, and republishes it as MQTT. That data lands on a Mosquitto broker running on a Raspberry Pi alongside Home Assistant, where we filter for readings from one specific sensor node and graph them on a custom dashboard.
Before building it, we talk honestly about whether Meshtastic is the right tool for this application. It gives you excellent range on cheap hardware, works entirely off-grid, and encrypts by default. However, it's very low bandwidth with multi-second latency, the official firmware limits which sensors and intervals you can use, busy meshes drop packets, and there's no strong delivery acknowledgement. If your project genuinely needs guaranteed delivery, LoRaWAN or MQTT (over cellular/satellite) is the better answer, and it's worth knowing that before you build.
On the node side, there's one important gotcha you should know about: you need to configure this through the web client at client.meshtastic.org rather than the phone app, because the JSON option isn't currently exposed in the app. Without JSON enabled, Meshtastic publishes telemetry as protobuf packets that are painful to decode in Home Assistant. We set the device role to Client Mute, enable the Wi-Fi radio, point MQTT at the Pi's IP address, and turn on uplink for the primary channel (this last setting is what actually makes the node a gateway).
On the Home Assistant side, we flash Home Assistant to the Pi using the Raspberry Pi Imager, install the Mosquitto broker and File editor add-ons, and add the MQTT integration. We use the built-in MQTT listener to watch raw packets arrive so you can find your sensor node's ID, then write template sensors in configuration.yaml that filter for that one node and store each reading as a state. Finally we build a dashboard with history graphs for temperature, humidity, and pressure, plus a gauge for the air quality score. One subtle trap we cover: if your Home Assistant location is in the US, it defaults to Fahrenheit and will happily convert your Celsius readings a second time, which makes all your temperature readings very wrong.
That wraps up the Meshtastic portion of the series. In the final episode, we switch gears and get started with MeshCore.
What is MQTT? https://www.youtube.com/watch?v=LTAm1R_4YYE
Getting Started with the Mosquitto MQTT Broker: https://www.youtube.com/watch?v=-bKEWqcyEBY
0:00 Intro
0:59 Gateway for Meshtastic to WiFi/MQTT routing
2:21 Is Meshtastic good for IoT?
3:44 Recommended hardware
4:23 Installing Home Assistant
5:30 Configure XIAO ESP32 as Meshtastic to WiFi gateway
11:43 Install required Home Assistant plugins
17:08 Test MQTT in Home Assistant
19:04 Custom states in Home Assistant
22:29 Custom dashboard in Home Assistant
24:42 Conclusion
