🔥 Intro: la necesidad del loco apasionado
Hace tiempo doy vueltas entre comprar una iPad o una MacBook Pro. No es por la plata: soy dev, trabajo cómodo en mi escritorio con tres monitores y cuando viajo no siempre programo. Pero a veces surge una urgencia y con el celu no alcanza: reiniciar un servicio, revisar logs, hacer SSH y salvar el día.
Tener una MacBook sólo para esos ratitos sería como tener una Ferrari en el garage sin nafta 🏎️⛽️.
La iPad me cerraba más: chica, discreta, ideal para ver series/pelis 🍿 y, si pinta, algún jueguito 🎮. Con iPadOS 26 + un buen teclado (el de Apple o el Logitech Combo Touch) los planetas se alinearon. Peeero… necesito Linux. UTM funciona, pero no me enamora para mi día a día.
Entonces, la idea obvia: Raspberry Pi 5 (16 GB) —un cañón— como cerebro Linux y Debian. Quiero VS Code/Cursor, herramientas de pentesting, mis chiches de hacking y todo el arsenal que ya tengo. Y lo quiero en el bolsillo, sin cargar con un laptop entero.
La clave: un solo cable USB-C que alimente la Raspberry y, a la vez, cree una interfaz de red en el iPad para entrar por SSH (y si quiero, VNC/RDP) y usar el iPad como monitor adicional. Sumale la case Argon Neo 5 y tenés el combo definitivo para un geek 🤓.
Así nació PiPad Pro: un gadget USB que hace tipo de tethering inverso, sacando ideas de la comunidad y documentando mi receta para que funcione simple y estable. 🚀
🔧 Adición (2025-09-28) — iPad Pro M4
En algunos iPad Pro M4, puede ser necesario aumentar el límite de corriente USB-C de la Pi 5:
sudo rpi-eeprom-config -e
Al final del archivo, agregá y guardá:
PSU_MAX_CURRENT=3000
Reiniciá la Pi. ⚡️
🚀 Proceso (desde cero)
Probado con Raspberry Pi Imager v1.9.6 y Raspberry Pi OS 64-bit (bookworm).
-
Instalá y ejecutá Raspberry Pi Imager.
-
Elegí Raspberry Pi 5 · Raspberry Pi OS (64-bit) · tu microSD (32 GB en este caso).
-
OS Customization → Edit Settings.
-
Definí hostname, usuario/clave, Wi‑Fi, locales.
-
Guardá la personalización (Yes).
-
Confirmá el destino (Yes) y flasheá.
-
Esperá a que termine la escritura + verificación.
-
Insertá la microSD en la Pi 5 y conectala al iPad/iPhone/Mac con un USB‑C ⇄ USB‑C de buena calidad (Thunderbolt 3/4 o USB 3.2).
- Ejemplo: OWC Thunderbolt 4 Cable (corto y robusto).
-
Desde iOS/iPadOS/macOS, con una app SSH (p. ej. Blink), conectate por la red Wi‑Fi configurada en el paso 4 (o usa Ethernet temporal).
- Si no sabés la IP:
ssh usuario@<hostname>.local
- Aceptá la host key en el primer ingreso.
- Si no sabés la IP:
-
Elevá privilegios:
sudo bash
(o usá sudo
delante de cada comando)
- Editá
/boot/firmware/cmdline.txt
y agregá justo después derootwait
:
modules-load=dwc2,g_ether
Ejemplo real:
console=serial0,115200 console=tty1 root=PARTUUID=410ada1e-02 rootfstype=ext4 fsck.repair=yes rootwait modules-load=dwc2,g_ether quiet splash plymouth.ignore-serial-consoles cfg80211.ieee80211_regdom=AR
- Editá
/boot/firmware/config.txt
: verificá que no esté comentadootg_mode=1
.
Luego, después de[all]
, agregá:
dtoverlay=dwc2
Ejemplo real (extracto):
[cm4]
otg_mode=1
[cm5]
dtoverlay=dwc2,dr_mode=host
[all]
dtoverlay=dwc2
- Creá la conexión en NetworkManager para la interfaz USB:
nmcli con add type ethernet con-name ethernet-usb0
- Editá
/etc/NetworkManager/system-connections/ethernet-usb0.nmconnection
y dejalo así (respetá tuuuid
):
[connection]
id=ethernet-usb0
uuid=<tu-uuid>
type=ethernet
autoconnect=true
interface-name=usb0
[ethernet]
[ipv4]
method=shared
[ipv6]
addr-gen-mode=default
method=auto
[proxy]
ipv4.method=shared
hace que la Pi asigne IP por usb0 y comparta Internet con NAT automáticamente. 🎯
- Script de “gadget” para asegurar el up de la conexión al boot:
sudo tee /usr/local/sbin/usb-gadget.sh >/dev/null <<'EOF'
#!/bin/bash
nmcli con up ethernet-usb0
EOF
sudo chmod a+rx /usr/local/sbin/usb-gadget.sh
- Servicio systemd:
sudo tee /lib/systemd/system/usbgadget.service >/dev/null <<'EOF'
[Unit]
Description=My USB gadget
After=NetworkManager.service
Wants=NetworkManager.service
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/local/sbin/usb-gadget.sh
[Install]
WantedBy=sysinit.target
EOF
sudo systemctl enable usbgadget.service
- Reiniciá la Pi:
sudo shutdown -r now
-
En Ajustes de iPad/iPhone, verificá que aparezca Ethernet debajo de Wi‑Fi y tenga IP asignada.
Si no hay IP: revisá cuidadosamente los pasos 11–16. -
Prueba final:
- Activá Modo Avión (sin Wi‑Fi) ✈️
- En la app SSH:
ssh usuario@<hostname>.local
- Si conecta, ¡listo! La Pi queda alimentada y accesible con un solo cable USB‑C. 🥳
📂 Compartir archivos entre Pi e iPad (Samba)
Para acceder a /home/pi
desde la app Archivos del iPad y tener permisos de lectura y escritura, configurá Samba:
-
Instalá Samba:
sudo apt update sudo apt install -y samba
-
Creá usuario Samba (ejemplo con
pi
):sudo smbpasswd -a pi sudo smbpasswd -e pi
-
Agregá este bloque al final de
/etc/samba/smb.conf
:[home-pi] path = /home/pi browseable = yes read only = no create mask = 0644 directory mask = 0755 valid users = pi force user = pi force group = pi
-
Reiniciá Samba:
sudo systemctl restart smbd nmbd sudo systemctl enable smbd nmbd
-
En el iPad → Archivos → Conectar a servidor →
smb://10.42.0.1
(la IP de la Pi enusb0
).
Usuario:pi
· Contraseña: la que configuraste ensmbpasswd
.
Ahora tu carpeta /home/pi
aparece como una unidad más en Archivos, con permisos de lectura y escritura. ✅
📋 Especificaciones del sistema (Neofetch)
Modelo: Raspberry Pi 5 Model B Rev 1.1 (BCM2712)
CPU: 4× ARMv8 @ 2.4 GHz
RAM: 16 GB (≈ 16219 MiB visibles)
SO: Debian 12 (bookworm) aarch64
Kernel: 6.12.47+rpt-rpi-2712
Disco: microSD 32 GB → /
29G (5.5G usados, 22G libres)
Swap: 512 MiB
🧪 Troubleshooting rápido
- iPad sin IP → repasá pasos de
nmconnection
y confirmáipv4.method=shared
. - Se cae Wi‑Fi al enchufar USB → ajustá métricas de rutas con NetworkManager:
nmcli con modify "USB iPad" ipv4.never-default yes ipv4.route-metric 600 nmcli con modify "Wi-Fi" ipv4.route-metric 100 nmcli con up "USB iPad"; nmcli con up "Wi-Fi"
- Probar transferencia de archivos → en Archivos, copiá algo dentro de
home-pi
. Debe quedar en/home/pi
en la Pi con dueñopi:pi
.
✅ Conclusión
PiPad Pro es el puente perfecto entre la portabilidad del iPad y la potencia de Linux en la Raspberry Pi 5. Con un solo cable USB-C, alimentás y administrás tu entorno, evitando cargar con un laptop completo.
Claves: dwc2
+ g_ether
, NetworkManager shared
, y Samba para acceso a archivos en lectura/escritura directo desde la app Archivos.
Documentá tu entorno con Neofetch para reproducibilidad y medí con iperf3. ¡A disfrutar del PiPad Pro! 🚀🧰🖥️