[Keyboard] Move Hillside out of handwired (#18751)

Co-authored-by: mmccoyd <mmccoyd@cs.berkley.edu>
This commit is contained in:
mmccoyd
2022-11-20 00:50:09 -08:00
committed by GitHub
parent 66e4add972
commit 543a863766
58 changed files with 180 additions and 311 deletions

View File

@@ -0,0 +1,4 @@
// Copyright 2022 Michael McCoyd (@mmccoyd)
// SPDX-License-Identifier: GPL-2.0-or-later
#include "0_1.h"

View File

@@ -0,0 +1,34 @@
// Copyright 2022 Michael McCoyd (@mmccoyd)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include "quantum.h"
/* This is a shortcut to help you visually see your layout.
*
* The first section contains all of the arguments representing the physical
* layout of the board and position of the keys.
*
* The second converts those identifiers into a two-dimensional array which
* represents the switch matrix.
*/
// clang-format off
#define LAYOUT( \
L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
L20, L21, L22, L23, L24, L25, LT4, RT4, R20, R21, R22, R23, R24, R25, \
L30, LT0, LT1, LT2, LT3, RT3, RT2, RT1, RT0, R30 \
) \
{ \
{ L00, L01, L02, L03, L04, L05 }, \
{ L10, L11, L12, L13, L14, L15 }, \
{ L20, L21, L22, L23, L24, L25 }, \
{ L30, LT0, LT1, LT2, LT3, LT4 }, \
{ R05, R04, R03, R02, R01, R00 }, \
{ R15, R14, R13, R12, R11, R10 }, \
{ R25, R24, R23, R22, R21, R20 }, \
{ R30, RT0, RT1, RT2, RT3, RT4 } \
}
// clang-format on

View File

@@ -0,0 +1,35 @@
// Copyright 2021 Michael McCoyd (@mmccoyd)
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include "config_common.h"
/* key matrix size */
// Rows are doubled-up
#define MATRIX_ROWS 8
#define MATRIX_COLS 6
/* Encoder */
#define ENCODERS_PAD_A { F5 }
#define ENCODERS_PAD_B { F4 }
#define ENCODERS_PAD_A_RIGHT { F4 }
#define ENCODERS_PAD_B_RIGHT { F5 }
#define RGBLIGHT_SLEEP
/* Haptic hardware */
// The Pimoroni is the likely hardware, for which these settings work
#define FB_ERM_LRA 1
#define FB_BRAKEFACTOR 3 /* 1x:0, 2x:1, 3x:2, 4x:3, 6:4, 8:5, 16:6, Disable:7 */
#define FB_LOOPGAIN 1 /* For Low:0, Medium:1, High:2, Very High:3 */
/* Please refer to your datasheet for optimal setting for your specific motor.*/
#define RATED_VOLTAGE 2
#define V_PEAK 2.8
#define V_RMS 2.0
#define F_LRA 205 /* resonance freq */
/* Haptic waveforms */
// Two mild waveforms
#define DRV_GREETING alert_750ms
#define DRV_MODE_DEFAULT sharp_tick3_60

View File

@@ -0,0 +1,35 @@
{
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"matrix_pins": {
"rows": ["D7", "E6", "B4", "B5"],
"cols": ["F6", "F7", "B1", "B3", "B2", "B6"]
},
"diode_direction": "COL2ROW",
"usb": {
"vid": "0xFEED",
"pid": "0x67C0",
"device_version": "0.0.1"
},
"features": {
"encoder": true,
"extrakey": true,
"rgblight": true
},
"split": {
"soft_serial_pin": "D2",
"main": "left"
},
"rgblight": {
"led_count": 5,
"pin": "D3",
"split": true,
"hue_steps": 8,
"saturation_steps": 8,
"brightness_steps": 8
}
}

View File

@@ -0,0 +1,8 @@
SPLIT_KEYBOARD = yes # Use shared split_common code
LTO_ENABLE = yes # Use link time optimization for smaller firmware
# If you add a haptic board,
# enable it and set its driver here or in your keymap folder
# The Pimoroni board's driver is DRV2605L
# HAPTIC_ENABLE = yes # Enable haptic driver
# HAPTIC_DRIVER = DRV2605L