Hi, after looking at several topics here and other websites I was able to get a wireless access point to Ethernet bridge working on the Jetson TX2 (see goal and solution sections below). But I was wondering if anyone could provide any info on:
- Why this is working (it seems more simple than I would have thought based on other posts).
- If there are any potential improvements that could be made.
- If there are any potential issues with this solution.
Thanks in advance for any feedback!
Goal:
- We will be using the Jetson TX2 (with Connect Tech Quasar carrier board) for a small robot running ROS that will have an internal Ethernet network using a switch so various other peripherals can be connected (e.g. RTSP camera) - so the difference between this and several other posts is that we do not need Internet.
- And in order to connect a laptop to the robot we want to be able to use the built-in wireless, and avoid having to attach an external radio.
- But the laptop that connects wirelessly also needs to be able to communicate with the ROS software which will be running using the Ethernet IP.
- Therefore, we need to bridge the wireless network with the Ethernet network.
Solution:
- Do a fresh install of JetPack 4.2 to Jetson TX2 (assuming later JetPack versions should be fine too).
- sudo systemctl disable nv-l4t-usb-device-mode.service
- sudo systemctl stop nv-l4t-usb-device-mode.service
- Add the below text to /etc/modprob.d/bcmdhd.conf
- options bcmdhd op_mode=2
- Uncomment the line in /etc/sysctl.conf that says net.ipv4.ip_forward=1
- Copy the ‘Hotspot’ and ‘Wired connection 1’ files (see file contents below) to /etc/NetworkManager/system-connections (some specific file property contents that should not be relevant were replaced with the word “REMOVED”; also these 2 files should be the only files in this directory).
- Reboot.
- Connect a laptop with a manual Ethernet configuration of IP address of 192.168.1.200 with a 16 bit netmask to the Jetson TX2 via Ethernet (represents a peripheral on the robot).
- Connect another laptop (represents a controller) with its wireless network set to automatic to the ssid and psk properties from the ‘Hotspot’ file below (it should automatically be assigned an IP of 192.168.0.x with a 24 bit netmask), then this laptop can ping the following IP addresses:
- 192.168.1.101 (Jetson TX2 Ethernet)
- 192.168.1.200 (other laptop)
- 192.168.0.1 (Jetson TX2 wireless)
‘Hotspot’ file contents:
[connection]
id=Hotspot
uuid=REMOVED
type=wifi
autoconnect=true
permissions=
timestamp=1592845897
[wifi]
hidden=false
mac-address=REMOVED
mac-address-blacklist=
mode=ap
ssid=REMOVED
[wifi-security]
key-mgmt=wpa-psk
psk=12345678
[ipv4]
dns-search=
method=shared
address1=192.168.0.1/24
[ipv6]
addr-gen-mode=stable-privacy
dns-search=
ip6-privacy=0
method=ignore
‘Wired connection 1’ file contents:
[connection]
id=Wired connection 1
uuid=REMOVED
type=ethernet
autoconnect-priority=-999
permissions=
timestamp=1592928250
[ethernet]
duplex=full
mac-address=REMOVED
mac-address-blacklist=
[ipv4]
dns-search=
method=manual
address1=192.168.1.101/24
[ipv6]
addr-gen-mode=stable-privacy
dns-search=
ip6-privacy=0
method=ignore