Welcome to Zerobotics Tutorials, the YouTube channel to build robots from zero !
My name is Enzo and I have been working as a robotics engineer for few years on research and industrial projects. I have also created tutorials for TheConstruct training platform. I start this project because I would like to share my project and help in the development of ROS2 community by providing tutorials.
Whether you're a beginner curious about the fundamentals or an experienced developer looking to deepen your knowledge, this channel offers a wide range of tutorials, hands-on projects, and in-depth explanations about various robotic subjects.
You'll learn how to build and program robots using the Robot Operating System (ROS2), explore cutting-edge robotics technologies, and stay up-to-date with the latest industry trends. Subscribe now to turn your robotics passion into expertise!
#Robotics #ROS2 #ROS #RobotOperatingSystem #TechTutorials #Programming
Invidious encountered an error while trying to parse this item. For more information see below:
Title: `Missing hash key: "collectionThumbnailViewModel" (KeyError)` Date: `2026-06-05T05:01:20Z` Route: `/channel/UCd6RR2Hj2scLyoV0TvIPyiA` Version: `2026.02.07-118d635 @ (HEAD detached at v2.20260207.0)` <details> <summary>Backtrace</summary> <p> ``` Missing hash key: "collectionThumbnailViewModel" (KeyError) from /usr/share/crystal/src/hash.cr:1198:9 in '??' from /usr/share/crystal/src/json/any.cr:149:5 in 'process' from src/invidious/yt_backend/extractors.cr:524:17 in 'process' from src/invidious/yt_backend/extractors.cr:1035:17 in 'parse_item' from src/invidious/yt_backend/extractors.cr:1082:14 in 'extract_items' from src/invidious/channels/videos.cr:29:22 in 'get_60_videos:continuation:sort_by' from src/invidious/routes/channels.cr:56:36 in 'videos' from lib/kemal/src/kemal/route.cr:13:9 in '->' from src/invidious/helpers/handlers.cr:31:37 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call_next' from lib/kemal/src/kemal/filter_handler.cr:22:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call_next' from src/invidious/helpers/handlers.cr:80:12 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call_next' from src/ext/kemal_static_file_handler.cr:127:14 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/request_processor.cr:51:11 in 'handle_client' from /usr/share/crystal/src/fiber.cr:170:11 in 'run' from ??? ``` </p> </details>
Invidious encountered an error while trying to parse this item. For more information see below:
Title: `Missing hash key: "collectionThumbnailViewModel" (KeyError)` Date: `2026-06-05T05:01:20Z` Route: `/channel/UCd6RR2Hj2scLyoV0TvIPyiA` Version: `2026.02.07-118d635 @ (HEAD detached at v2.20260207.0)` <details> <summary>Backtrace</summary> <p> ``` Missing hash key: "collectionThumbnailViewModel" (KeyError) from /usr/share/crystal/src/hash.cr:1198:9 in '??' from /usr/share/crystal/src/json/any.cr:149:5 in 'process' from src/invidious/yt_backend/extractors.cr:524:17 in 'process' from src/invidious/yt_backend/extractors.cr:1035:17 in 'parse_item' from src/invidious/yt_backend/extractors.cr:1082:14 in 'extract_items' from src/invidious/channels/videos.cr:29:22 in 'get_60_videos:continuation:sort_by' from src/invidious/routes/channels.cr:56:36 in 'videos' from lib/kemal/src/kemal/route.cr:13:9 in '->' from src/invidious/helpers/handlers.cr:31:37 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call_next' from lib/kemal/src/kemal/filter_handler.cr:22:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call_next' from src/invidious/helpers/handlers.cr:80:12 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call_next' from src/ext/kemal_static_file_handler.cr:127:14 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/request_processor.cr:51:11 in 'handle_client' from /usr/share/crystal/src/fiber.cr:170:11 in 'run' from ??? ``` </p> </details>
Invidious encountered an error while trying to parse this item. For more information see below:
Title: `Missing hash key: "collectionThumbnailViewModel" (KeyError)` Date: `2026-06-05T05:01:20Z` Route: `/channel/UCd6RR2Hj2scLyoV0TvIPyiA` Version: `2026.02.07-118d635 @ (HEAD detached at v2.20260207.0)` <details> <summary>Backtrace</summary> <p> ``` Missing hash key: "collectionThumbnailViewModel" (KeyError) from /usr/share/crystal/src/hash.cr:1198:9 in '??' from /usr/share/crystal/src/json/any.cr:149:5 in 'process' from src/invidious/yt_backend/extractors.cr:524:17 in 'process' from src/invidious/yt_backend/extractors.cr:1035:17 in 'parse_item' from src/invidious/yt_backend/extractors.cr:1082:14 in 'extract_items' from src/invidious/channels/videos.cr:29:22 in 'get_60_videos:continuation:sort_by' from src/invidious/routes/channels.cr:56:36 in 'videos' from lib/kemal/src/kemal/route.cr:13:9 in '->' from src/invidious/helpers/handlers.cr:31:37 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call_next' from lib/kemal/src/kemal/filter_handler.cr:22:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call_next' from src/invidious/helpers/handlers.cr:80:12 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call_next' from src/ext/kemal_static_file_handler.cr:127:14 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/request_processor.cr:51:11 in 'handle_client' from /usr/share/crystal/src/fiber.cr:170:11 in 'run' from ??? ``` </p> </details>
Invidious encountered an error while trying to parse this item. For more information see below:
Title: `Missing hash key: "collectionThumbnailViewModel" (KeyError)` Date: `2026-06-05T05:01:20Z` Route: `/channel/UCd6RR2Hj2scLyoV0TvIPyiA` Version: `2026.02.07-118d635 @ (HEAD detached at v2.20260207.0)` <details> <summary>Backtrace</summary> <p> ``` Missing hash key: "collectionThumbnailViewModel" (KeyError) from /usr/share/crystal/src/hash.cr:1198:9 in '??' from /usr/share/crystal/src/json/any.cr:149:5 in 'process' from src/invidious/yt_backend/extractors.cr:524:17 in 'process' from src/invidious/yt_backend/extractors.cr:1035:17 in 'parse_item' from src/invidious/yt_backend/extractors.cr:1082:14 in 'extract_items' from src/invidious/channels/videos.cr:29:22 in 'get_60_videos:continuation:sort_by' from src/invidious/routes/channels.cr:56:36 in 'videos' from lib/kemal/src/kemal/route.cr:13:9 in '->' from src/invidious/helpers/handlers.cr:31:37 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call_next' from lib/kemal/src/kemal/filter_handler.cr:22:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call_next' from src/invidious/helpers/handlers.cr:80:12 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call_next' from src/ext/kemal_static_file_handler.cr:127:14 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/request_processor.cr:51:11 in 'handle_client' from /usr/share/crystal/src/fiber.cr:170:11 in 'run' from ??? ``` </p> </details>
Invidious encountered an error while trying to parse this item. For more information see below:
Title: `Missing hash key: "collectionThumbnailViewModel" (KeyError)` Date: `2026-06-05T05:01:20Z` Route: `/channel/UCd6RR2Hj2scLyoV0TvIPyiA` Version: `2026.02.07-118d635 @ (HEAD detached at v2.20260207.0)` <details> <summary>Backtrace</summary> <p> ``` Missing hash key: "collectionThumbnailViewModel" (KeyError) from /usr/share/crystal/src/hash.cr:1198:9 in '??' from /usr/share/crystal/src/json/any.cr:149:5 in 'process' from src/invidious/yt_backend/extractors.cr:524:17 in 'process' from src/invidious/yt_backend/extractors.cr:1035:17 in 'parse_item' from src/invidious/yt_backend/extractors.cr:1082:14 in 'extract_items' from src/invidious/channels/videos.cr:29:22 in 'get_60_videos:continuation:sort_by' from src/invidious/routes/channels.cr:56:36 in 'videos' from lib/kemal/src/kemal/route.cr:13:9 in '->' from src/invidious/helpers/handlers.cr:31:37 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call_next' from lib/kemal/src/kemal/filter_handler.cr:22:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call_next' from src/invidious/helpers/handlers.cr:80:12 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call_next' from src/ext/kemal_static_file_handler.cr:127:14 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/handler.cr:30:7 in 'call' from /usr/share/crystal/src/http/server/request_processor.cr:51:11 in 'handle_client' from /usr/share/crystal/src/fiber.cr:170:11 in 'run' from ??? ``` </p> </details>