diff --git a/docker/Dockerfile.roscube b/docker/Dockerfile.roscube index 77b276edd..0a19d1608 100644 --- a/docker/Dockerfile.roscube +++ b/docker/Dockerfile.roscube @@ -49,6 +49,13 @@ RUN source /home/${USERNAME}/mambaforge/bin/activate; \ RUN rm -rf ./src # tell ROS to use Cyclone DDS -# ENV RMW_IMPLEMENTATION="rmw_cyclonedds_cpp" -# ENV CYCLONEDDS_URI=file:///home/developer/driverless_ws/src/machines/roscube_machine/cyclonedds.xml +ENV RMW_IMPLEMENTATION="rmw_cyclonedds_cpp" +ENV CYCLONEDDS_URI=file:///home/developer/driverless_ws/src/machines/roscube_machine/cyclonedds.xml ENV ROS_DOMAIN_ID=69 + +RUN echo 'export RMW_IMPLEMENTATION="rmw_cyclonedds_cpp"' >> /home/$USERNAME/.bashrc +RUN echo 'export CYCLONEDDS_URI=file:///home/developer/driverless_ws/src/machines/roscube_machine/cyclonedds.xml' >> /home/$USERNAME/.bashrc +RUN echo 'export ROS_DOMAIN_ID=69' >> /home/$USERNAME/.bashrc + +COPY ./docker/conda_entrypoint.sh /conda_entrypoint.sh +ENTRYPOINT ["/conda_entrypoint.sh"] diff --git a/docker/conda_entrypoint.sh b/docker/conda_entrypoint.sh index 686e01f6d..ec4a8c0d1 100755 --- a/docker/conda_entrypoint.sh +++ b/docker/conda_entrypoint.sh @@ -9,4 +9,7 @@ conda activate driverless_env # source workspace setup if available test -f "/home/developer/driverless_ws/install/setup.bash" && source "/home/developer/driverless_ws/install/setup.bash" +ros2 daemon stop +ros2 daemon start + exec "$@" diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index fc3eeb606..74f573043 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -15,7 +15,7 @@ x-volumes-roscube: &volumes-roscube - ../../datasets:/home/${USERNAME}/driverless_ws/datasets # /dev/shm is mounted in so that two foxy containers can talk to each other when using net=host, see: https://answers.ros.org/question/370595/ros2-foxy-nodes-cant-communicate-through-docker-container-border/ - /dev/shm:/dev/shm - - /dev/ttyUSB-sbg:/dev/ttyUSB-sbg + - /dev/sbg:/dev/sbg x-volumes-jetson: &volumes-jetson volumes: diff --git a/src/hardware/sensors/config/ellipse_D.yaml b/src/hardware/sensors/config/ellipse_D.yaml index c865e1bba..6cfe3237e 100644 --- a/src/hardware/sensors/config/ellipse_D.yaml +++ b/src/hardware/sensors/config/ellipse_D.yaml @@ -32,7 +32,14 @@ # Uart configuration uartConf: # Port Name - portName: "/dev/ttyUSB-sbg" + ### IMPORTANT REQUIRES UDEV RULE TO BE CREATED + # sudo touch /etc/udev/rules.d/99-sbg_example.rules + # sudo nano /etc/udev/rules.d/99-sbg_example.rules + # SUBSYSTEMS=="usb", ATTRS{product}=="USB-RS232 Cable", ATTRS{serial}=="SERIAL_HERE", SYMLINK+="sbg" + ### Find serial by walking through ttyUSBs + # udevadm info --name=/dev/ttyUSB0 --attribute-walk # replace with ttyUSB1... etc until you find the RS232 + + portName: "/dev/sbg" # Baude rate (4800 ,9600 ,19200 ,38400 ,115200 [default],230400 ,460800 ,921600) baudRate: 115200 diff --git a/src/machines/jetson_machine/cyclonedds.xml b/src/machines/jetson_machine/cyclonedds.xml index 956967ac1..61027a586 100644 --- a/src/machines/jetson_machine/cyclonedds.xml +++ b/src/machines/jetson_machine/cyclonedds.xml @@ -1,8 +1,10 @@ - + - wlan0 + + + spdp diff --git a/src/machines/roscube_machine/cyclonedds.xml b/src/machines/roscube_machine/cyclonedds.xml index 1c156b4b5..ccd137ae9 100644 --- a/src/machines/roscube_machine/cyclonedds.xml +++ b/src/machines/roscube_machine/cyclonedds.xml @@ -1,8 +1,10 @@ - + - enp4s0 + + + spdp