
OSO BOOK C1
joeycastillo/The-Open-Book
For details on how to build, test and use Open Book, I've made documentation available here.

At the moment, the code only supports sending static strings, like "Hooray" or "Wow, that's crazy," but eventually it will also support modifier keys like shift and control.
SwitchableMacroKeyboard is an open-source printed circuit board by kevinarne, from the kevinarne/switchableMacroKeyboard repository on GitHub. It is a 2-layer board of 111.1 × 88.9 mm with 38 parts on 34 nets, routed with 141 tracks and 0 vias.
Its parts include 12 diodes, 12 switches, 6 resistors and 1 IC. It belongs with the AVR (ATmega, ATtiny) boards of this library.
Many programs, such as Inkscape, have some pretty intricate keyboard shortcuts that I find challenging to use regularly, so I've made a macro keyboard that can be switched between different macro keyboards.
At the moment, the code only supports sending static strings, like "Hooray" or "Wow, that's crazy," but eventually it will also support modifier keys like shift and control.
To program using the Arduino environment, make sure to set your board to Arduino Leonardo. There are several test sketches in the src/test folder that you can use to test individual components in isolation, but the main sketch is in the src/macroKeyMain folder along with the keyboards.h file that contains the different macro keyboards to be loaded.
If you simply want this to work as a macro keyboard, but with your own commands, you should only have to change the keyboards.h file and upload the code to your Arduino Pro Micro.
Note: the main sketch has no checks on any of the data in keyboards.h. Although the code may compile and upload, failure to correctly format keyboards.h can result in index out of bounds errors, causing the keyboard to stop working until power cycled.
You will need to have the following libraries installed:
| Qty | Value | Footprint | References |
|---|---|---|---|
| 12 | D | Diode_THT:D_DO-35_SOD27_P7.62mm_Horizontal | D1, D2, D3, D4, D5, D6, D7, D8, D9, D10, D11, D12 |
| 12 | SW_Push | keyboardLib:cherryMX | SW1, SW2, SW3, SW4, SW5, SW6, SW7, SW8, SW9, SW10, SW11, SW12 |
| 6 | R_US | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal | R1, R2, R3, R4, R5, R6 |
| 1 | LOGO | Logo:logo | G*** |
| 1 | ProMicro | keyboardLib:ProMicro | U1 |
| 1 | RotaryEncoderWButton | keyboardLib:REnc-PEC12R-Bourns | RE1 |
| 1 | thinOLED | keyboardLib:thinOLED | G1 |
The 34 most common of 38 parts.
It measures 111.1 × 88.9 mm and has 2 copper layers, 1.6 mm thick.
38 parts. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the kevinarne/switchableMacroKeyboard repository on GitHub, at the commit this page was made from: the board is kiCad/kiCad.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask kevinarne before reusing the design.

joeycastillo/The-Open-Book
For details on how to build, test and use Open Book, I've made documentation available here.


hackclub/OnBoard
💡 Join 1,000 teenagers and make your first PCB with a $100 grant!


Ardumower/ardumower
Develop an open source robotic lawn mower (HW+SW reference platform)

CRImier/MyKiCad
My KiCad boards. Can't be bothered uploading individually anymore, so here you go.

