An open source Jetson Nano baseboard and tools to design your own.

Overview

My Jetson Nano Baseboard

Render of My Jetson Nano Baseboard

Picture of My Jetson Nano Baseboard

This basic baseboard gives the user the foundation and the flexibility to design their own baseboard for the Jetson Nano. It also repurposes some of the Jetson Nano’s interface signals for simple beginner projects.

This baseboard, as designed, contains:

  • A 5V, 4A DC barrel jack
  • 4 USB 2.0 connectors
  • An HDMI connector
  • A UART-to-USB bridge
  • A debug USB
  • A 40-pin GPIO
  • A servo header
  • Three user-interactive buttons (power, reset, and force recovery)
  • A flex connector for an OLED display

Use these files to kickstart your own application-specific baseboard or implement some quick and easy projects!

Quick Start

You only need a computer to get started right now! For a more in-depth setup guide, check out docs/setup.md.

  1. Install the appropriate version of KiCAD, an open source schematic and layout design program, for your operating system here.

  2. Download this GitHub repository either as a ZIP or on the command line.

  3. Save the following symbol and footprint libraries to the “Design Files/Libraries” folder (you may have to make an account – alternatively, if you want the practice, you could try making them yourself):

    1. B3SL-1002P
    2. TPD4E02B04DQAR
    3. 3-1734592-0
    4. DC-005-2.0A
    5. ACM2012-201-2P-T001
    6. 10029449-111RLF
    7. 2309413-1
  4. Open the project (.pro) file in KiCAD.

  5. Add the symbol and footprint libraries as project-specific to your KiCAD program, following this guide. You will know that the libraries are correctly loaded when there are no more boxes with question marks.

  6. You are now set up to tinker with the files and launch your own hardware designs!

Be sure to download the Jetson Nano Product Design Guide here (NVIDIA Developer account required) to help you with your design.

If you want to make your boards and test them, you’ll need the Jetson Nano module (not included, can be bought as part of the developer kit here). It is also helpful to have electronics equipment like an oscilloscope, a multimeter, and a soldering iron.

Questions and Improvements

If you have a suggestion, please open an issue on GitHub.

Please share your projects with us on the Jetson Developer Forums.

