summaryrefslogtreecommitdiffstats
path: root/keyboards/dc01/arrow
diff options
context:
space:
mode:
authoryiancar <yiangosyiangou@cytanet.com.cy>2021-02-16 03:36:58 +0200
committerGitHub <noreply@github.com>2021-02-15 20:36:58 -0500
commit3fed8bced718e24e414c0d5736554d7988235b20 (patch)
tree51de9da8f0e01109d9e434fae315a94d6930c142 /keyboards/dc01/arrow
parentfa740f81298dc0965970a4dc7b0b67285bd1985c (diff)
Dc01 fixes (#11843)
* dc01-fixes * dc01-fixes * Cleanup and add VIA * Updated JSONs * fix
Diffstat (limited to 'keyboards/dc01/arrow')
-rw-r--r--keyboards/dc01/arrow/arrow.c27
-rw-r--r--keyboards/dc01/arrow/arrow.h21
-rw-r--r--keyboards/dc01/arrow/config.h56
-rw-r--r--keyboards/dc01/arrow/info.json2
-rw-r--r--keyboards/dc01/arrow/keymaps/default/keymap.c27
-rw-r--r--keyboards/dc01/arrow/keymaps/via/keymap.c46
-rw-r--r--keyboards/dc01/arrow/keymaps/via/readme.md3
-rwxr-xr-xkeyboards/dc01/arrow/keymaps/via/rules.mk1
-rw-r--r--keyboards/dc01/arrow/matrix.c19
-rw-r--r--keyboards/dc01/arrow/rules.mk2
10 files changed, 72 insertions, 132 deletions
diff --git a/keyboards/dc01/arrow/arrow.c b/keyboards/dc01/arrow/arrow.c
index 07988b8099..b3ed4ede76 100644
--- a/keyboards/dc01/arrow/arrow.c
+++ b/keyboards/dc01/arrow/arrow.c
@@ -14,30 +14,3 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "arrow.h"
-
-void matrix_init_kb(void) {
- // put your keyboard start-up code here
- // runs once when the firmware starts up
-
- matrix_init_user();
-}
-
-void matrix_scan_kb(void) {
- // put your looping keyboard code here
- // runs every cycle (a lot)
-
- matrix_scan_user();
-}
-
-bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
- // put your per-action keyboard code here
- // runs for every action, just before processing by the firmware
-
- return process_record_user(keycode, record);
-}
-
-void led_set_kb(uint8_t usb_led) {
- // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
-
- led_set_user(usb_led);
-}
diff --git a/keyboards/dc01/arrow/arrow.h b/keyboards/dc01/arrow/arrow.h
index a3a9987d58..b293f60b4e 100644
--- a/keyboards/dc01/arrow/arrow.h
+++ b/keyboards/dc01/arrow/arrow.h
@@ -13,29 +13,22 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef ARROW_H
-#define ARROW_H
+#pragma once
#include "quantum.h"
#define XXX KC_NO
-// This a shortcut to help you visually see your layout.
-// The first section contains all of the arguments
-// The second converts the arguments into a two-dimensional array
#define LAYOUT_all( \
- K00, K01, K02, \
- K10, K11, K12, \
- \
- K31, \
- K40, K41, K42 \
-) \
-{ \
+ K00, K01, K02, \
+ K10, K11, K12, \
+ \
+ K31, \
+ K40, K41, K42 \
+) { \
{ K00, K01, K02 }, \
{ K10, K11, K12 }, \
{ XXX, XXX, XXX }, \
{ XXX, K31, XXX }, \
{ K40, K41, K42 } \
}
-
-#endif
diff --git a/keyboards/dc01/arrow/config.h b/keyboards/dc01/arrow/config.h
index 45e48d189b..e240d71e8e 100644
--- a/keyboards/dc01/arrow/config.h
+++ b/keyboards/dc01/arrow/config.h
@@ -20,7 +20,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "config_common.h"
/* USB Device descriptor parameter */
-#define VENDOR_ID 0xFEED
+#define VENDOR_ID 0x8968
#define PRODUCT_ID 0x1012
#define DEVICE_VER 0x0001
#define MANUFACTURER Mechboards
@@ -47,10 +47,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW
-// #define BACKLIGHT_PIN B7
-// #define BACKLIGHT_BREATHING
-// #define BACKLIGHT_LEVELS 3
-
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5
@@ -89,53 +85,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/
//#define FORCE_NKRO
-
-/*
- * Magic Key Options
- *
- * Magic keys are hotkey commands that allow control over firmware functions of
- * the keyboard. They are best used in combination with the HID Listen program,
- * found here: https://www.pjrc.com/teensy/hid_listen.html
- *
- * The options below allow the magic key functionality to be changed. This is
- * useful if your keyboard/keypad is missing keys and you want magic key support.
- *
- */
-
-/*
- * Feature disable options
- * These options are also useful to firmware size reduction.
- */
-
-/* disable debug print */
-//#define NO_DEBUG
-
-/* disable print */
-//#define NO_PRINT
-
-/* disable action features */
-//#define NO_ACTION_LAYER
-//#define NO_ACTION_TAPPING
-//#define NO_ACTION_ONESHOT
-//#define NO_ACTION_MACRO
-//#define NO_ACTION_FUNCTION
-
-/*
- * MIDI options
- */
-
-/* enable basic MIDI features:
- - MIDI notes can be sent when in Music mode is on
-*/
-//#define MIDI_BASIC
-
-/* enable advanced MIDI features:
- - MIDI notes can be added to the keymap
- - Octave shift and transpose
- - Virtual sustain, portamento, and modulation wheel
- - etc.
-*/
-//#define MIDI_ADVANCED
-
-/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
-//#define MIDI_TONE_KEYCODE_OCTAVES 1 \ No newline at end of file
diff --git a/keyboards/dc01/arrow/info.json b/keyboards/dc01/arrow/info.json
index b3b584fbd5..c1fc105923 100644
--- a/keyboards/dc01/arrow/info.json
+++ b/keyboards/dc01/arrow/info.json
@@ -1,7 +1,7 @@
{
"keyboard_name": "DC01 Arrow Cluster",
"url": "",
- "maintainer": "qmk",
+ "maintainer": "Yiancar-Designs",
"width": 3,
"height": 5,
"layouts": {
diff --git a/keyboards/dc01/arrow/keymaps/default/keymap.c b/keyboards/dc01/arrow/keymaps/default/keymap.c
index 54eae570e8..b7f539e85c 100644
--- a/keyboards/dc01/arrow/keymaps/default/keymap.c
+++ b/keyboards/dc01/arrow/keymaps/default/keymap.c
@@ -17,26 +17,9 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_all( /* Base */
- KC_INS, KC_HOME, KC_PGUP, \
- KC_DEL, KC_END, KC_PGDN, \
- \
- KC_UP, \
- KC_LEFT, KC_DOWN, KC_RIGHT \
-),
-};
-
-void matrix_init_user(void) {
-
-}
-
-void matrix_scan_user(void) {
+ KC_INS, KC_HOME, KC_PGUP,
+ KC_DEL, KC_END, KC_PGDN,
-}
-
-bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- return true;
-}
-
-void led_set_user(uint8_t usb_led) {
-
-}
+ KC_UP,
+ KC_LEFT, KC_DOWN, KC_RIGHT)
+};
diff --git a/keyboards/dc01/arrow/keymaps/via/keymap.c b/keyboards/dc01/arrow/keymaps/via/keymap.c
new file mode 100644
index 0000000000..a086ffc074
--- /dev/null
+++ b/keyboards/dc01/arrow/keymaps/via/keymap.c
@@ -0,0 +1,46 @@
+/* Copyright 2018 Yiancar
+ *
+ * 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 QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+[0] = LAYOUT_all( /* Base */
+ KC_INS, KC_HOME, KC_PGUP,
+ KC_DEL, KC_END, KC_PGDN,
+
+ KC_UP,
+ KC_LEFT, KC_DOWN, KC_RIGHT),
+
+[1] = LAYOUT_all( /* Empty for Dynamic keymap */
+ KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS,
+
+ KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS),
+
+[2] = LAYOUT_all( /* Empty for Dynamic keymap */
+ KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS,
+
+ KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS),
+
+[3] = LAYOUT_all( /* Empty for Dynamic keymap */
+ KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS,
+
+ KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS)
+};
diff --git a/keyboards/dc01/arrow/keymaps/via/readme.md b/keyboards/dc01/arrow/keymaps/via/readme.md
new file mode 100644
index 0000000000..b2d32d9d27
--- /dev/null
+++ b/keyboards/dc01/arrow/keymaps/via/readme.md
@@ -0,0 +1,3 @@
+# The default VIA keymap for DC01 Arrow cluster
+
+When using the arrow module individually, this keymap will take effect. When using the keyboard as a whole please edit the keymap of the left module.
diff --git a/keyboards/dc01/arrow/keymaps/via/rules.mk b/keyboards/dc01/arrow/keymaps/via/rules.mk
new file mode 100755
index 0000000000..1e5b99807c
--- /dev/null
+++ b/keyboards/dc01/arrow/keymaps/via/rules.mk
@@ -0,0 +1 @@
+VIA_ENABLE = yes
diff --git a/keyboards/dc01/arrow/matrix.c b/keyboards/dc01/arrow/matrix.c
index 1823138c39..4761c0ff15 100644
--- a/keyboards/dc01/arrow/matrix.c
+++ b/keyboards/dc01/arrow/matrix.c
@@ -32,7 +32,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "i2c_slave.h"
#include "lufa.h"
-#define SLAVE_I2C_ADDRESS 0x23
+#define SLAVE_I2C_ADDRESS 0x40
/* Set 0 if debouncing isn't needed */
@@ -196,12 +196,10 @@ uint8_t matrix_scan(void)
}
# endif
- if (USB_DeviceState != DEVICE_STATE_Configured){
- i2c_slave_reg[1] = 0x55;
- for (uint8_t i = 0; i < MATRIX_ROWS; i++){
- i2c_slave_reg[i+2] = matrix[i]; //send matrix over i2c
- }
- }
+ i2c_slave_reg[1] = 0x55;
+ for (uint8_t i = 0; i < MATRIX_ROWS; i++){
+ i2c_slave_reg[i+2] = matrix[i]; //send matrix over i2c
+ }
matrix_scan_quantum();
return 1;
@@ -396,9 +394,6 @@ static void unselect_cols(void)
//this replases tmk code
void matrix_setup(void){
-
- if (USB_DeviceState != DEVICE_STATE_Configured){
- i2c_slave_init(SLAVE_I2C_ADDRESS); //setup address of slave i2c
- sei(); //enable interupts
- }
+ i2c_slave_init(SLAVE_I2C_ADDRESS); //setup address of slave i2c
+ sei(); //enable interupts
} \ No newline at end of file
diff --git a/keyboards/dc01/arrow/rules.mk b/keyboards/dc01/arrow/rules.mk
index f257a56a0a..3a311f9853 100644
--- a/keyboards/dc01/arrow/rules.mk
+++ b/keyboards/dc01/arrow/rules.mk
@@ -14,7 +14,7 @@ BOOTLOADER = atmel-dfu
# Build Options
# change yes to no to disable
#
-BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
+BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug