Compatibility Inquiry: JetBot AI Kit v3.0 with Official NVIDIA JetBot Library

I am a mechanical engineering student currently working on a capstone project using the SparkFun JetBot AI Kit v3.0.

​I would like to confirm the compatibility of the v3.0 kit with the official NVIDIA JetBot GitHub repository (NVIDIA-AI-IOT/jetbot). Specifically, I have the following questions:

​Does the v3.0 kit fully support the motor control and basic functions provided by the NVIDIA-AI-IOT/jetbot library without any major code modifications (e.g., I2C address changes)?

​Are the motor drivers used in v3.0 (TI DRV8830) identical to those in v2.0 in terms of software interfacing with the official library?

​Our team wants to ensure we are using the most standard hardware environment for our waste classification AI project.

  1. Yes, although we might have different views of ‘major’…changing an i2c address might be the simplest type of modification possible :-/ Anyhow, be sure to follow the notes from our guide!

"The Instructions Below are Deprecated!!!

Attention: These instructions specifically pertained to Nvidia’s original instructions, hosted in their Wiki. However, these instructions no longer work with the latest JetPack operating system or the latest JetBot code. Their latest releases implement a docker container for the code.

Attention: The SD card in this kit comes pre-flashed to work with our hardware and has the all the modules installed (including the sample machine learning models needed for the collision avoidance and object following examples). The only software procedures needed to get your JetBot running are steps 2-4 from the Nvidia instructions (i.e. setup the WiFi connection and then connect to the JetBot using a browser). Please DO NOT format or flash a new image on the SD card; otherwise, you will need to flash our image back onto the card (instructions below)."

  1. Yes, the motor stuff is identical…v2.x → 3.0 was basically just a couple minor changes (battery pack brands, updated OS image on included SD card)

​Thank you for the answer

I am currently working on a project using a Jetson Nano B01 (4GB) running JetPack 4.6.3.

​I am planning to purchase the SparkFun JetBot kit, but I cannot use their pre-flashed SD card image because my project requires the specific environment of JetPack 4.6.3.

​If I install the official NVIDIA JetBot library from GitHub on my current OS, can I simply modify the I2C addresses in the source code to make it compatible with the SparkFun hardware? I would like to know if there are any other major hardware abstraction layers or register settings I should be aware of besides the I2C address.

That’s it other than our ‘sparkfun qwiic’ pip package you’ll likely need to install…then just adjust any addresses as needed (I’d guess probably just the oled needs it?)

Just to clarify, are you saying that in order to fully control the robot, I need to install the official NVIDIA JetBot library from GitHub AND the ‘sparkfun-qwiic’ pip package separately?

​If so, could you provide the exact command or a guide on how to install the sparkfun-qwiic package? I want to make sure I’m installing the correct version that is compatible with JetPack 4.6.3.