tiiuae / mesh_com

ROS node for Mesh Network configuration
BSD 3-Clause "New" or "Revised" License
16 stars 17 forks source link

If the device is initially configured to NATS, it should still be reconfigurable to MS v1.5/1.0 #322

Closed mbaddeley closed 8 months ago

mbaddeley commented 1 year ago

Currently the configuration file mesh.conf is auto-configured to NATS. However, this causes two issues.

  1. It stops any changes in mesh.conf taking effect e.g., mesh frequency (I guess they come from a separate NATS conf file?).
  2. Even if you change the configuration setting to 1.5 or 1.0, this change will not be reflected on restart.

While it's fine to auto-configure to NATS, I believe it should be possible to switch mesh mode on reboot, as well as reflect mesh configuration changes from mesh.conf

joenpera commented 1 year ago

Current NATS.io utilization is using same configuration parameters as there was used for MS1.0. Next version with multiradio support will introduce radio index based configuration items. Only configuration item which used by both is then MSVERSION.

mesh_default.conf:

# common
MSVERSION=nats  # 1.5, 1.0 or nats

# mesh shield 1.0/1.5 ( NOT FOR NATS )
MODE=mesh
IP=10.20.15.3
MASK=255.255.255.0
MAC=00:11:22:33:44:55
KEY=1234567890
ESSID=gold
FREQ=5805
TXPOWER=30
COUNTRY=AE
MESH_VIF=wlp1s0
PHY=phy0
#CONCURRENCY configuration
#CONCURRENCY=ap+mesh
#MCC_CHANNEL=2412

# NATS communication setup (default is id0)
# Modes: mesh, ap+mesh_scc, ap+mesh_mcc, halow
id0_MODE=mesh
id0_IP=10.20.15.3
id0_MASK=255.255.255.0
id0_MAC=00:11:22:33:44:55
id0_KEY=1234567890
id0_ESSID=gold
id0_FREQ=5805
id0_TXPOWER=30
id0_COUNTRY=AE
id0_MESH_VIF=wlp1s0
id0_PHY=phy0
id0_BATMAN_IFACE=bat0
id0_FREQ_MCC=2412
id0_ROUTING=batman-adv
id0_PRIORITY=long_range
#id1_  for 2nd radio
#id2_  for 3rd radio
BRIDGE="br-lan bat0 eth1 eth0 lan1"
ROLE=drone

As a workaround until the bug is fixed I recommend to change MSVERSION by build time to get desired configuration into use.

And last.. we have also internal bug for this very same issue.

@mbaddeley Have you tried to change mesh_default.conf MSVERSION to 1.0?

mbaddeley commented 1 year ago

So in MSVERSION=nats we can change the frequency etc using id0_FREQ, reboot, and then we see those changes reflected?

Last version I tried was 5th October (https://artifactory.ssrcdevops.tii.ae/ui/native/secure-communication/CM_HS1.0_rel/ - incidentally, why have the builds stopped???)

In that version the conf looks like this:

root@br_hardened:~# cat /opt/mesh.conf 
# Modes: mesh, ap+mesh_scc, ap+mesh_mcc

# common
MSVERSION=nats  # 1.5, 1.0 or nats
MODE=mesh
IP=10.20.15.3
MASK=255.255.255.0
MAC=00:11:22:33:44:55
KEY=1234567890
ESSID=gold
FREQ=5805
TXPOWER=30
COUNTRY=AE
MESH_VIF=wlp1s0
PHY=phy0

# mesh shield 1.0/1.5
#CONCURRENCY configuration
#CONCURRENCY=ap+mesh
#MCC_CHANNEL=2412

# mesh 1.0 with NATS communication setup
FREQ_MCC=2412
ROUTING=batman-adv
ROLE=drone
PRIORITY=long_range
mbaddeley commented 1 year ago

Duplicate of https://ssrc.atlassian.net/browse/SCDI-69