/Model01-Firmware

The "standard" Keyboardio Model 01 Firmware sketch.

Primary LanguageC++GNU General Public License v3.0GPL-3.0

Keyboardio Model 01 Firmware

The default firmware for the Keyboardio Model 01

This is a quick start guide for folks who are familiar with Arduino and prefer to use the command line. For everyone else:

Download and install

Set up the Arduino IDE

Setup the Arduino IDE on your system. Make sure you install at least version 1.6.10, since older version may not support all required features.

macOS

On macOS, install the Arduino IDE using homebrew cask with brew cask install arduino or download the application from the official website and move it to your /Applications folder.

Linux

On Linux, your distribution's package manager probably includes the Arduino IDE, but it may be an out of date version. If your distribution installs a version of Arduino before 1.6.10, you'll need to install the Arduino IDE following the instructions on the wiki.

If you install Arduino into some place that's /not/ /usr/local/arduino, you'll need to set the $ARDUINO_PATH environment variable to the directory containing the arduino and arduino-builder binaries.

Create and navigate to the Arduino Sketchbook directory

MacOS

mkdir -p $HOME/Documents/Arduino
cd $HOME/Documents/Arduino 

Linux

mkdir -p $HOME/Arduino
cd $HOME/Arduino 

Download hardware platform, including library source code

mkdir -p hardware

## then clone the hardware definitions to make them available to the arduino environment
git clone --recursive https://github.com/keyboardio/Kaleidoscope-Bundle-Keyboardio.git hardware/keyboardio

Download the Model 01 Firmware

git clone https://github.com/keyboardio/Model01-Firmware.git

Build and flash the firmware

Before you begin, make sure your Model 01 is connected to your computer.

Option 1: From the command line

cd Model01-Firmware
make flash

When the builder tells you to hit Enter to continue, hold down "Prog" in the top left corner of your keyboard and hit Enter.

Option 2: From the Arduino IDE

Open the sketch you wish to flash (for example, Model01-Firmware.ino).

Click the Upload button or press Ctrl-U.

Hold down the "Prog" key in the top left corner of your keyboard, until the compile finishes and the upload begins.

Start to customize the firmware

You can customize your keyboard's key layout and LED effects by modifying the Model01-Firmware.ino file in the same directory as this README. Model01-Firmware.ino is a computer program written in 'Arduino C'. You can find documentation about Arduino C at https://arduino.cc.

Updating the firmware and libraries

From time to time, you may want to pull the latest version of this firmware from GitHub. To do that, navigate to the Model01-Firmware directory in your shell and pull the latest code.

cd Model01-Firmware
git pull

After that, you'll want to update the Kaleidoscope libraries.

MacOS

cd $HOME/Documents/Arduino/hardware/keyboardio/avr
make update-submodules

Linux

cd $HOME/Arduino/hardware/keyboardio/avr
make update-submodules

Getting help

As you start to explore customization of your keyboard's firmware, the community at https://community.keyboard.io can often be a valuable resource.

Thanks!

<3 jesse

Build Status