Using Arduino HID on non-v0 platforms is useful if you need a simple and primitive keyboard emulation device. For example, when used with a hardware KVM switch. You can use the firmware to emulate a USB keyboard and mouse, or for the PS/2 keyboard only.
Using Arduino HID on non-v0 platforms is useful if you need a simple and primitive keyboard emulation device. For example, when used with a hardware KVM switch. You can use the firmware to emulate:
* [USB keyboard & mouse](#usb-keyboard--mouse)
* [PS/2 keyboard only](#ps2-keyboard)
* [PS/2 keyboard & USB mouse](#ps2-keyboard--usb-mouse)
## USB keyboard & mouse
## USB keyboard & mouse
* Build and connect HID according to the [diagram](../README.md#setting-up-the-v0) (the bottom part with transistor, level-shifter and Arduino).
* Build and connect HID according to the [diagram](../README.md#setting-up-the-v0) (the bottom part with transistor, level-shifter and Arduino).
@ -24,7 +27,7 @@ Using Arduino HID on non-v0 platforms is useful if you need a simple and primiti
## PS/2 keyboard
## PS/2 keyboard
Using the PS/2 firmware currently has the following limitations:
Using the PS/2 firmware currently has the following limitations:
* The possibility of using USB HID is excluded.
* The possibility of using USB HID is excluded.
* Mouse is not supported due to features of the [PS/2 protocol](https://wiki.osdev.org/PS/2_Mouse).
* PS/2 mouse is not supported due to features of the [PS/2 protocol](https://wiki.osdev.org/PS/2_Mouse).
Both of these problems will be solved one way or another in the future and the two different firmware versions will be combined into one universal one.
Both of these problems will be solved one way or another in the future and the two different firmware versions will be combined into one universal one.
This is a mixed mode of HID which is a compromise for old computers. Connections are made simultaneously by both USB and PS/2 pins, as shown in the diagram above. Follow the [PS/2 instructions](#ps2-keyboard), but use these commands to build and install the firmware: