summaryrefslogtreecommitdiff
path: root/keyboards/e6v2/oe/oe.c
diff options
context:
space:
mode:
authorMechMerlin2018-07-06 08:15:56 -0700
committerDrashna Jaelre2018-07-06 08:15:56 -0700
commit36d35959c8d849e82881ea107019e9302ef29f74 (patch)
treef2b48be2ffdbf8a8c6ad5c77fe53a7fb8b756099 /keyboards/e6v2/oe/oe.c
parent0210447c82c9006a740393aed07e944d7ab72df5 (diff)
E6-V2 Last Edition (LE) Support (#3324)
* new matrix for LE(Last Edition) E6V2 * Update pin outs for the new version of the PCB * putting in some placeholders for now * Trying to get e6v2/oe:default to compile * put rules.mk in the right directory * Add and update readme files * move info.json to oe directory * Update LE directory * rename keyboard name * Add QMK Configurator Support At this time, ths only covers the ALL case and allows people to use the configurator to generate their keymaps. More work will need to be done.
Diffstat (limited to 'keyboards/e6v2/oe/oe.c')
-rw-r--r--keyboards/e6v2/oe/oe.c53
1 files changed, 53 insertions, 0 deletions
diff --git a/keyboards/e6v2/oe/oe.c b/keyboards/e6v2/oe/oe.c
new file mode 100644
index 000000000..10cd59f0c
--- /dev/null
+++ b/keyboards/e6v2/oe/oe.c
@@ -0,0 +1,53 @@
+#include "oe.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
+ DDRB |= (1<<6);
+ if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
+ // output low
+ DDRB |= (1<<2);
+ PORTB &= ~(1<<2);
+ } else {
+ // Hi-Z
+ DDRB &= ~(1<<2);
+ PORTB &= ~(1<<2);
+ }
+ // DDRB |= (1<<7);
+ // DDRB |= (1<<1);
+ // DDRB |= (1<<3);
+ // DDRE |= (1<<6);
+ if (usb_led == 0){
+ PORTB |= (1<<6);
+ // PORTB |= (1<<7);
+ // PORTB |= (1<<1);
+ // PORTB |= (1<<3);
+ // PORTE |= (1<<6);
+ }
+ else{
+ PORTB &= ~(1<<6);
+ // PORTB &= ~(1<<7);
+ }
+
+ led_set_user(usb_led);
+}