benjmin-r / atreus-firmware

Firmware for the atreus keyboard

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Atreus keyboard firmware for your MAC

This repository contains firmware (called TMK) loaded into its controller to make the keyboard function. You can also use it to customize its layout or behavior. This branch makes use of the latest TMK release.

This build is mainly geared to get the Atreus working on a Mac with a teensy 2 board. If you don't have a mac you are probably better of with the original.

The main differences are:

  • Uses the latest branch of TMK
  • Makes use of actions codes, vs. keymaps.
  • Media keys enabled in build.
  • Updated keymap macros so keymaps are very easy to define.
  • The layers are not the same. I've been experimenting with it.

Installing on Mac OS X

Install homebrew

$ brew tap larsimmisch/avr
$ brew install avrdude
$ brew install teensy_loader_cli
$ brew install avr-libc
$ cd atreus 
$ OPT_DEFS=-DTEENSY make teensy KEYMAP=qwerty

I note: that you can build colemak by setting KEYMAP=colemak

Layout

Copy keymap_qwerty.c (or another) into a new file to create your new layout, and change the keymaps array to place the actioncodes you want in the positions you want.

The FN_ARROW_LAYER and LAYER_TWO macros correspond to the default extra layers as defined in keymap_common.h; replace them with KEYMAP calls if you want to customize these layers.

For more details see the TMK documentation.

Compiling

This codebase defaults to targeting the most recent PCB-based design of the Atreus which uses the A-Star microcontroller, but it can also work with hand-wired boards that use the Teensy 2.

Uploading to a Teensy 2 can be done with OPT_DEFS=-DTEENSY make teensy KEYMAP=qwerty.

Getting to the bootloader on the Teensy is simpler; if you can't do it in software simply press the hardware reset button once.

About

Firmware for the atreus keyboard

License:GNU General Public License v3.0


Languages

Language:C 86.3%Language:C++ 8.3%Language:Assembly 3.5%Language:Python 0.7%Language:HTML 0.6%Language:Makefile 0.4%Language:Objective-C 0.2%Language:XSLT 0.0%Language:PHP 0.0%Language:C# 0.0%Language:JavaScript 0.0%Language:CSS 0.0%Language:Roff 0.0%Language:Shell 0.0%Language:Ruby 0.0%