Skip to content

guljeny/keerbe_firmware

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KEERBE

Ergonomic mechanical keyboard wtitten on circuitPython.

This repo contains only firmware code, controll app in another repository.

Keyboard lookup

Components

Buy this components:

  • 2 Raspberry pi pico
  • 48 switches and keycaps
  • 48 diodes 1N4827A
  • 2 resistors 4.7 kOhm
  • 1 EEPROM module 24LC16B
  • 1 128x32 SSD1306 OLED display

Flashing

First, install CircuitPython on picos:

  • Download CircuitPython 7.0.0

    Firmware writed for this CP version, use another version for your own risc!

  • Connnect first pico with pressed BOOTSEL button to pc. A new drive will show up on your computer
  • Copy downloaded CP7 file to PICO drive
  • Wait to pico loads, and when you see CIRCUITPY drive disconnect it (unplug USB cable)
  • Repeat it for second pico

Now flash firmware:

  • Clone this repo
  • Connect first pico to pc
  • When pico loads (You will see CIRCUITPY drive) run bin/flash_left. It's upload code for left part
  • Wait to command finish
  • Unplug USB cable from pico
  • Mark this pico, IT'S CAN BE USED ONLY IN LEFT PART
  • Connect second pico
  • Run bin/flash. It's upload code for right, main part

Next time (on flashed keyboard) you can upgrade firmware by press Update button in controll software

Wiring

It's easy, just wire pins with same names and enjoy.

You shold be careful about pin names.

Pico pinout. You can change it in ./constants.py. Pico pinot

Now, wire each pin to same as schematic.

Second part

Connect beetwen both boards VCC to VCC, GND to GND and RX on main (right) board to TX on second (left) part.

I used 3.5mm audio jack to do this

Display

To connect display just wire VCC, GND, SCL, SDA on board and display.

Keys

Connect rows/columns to diodes and controller (left and right is equal) wire keys

EEPROM

wire keys

Case

Print models from ./3d_models/

How this looks?

Or, you can do it as you'd like, with your models

Models have places for audio jack TRS CKX3-3.5-26, if you use another change it.

Controll app

App for update keyboard/change layout.

App main screen

For more detailed information go to app repo

Restore keyboard

Pico allows only one boot way: as keyboard or as usb drive.

By default after flash firmware pico always boot as keyboard.

If you have problems and want to get acces to file system of your pico:

  • Unplug USB cable from keyboard
  • Connect keyboard again with pressed top left button (Y key): Key to reset
  • You will see CIRCUITPY drive

Known problems

  • On some systems/devices keyboard can't awake your PC

Contribute

Want to contribute? Welcome!

About

Firmware for ergonomic mechanical keyboard

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages