https://github.com/pimoroni/keybow-firmware
Keybow Firmware for the Raspberry Pi Zero
https://github.com/pimoroni/keybow-firmware
Last synced: 26 days ago
JSON representation
Keybow Firmware for the Raspberry Pi Zero
- Host: GitHub
- URL: https://github.com/pimoroni/keybow-firmware
- Owner: pimoroni
- License: other
- Created: 2018-11-06T14:34:54.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-07-19T08:02:27.000Z (10 months ago)
- Last Synced: 2025-03-31T04:07:06.579Z (about 1 month ago)
- Language: C
- Homepage:
- Size: 40.3 MB
- Stars: 182
- Watchers: 21
- Forks: 68
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-repositories - pimoroni/keybow-firmware - Keybow Firmware for the Raspberry Pi Zero (C)
README
# Keybow and Keybow MINI
[Buy Keybow and Keybow MINI here](https://shop.pimoroni.com/?q=keybow)
Keybow is an easy-to-build, solderless, DIY mini mechanical keyboard, Raspberry Pi-powered, with twelve illuminated keys, hot-swap clicky or linear switches, clear keycaps, and awesome customisable layouts and macros. It's the ultimate macro pad.
Keybow MINI is a three-key version of it's older sibling, Keybow.
This Keybow OS is RAM-disk-based and built upon a stripped-down Raspbian, with C bindings that setup and run the USB HID, and a series of Lua-based scripts to customise the key layouts and lighting.
## Using the Keybow software
Format a micro-SD card in FAT32 format (we recommend the SD Association's [SD Card Formatter](https://www.sdcard.org/downloads/formatter_4/), and then drop the contents of the [sdcard](sdcard) folder (only the files inside the folder) onto the freshly-formatted micro-SD card.
You can grab the latest `keybow-x.x.x.zip` file from https://github.com/pimoroni/keybow-firmware/releases and unzip it directly to your SD card.
Learn more about how to use Keybow on our [learning portal](https://learn.pimoroni.com/product/keybow).
## Building
You'll need a build toolchain.
```
sudo apt install build-essential autoconf libtool libconfig-dev libpng-dev
```### bcm2835
Build the bcm2835 library and install into a local build directory for static linking.
```
cd bcm2835-*.**
autoreconf -f -i
mkdir build
./configure --prefix=$(pwd)/build
make
make install
cd ..
```### libusbgx
```
sudo apt install libconfig-dev
cd libusbgx
autoreconf -i
mkdir build
./configure --prefix=$(pwd)/build
make
make install
cd ..
```### lua
```
sudo apt install libreadline-dev
cd lua-5.4.0
make linux
cd ..
```