Keyboard firmwares for Atmel AVR and Cortex-M
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
di0ib ff60175a71 Update readme.md 7 jaren geleden
..
bootloader kwark bootloader 7 jaren geleden
pcb Update readme.md 7 jaren geleden
FLASH.bin Revert "Revert "keymp updated"" 7 jaren geleden
LED_FastGPIO.ino kwark 1.0 7 jaren geleden
Makefile kwark 1.0 7 jaren geleden
config.h kwark 1.0 7 jaren geleden
keymap_common.h kwark 1.0 7 jaren geleden
keymap_kwark.c Revert "Revert "keymp updated"" 7 jaren geleden
kwark.bin Revert "Revert "keymp updated"" 7 jaren geleden
kwark.jpg kwark 1.0 7 jaren geleden
led.c pro micro LEDs as capslock indicator 7 jaren geleden
matrix.c kwark 1.0 7 jaren geleden
pcb_top.png kwark pcb 7 jaren geleden
readme.md kwark pcb 7 jaren geleden

readme.md

KWARK keyboard firmware

KWARK 1.0 Assembled

KWARK dual matrix, dual controller. Per key LED control, reactive lighting. KWARK 1.0 PCB Front Based on the GNAP!

Dual Pro Micro’s. One running TMK, the other running an Arduino sketch driving the LEDs. Pro Micro’s are connected to each other via hardware serial UART.

Pinout

Rows D1, D0, D4, C6 
Cols D7, E6, B4, B5, B6, B2, B3, B1, F7, F6, F5, F4

keymap_kwark.c contains functions to send bytes to the LED controller. The Arduino code interprets these to change modes or brightness.

//GNAP keymap functions
void gnaplight_step(void) {
    serial_send(101);
}

void gnaplight_toggle(void) {
    serial_send(100);
}

\tmk_core\common\keyboard.c was modified to send the row/column of the key being pressed encoded as as single byte over the serial link to the LED controller.

#ifdef GNAP_ENABLE
                //send single byte with value of row column
                serial_send((r*16)+c);
#endif

The example Arduino sketch LED_FastGPIO.ino uses the fastGPIO and TimerOne libraries. These can be installed with the Library manager.

FastGPIO TimerOne

Original Quark Keyboard