I used the newest ROS 2 on the older TB2:
So if you can manage to build the drivers from source for TB3 you should be good to go. Perhaps more advanced packages could be harder to compile, we could help you with them.
EDIT:
For these packages to work you have to set up source build of the kobuki-base
, clone these in your ros2_ws/src
, with rosdep install
before building them - I have these commands on hand for my setup:
echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
sudo apt install python3-colcon-common-extensions
echo "source /usr/share/colcon_cd/function/colcon_cd.sh" >> ~/.bashrc
echo "export _colcon_cd_root=/opt/ros/humble/" >> ~/.bashrc
echo "source /usr/share/colcon_argcomplete/hook/colcon-argcomplete.bash" >> ~/.bashrc
Nav2 binaries
sudo apt install ros-humble-navigation2
sudo apt install ros-humble-nav2-bringup
sudo apt install ros-humble-turtlebot3*
sudo apt install ros-humble-turtle*
export TURTLEBOT3_MODEL=waffle
export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:/opt/ros/humble/share/turtlebot3_gazebo/models
Test launch
ros2 launch nav2_bringup tb3_simulation_launch.py
ROS 2 workspace for sources
cd ~/tb2_ros2_nav2/
mkdir -p ros2_ws/src
cd ~/tb2_ros2_nav2/ros2_ws/src
Clone these Kobuki packages
git clone https://github.com/kobuki-base/kobuki_core.git
git clone https://github.com/kobuki-base/velocity_smoother.git
git clone https://github.com/kobuki-base/cmd_vel_mux.git
git clone https://github.com/kobuki-base/kobuki_ros_interfaces.git
git clone https://github.com/kobuki-base/kobuki_ros.git
Important! Install dependencies (ECL libraries, etc.)
cd ~/tb2_ros2_nav2/ros2_ws/
sudo rosdep install -i --from-path src --rosdistro humble -y
Build Kobuki packages
colcon build --symlink-install
Hey! I am also trying to run ros2 humble on tb3, still confused what image to flash on the rpi4, as the available image is of ros foxy.
Please don't ask questions as an answer.