DEV Community

Daniel Elias Diamon Vazquez
Daniel Elias Diamon Vazquez

Posted on

Turn Android into a Physical USB Keyboard for PC BIOS / UEFI with Arduino

Turn Your Android Phone into a Physical USB Keyboard for PC BIOS / UEFI Setup

Have you ever worked on a headless server, mining rig, or a PC with a damaged keyboard, only to find yourself stuck at the "Press DEL to enter UEFI Setup" screen without a spare USB keyboard?

Teclado BIOS Arduino is an open-source Android tool that converts any smartphone into a genuine hardware USB keyboard recognized at the lowest firmware boot stage.


⚡ System Architecture

Smartphones cannot directly act as low-speed USB HID keyboards for legacy BIOS setups due to USB controller protocol differences. To solve this, an inexpensive Arduino (Uno, Nano, or Pro Micro) acts as the hardware interface bridge:

 [ Android Device ] ──(USB-OTG)──► [ Arduino Board ] ──(USB HID)──► [ Target PC / Server ]
 (Virtual Touch Console)            (V-USB / HID Core)               (BIOS / UEFI Level)
Enter fullscreen mode Exit fullscreen mode
  1. Android Side: Touch interface featuring dedicated BIOS hotkeys: DEL, F2, F10, F11, F12, ESC, Enter, and Arrow navigation keys.
  2. Serial / OTG Layer: Commands are sent over USB-OTG serial to the Arduino.
  3. Hardware Emulation: The Arduino emulates a true 1.5 Mbps USB Low-Speed HID keyboard, fully recognized by BIOS/UEFI before any operating system loads.

📌 Project Resources

Tested on multiple motherboards and server racks. Schematics and connection diagrams are available in the repository!

Top comments (0)