Add config for Atreus based on Adafruit Feather BLE (#9140)
Co-authored-by: Joel Challis <git@zvecr.com> Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: Erovia <Erovia@users.noreply.github.com>
This commit is contained in:
		
							parent
							
								
									6609197cde
								
							
						
					
					
						commit
						817de51c12
					
				
					 7 changed files with 197 additions and 0 deletions
				
			
		|  | @ -22,6 +22,8 @@ | ||||||
|     #include "astar.h" |     #include "astar.h" | ||||||
| #elif KEYBOARD_atreus_astar_mirrored | #elif KEYBOARD_atreus_astar_mirrored | ||||||
|     #include "astar_mirrored.h" |     #include "astar_mirrored.h" | ||||||
|  | #elif KEYBOARD_atreus_feather | ||||||
|  |     #include "feather.h" | ||||||
| #elif KEYBOARD_atreus_teensy2 | #elif KEYBOARD_atreus_teensy2 | ||||||
|     #include "teensy2.h" |     #include "teensy2.h" | ||||||
| #elif KEYBOARD_atreus_promicro | #elif KEYBOARD_atreus_promicro | ||||||
|  |  | ||||||
							
								
								
									
										40
									
								
								keyboards/atreus/feather/config.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								keyboards/atreus/feather/config.h
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,40 @@ | ||||||
|  | /* Copyright 2019
 | ||||||
|  |  * | ||||||
|  |  * This program is free software: you can redistribute it and/or modify | ||||||
|  |  * it under the terms of the GNU General Public License as published by | ||||||
|  |  * the Free Software Foundation, either version 2 of the License, or | ||||||
|  |  * (at your option) any later version. | ||||||
|  |  * | ||||||
|  |  * This program is distributed in the hope that it will be useful, | ||||||
|  |  * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||||
|  |  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||||
|  |  * GNU General Public License for more details. | ||||||
|  |  * | ||||||
|  |  * You should have received a copy of the GNU General Public License | ||||||
|  |  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
|  | 
 | ||||||
|  | #include "config_common.h" | ||||||
|  | 
 | ||||||
|  | /*
 | ||||||
|  |  * Keyboard Matrix Assignments | ||||||
|  |  * | ||||||
|  |  * Change this to how you wired your keyboard | ||||||
|  |  * COLS: AVR pins used for columns, left to right | ||||||
|  |  * ROWS: AVR pins used for rows, top to bottom | ||||||
|  |  * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode) | ||||||
|  |  *                  ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) | ||||||
|  |  * | ||||||
|  | */ | ||||||
|  | // #define MATRIX_ROW_PINS { D0, D1, D3, D2 }
 | ||||||
|  | // #define MATRIX_COL_PINS { D7, C6, B5, B4, E6, D4, B6, F6, F7, D6, B7 }
 | ||||||
|  | #define MATRIX_ROW_PINS { B7, D6, C7, F5 } | ||||||
|  | #define MATRIX_COL_PINS { D7, B5, D1, D0, C6, B6, F0, D2, D3, F4, F1 } | ||||||
|  | #define UNUSED_PINS | ||||||
|  | 
 | ||||||
|  | /* COL2ROW, ROW2COL*/ | ||||||
|  | #define DIODE_DIRECTION COL2ROW | ||||||
|  | 
 | ||||||
|  | #define OUTPUT_AUTO_ENABLE | ||||||
							
								
								
									
										16
									
								
								keyboards/atreus/feather/feather.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								keyboards/atreus/feather/feather.c
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,16 @@ | ||||||
|  | /* Copyright 2019
 | ||||||
|  |  * | ||||||
|  |  * This program is free software: you can redistribute it and/or modify | ||||||
|  |  * it under the terms of the GNU General Public License as published by | ||||||
|  |  * the Free Software Foundation, either version 2 of the License, or | ||||||
|  |  * (at your option) any later version. | ||||||
|  |  * | ||||||
|  |  * This program is distributed in the hope that it will be useful, | ||||||
|  |  * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||||
|  |  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||||
|  |  * GNU General Public License for more details. | ||||||
|  |  * | ||||||
|  |  * You should have received a copy of the GNU General Public License | ||||||
|  |  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
|  |  */ | ||||||
|  | #include "feather.h" | ||||||
							
								
								
									
										17
									
								
								keyboards/atreus/feather/feather.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								keyboards/atreus/feather/feather.h
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,17 @@ | ||||||
|  | /* Copyright 2019
 | ||||||
|  |  * | ||||||
|  |  * This program is free software: you can redistribute it and/or modify | ||||||
|  |  * it under the terms of the GNU General Public License as published by | ||||||
|  |  * the Free Software Foundation, either version 2 of the License, or | ||||||
|  |  * (at your option) any later version. | ||||||
|  |  * | ||||||
|  |  * This program is distributed in the hope that it will be useful, | ||||||
|  |  * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||||||
|  |  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||||
|  |  * GNU General Public License for more details. | ||||||
|  |  * | ||||||
|  |  * You should have received a copy of the GNU General Public License | ||||||
|  |  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
|  |  */ | ||||||
|  | 
 | ||||||
|  | #pragma once | ||||||
							
								
								
									
										60
									
								
								keyboards/atreus/feather/readme.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								keyboards/atreus/feather/readme.md
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,60 @@ | ||||||
|  | # Bluetreus - a conversion of an Atreus to use a Bluetooth microcontroller | ||||||
|  | 
 | ||||||
|  | I have created a keymap for this with Bluetooth control on layer 2 so that you | ||||||
|  | can switch the keyboard between auto, USB only, and Bluetooth only.  I'm | ||||||
|  | working on fixing turning on auto by default, but have still not succeeded. | ||||||
|  | 
 | ||||||
|  | To build it and flash it, do: | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | make atreus/feather:clash:flash | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | ## Wiring it up | ||||||
|  | Physically, SDA to pin 13 on the new board are connected to what 9-1 were | ||||||
|  | connected to on the old board.  Pin 0 from the old board is brought over to the | ||||||
|  | other side with a jumper wire to pin a2. TX, RX, A5, A4, A3 on the new board | ||||||
|  | connect to what a0 to 12 connected to on the old board. GND attaches to g. | ||||||
|  | You have to bend some of the pins at about a 45 degree angle to make them line up. | ||||||
|  | Here's a side view of what the most bent pins look like: | ||||||
|  |  | ||||||
|  | Here's a top view, USB port down, wireless antenna up. Note: the USB port orientation is opposite what it used to be. | ||||||
|  |  | ||||||
|  | 
 | ||||||
|  | ### New board: | ||||||
|  | This is an [Adafruit Feather BLE](https://learn.adafruit.com/adafruit-feather-32u4-bluefruit-le/pinouts) | ||||||
|  | 
 | ||||||
|  | |QMK | Screen Print | Feather     |SCREEN|QMK REF  | | ||||||
|  | |----|--------------|-------------|------|---------| | ||||||
|  | | D1 | SDA          | RADIO       | dfu  |         | | ||||||
|  | | D0 | SCL          |             | 1/TX | D3      | | ||||||
|  | | C6 | 5            |             | 0/RX | D2      | | ||||||
|  | | D7 | 6            |             | MISO | B3/Blue | | ||||||
|  | | B5 | 9            |             | MOSI | B2/Blue | | ||||||
|  | | B6 | 10           |             | SCK  | B1/Blue | | ||||||
|  | | B7 | 11           |             | A5   | F0      | | ||||||
|  | | D6 | 12           |             | a4   | F1      | | ||||||
|  | | C7 | 13           |             | a3   | F4      | | ||||||
|  | |    | usb          |             | a2   | F5      | | ||||||
|  | |    | e0           |             | a1   | F6      | | ||||||
|  | |    | bat          |             | a0   |         | | ||||||
|  | |    | Battery      |             | GND  |         | | ||||||
|  | |    | Connector    |             | ARf  |         | | ||||||
|  | |    |  |    |      | USB PORT    | 3V   |         | | ||||||
|  | |    |  v    v      |             | RST  |         | | ||||||
|  | 
 | ||||||
|  | ### Old board: | ||||||
|  | This is an A Star, non-flipped | ||||||
|  | 
 | ||||||
|  | |QMK| Scrn | A   | Scrn|QMK | | ||||||
|  | |---|------|-----|-----|----| | ||||||
|  | | b5| 9    | USB | a0  | F7 | | ||||||
|  | | b4| 8    | port| a1  | F6 | | ||||||
|  | | e6| 7    |     | 10  | B6 | | ||||||
|  | | d7| 6    |     | 11  | B7 | | ||||||
|  | | c6| 5    |     | 12  | D6 | | ||||||
|  | | d4| 4    |     | rst | RST| | ||||||
|  | | d0| 3    |     | 3v  | x  | | ||||||
|  | | d1| 2    |     | 5v  | x  | | ||||||
|  | | d3| 1    |     | g   | G  | | ||||||
|  | | d2| 0    |     | v   | x  | | ||||||
							
								
								
									
										21
									
								
								keyboards/atreus/feather/rules.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								keyboards/atreus/feather/rules.mk
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,21 @@ | ||||||
|  | # MCU name
 | ||||||
|  | MCU = atmega32u4 | ||||||
|  | 
 | ||||||
|  | # Processor frequency
 | ||||||
|  | F_CPU = 8000000 | ||||||
|  | 
 | ||||||
|  | # Bootloader selection
 | ||||||
|  | #   Teensy       halfkay
 | ||||||
|  | #   Pro Micro    caterina
 | ||||||
|  | #   Atmel DFU    atmel-dfu
 | ||||||
|  | #   LUFA DFU     lufa-dfu
 | ||||||
|  | #   QMK DFU      qmk-dfu
 | ||||||
|  | #   ATmega32A    bootloadHID
 | ||||||
|  | #   ATmega328P   USBasp
 | ||||||
|  | BOOTLOADER = caterina | ||||||
|  | 
 | ||||||
|  | # Build Options
 | ||||||
|  | #   change yes to no to disable
 | ||||||
|  | #
 | ||||||
|  | BLUETOOTH = AdafruitBLE | ||||||
|  | CONSOLE_ENABLE = no | ||||||
							
								
								
									
										41
									
								
								keyboards/atreus/keymaps/clash/keymap.c
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								keyboards/atreus/keymaps/clash/keymap.c
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,41 @@ | ||||||
|  | #include QMK_KEYBOARD_H | ||||||
|  | 
 | ||||||
|  | // Each layer gets a name for readability, which is then used in the keymap matrix below.
 | ||||||
|  | // The underscores don't mean anything - you can have a layer called STUFF or any other name.
 | ||||||
|  | // Layer names don't all need to be of the same length, obviously, and you can also skip them
 | ||||||
|  | // entirely and just use numbers.
 | ||||||
|  | #define _QW 0 | ||||||
|  | #define _RS 1 | ||||||
|  | #define _LW 2 | ||||||
|  | 
 | ||||||
|  | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||||||
|  |   [_QW] = LAYOUT( /* Qwerty */ | ||||||
|  |     KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,                      KC_Y,    KC_U,    KC_I,    KC_O,    KC_P    , | ||||||
|  |     KC_A,    KC_S,    KC_D,    KC_F,    KC_G,                      KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN , | ||||||
|  |     KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,                      KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH , | ||||||
|  |     KC_ESC, KC_TAB, KC_LGUI,  KC_LSFT, KC_BSPC,  KC_LCTL, KC_LALT, KC_SPC,  MO(_RS), KC_MINS, KC_QUOT, KC_ENT | ||||||
|  |   ), | ||||||
|  | 
 | ||||||
|  |   /*
 | ||||||
|  |    *  !       @     up     {    }        ||     pgup    7     8     9    * | ||||||
|  |    *  #     left   down  right  $        ||     pgdn    4     5     6    + | ||||||
|  |    *  [       ]      (     )    &        ||       `     1     2     3    \ | ||||||
|  |    * lower  insert super shift del  ctrl || alt space   fn    .     0    = | ||||||
|  |    */ | ||||||
|  |   [_RS] = LAYOUT( /* [> RAISE <] */ | ||||||
|  |     KC_EXLM, KC_AT,   KC_UP,   KC_LCBR, KC_RCBR,                   KC_PGUP, KC_7,    KC_8,   KC_9, KC_ASTR , | ||||||
|  |     KC_HASH, KC_LEFT, KC_DOWN, KC_RGHT, KC_DLR,                    KC_PGDN, KC_4,    KC_5,   KC_6, KC_PLUS , | ||||||
|  |     KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_AMPR,                   KC_GRV,  KC_1,    KC_2,   KC_3, KC_BSLS , | ||||||
|  |     TG(_LW), KC_INS,  KC_LGUI, KC_LSFT, KC_DEL,  KC_LCTL, KC_LALT, KC_SPC,  KC_TRNS, KC_DOT, KC_0, KC_EQL  ), | ||||||
|  |   /*
 | ||||||
|  |    * insert home  mup  end   pgup       ||     mouse1  F7    F8    F9   F10 | ||||||
|  |    * USB    mlft  mdwn mrght pgdn       ||     mouse2  F4    F5    F6   F11 | ||||||
|  |    * Blue  volup             reset      ||     mouse3  F1    F2    F3   F12 | ||||||
|  |    * auto  voldn  super shift bksp ctrl || alt space   L0  prtsc scroll pause | ||||||
|  |    */ | ||||||
|  |   [_LW] = LAYOUT( /* [> LOWER <] */ | ||||||
|  |     KC_INS,   KC_HOME, KC_MS_U, KC_END,  KC_PGUP,                   KC_BTN1, KC_F7,   KC_F8,   KC_F9,   KC_F10  , | ||||||
|  |     OUT_USB,  KC_MS_L, KC_MS_D, KC_MS_R, KC_PGDN,                   KC_BTN2, KC_F4,   KC_F5,   KC_F6,   KC_F11  , | ||||||
|  |     OUT_BT,   KC_VOLU, KC_NO,   KC_NO,   RESET,                     KC_BTN3, KC_F1,   KC_F2,   KC_F3,   KC_F12  , | ||||||
|  |     OUT_AUTO, KC_VOLD, KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC,  TO(_QW), KC_PSCR, KC_SLCK, KC_PAUS ) | ||||||
|  | }; | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Randall Mason
						Randall Mason