-
Notifications
You must be signed in to change notification settings - Fork 1
Networking
ToDo
-
If you're connected to VOXL with Wi-Fi over a LAN, you should be able to ping to the VOXL's IP from your PC and vice versa (i.e. ping to your PC's IP from the VOXL)
-
setup ROS on the host PC and on the VOXL by updating
my_ros_env.shlocated in/home/rootinside VOXL. your PC's static IP (defined on the router) should be used for theROS_MASTER_IP, andROS_IPfor each platform would be its IP on the router. Then,roscoreon the PC will make every rostopic available for all robots.
At this stage, if roscore is running in the host PC, rostopic list should show the available topics in the VOXL, and vice versa. It's a bi-directional connection. To test,
# in a terminal in the host pc
$ rostopic pub -r 10 /cmd_vel geometry_msgs/Twist '{linear: {x: 1.0, y: 2.0, z: 3.0}, angular: {x: 3.0,y: 2.0,z: 01.0}}'
# inside VOXL
voxl:~$ rostopic list
/cmd_vel
/rosout
/rosout_agg
voxl:~$ rostopic echo /cmd_vel
linear:
x: 1.0
y: 2.0
z: 3.0
angular:
x: 3.0
y: 2.0
z: 1.0
---
the test should also work the other way around i.e. from VOXL to the host PC.
here is a temporary solution to stop MAC randomization in the RB5 drone Platform.
wait up for 5 seconds every time you power up the drone.
# inside the drone's bash terminal
rb5:/$ cd home/root/ && touch setup_staticIP.sh
rb5:/$ vi setup_staticIP.sh
add the following lines (modify if needed) and save the files. Use i key to insert the editing mode of the vim and to save the changes press Esc followed by :wq.
#!/bin/bash
DRONE_IP='172.16.0.33'
ROUTER_IP='172.16.0.1'
NETMASK='255.255.255.0'
INTERFACE='wlan0'
ifconfig $INTERFACE down
ifconfig $INTERFACE $DRONE_IP netmask $NETMASK up
ip route add default via $ROUTER_IP dev $INTERFACE
Then, run chmod +x setup_staticIP.sh.
Now, we put the bash commands into a service:
rb5:/$ cd /etc/systemd/system && touch setup_staticIP.service
rb5:/$ vi setup_staticIP.service
copy the following into the setup_staticIP.service and save.
[Unit]
After=dnsmasq.service
[Service]
Type=oneshot
ExecStartPre=/bin/sleep 5
ExecStart=/home/root/setup_staticIP.sh
[Install]
WantedBy=default.target
Finally, use systemctl start setup_staticIP to start the service and then systemctl enable setup_staticIP to configure the system to start the service at next reboot. Check up the status by systemctl status setup_staticIP.