sábado, 15 de diciembre de 2018

digispark = rubber ducky

Pasos para conseguir una rubber ducky con un arduino Digispark USB
Paso0: Tener IDE de arduino actualizada (mejor si es ultima version)

Paso1: descargar e instalar driver de la DigisparkUSB  aqui


Por defecto instala con VID=16d0 y el PID=087E

Paso2: Bajar paquete de compatibilidad de la tarjeta con IDE de Arduino, ir a Archivo -> Preferencias -> Gestor de URLs añadiremos el gestor:
http://digistump.com/package_digistump_index.json

Paso3: Instalamos y seleccionamos nuestra tarjeta DigisparkUSB de 16.5Mhz en Herramientas -> Placa -> Gestor de Tarjetas (digistump avr)
Paso3a: El teclado (#include "DigiKeyboard.h") por defecto es Ingles, asi que hay que descargar e instalar librerias de idiomas de teclado de:  https://github.com/ernesto-xload/DigisparkKeyboard

Paso4: Programamos nuestro primer Hola Mundo, en nuestro  rubber ducky=digisparkUSB

Programa ejemplo: que realiza 2 acciones cuando se conecta el rubber ducky=digisparkUSB
  1- abre block de notas de la PC, 2- Escribe Hola mundo!
#define kbd_es_es
#include "DigiKeyboard.h"
void setup() {
   DigiKeyboard.update();
   DigiKeyboard.delay(5000);
}
void loop() {
   DigiKeyboard.sendKeyStroke(KEY_R, MOD_GUI_LEFT);
   delay(250);
   DigiKeyboard.println(F("notepad"));
   delay(250);
   DigiKeyboard.println(F("Hola mundo!"));
   while(1);
}
NOTA: Para subir este programa u otros al digisparkUSB, conectarlo al PC cuando se solicita en los mensajes del IDE de arduino, antes NO.

Programa Funcionando: