🛠 Console série sur USB : la Zero en port série (CDC-ACM)

Raspberry Pi Zero (2015) — Ficha de placa · intermediaire · Schéma : IMG-zero-intermediaire-2-console-serie-usb-cdc.svg — Zero reliée au port USB d'un PC par son port données, terminal série /dev/ttyACM0 ouvert sur le PC affichant un prompt de login, alimentation externe sur le port POWER.

Objetivo

Convertir el único puerto de datos del Zero en una consola serie USB (CDC-ACM): conéctalo a cualquier ordenador y obtén una shell real en /dev/ttyACM0 — sin red, sin pantalla. El puerto OTG puede emular Ethernet, serie, MIDI o almacenamiento masivo; este tutorial realiza la parte serie de la construcción clásica de 'memoria USB Linux'.

Componentes

Pasos

# 1) Enable the DWC2 OTG controller:
echo "dtoverlay=dwc2" | sudo tee -a /boot/firmware/config.txt

# 2) Load the serial gadget at boot — cmdline.txt stays ONE single line:
sudo sed -i 's/rootwait/rootwait modules-load=dwc2,g_serial/' /boot/firmware/cmdline.txt

# 3) Get a login prompt on the gadget serial port:
sudo systemctl enable --now serial-getty@ttyGS0.service

Reinicia, conecta el puerto de datos al anfitrión y luego, en el anfitrión:

dmesg | tail               # new cdc_acm device
cu -l /dev/ttyACM0         # or: sudo picocom /dev/ttyACM0

> NO VERIFICADO: la nomenclatura de los módulos (g_serial heredado frente a configfs usb_f_serial) varía según las versiones del sistema operativo — verifica los módulos incluidos en tu compilación de Raspberry Pi OS.

Comprobación

El anfitrión muestra /dev/ttyACM0 (Linux/macOS) o un nuevo puerto COM (Windows); la terminal solicita un inicio de sesión y uname -a se ejecuta en el Zero a través de ella.

Problemas comunes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales