Hands On With Nvidia’s JetBot AI-Powered DIY Robot

The Nvidia JetBot is a well-specified DIY robot design based on the company’s tiny Jetson Nano computer. Once built, the JetBot is a completely standalone system that runs Linux with a full AI development environment included. We’ve already covered the Jetson Nano, but suffice it to say it packs quite a punch for a $100 computer you can hold in your palm. After being impressed by the demo units running around at Nvidia’s GTC this spring, of course, we had to see for ourselves just what the JetBot could do.
Assembling a JetBot Takes Some Legwork

JetBot Includes a Complete AI Development Environment
Once you have your JetBot assembled, you’ll need to connect a keyboard, mouse, and display to connect it to your Wi-Fi network. After that, you can use it remotely. Once you’ve booted into Ubuntu using the pre-built system image, Nvidia provides an excellent set of Jupyter IPython notebooks to lead you through driving, programming, and teaching your JetBot. Helpfully, the system image already includes a running Jupyter server, so you can simply connect to it on port 8888 and get started. For the most part, my other computers found the JetBot by name (which defaults to jetbot), but conveniently the IP address is also displayed on the unit’s picoLED.
The Notebook directory on the JetBot includes a few well-documented demonstration projects. They include notebooks for programming your robot to move, reading and using images from the camera, autonomous collision avoidance, and object following. You can follow along by simply executing notebook cells as instructed, or dive deeper by tweaking the provided code or adding some of your own. You can also experiment by using different AI engines and models besides the defaults in the notebooks. The JetBot really is an entire AI-ready computer in a tiny package.
Training Your JetBot to Avoid Obstacles
You can train your collision avoidance model either on the JetBot itself or on a desktop or cloud GPU. The training process makes use of a pre-trained copy of AlexNet, which is why you can get away with only a couple hundred additional test images instead of needing millions. Training involves labeling frames from the JetBot’s camera either “Free” or “Blocked” using a widget in the iPython notebook. This process is best done either with a mobile device you can hold while you position the robot or with a willing friend or family member. Nvidia recommends at least 100 each of Free and Blocked examples to have a fairly robust program. I started with 60 of each in a fairly well-defined area, which was enough to make the robot quite successful, as shown in this video:
For this video, I used the pre-trained AlexNet model aided by an additional 120 images (60 blocked and 60 free) that I captured with the JetBot. In the 90 seconds of the clip, it deals well with almost all the variations in lighting and obstacles, although a shadow fools it once. The labeled images taught it that it was okay to move onto the thin blue floormat, but not the thicker red carpet. Later on (not shown) it eventually did have trouble when approaching the window blinds at an odd angle while on the blue mat. I’m fairly sure that some additional training images would address that.
How the JetBot Compares With DJI’s RoboMaster S1 Battling Robot
While Nvidia’s JetBot and DJI’s RoboMaster S1 are similarly priced and both aim to help you learn AI and robotics, the two products are very different. For starters, the RoboMaster S1 is closer to turnkey, as all the pieces are included along with assembly instructions. For the JetBot, you need to do your own sourcing and spend about $200 plus shipping in addition to $100 for a Nano, and assembly is a little trickier, but the wiki for the project is well-constructed and puts it within reach of even modest DIYers. So it is less expensive than the $500 RoboMaster S1, but not dramatically so.

Is the JetBot for You?
There are plenty of programmable robots on the market, including some that can make use of pre-trained neural networks. For me, the biggest feature that sets the JetBot apart is that it is capable of being fully self-contained. You can log in to it, load or program a neural network model (or for that matter run just about any kind of code), train your model, and see it in action — all without a host computer, cross-compiling, or dealing with an embedded programming environment.
On the flip side, if you are more interested in battle scenarios, or simply fiddling with PID-based control systems, the RoboMaster S1 is a great choice. It may also be a better gift option, since everything comes in the box, instead of needing to source a long list of components on your own.
Continue reading

NASA Probe Stows Huge Asteroid Sample for Return to Earth
Following the recent successful touch and go operation, NASA has reported a sizeable sample of the asteroid has now been locked away in the probe's sample return container.

Voyager 2 Probe Talks to Upgraded NASA Network After 8 Months of Silence
NASA just said "hello" to Voyager 2, and the probe said it back.

Massachusetts Passes Robust Automotive Right-to-Repair Law
Right to repair advocates scored a major victory this week with the passage of Question 1 in Massachusetts. Hailed as the most advanced right to repair law in the land, Question 1 requires that automakers create an open data platform for sharing diagnostic and repair information with independent shops and vehicle owners.

New MIT AI Designs Robots On Its Own
The team believes RoboGrammar could point researchers in new directions, leading to more efficient and inventive designs.