THIS PROJECT WAS SOURCED FROM ILYA (KAIAAI) WATCH HIS VIDEOS FOR MORE UNDERSTANDING
https://youtube.com/playlist?list=PLOSXKDW70aR8uA1IFahSKVuk5ODDfjTZV&si=8KT599YrK9mBafSm
Meanwhile, you could follow these goto instructions.
-
Enable wsl2 in your PC by going to your cmd terminal and paste this code: wsl --install --no-distribution
-
Download docker desktop, this would allow you use the project in your pc https://share.google/Ru6QWVXtW4dRNeICo
-
Download X server, this will allow you see Linux gui https://share.google/WsKHNSanIxvo4Ysbt
-
Download Arduino (preferably version 1.8) and install the esp32 board. Also install the esp32 2.0.17 library. New versions don't work
-
Download this zip file and extract the plugin to arduino plugin https://github.com/kaiaai/firmware/archive/refs/tags/v0.8.2.zip
-
Upload firmware to board including spiff data
Board should have already been connected to the WiFi you want to use, don't use 5gz for your hostpot Next, check your WiFi you should see Kaiaai connect to it and copy the board's ipadress as shown in the serial monitor to chrome. In chrome, fill in details of your WiFi and also its ipadress which can be gotten by simply writing ipconfig in your cmd terminal.
Make sure docker and X sever are both running Then open power shell and run these codes:
docker pull kaiaai/kaiaai:iron docker run --name makerspet -it --rm -v c:\maps:/root/maps -p 8888:8888/udp -p 4430:4430/tcp -e DISPLAY=host.docker.internal:0.0 -e LIBGL_ALWAYS_INDIRECT=0 kaiaai/kaiaai:iron
NOTE: the code above would download the project image
docker exec -it makerspet bash
To operate the robot manually:
ros2 launch kaiaai_bringup physical.launch.py
ros2 run kaiaai_teleop teleop_keyboard
ros2 launch kaiaai_bringup monitor_robot.launch.py
ros2 launch kaiaai_bringup cartographer.launch.py
ros2 run nav2_map_server map_saver_cli -f ~/maps/map --ros-args -p save_map_timeout:=60.0
To operate automatically:
ros2 launch kaiaai_bringup physical.launch.py
ros2 launch kaiaai_bringup navigation.launch.py map:=$HOME/maps/map.yaml
ros2 launch kaiaai_bringup navigation.launch.py slam:=True
ros2 launch explore_lite explore.launch.py
ros2 run nav2_map_server map_saver_cli -f ~/maps/map --ros-args -p save_map_timeout:=60.0