Wind Sensor LoRa Mesh Network

I’m fairly new to all of this and was hoping to get some direction on if I’m approaching this properly. For a university project I’m working to develop a wind sensing network used in wildfire fighting applications. Originally we were going to use satellite modems but having a modem in each node is far too expensive. I came across meshtastic and figured it was a great solution where every sensor node can communicate through the mesh network to a gateway node that will have a satellite modem or some other type of network connection, not really important at the moment. My only problem is I’m having trouble understanding how to actually use Meshtastic. From my understanding its used to send messages across the network from one node to another. I’m assuming that any node can create its own messages instead of just being a repeater. On the Meshtastic website I found the configuration modules like telemetry but this all seems very limited.

I’ll start with the hardware. I’m going to be using the wisblock board with a RAK4631 core module. I have two different anemometers for wind sensing, one communicates via RS485 and another via bluetooth. For the RS485 anemometer I will be using the RS485 wisblock module. I will also have a GPS module to get one time information about the sensor node’s location.

Now for what I want to do. First I will take a gps measurement so we know the node location then I want to take wind data samples over a period of time and calculate the average speed and direction and transmit that through the network to the gateway node. Ideally the gps coordinates are only transmitted once and then replaced with a node ID for following transmissions. I have my own code for collecting and processing the sensor data and I just want to use Meshtastic as a framework to put my sensor code on top of. I don’t want to have to learn how to and build my own mesh network from scratch.

Now my questions, and I’m sorry if these have been answered somewhere I’m new to all this and couldn’t find answers to what I was looking for. Is Meshtastic viable for what I am trying to achieve or is there another library out there somewhere that would be more appropriate? If Meshtastic is good for this here would I find documentation on how to create device firmware that includes both Meshtastic and my sensor code? I’ve done arduino projects in the past so I understand collecting and processing sensor data but the network part of things is all completely foreign to me. Am I just completely misunderstanding everything and need to restart at square 1? Any sort of help or direction would be greatly appreciated!

1 Like

Sounds like a nice use case for Meshtastic. Indeed each node can send out information on its own and it can be delivered via the mesh to a kind of “gateway node” that connects via MQTT to the internet.

There are two supported GPS modules for the RAK4631 and there are several settings for when to send out the position information.

It depends a bit on how complicated your sensor processing is, but if the readings are fast and the averaging doesn’t need to happen too often, you can create your own software module in the firmware using the Module API.
If it gets too complicated, you can also use a separate MCU for your sensor readings and talk via the Serial Module to the Meshtastic node to send out the data.

I’m not sure if a Bluetooth-based sensor is feasible in the current Meshtastic firmware. You’d need to replace the current code that connects to a phone. Probably better to handle that with a secondary MCU.

1 Like

Just what I need for field monitoring system for T,H,P and soil moisture and perhaps motion.
I will be monitoring this thread for ideas. Thank you, Doug

The Module API seems to be exactly what I was looking for, thank you. Time to look into how this all works to create my own module. My first prototype won’t use meshtastic, just going to make sure I can do all the sampling and save it to an SD card. In a few weeks I’ll start building the sensor module and I’ll give some updates as I go.

1 Like

Now I have looked at API and serial approaches. API would be more complex and serial should work for me. Thanks for the help GUVWAF.