
Usando la Shield Control Remoto PS2 con Arduino Uno
Este tutorial te guiará paso a paso para controlar un proyecto con Arduino Uno utilizando un mando de PlayStation 2 y la shield Control Remoto PS2. Aprenderás cómo conectar todo correctamente, instalar la librería necesaria y entender el funcionamiento del código.

Materiales necesarios
- Arduino Uno
- Shield Control Remoto PS2
- Control de PlayStation 2 (DualShock)
- Cables Dupont (si no usas la shield directamente)
- PC con el IDE de Arduino instalado
Instalación de la librería
Para comunicarte con el mando PS2 necesitas la librería PS2X_lib
. Puedes descargarla desde el repositorio oficial:
🔗 Descargar desde GitHub (repositorio oficial)
Si el enlace anterior no funciona, puedes usar este enlace alternativo:
🔽 Descargar archivo ZIP alternativo
Para instalar la librería en el IDE de Arduino:
- Abre el IDE de Arduino.
- Ve a Programa > Incluir Librería > Añadir biblioteca .ZIP...
- Selecciona el archivo ZIP descargado.
Conexión de la Shield
La Shield PS2 se conecta directamente sobre el Arduino Uno. Sin embargo, si necesitas realizar conexiones manuales, este es el diagrama correspondiente:

Correspondencia de pines
Pin del conector PS2 | Señal | Pin en Arduino |
---|---|---|
1 | Data | 12 |
2 | Command | 11 |
3 | Vibración | No conectado |
4 | GND | GND |
5 | 3.3V | 3.3 |
6 | Attention | 10 |
7 | Clock | 13 |
8 | Sin uso | — |
9 | ACK | — |
Importante: Conecta y enciende el mando antes de encender el Arduino.

Código de ejemplo
Copia y pega el siguiente código en un nuevo sketch y subelo a tu Arduino Uno, no olvides seleccionar el puerto COM correspondiente.
El código completo queda de la siguiente forma:
¿Qué hace el código?
Este código permite:
- Detectar si el mando está conectado y configurado correctamente.
- Reconocer el tipo de control (DualShock o GuitarHero).
- Leer los botones presionados, soltados o mantenidos.
- Leer los valores de los joysticks (sticks analógicos).
- Activar la vibración del mando usando el botón X.
Abre el monitor serial a 57600 baudios y prueba presionando cada botón de tu control. Deberías ver un mensaje indicando qué botón fue presionado.
Además, si mantienes presionado L1 o R1, verás en el monitor serial los valores de los sticks analógicos, ideal para controlar velocidad, dirección o variables proporcionales.
✅ Si tu control lo soporta, también puedes obtener el nivel de presión de algunos botones, como las flechas direccionales, usando por ejemplo:
Serial.println(ps2x.Analog(PSAB_PAD_UP), DEC);
Esto te permite usar botones como si fueran entradas analógicas adicionales.
Personalización
El código es flexible y puedes adaptarlo fácilmente para encender LEDs, mover motores, accionar servos o ejecutar funciones con cualquier botón del mando.
- Start: iniciar un proceso
- Select: pausar o detener
- Joysticks: controlar movimiento o dirección
- X: activar vibración o salida PWM
Consejos
- Asegúrate de que el control esté conectado y encendido antes de energizar el Arduino.
- Algunos controles genéricos pueden no soportar funciones avanzadas como vibración o lectura analógica.
- Usa
Serial.println()
para depurar o mostrar el estado en el monitor serial.
¿Y ahora qué?
¡Ya estás listo para integrar tu mando PS2 en tus proyectos Arduino! Puedes usarlo para controlar un robot, un brazo mecánico, un coche RC o simplemente experimentar con entradas múltiples.
No comments
0 comments