Comments
  • Servo PWM signal does not switch logic levels, remains high

    Servo PWM signal does not switch logic levels, remains high

    Problem When running the sampleproj/servo_pwm.py script, SERVO_PWM remains high, even as the GPIO07 pin outputs a PWM signal.

    Release A00, no modifications

    Observed Behavior Servo PWM remains high even when PWM script is run.

    GPIO07 at 40-pin header: gpio7 configured0

    SERVO_PWM at servo header: gpio 7

    Root Cause Theory The pullup could be too strong; the transistor connection may not be consistent across boards. This is another issue that switching to a larger package transistor should fix.

    Suggested Next Steps

    • Switch to larger package transistor (as in issue #5 & 2)
    • Test additional boards to ensure transistor connection remains consistent
    bug A01 Fix 
    opened by wolframalexa 1
  • Fails sleep/wake software cycle

    Fails sleep/wake software cycle

    Problem Board cannot be wake from software; the physical button must be pushed.

    Release A00, no modifications

    Observed Behavior When running the validation/sleep_func.sh script, the device does not wake until the power button is pushed.

    Root Cause Theory An issue with how L4T interacts with the baseboard.

    Suggested Next Steps

    • Probe power logic signals to ensure sequencing is correct
    • Read L4T documentation for power design
    bug 
    opened by wolframalexa 1
  • OLED display does not fit in specified connector

    OLED display does not fit in specified connector

    Problem The specified OLED display does not fit in the specified connector. Users cannot use the display.

    Release A00, no modifications

    Observed Behavior The connector is too small for the display.

    Root Cause Theory Mistakes were made.

    Suggested Next Steps Choose new connector for display.

    bug A01 Fix 
    opened by wolframalexa 1
  • Fan PWM signal not in compliance

    Fan PWM signal not in compliance

    Problem Users cannot use a fan, because the fan PWM signal is not in electrical compliance.

    Observed Behavior GPIO14 provides a nice PWM signal, but the signal becomes less crisp as it goes through the level shifter. In both images below, the blue line is the FAN_PWM_LS node. Yellow: left = GPIO14, right = FAN_PWM_INV.

    image image

    The transistor Q3 should invert the PWM signal, but does not appear to do so.

    Root Cause Theory At 20kHz, it is unlikely the fan signal is switching too fast for the transistor. It may be due to a transistor misalignment; switch from the DMN26D0UFB4-7 to the DMN26D0UT-7, which is in a larger SOT-523 package, to avoid misalignments.

    Suggested Next Steps Ask a more experienced engineer. May need a larger pullup, or more power control.

    bug A01 Fix 
    opened by wolframalexa 1
  • Some USB 2.0 type A ports are not functional

    Some USB 2.0 type A ports are not functional

    Problem Some USB ports on some boards do not respond when a USB mouse or keyboard is plugged into them.

    Observed Behavior When a USB mouse or keyboard is plugged into one of the four type A ports, it occasionally does not work (the pointer does not move, no text appears on screen). This hinders the ability for the user to interact with the display, and to use the USB devices they need.

    Root Cause Theory This is only present on some ports on some boards; it could be a manufacturing or hub chip error.

    Suggested Next Steps

    • Visually check all USB components to ensure there is no damage
    • Ensure hub chip is strapped correctly
    • Ensure USB layout guidelines are followed for signal integrity
    bug A01 Fix 
    opened by wolframalexa 1
  • Low-resolution HDMI (1280x720)

    Low-resolution HDMI (1280x720)

    Problem The maximum HDMI resolution seems to be 1280x720, whereas the Jetson Nano achieves a resolution of 2560x1440. As a result, the display appears zoomed in.

    Release A00, no modifications

    Observed Behavior

    • This is present on all boards, with the same module as on the official baseboard - probably a hardware design issue, and not a software issue
    • The resolution on the official Jetson Nano is twice that of "My Jetson Nano Baseboard"

    Root Cause Theory Resistor values may need to be tuned for better resolutions. Additionally, an EEPROM may be read to confirm HDMI resolution.

    Suggested Next Steps Investigate L4T behavior with regard to HDMI and resistor tuning on CEC line.

    bug A01 Fix 
    opened by wolframalexa 1
  • Power LED does not light up on some boards

    Power LED does not light up on some boards

    Problem On some boards, the power LED D6 does not light, even though the board completes its power-on sequence and has booted normally.

    Release A00, no modifications

    Observed Behavior

    • The LED is the correct direction
    • The board completes its power on sequence and the software functions as expected
    • GPIO04 remains LOW at 0.6V, even though it should be driven HIGH upon power-up
    • There is no measured voltage drop across R32
    • There is an insufficient voltage drop across D6

    Root Cause Theory The gate threshold voltage varies depending on the individual transistor. It could be that this transistor has a higher V_GS and does not turn on when GPIO04 is at 0.6V. Additionally, the transistor Q7 could be misaligned.

    Suggested Next Steps

    • Investigate behavior of GPIO04, which should be HIGH upon power-on. Remove R31 to ensure no loading effects from transistor.
    • Change all transistors DMN26D0UFB4-7 to the DMN26D0UT-7, which is in a larger SOT-523 package, to avoid misalignments.
    bug A01 Fix 
    opened by wolframalexa 1
  • Make silkscreen more readable

    Make silkscreen more readable

    • Increase silkscreen size from 0.5x0.5mm to 0.438x0.7mm to make the text more readable.
    • Add polarity for all ICs and polarized components to aid in soldering
    • Add silkscreen on front for 40-pin header
    enhancement A01 Fix 
    opened by wolframalexa 0
Releases(A01)
  • A01(Aug 12, 2021)

    After having manufactured the boards and validated them, we're fixing some functionality. Here are the changes, which you can read about in our issues:

    • Fix footprints (#11):
      • DC Jack flipped
      • GPIO header flipped (pin 1 should be pin 2)
      • USB footprint with soldermask (#4)
      • New OLED display connector & display (#6)
    • Usability enhancements, with more readable silkscreen (#10)
    • BOM errors:
      • SODIMM connector (#9)
      • HDMI current limiting resistor, which allows for correct resolution (#3)
      • Larger transistor footprint to avoid misalignments (#8, #5)
    • Fix pullup
      • Add pullup to GPIO04 (#2)
    Source code(tar.gz)
    Source code(zip)
  • A00(Jul 28, 2021)

Owner
NVIDIA AI IOT
NVIDIA AI IOT
A python implementation of Yolov5 to detect fire or smoke in the wild in Jetson Xavier nx and Jetson nano

yolov5-fire-smoke-detect-python A python implementation of Yolov5 to detect fire or smoke in the wild in Jetson Xavier nx and Jetson nano You can see

null 20 Dec 15, 2022
Predict bus arrival time using VertexAI and Nvidia's Jetson Nano

bus_prediction predict bus arrival time using VertexAI and Nvidia's Jetson Nano imagenet the command for imagenet.py look like this python3 /path/to/i

null 10 Dec 22, 2022
🦕 NanoSaur is a little tracked robot ROS2 enabled, made for an NVIDIA Jetson Nano

?? nanosaur NanoSaur is a little tracked robot ROS2 enabled, made for an NVIDIA Jetson Nano Website: nanosaur.ai Do you need an help? Discord For tech

NanoSaur 162 Dec 9, 2022
Jetson Nano-based smart camera system that measures crowd face mask usage in real-time.

MaskCam MaskCam is a prototype reference design for a Jetson Nano-based smart camera system that measures crowd face mask usage in real-time, with all

BDTI 212 Dec 29, 2022
Using this codebase as a tool for my own research. Making some modifications to the original repo for my own purposes.

For SwapNet Create a list.txt file containing all the images to process. This can be done with the GNU find command: find path/to/input/folder -name '

Andrew Jong 2 Nov 10, 2021
A PyTorch-based open-source framework that provides methods for improving the weakly annotated data and allows researchers to efficiently develop and compare their own methods.

Knodle (Knowledge-supervised Deep Learning Framework) - a new framework for weak supervision with neural networks. It provides a modularization for se

null 93 Nov 6, 2022
TensorRT examples (Jetson, Python/C++)(object detection)

TensorRT examples (Jetson, Python/C++)(object detection)

Nobuo Tsukamoto 53 Dec 22, 2022
AI pipelines for Nvidia Jetson Platform

Jetson Multicamera Pipelines Easy-to-use realtime CV/AI pipelines for Nvidia Jetson Platform. This project: Builds a typical multi-camera pipeline, i.

NVIDIA AI IOT 96 Dec 23, 2022
Easy to use Python camera interface for NVIDIA Jetson

JetCam JetCam is an easy to use Python camera interface for NVIDIA Jetson. Works with various USB and CSI cameras using Jetson's Accelerated GStreamer

NVIDIA AI IOT 358 Jan 2, 2023
Energy consumption estimation utilities for Jetson-based platforms

This repository contains a utility for measuring energy consumption when running various programs in NVIDIA Jetson-based platforms. Currently TX-2, NX, and AGX are supported.

OpenDR 10 Jun 17, 2022
Neural Nano-Optics for High-quality Thin Lens Imaging

Neural Nano-Optics for High-quality Thin Lens Imaging Project Page | Paper | Data Ethan Tseng, Shane Colburn, James Whitehead, Luocheng Huang, Seung-H

Ethan Tseng 39 Dec 5, 2022
PaddleRobotics is an open-source algorithm library for robots based on Paddle, including open-source parts such as human-robot interaction, complex motion control, environment perception, SLAM positioning, and navigation.

简体中文 | English PaddleRobotics paddleRobotics是基于paddle的机器人开源算法库集,包括人机交互、复杂运动控制、环境感知、slam定位导航等开源算法部分。 人机交互 主动多模交互技术TFVT-HRI 主动多模交互技术是通过视觉、语音、触摸传感器等输入机器人

null 185 Dec 26, 2022
Make your own game in a font!

Project structure. Included is a suite of tools to create font games. Tutorial: For a quick tutorial about how to make your own game go here For devel

Michael Mulet 125 Dec 4, 2022
Code for the paper: Sketch Your Own GAN

Sketch Your Own GAN Project | Paper | Youtube Our method takes in one or a few hand-drawn sketches and customizes an off-the-shelf GAN to match the in

null 677 Dec 28, 2022
Pip-package for trajectory benchmarking from "Be your own Benchmark: No-Reference Trajectory Metric on Registered Point Clouds", ECMR'21

Map Metrics for Trajectory Quality Map metrics toolkit provides a set of metrics to quantitatively evaluate trajectory quality via estimating consiste

Mobile Robotics Lab. at Skoltech 31 Oct 28, 2022
Apply our monocular depth boosting to your own network!

MergeNet - Boost Your Own Depth Boost custom or edited monocular depth maps using MergeNet Input Original result After manual editing of base You can

Computational Photography Lab @ SFU 142 Dec 17, 2022
Have you ever wondered how cool it would be to have your own A.I

Have you ever wondered how cool it would be to have your own A.I. assistant Imagine how easier it would be to send emails without typing a single word, doing Wikipedia searches without opening web browsers, and performing many other daily tasks like playing music with the help of a single voice command.

Harsh Gupta 1 Nov 9, 2021
A colab notebook for training Stylegan2-ada on colab, transfer learning onto your own dataset.

Stylegan2-Ada-Google-Colab-Starter-Notebook A no thrills colab notebook for training Stylegan2-ada on colab. transfer learning onto your own dataset h

Harnick Khera 66 Dec 16, 2022