IR2USB - IR to USB HID Converter based on ATtiny45/85
IR2USB receives signals from an infrared remote control and converts them into keyboard inputs, mouse movements or joystick inputs. Since it is recognized as a generic Human Interface Device (HID) via USB on the PC, no driver installation is necessary.
- Design Files (EasyEDA): https://easyeda.com/wagiminator/attiny85-ir2usb
The schematic is shown below:
The communication via USB is handled by the V-USB software-only implementation of a low-speed USB device. To simplify the software development with the Arduino IDE the VUSB_AVR board package is used. It includes libraries to implement keyboard, mouse and joystick devices, which makes it easy to implement a converter.
The IR receiver implementation is based on NeoController and supports the NEC protocol only, but this is used by almost all cheap IR remote controls. Alternatively, you can build such a remote control yourself with TinyRemote.
Compiling and Uploading
Since there is no ICSP header on the board, you have to program the ATtiny either before soldering using an SOP adapter, or after soldering using an EEPROM clip. The AVR Programmer Adapter can help with this.
- Open Arduino IDE.
- Install VUSB-AVR.
- Go to Tools -> Board -> VUSB AVR and select VUSB-AVR.
- Go to Tools -> CPU and select ATtiny85 (16.5 MHz internal).
- Connect your programmer to your PC and to the ATtiny.
- Go to Tools -> Programmer and select your ISP programmer.
- Go to Tools -> Burn Bootloader to burn the fuses.
- Open the sketch and click Upload.
- Disconnect the programmer and connect the device via USB to your PC.
References, Links and Notes
This work is licensed under Creative Commons Attribution-ShareAlike 3.0 Unported License. (http://creativecommons.org/licenses/by-sa/3.0/)