Thanks for this great write down @benkay86!
in the last weeks I tried to set up a mesh as you discribe it in the tutorial with two M1800 with openwrt 24.10.05.
I can't see any action in the logs which give me any hint why the devices are not joining the mesh.
on the gateway node I see:
Mon Jan 5 17:43:25 2026 daemon.notice netifd: Network device 'phy0-ap0' link is up
Mon Jan 5 17:43:25 2026 daemon.notice hostapd: phy0-ap0: interface state UNINITIALIZED->ENABLED
Mon Jan 5 17:43:25 2026 daemon.notice hostapd: phy0-ap0: AP-ENABLED
Mon Jan 5 17:43:25 2026 daemon.notice netifd: Wireless device 'radio0' is now up
Mon Jan 5 17:43:26 2026 daemon.notice wpa_supplicant[1483]: Set new config for phy phy1
Mon Jan 5 17:43:26 2026 daemon.notice hostapd: Set new config for phy phy1:
Mon Jan 5 17:43:26 2026 daemon.notice wpa_supplicant[1483]: Set new config for phy phy1
Mon Jan 5 17:43:26 2026 daemon.notice netifd: Wireless device 'radio1' is now up
Mon Jan 5 17:43:26 2026 daemon.notice netifd: Interface 'batmesh' is disabled
Mon Jan 5 17:43:26 2026 daemon.notice netifd: Interface 'batmesh' is enabled
Mon Jan 5 17:43:27 2026 daemon.notice wpa_supplicant[1483]: phy1-mesh0: interface state UNINITIALIZED->ENABLED
Mon Jan 5 17:43:27 2026 daemon.notice wpa_supplicant[1483]: phy1-mesh0: AP-ENABLED
Mon Jan 5 17:43:27 2026 daemon.notice wpa_supplicant[1483]: phy1-mesh0: joining mesh xxx-mesh
Mon Jan 5 17:43:27 2026 daemon.notice netifd: Network device 'phy1-mesh0' link is up
Mon Jan 5 17:43:27 2026 daemon.notice wpa_supplicant[1483]: phy1-mesh0: CTRL-EVENT-CONNECTED - Connection to 00:00:00:00:00:00 completed [id=0 id_str=]
Mon Jan 5 17:43:27 2026 daemon.notice netifd: Interface 'batmesh' has link connectivity
Mon Jan 5 17:43:27 2026 daemon.notice netifd: Interface 'batmesh' is setting up now
Mon Jan 5 17:43:27 2026 daemon.notice wpa_supplicant[1483]: phy1-mesh0: MESH-GROUP-STARTED ssid="xxx-mesh" id=0
Mon Jan 5 17:43:27 2026 kern.info kernel: [ 29.177269] batman_adv: bat0: Adding interface: phy1-mesh0
Mon Jan 5 17:43:27 2026 kern.info kernel: [ 29.182853] batman_adv: bat0: Interface activated: phy1-mesh0
Mon Jan 5 17:43:27 2026 daemon.notice netifd: Interface 'batmesh' is now up
Mon Jan 5 17:43:28 2026 daemon.info dnsmasq[1]: exiting on receipt of SIGTERM
Mon Jan 5 17:43:28 2026 daemon.err procd: Got unexpected signal 1
Mon Jan 5 17:43:28 2026 daemon.info dnsmasq[1]: started, version 2.90 cachesize 1000
Mon Jan 5 17:43:28 2026 daemon.info dnsmasq[1]: DNS service limited to local subnets
on node one I see :
Mon Jan 5 17:43:25 2026 daemon.notice hostapd: phy0-ap0: interface state UNINITIALIZED->ENABLED
Mon Jan 5 17:43:25 2026 daemon.notice hostapd: phy0-ap0: AP-ENABLED
Mon Jan 5 17:43:25 2026 daemon.notice netifd: Wireless device 'radio0' is now up
Mon Jan 5 17:43:26 2026 daemon.notice wpa_supplicant[1483]: Set new config for phy phy1
Mon Jan 5 17:43:26 2026 daemon.notice hostapd: Set new config for phy phy1:
Mon Jan 5 17:43:26 2026 daemon.notice wpa_supplicant[1483]: Set new config for phy phy1
Mon Jan 5 17:43:26 2026 daemon.notice netifd: Wireless device 'radio1' is now up
Mon Jan 5 17:43:26 2026 daemon.notice netifd: Interface 'batmesh' is disabled
Mon Jan 5 17:43:26 2026 daemon.notice netifd: Interface 'batmesh' is enabled
Mon Jan 5 17:43:27 2026 daemon.notice wpa_supplicant[1483]: phy1-mesh0: interface state UNINITIALIZED->ENABLED
Mon Jan 5 17:43:27 2026 daemon.notice wpa_supplicant[1483]: phy1-mesh0: AP-ENABLED
Mon Jan 5 17:43:27 2026 daemon.notice wpa_supplicant[1483]: phy1-mesh0: joining mesh xxx-mesh
Mon Jan 5 17:43:27 2026 daemon.notice netifd: Network device 'phy1-mesh0' link is up
Mon Jan 5 17:43:27 2026 daemon.notice wpa_supplicant[1483]: phy1-mesh0: CTRL-EVENT-CONNECTED - Connection to 00:00:00:00:00:00 completed [id=0 id_str=]
Mon Jan 5 17:43:27 2026 daemon.notice netifd: Interface 'batmesh' has link connectivity
Mon Jan 5 17:43:27 2026 daemon.notice netifd: Interface 'batmesh' is setting up now
Mon Jan 5 17:43:27 2026 daemon.notice wpa_supplicant[1483]: phy1-mesh0: MESH-GROUP-STARTED ssid="xxx-mesh" id=0
Mon Jan 5 17:43:27 2026 kern.info kernel: [ 29.177269] batman_adv: bat0: Adding interface: phy1-mesh0
Mon Jan 5 17:43:27 2026 kern.info kernel: [ 29.182853] batman_adv: bat0: Interface activated: phy1-mesh0
Mon Jan 5 17:43:27 2026 daemon.notice netifd: Interface 'batmesh' is now up
Mon Jan 5 17:43:28 2026 daemon.info dnsmasq[1]: exiting on receipt of SIGTERM
Mon Jan 5 17:43:28 2026 daemon.err procd: Got unexpected signal 1
Mon Jan 5 17:43:28 2026 daemon.info dnsmasq[1]: started, version 2.90 cachesize 1000
Mon Jan 5 17:43:28 2026 daemon.info dnsmasq[1]: DNS service limited to local subnets
Mon Jan 5 17:43:28 2026 daemon.info dnsmasq[1]: compile time options: IPv6 GNU-getopt no-DBus UBus no-i18n no-IDN DHCP no-DHCPv6 no-Lua TFTP no-conntrack no-ipset no-nftset no-auth no-cryptohash no-DNSSEC no-ID loop-detect inotify dumpfile
Mon Jan 5 17:43:28 2026 daemon.info dnsmasq[1]: UBus support enabled: connected to system bus```
the config on the gateway node:
config interface 'bat0'
option proto 'batadv'
option routing_algo 'BATMAN_IV'
option bridge_loop_avoidance '1'
option gw_mode 'server'
option hop_penalty '30'
config interface 'batmesh'
option proto 'batadv_hardif'
option master 'bat0'
option mtu '1532'
config wifi-iface 'default_radio1'
option device 'radio1'
option network 'batmesh'
option mode 'mesh'
option encryption 'sae'
option mesh_id 'xxx-mesh'
option mesh_fwding '0'
option mesh_rssi_threshold '0'
option key 'xyz'
config interface 'bat0'
option proto 'batadv'
option routing_algo 'BATMAN_IV'
option bridge_loop_avoidance '1'
option gw_mode 'client'
option hop_penalty '30'
config interface 'batmesh'
option proto 'batadv_hardif'
option master 'bat0'
option mtu '1532'
config wifi-iface 'default_radio1'
option device 'radio1'
option network 'batmesh'
option mode 'mesh'
option encryption 'sae'
option mesh_id 'xxx-mesh'
option mesh_fwding '0'
option mesh_rssi_threshold '0'
option key 'xyz'
Do you see any hint where my mistake is? Thanks in advance.
Thanks for this great write down @benkay86!
in the last weeks I tried to set up a mesh as you discribe it in the tutorial with two M1800 with openwrt 24.10.05.
I can't see any action in the logs which give me any hint why the devices are not joining the mesh.
on the gateway node I see:
on node one I see :
config interface 'bat0'
option proto 'batadv'
option routing_algo 'BATMAN_IV'
option bridge_loop_avoidance '1'
option gw_mode 'server'
option hop_penalty '30'
config interface 'batmesh'
option proto 'batadv_hardif'
option master 'bat0'
option mtu '1532'
config wifi-iface 'default_radio1'
option device 'radio1'
option network 'batmesh'
option mode 'mesh'
option encryption 'sae'
option mesh_id 'xxx-mesh'
option mesh_fwding '0'
option mesh_rssi_threshold '0'
option key 'xyz'
config interface 'bat0'
option proto 'batadv'
option routing_algo 'BATMAN_IV'
option bridge_loop_avoidance '1'
option gw_mode 'client'
option hop_penalty '30'
config interface 'batmesh'
option proto 'batadv_hardif'
option master 'bat0'
option mtu '1532'
config wifi-iface 'default_radio1'
option device 'radio1'
option network 'batmesh'
option mode 'mesh'
option encryption 'sae'
option mesh_id 'xxx-mesh'
option mesh_fwding '0'
option mesh_rssi_threshold '0'
option key 'xyz'