Yes, your jetbot SD card will come pre-flashed. However, we will be re-flashing it with a blank jetson-nano image.

Wifi

When you first get the Sparkfun jetbot kit the pre-flashed SD card image carries a version of the Edimax 7611's drivers. However, this driver is actual trash and while your jetson nano will always say that it's "connected" in reality you will never get any internet.

To fix this:

  1. Download the latest Nvidia Jetson Nano image

  2. Flash it onto the SD card (I did it with the Nvidia provided Etcher)

  3. On a separate flash drive, download the following:

    1. Clone this: https://github.com/lwfinger/rtl8723bu
    2. Download the appropriate deb for your linux version from this: https://launchpad.net/ubuntu/+source/dkms
  4. Insert the SD card into the jetson nano. Connect your monitor, keyboard & mouse, and the aforementioned drive.

  5. Copy the files from the drive to the jetson nano.

  6. Install DKMS using the deb file

  7. Navigate to the rtl8723bu directory

  8. Edit Makefile to comment the line EXTRA_CFLAGS += -DCONFIG_CONCURRENT_MODE

  9. Run the following commands:

    source dkms.conf
    sudo mkdir /usr/src/$PACKAGE_NAME-$PACKAGE_VERSION
    sudo cp -r core hal include os_dep platform dkms.conf Makefile rtl8723b_fw.bin /usr/src/$PACKAGE_NAME-$PACKAGE_VERSION
    sudo dkms add $PACKAGE_NAME/$PACKAGE_VERSION
    sudo dkms autoinstall $PACKAGE_NAME/$PACKAGE_VERSION
    
  10. Edit /etc/modprobe.d/blacklist.conf and append blacklist rtl8xxxu

Install Sparkfun libraries:

sudo apt install python3-pip -y

pip3 install qwiic_scmd

Set up Sparkfun display

The official jetbot python package has a bunch of nasty ipywidgets crap that we don't need. I've modified their file to not require any of the stuff.

  1. Download the following file onto the jetbot (wget?):

    startDisplay.py