JetBot
2023 · NVIDIA Jetson Nano 2GB · Python · Jupyter · Docker · 3D printing
A small AI robot built from JetBot, NVIDIA’s open-source robot design, which runs on an NVIDIA Jetson Nano.
I built it from scratch rather than buying a kit: I 3D-printed the body myself and sourced every part separately, from Cytron in Malaysia, SGBotic in Singapore and AliExpress. SGBotic supplied the Adafruit DC Motor + Stepper FeatherWing that drives the motors, and the I2C adapter for the OLED display.
I worked through the first three of JetBot’s examples: basic motion, teleoperation (driving it remotely) and collision avoidance, where the robot learns from camera images of free and blocked paths so it can steer around obstacles on its own. I trained that model both on the Jetson Nano itself and on my gaming PC’s NVIDIA graphics card, which was, as you’d expect, faster. I stopped before road following and object following, because the Jetson Nano 2GB developer kit I used couldn’t handle them.
The examples are Jupyter notebooks that run on the robot and open in a browser. JetBot was my first time using Jupyter, and running code a cell at a time while watching the robot respond made it a fun way to learn.
What the build taught me:
- The small parts are the hard parts: finding the right screws to bolt the board onto the 3D-printed body took longer than printing it.
- The 2GB kit needs its own image: JetBot has a system image built specifically for the Jetson Nano 2GB, and working that out was the first real hurdle.
- Docker, properly: JetBot’s software runs in Docker containers, so I had to learn Docker properly. It has paid off since, in my software work and in learning ROS.
The RPLIDAR sensor in the photos is a later experiment: I’m testing whether I can integrate it for my next project.



