Make sure you have at least one node that is configured as a gateway to connect to the internet and to obtain ip through DHCP. ## Prerequisite. Please make sure the batman module exists, one could test it as follows: On a Nvidia Tx1/Tx2 or a Xavier you might have to compile the batman module from source and install it. `install_batman.sh` script inside Batman_setup_scripts will do it, as long as kernel headers are present. Otherwise you might have to get them, you could also pass in the kernel header location to the make file, if the headers are in a non-standard location. ``` $ modprobe batman-adv ``` Copy the file that creates a unique Hardware address for the bat0 virtual interface. ``` $ sudo cp Batman_setup_scripts/copymac.sh /usr/local/bin/copymac.sh $ sudo chmod +x /usr/local/bin/copymac.sh $ ``` Check following file and make sure both eth0 and wlan0 are disabled and commented out in $ sudo nano /etc/network/interfaces Make sure the wlan0 or the other interface that you are using is set unmanaged with the network manager. ``` $ sudo nano /etc/NetworkManager/conf.d/10-managed-devices.conf ``` Add the following the 10-managed-devices.conf file: ``` [keyfile] unmanaged-devices=wlan0 ``` ## Setting up the batman node ``` $ sudo cp Batman_setup_scripts/batman-cl@.service /etc/systemd/system/batman-cl@.service $ sudo systemctl enable batman-cl@wlan0 ``` ## Setting up the gateway ``` $ sudo cp Batman_setup_scripts/batman.service /etc/systemd/system/batman.service $ sudo cp Batman_setup_scripts/batman /etc/dnsmasq.d/batman $ sudo cp Batman_setup_scripts/override.conf /etc/systemd/system/dnsmasq.service.d/override.conf $ sudo systemctl enable batman $ sudo systemctl enable batman $ sudo systemctl enable dnsmasq ```