summaryrefslogtreecommitdiff
path: root/keyboards/duck/octagon
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/duck/octagon')
-rw-r--r--keyboards/duck/octagon/v1/config.h9
-rw-r--r--keyboards/duck/octagon/v1/info.json6
-rw-r--r--keyboards/duck/octagon/v1/matrix.c8
-rw-r--r--keyboards/duck/octagon/v1/rules.mk10
-rw-r--r--keyboards/duck/octagon/v1/v1.c10
-rw-r--r--keyboards/duck/octagon/v2/config.h9
-rw-r--r--keyboards/duck/octagon/v2/indicator_leds.h2
-rw-r--r--keyboards/duck/octagon/v2/info.json6
-rw-r--r--keyboards/duck/octagon/v2/matrix.c8
-rw-r--r--keyboards/duck/octagon/v2/rules.mk8
-rw-r--r--keyboards/duck/octagon/v2/v2.c28
11 files changed, 50 insertions, 54 deletions
diff --git a/keyboards/duck/octagon/v1/config.h b/keyboards/duck/octagon/v1/config.h
index 150436ffe4..c19aa1f22d 100644
--- a/keyboards/duck/octagon/v1/config.h
+++ b/keyboards/duck/octagon/v1/config.h
@@ -17,7 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#include "config_common.h"
/* key matrix size */
#define MATRIX_ROWS 6
@@ -25,10 +24,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DIODE_DIRECTION COL2ROW
-/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
-#define DEBOUNCE 5
-
-/* number of backlight levels */
#define BACKLIGHT_LEVELS 1
#define RGBLIGHT_EFFECT_BREATHING
@@ -44,8 +39,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGB_DI_PIN D6
#define RGBLED_NUM 17
-/* Set to top left most key */
-#define BOOTMAGIC_LITE_ROW 5
-#define BOOTMAGIC_LITE_COLUMN 10
-
#define TAPPING_TERM 200
diff --git a/keyboards/duck/octagon/v1/info.json b/keyboards/duck/octagon/v1/info.json
index 8912165c6d..8eaf8fb0d9 100644
--- a/keyboards/duck/octagon/v1/info.json
+++ b/keyboards/duck/octagon/v1/info.json
@@ -8,6 +8,12 @@
"pid": "0x4F31",
"device_version": "0.0.1"
},
+ "bootmagic": {
+ "matrix": [5, 10]
+ },
+ "processor": "atmega32u4",
+ "bootloader": "atmel-dfu",
+ "community_layouts": ["75_ansi"],
"layouts": {
"LAYOUT_75_ansi": {
"layout": [
diff --git a/keyboards/duck/octagon/v1/matrix.c b/keyboards/duck/octagon/v1/matrix.c
index a2bea865bc..cf37a654a6 100644
--- a/keyboards/duck/octagon/v1/matrix.c
+++ b/keyboards/duck/octagon/v1/matrix.c
@@ -22,6 +22,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "print.h"
#include "debug.h"
+#ifndef DEBOUNCE
+# define DEBOUNCE 5
+#endif
+
static uint8_t debouncing = DEBOUNCE;
/* matrix state(1:on, 0:off) */
@@ -69,7 +73,7 @@ void matrix_init(void) {
matrix_debouncing[i] = 0;
}
- matrix_init_quantum();
+ matrix_init_kb();
}
uint8_t matrix_scan(void) {
@@ -103,7 +107,7 @@ uint8_t matrix_scan(void) {
}
}
- matrix_scan_quantum();
+ matrix_scan_kb();
return 1;
}
diff --git a/keyboards/duck/octagon/v1/rules.mk b/keyboards/duck/octagon/v1/rules.mk
index 84dd4e31db..8d7b854ec0 100644
--- a/keyboards/duck/octagon/v1/rules.mk
+++ b/keyboards/duck/octagon/v1/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = atmega32u4
-
-# Bootloader selection
-BOOTLOADER = atmel-dfu
-
# Build Options
# change yes to no to disable
#
@@ -19,6 +13,4 @@ AUDIO_ENABLE = no # Audio output
RGBLIGHT_ENABLE = yes
CUSTOM_MATRIX = yes
-SRC += matrix.c \
-
-LAYOUTS = 75_ansi
+SRC += matrix.c
diff --git a/keyboards/duck/octagon/v1/v1.c b/keyboards/duck/octagon/v1/v1.c
index e9e88c70d0..575847f588 100644
--- a/keyboards/duck/octagon/v1/v1.c
+++ b/keyboards/duck/octagon/v1/v1.c
@@ -40,7 +40,11 @@ void backlight_set(uint8_t level) {
level & BACKLIGHT_RGBBLUE ? (PORTD |= 0b00010000) : (PORTD &= ~0b00010000);
}
-void led_set_kb(uint8_t usb_led) {
- backlight_os_state & (1<<USB_LED_CAPS_LOCK) ? (PORTB &= ~0b00000001) : (PORTB |= 0b00000001);
- backlight_os_state & (1<<USB_LED_SCROLL_LOCK) ? (PORTB &= ~0b00010000) : (PORTB |= 0b00010000);
+bool led_update_kb(led_t led_state) {
+ bool res = led_update_user(led_state);
+ if(res) {
+ backlight_os_state & (1<<USB_LED_CAPS_LOCK) ? (PORTB &= ~0b00000001) : (PORTB |= 0b00000001);
+ backlight_os_state & (1<<USB_LED_SCROLL_LOCK) ? (PORTB &= ~0b00010000) : (PORTB |= 0b00010000);
+ }
+ return res;
}
diff --git a/keyboards/duck/octagon/v2/config.h b/keyboards/duck/octagon/v2/config.h
index 1509222458..d1f2971077 100644
--- a/keyboards/duck/octagon/v2/config.h
+++ b/keyboards/duck/octagon/v2/config.h
@@ -17,7 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
-#include "config_common.h"
/* key matrix size */
#define MATRIX_ROWS 6
@@ -25,10 +24,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DIODE_DIRECTION COL2ROW
-/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
-#define DEBOUNCE 5
-
-/* number of backlight levels */
#define BACKLIGHT_LEVELS 1
#define RGBLIGHT_EFFECT_BREATHING
@@ -44,8 +39,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGB_DI_PIN D6
#define RGBLED_NUM 17
-/* Set to top left most key */
-#define BOOTMAGIC_LITE_ROW 5
-#define BOOTMAGIC_LITE_COLUMN 10
-
#define TAPPING_TERM 200
diff --git a/keyboards/duck/octagon/v2/indicator_leds.h b/keyboards/duck/octagon/v2/indicator_leds.h
index 2c1bfe5624..9d89e3e3d1 100644
--- a/keyboards/duck/octagon/v2/indicator_leds.h
+++ b/keyboards/duck/octagon/v2/indicator_leds.h
@@ -1,3 +1,5 @@
+#pragma once
+
#include "duck_led/duck_led.h"
void indicator_leds_set(bool leds[7]);
diff --git a/keyboards/duck/octagon/v2/info.json b/keyboards/duck/octagon/v2/info.json
index 3b9f84417e..220196e9fc 100644
--- a/keyboards/duck/octagon/v2/info.json
+++ b/keyboards/duck/octagon/v2/info.json
@@ -8,6 +8,12 @@
"pid": "0x4F32",
"device_version": "0.0.2"
},
+ "bootmagic": {
+ "matrix": [5, 10]
+ },
+ "processor": "atmega32u4",
+ "bootloader": "atmel-dfu",
+ "community_layouts": ["75_ansi"],
"layouts": {
"LAYOUT": {
"layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"PrtSc", "x":13, "y":0}, {"label":"Pause", "x":14, "y":0}, {"label":"Delete", "x":15, "y":0}, {"label":"~", "x":0, "y":1}, {"label":"!", "x":1, "y":1}, {"label":"@", "x":2, "y":1}, {"label":"#", "x":3, "y":1}, {"label":"$", "x":4, "y":1}, {"label":"%", "x":5, "y":1}, {"label":"^", "x":6, "y":1}, {"label":"&", "x":7, "y":1}, {"label":"*", "x":8, "y":1}, {"label":"(", "x":9, "y":1}, {"label":")", "x":10, "y":1}, {"label":"_", "x":11, "y":1}, {"label":"+", "x":12, "y":1}, {"label":"Backspace", "x":13, "y":1, "w":2}, {"label":"Home", "x":15, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"{", "x":11.5, "y":2}, {"label":"}", "x":12.5, "y":2}, {"label":"|", "x":13.5, "y":2, "w":1.5}, {"label":"Page Up", "x":15, "y":2}, {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":":", "x":10.75, "y":3}, {"label":"\"", "x":11.75, "y":3}, {"x":12.75, "y":3}, {"label":"Enter", "x":13.75, "y":3, "w":1.25}, {"label":"Page Down", "x":15, "y":3}, {"label":"Shift", "x":0, "y":4, "w":1.25}, {"x":1.25, "y":4}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"<", "x":9.25, "y":4}, {"label":">", "x":10.25, "y":4}, {"label":"?", "x":11.25, "y":4}, {"label":"Shift", "x":12.25, "y":4, "w":1.75}, {"label":"\u2191", "x":14, "y":4}, {"label":"End", "x":15, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":6.25}, {"label":"Alt", "x":10, "y":5}, {"label":"Fn", "x":11, "y":5}, {"label":"Ctrl", "x":12, "y":5}, {"label":"\u2190", "x":13, "y":5}, {"label":"\u2193", "x":14, "y":5}, {"label":"\u2192", "x":15, "y":5}]
diff --git a/keyboards/duck/octagon/v2/matrix.c b/keyboards/duck/octagon/v2/matrix.c
index 25d1e45b05..98bf03d769 100644
--- a/keyboards/duck/octagon/v2/matrix.c
+++ b/keyboards/duck/octagon/v2/matrix.c
@@ -22,6 +22,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "print.h"
#include "debug.h"
+#ifndef DEBOUNCE
+# define DEBOUNCE 5
+#endif
+
static uint8_t debouncing = DEBOUNCE;
/* matrix state(1:on, 0:off) */
@@ -74,7 +78,7 @@ void matrix_init(void) {
matrix_debouncing[i] = 0;
}
- matrix_init_quantum();
+ matrix_init_kb();
}
uint8_t matrix_scan(void) {
@@ -108,7 +112,7 @@ uint8_t matrix_scan(void) {
}
}
- matrix_scan_quantum();
+ matrix_scan_kb();
return 1;
}
diff --git a/keyboards/duck/octagon/v2/rules.mk b/keyboards/duck/octagon/v2/rules.mk
index 14b5de1271..dc181b289d 100644
--- a/keyboards/duck/octagon/v2/rules.mk
+++ b/keyboards/duck/octagon/v2/rules.mk
@@ -1,9 +1,3 @@
-# MCU name
-MCU = atmega32u4
-
-# Bootloader selection
-BOOTLOADER = atmel-dfu
-
# Build Options
# change yes to no to disable
#
@@ -21,5 +15,3 @@ RGBLIGHT_ENABLE = yes
CUSTOM_MATRIX = yes
SRC += indicator_leds.c \
matrix.c duck_led/duck_led.c
-
-LAYOUTS = 75_ansi
diff --git a/keyboards/duck/octagon/v2/v2.c b/keyboards/duck/octagon/v2/v2.c
index 23e92b2769..19bef7f877 100644
--- a/keyboards/duck/octagon/v2/v2.c
+++ b/keyboards/duck/octagon/v2/v2.c
@@ -97,17 +97,21 @@ void backlight_set(uint8_t level) {
}
// Port from backlight_update_state
-void led_set_kb(uint8_t usb_led) {
+bool led_update_kb(led_t led_state) {
+ bool res = led_update_user(led_state);
+ if(res) {
bool status[7] = {
- backlight_os_state & (1<<USB_LED_CAPS_LOCK),
- backlight_os_state & (1<<USB_LED_SCROLL_LOCK),
- backlight_os_state & (1<<USB_LED_NUM_LOCK),
- backlight_layer_state & (1<<1),
- backlight_layer_state & (1<<2),
- backlight_layer_state & (1<<3),
- backlight_layer_state & (1<<4)
- };
- indicator_leds_set(status);
- backlight_os_state & (1<<USB_LED_CAPS_LOCK) ? (PORTB &= ~0b00000001) : (PORTB |= 0b00000001);
- backlight_os_state & (1<<USB_LED_SCROLL_LOCK) ? (PORTB &= ~0b00010000) : (PORTB |= 0b00010000);
+ backlight_os_state & (1<<USB_LED_CAPS_LOCK),
+ backlight_os_state & (1<<USB_LED_SCROLL_LOCK),
+ backlight_os_state & (1<<USB_LED_NUM_LOCK),
+ backlight_layer_state & (1<<1),
+ backlight_layer_state & (1<<2),
+ backlight_layer_state & (1<<3),
+ backlight_layer_state & (1<<4)
+ };
+ indicator_leds_set(status);
+ backlight_os_state & (1<<USB_LED_CAPS_LOCK) ? (PORTB &= ~0b00000001) : (PORTB |= 0b00000001);
+ backlight_os_state & (1<<USB_LED_SCROLL_LOCK) ? (PORTB &= ~0b00010000) : (PORTB |= 0b00010000);
+ }
+ return res;
}