🛠 Configure I/O on Xerxes Nano
Objectifs
This tutorial aims to familiarize users with the input/output interfaces of the Xerxes Nano carrier board. We will configure GPIO pins to light an LED and explore the I2C interface to read a basic sensor. The goal is to understand how the Jetson Orin Nano or Turing RK1 module communicates with the physical world via the board's connectors, leveraging available open-source resources.
Matériel nécessaire
- Xerxes Nano carrier board with compatible module (Jetson Orin Nano or Turing RK1).
- USB-C or PoE power supply (depending on jumper configuration).
- A red LED and a 330-ohm resistor.
- A simple I2C sensor (e.g., BMP280 or MPU6050) and Dupont wires.
- Host computer with SSH installed.
- OS: Ubuntu Server or JetPack installed on the board.
Étapes
- Physical Preparation : Ensure the board is powered off. Insert the LED into the GPIO connector, respecting polarity (long leg to GPIO, short to GND) via the resistor. For the I2C sensor, connect VCC to 3.3V, GND to GND, and SDA/SCL to the dedicated I2C pins on the board.
- Connection and Access : Connect power. SSH into the board's IP address. Verify GPIO management tools are installed:
sudo apt update && sudo apt install gpio-utils i2c-tools.
- Interface Activation : Depending on the module, activate buses via device tree configuration or NVIDIA Jetson tools. For a quick test, check bus visibility:
ls /dev/i2c*. If empty, you may need to enable the I2C overlay viasudo raspi-config(if compatible) or NVIDIA config files.
- GPIO Test : Identify the physical pin number corresponding to your LED. Use the command:
sudo gpio export <number> outthensudo gpio write <number> 1to light the LED. Wait 2 seconds, thensudo gpio write <number> 0to turn it off.
- I2C Reading : Scan the bus to find the sensor address:
sudo i2cdetect -y 1. Note the address (e.g., 0x76). You can now use Python scripts with thesmbus2library to read raw data.
Vérification
The LED should turn on and off on command. The i2cdetect command should display the sensor's hexadecimal address. If nothing appears, check SDA/SCL wiring and 3.3V power.
Pour aller plus loin
Explore I2S interfaces for audio or configure the M.2 port to add fast NVMe storage. Check KiCad files on GitHub to understand signal routing.