Adding A Mouse And Keyboard To Your ODROID-GO Advance: Making the Ultimate on the GO Computer

I thought a small keyboard with an analog stick underneath it attached to the ODROID-GO Advance, similar to the keyboard for the classic ODROID-GO, would be a great project. The keyboard could attach via USB, but a USB Hub Chip would also be needed so that a USB WiFi module could also be attached.

The picture in my mind was not to build a professional-level keyboard, since I lack PCB build experience. Instead I would take an Arduino Micro, it already has a chip that can be identified as Keyboard and mouse, a small USB Hub PCB, a small analog stick, and a lot of keys. The N900 has a 13x3 layout of keys, and was quite usable, but needed some on-screen help. So I though that a 4x12 or 5x12 layout would be better, but I was still unsure about the size.

I created a quick concept with a simple button layout to get an idea for the placement and overall size.

Figure 1 - Keyboard and Mouse concept
Figure 1 - Keyboard and Mouse concept

The USB hub that I found was a good small size and had 3 USB ports and 1 Ethernet port.

Figure 2 - The USB hub and the black Arduino
Figure 2 - The USB hub and the black Arduino

Based on feedback on the forum I changed the components. I will now use a 4 port USB Hub. I put together the buttons and completed the work on the hub. I removed 3 USB ports and directly connected a Wifi dongle with an on/off switch and on another port I have connected a Micro USB plug for the Arduino. One port will not be used and a second port exposed to the side would allow other things to be connected. The first test was successful, and I rerouted the USB port to the bottom of the GO Advance to allow me to connect the keyboard more easily. I also included a 2-in-1 Micro-SD module so I can have 2 OS images with me and switch between them easily.

Figure 3 - The USB hub connected to the GO Advance
Figure 3 - The USB hub connected to the GO Advance

For the case I used a FDM 3D printer, and for the keys for the keyboard I used a resin 3D printer for much better detail.

Figure 5 - The printed keys, before the next step of painting them black
Figure 5 - The printed keys, before the next step of painting them black

Figure 6 - Prototype case
Figure 6 - Prototype case

I painted the keys black, but lightened the paint application to keep the marks and letters as visible as possible. Then I use wax from a candle, not melting hot, but I take the candle and rub it over the markings and remove everything so only the wax in the marks remains. Figure 7 shows it with one color. Next I want to use 3 colors, which was tricky.

Figure 7 - 2-toned keys
Figure 7 - 2-toned keys

(Figure 7 - 2-toned keys)

After that, I made some modifications to the case and 3D printed it again, this time in black.

Figure 8 - Second print of the case
Figure 8 - Second print of the case

Figure 9 - New Case with the keys inserted
Figure 9 - New Case with the keys inserted

With my first microSD extension, I managed to damage it when I put everything together. Luckily I bought two of them and was able to carry on. Additionally, I switched to a smaller nano USB hub, since the space inside of the case was a bit too crowded. The smaller hub, however, will not have an extra USB plug.

Figure 10 - Keyboard not attached, showing the microSD extension
Figure 10 - Keyboard not attached, showing the microSD extension

Figure 11 - Keyboard attached
Figure 11 - Keyboard attached

More information, and the original Hardkernel forum thread, is available at https://forum.odroid.com/viewtopic.php?f=187&t=38047.

Be the first to comment

Leave a Reply