qmk-keychron-q3-colemak-dh/keyboards/nullbitsco/nibble/keymaps/via/via_extras.h
Jay Greco 999326acc8
Add nullbits nibble (#9250)
* Add NIBBLE keyboard

* Update VID for VIA compatibility

* Add QMK PR feedback

* Update matrix_init_remote_kb()

* Update with requested changes

Clean up config, makefile rules, and keymap files

* Update with changes for unified ANSI/ISO layout

* Add NO_USB_STARTUP_CHECK note in readme

* Add license info, update with PR changes

-Refactor encoder, via_extras code
-Refactor VIA specific code to live in keymap folder
-Remove non-inclusive naming in remote keyboard.c/h
-Add documentation to remote_keyboard.c
-Add compiler check for vusb_detect for non-avr micros

* Fix print formatter in encoder handler

Co-authored-by: Nick Brassel <nick@tzarc.org>

* Small PR updates

-Remove unneded matrix code from nibble.c
-Clean up include code in nibble_encoder.h

* Update Big LED headerfile

-Declare Big LED functions in header file (derp)

* Update keyboards/nullbitsco/nibble/nibble.c

-Update with drashna's suggested CAPS LED code change

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Update keyboards/nullbitsco/nibble/rules.mk

-Update with drasha's suggested makefile formatting changes

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Fix caps_lock typo

Co-authored-by: Nick Brassel <nick@tzarc.org>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2020-10-23 17:47:14 +11:00

39 lines
1.2 KiB
C

/* Copyright 2020 Jay Greco
*
* 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/>.
*/
#pragma once
#include "nibble_encoder.h"
#include "via.h"
#include "raw_hid.h"
#include "dynamic_keymap.h"
#include "tmk_core/common/eeprom.h"
enum nibble_keyboard_value_id {
id_encoder_modes = 0x80,
id_unused_mode_1,
id_encoder_custom,
id_unused_mode_2
};
// Encoder Behavior
extern uint8_t encoder_value,
encoder_mode,
enabled_encoder_modes;
void raw_hid_receive_kb(uint8_t *data, uint8_t length),
encoder_update_kb(uint8_t index, bool clockwise),
custom_config_load(void),
via_init_kb(void);