mini (Pi)QWERTY USB keyboard

USB hid keyboard ... etc. for Raspberry PI

Similar projects worth following
based on SAMD21 and 56 colorful buttons


- micro USB HID
- USB HID on 4pin header
- serial
- I2C


there is no small wired USB HID keyboard for RPI

Keyboard is designed as 2 layers

- first top layer - holes and button names

- second layer - buttons and controler

ALL FIT in one 10x10cm PCB ORDER

MICRO CONTROLLER is very powerful is exactly ARDUINO ZERO ...256Kb FLASH you can write

your own keyboard driver in simple arduino IDE

WITH I2C header you can ...

- Add RFID NFC reader

- Add display and get feedback from computer (like terminal)

- add sensors (temp, humidity, pressure, light)

You can also create standalone computer :)

sch - 710.03 kB - 05/22/2018 at 13:08


brd - 176.84 kB - 05/22/2018 at 13:08


sch - 532.01 kB - 05/18/2018 at 21:54


brd - 85.85 kB - 05/18/2018 at 21:54


sch - 537.12 kB - 05/18/2018 at 21:11


View all 8 files

View all 7 project logs

Enjoy this project?



jarek319 wrote 3 days ago point

Or a trackball with two little buttons for right and left click! I had to give up on finding these in mass quantities, but they're pretty easy to find in tens on ebay :) I used it here

  Are you sure? yes | no

bholroyd wrote 6 days ago point

There's a nice large area to the right of the the board, above the mcu. any thoughts on what to put there, maybe a trackpad?

Also have you thought about adding some shoulder switches between the 2 pcb layers? (not neccesarily on the shoulders) Space or Shift, left and right, or user programmable keys might be good candidates for moving off the front panel.

  Are you sure? yes | no

bobricius wrote 6 days ago point

Trackpad, maybe in next version. Shoulders i think no, boards are on way, I want see and taste in hand.

  Are you sure? yes | no

reldred wrote 06/09/2018 at 05:50 point

Looks brilliant. Combined with an RPI, Pimoroni's Hyperpixel screen, and a big old lipo cell I think this would make the perfect little handheld.

Looking forward to being able to throw money at you.

  Are you sure? yes | no

bobricius wrote 6 days ago point

Hyperpixel screen is nice for small computer

  Are you sure? yes | no

fabian wrote 05/31/2018 at 09:56 point

this is not usefull for not english languages. in Polish are: ąźćżół 

add alt-gr and pgup/down for vi/terminal

  Are you sure? yes | no

bobricius wrote 06/02/2018 at 18:10 point

This is basic design. You can create own layout. I am from Slovakia we have much more special characters.

  Are you sure? yes | no

Vikas V wrote 05/30/2018 at 04:03 point

Cool project and build idea. Which PCB design software do you use?

  Are you sure? yes | no

bobricius wrote 05/30/2018 at 06:41 point


  Are you sure? yes | no

Lee Cook wrote 05/23/2018 at 11:31 point

Nice!!  Just thinking, you could reduce the amount of PCB designs (some site make them cheaper if you only have a single "design"), by using surface mount switches and having the fascia on the back of the switch panel.

Of course the layout becomes a little more wacky because of mirroring....

  Are you sure? yes | no

bobricius wrote 05/23/2018 at 11:46 point

Hi, I have only one design "last" all other pictures are only evolution. I use TH buttons because they have smaller footpint and can be much better aligned for hand soldering. ebay switches are good, I have about 1000ps but they are hard to press.

 I have some genuine buttons from, they are soft to press and exist in more colors, of course price is higher

  Are you sure? yes | no

danjovic wrote 05/22/2018 at 17:46 point

Very cool! 

How about reduce the amount of keys by adding a key for symbols and another for numbers?  Then...
Q would be 'q'
SHIFT Q would be Q
NUMBR Q would be 1
SYMBL Q would be !
FUNCT Q would be F1 

After all this is a compact keyboard.

PS: Dont forget the CONTROL key for yielding 'standardized' keys like TAB (CNTROL I) and so on...

  Are you sure? yes | no

bobricius wrote 05/22/2018 at 19:44 point

possible but there is no reason for reducing keys, there is lot of space and enough GPIO pins. I this case keyboard look like on ZX spectrum. I think that button layout is perfect and max utilize all space. there is no problem change front panel and with software you have unlimited tweaks.

  Are you sure? yes | no

ActualDragon wrote 05/22/2018 at 13:39 point

Awesome project, for some reason, I can't upload the files to, so i'll be designing my own based on your schematics. Just to be sure, this is the chip, right?

  Are you sure? yes | no

bobricius wrote 05/22/2018 at 19:45 point

yes micro controller is atsamd21e18 you can use smaller memory variants. I chose 18 because is used in arduino zero

  Are you sure? yes | no

ondrejtoral wrote 05/20/2018 at 19:32 point

Great project, I will keep an eye on this. Hope surplus kits will be on tindie soon!

  Are you sure? yes | no

Ryan Mitchell wrote 05/19/2018 at 06:20 point

This is utterly brilliant, I was shocked to see this, it's so damn close to something I worked on years ago, it's uncanny.

Actually, I think I put some pics up here, let me look, ah, yeah:

I've been planning on digging up the files and finishing it for a while, I've wanted to make an Orange Pi wearable for a while now, so it (or your project) would be great.

That said, never having done any SMD work made building it quite a pain, and I kept running into bug after bug that eventually I chucked it in (Some short on the power supply area, interference on the Gyro, don't get me started on using QFN by hand).

All this and I didn't even know about the custom keyboard community, I was doing it all from scratch. Such a coincidence I ended up using the 32u4 like most of these boards, I just thought it was a good chip and liked the USB support. 

Anyway, best of luck! We really do need a nice mini keyboard for our Pi's and wearables, it'd be great if you succeeded in where I TEMPORARILY HALTED ATTEMPTS.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates