Zerobotics Tutorials

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


Unable to parse item

Invidious encountered an error while trying to parse this item. For more information see below:

Show technical details
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>

Unable to parse item

Invidious encountered an error while trying to parse this item. For more information see below:

Show technical details
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>

Unable to parse item

Invidious encountered an error while trying to parse this item. For more information see below:

Show technical details
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>

Unable to parse item

Invidious encountered an error while trying to parse this item. For more information see below:

Show technical details
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>

Unable to parse item

Invidious encountered an error while trying to parse this item. For more information see below:

Show technical details
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>