Meshtastic - kn6plv/Raven GitHub Wiki
You should only enable the Meshtastic bridge if you have an appropriate Meshtastic device connected to the LAN interface on your Raven node.
Meshtastic Bridge
Hardware
To bridge Meshtastic to AREDN we require a Meshtastic device with an ethernet connector and one able to support Meshtastic over LAN (see the original announcement here https://meshtastic.org/blog/meshtastic-2-6-preview/#meshtastic-over-lan-udp--now-on-esp32). While many devices should work, we have only tested and verified using meshtasticd, which runs Meshtastic on a Raspberry Pi using a LoRa Hat such as the MeshAdv Pi Hat v1.1 from FrequencyLabs.
The steps to build and configure this hardware can be found here https://github.com/chrismyers2000/MeshAdv-Pi-Hat
Configuration
Once built and configured as a Meshtastic device, we must configure it to work with Raven:
- Connect the Pi to your AREDN node running Raven. It should be a LAN device.
- On the Raspberry Pi, install the Python Meshtastic CLI tools (see https://meshtastic.org/docs/software/python/cli/) if you didn't already.
- Run the command
meshtastic --set network.enabled_protocols 1to enable UDP over LAN. - Set a static IP address on the Raspberry Pi. Without this setting, on reboot, meshtasticd will start running before the node has an IP from your DHCP server and will never notice when it eventually gets one. Consequently you will never receive any UDP traffic from the device.
- Reboot
Raven Configuration
To enable the Meshtastic bridge, edit raven.conf.override (see Advanced Configuration for details) and add the following as a top-level JSON key:
"meshtastic": {},
Essentially paste that line immediately after the first opening { in the file. Do not delete anything already in this file.
The final override file might look something like this, with the new "meshtastic" entry near the top; but your file might be different. What matters is that the meshtastic entry has been added in the correct place.
{
"meshtastic": {},
"channels": [
{
"namekey": "AREDN og==",
"telemetry": true
},
{
"namekey": "LongFast AQ==",
"telemetry": true,
"meshtastic": true
},
{
"namekey": "MeshCore izOH6cXN6mrJ5e26oRXNcg=="
}
]
}
Restart Raven by typing /etc/init.d/raven restart.
Raven will now be configured to received Meshtastic traffic from the Meshtastic device connected to the node's LAN network, and will forward traffic to the same Meshtastic device when necessary.
Note: Meshtastic uses a multicast address to send and receive messages, so you don't need to specify an address in your configuration.
Meshtastic Channel Setting
Any Raven instance on your AREDN network can now receive Meshtastic messages. However your Raven Meshtastic channel ID must also match the Meshtastic modem preset of this device for this to happen (see https://meshtastic.org/docs/configuration/radio/lora/#modem-preset). If you don't see any messages, this is probably why.