~ruther/qmk_firmware

2d4832f57ae392a57567e9a126d38cde44399d91 — Joel Challis 1 year, 5 months ago 73f3f6e
Align RGBKB keyboards to current standards (#23663)

49 files changed, 238 insertions(+), 625 deletions(-)

D keyboards/rgbkb/mun/mun.c
D keyboards/rgbkb/mun/mun.h
R keyboards/rgbkb/mun/{ => rev1}/config.h
R keyboards/rgbkb/mun/{ => rev1}/halconf.h
M keyboards/rgbkb/mun/rev1/keyboard.json
R keyboards/rgbkb/mun/{ => rev1}/mcuconf.h
M keyboards/rgbkb/mun/rev1/rev1.c
M keyboards/rgbkb/mun/rev1/rev1.h
A keyboards/rgbkb/mun/rev1/rules.mk
M keyboards/rgbkb/mun/rules.mk
M keyboards/rgbkb/pan/info.json
M keyboards/rgbkb/pan/keymaps/default/rules.mk
M keyboards/rgbkb/pan/keymaps/default_eee/rules.mk
M keyboards/rgbkb/pan/keymaps/default_sss/rules.mk
M keyboards/rgbkb/pan/post_rules.mk
D keyboards/rgbkb/pan/rev1/32a/post_rules.mk
D keyboards/rgbkb/pan/rev1/proton_c/post_rules.mk
M keyboards/rgbkb/pan/rules.mk
D keyboards/rgbkb/sol/common/glcdfont.c
M keyboards/rgbkb/sol/config.h
M keyboards/rgbkb/sol/keymaps/default/rules.mk
M keyboards/rgbkb/sol/rev1/keyboard.json
M keyboards/rgbkb/sol/rev1/post_rules.mk
D keyboards/rgbkb/sol/rev1/rules.mk
M keyboards/rgbkb/sol/rev2/keyboard.json
M keyboards/rgbkb/sol/rev2/post_rules.mk
D keyboards/rgbkb/sol/rev2/rules.mk
M keyboards/rgbkb/sol/rules.mk
R keyboards/rgbkb/sol3/{ => rev1}/config.h
R keyboards/rgbkb/sol3/{ => rev1}/halconf.h
M keyboards/rgbkb/sol3/rev1/keyboard.json
R keyboards/rgbkb/sol3/{ => rev1}/mcuconf.h
M keyboards/rgbkb/sol3/rev1/rev1.c
M keyboards/rgbkb/sol3/rev1/rev1.h
A keyboards/rgbkb/sol3/rev1/rules.mk
M keyboards/rgbkb/sol3/rules.mk
D keyboards/rgbkb/sol3/sol3.c
D keyboards/rgbkb/sol3/sol3.h
D keyboards/rgbkb/zen/info.json
M keyboards/rgbkb/zen/rev1/keyboard.json
M keyboards/rgbkb/zen/rev2/config.h
M keyboards/rgbkb/zen/rev2/keyboard.json
D keyboards/rgbkb/zen/rev2/post_rules.mk
D keyboards/rgbkb/zen/rev2/rules.mk
M keyboards/rgbkb/zen/rules.mk
M keyboards/rgbkb/zygomorph/rev1/keyboard.json
D keyboards/rgbkb/zygomorph/rev1/rev1.c
A keyboards/rgbkb/zygomorph/rev1/rules.mk
M keyboards/rgbkb/zygomorph/rules.mk
D keyboards/rgbkb/mun/mun.c => keyboards/rgbkb/mun/mun.c +0 -25
@@ 1,25 0,0 @@
/*
 * ----------------------------------------------------------------------------
 * "THE BEER-WARE LICENSE" (Revision 42):
 * <https://github.com/Legonut> wrote this file.  As long as you retain this
 * notice you can do whatever you want with this stuff. If we meet some day, and
 * you think this stuff is worth it, you can buy me a beer in return. David Rauseo
 * ----------------------------------------------------------------------------
 */

#include "mun.h"
#include "touch_encoder.h"
#include "common_oled.h"
#include <transactions.h>

void keyboard_post_init_kb(void) {
    touch_encoder_init();
    transaction_register_rpc(TOUCH_ENCODER_SYNC, touch_encoder_slave_sync);
    transaction_register_rpc(RGB_MENU_SYNC, rgb_menu_slave_sync);
    keyboard_post_init_user();
}

void housekeeping_task_kb(void) {
    touch_encoder_update(TOUCH_ENCODER_SYNC);
    rgb_menu_update(RGB_MENU_SYNC);
}

D keyboards/rgbkb/mun/mun.h => keyboards/rgbkb/mun/mun.h +0 -16
@@ 1,16 0,0 @@
/*
 * ----------------------------------------------------------------------------
 * "THE BEER-WARE LICENSE" (Revision 42):
 * <https://github.com/Legonut> wrote this file.  As long as you retain this
 * notice you can do whatever you want with this stuff. If we meet some day, and
 * you think this stuff is worth it, you can buy me a beer in return. David Rauseo
 * ----------------------------------------------------------------------------
 */

#pragma once

#if defined(KEYBOARD_rgbkb_mun_rev1)
#    include "rev1.h"
#endif

#include "quantum.h"
\ No newline at end of file

R keyboards/rgbkb/mun/config.h => keyboards/rgbkb/mun/rev1/config.h +1 -0
@@ 59,3 59,4 @@

#define TOUCH_UPDATE_INTERVAL 33
#define OLED_UPDATE_INTERVAL 33
#define OLED_FONT_H "keyboards/rgbkb/common/glcdfont.c"

R keyboards/rgbkb/mun/halconf.h => keyboards/rgbkb/mun/rev1/halconf.h +0 -0
M keyboards/rgbkb/mun/rev1/keyboard.json => keyboards/rgbkb/mun/rev1/keyboard.json +13 -0
@@ 8,6 8,19 @@
        "pid": "0x3505",
        "device_version": "0.0.1"
    },
    "build": {
        "lto": true
    },
    "features": {
        "bootmagic": false,
        "encoder": true,
        "extrakey": true,
        "mousekey": false,
        "nkro": true,
        "oled": true,
        "rgb_matrix": true,
        "rgblight": false
    },
    "rgblight": {
        "led_count": 98,
        "split_count": [49, 49],

R keyboards/rgbkb/mun/mcuconf.h => keyboards/rgbkb/mun/rev1/mcuconf.h +0 -0
M keyboards/rgbkb/mun/rev1/rev1.c => keyboards/rgbkb/mun/rev1/rev1.c +15 -0
@@ 8,6 8,9 @@
 */

#include "rev1.h"
#include "touch_encoder.h"
#include "common_oled.h"
#include "transactions.h"

#define NUMBER_OF_TOUCH_ENCODERS 2
#define TOUCH_ENCODER_OPTIONS TOUCH_SEGMENTS + 2


@@ 85,3 88,15 @@ led_config_t g_led_config = { {
} };
// clang-format on
#endif

void keyboard_post_init_kb(void) {
    touch_encoder_init();
    transaction_register_rpc(TOUCH_ENCODER_SYNC, touch_encoder_slave_sync);
    transaction_register_rpc(RGB_MENU_SYNC, rgb_menu_slave_sync);
    keyboard_post_init_user();
}

void housekeeping_task_kb(void) {
    touch_encoder_update(TOUCH_ENCODER_SYNC);
    rgb_menu_update(RGB_MENU_SYNC);
}

M keyboards/rgbkb/mun/rev1/rev1.h => keyboards/rgbkb/mun/rev1/rev1.h +1 -1
@@ 9,5 9,5 @@

#pragma once

#include "mun.h"
#include "quantum.h"
#include "touch_encoder.h"

A keyboards/rgbkb/mun/rev1/rules.mk => keyboards/rgbkb/mun/rev1/rules.mk +8 -0
@@ 0,0 1,8 @@
# Touch encoder needs
VPATH += keyboards/rgbkb/common
SRC += touch_encoder.c
SRC += common_oled.c
I2C_DRIVER_REQUIRED = yes

SERIAL_DRIVER = usart
OPT = 3

M keyboards/rgbkb/mun/rules.mk => keyboards/rgbkb/mun/rules.mk +0 -30
@@ 1,31 1,1 @@
# Touch encoder needs
VPATH += keyboards/rgbkb/common
SRC += touch_encoder.c
SRC += common_oled.c
I2C_DRIVER_REQUIRED = yes

# Build Options
#   change yes to no to disable
#
BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
MOUSEKEY_ENABLE = no        # Mouse keys
EXTRAKEY_ENABLE = yes       # Audio control and System control
CONSOLE_ENABLE = no        # Console for debug
COMMAND_ENABLE = no         # Commands for debug and configuration
NKRO_ENABLE = yes           # Enable N-Key Rollover
AUDIO_ENABLE = no           # Audio output

RGBLIGHT_ENABLE = no        # Enable WS2812 RGB underlight.
RGB_MATRIX_ENABLE = yes

OLED_ENABLE = yes

ENCODER_ENABLE = yes

SERIAL_DRIVER = usart
LTO_ENABLE = yes
OPT = 3

OPT_DEFS += -DOLED_FONT_H=\"keyboards/rgbkb/common/glcdfont.c\"

DEFAULT_FOLDER = rgbkb/mun/rev1

M keyboards/rgbkb/pan/info.json => keyboards/rgbkb/pan/info.json +9 -0
@@ 8,6 8,15 @@
        "pid": "0x8C9C",
        "device_version": "0.0.2"
    },
    "features": {
        "bootmagic": true,
        "encoder": true,
        "extrakey": true,
        "mousekey": false,
        "nkro": false,
        "oled": true,
        "rgb_matrix": true
    },
    "rgb_matrix": {
        "animations": {
            "alphas_mods": true,

M keyboards/rgbkb/pan/keymaps/default/rules.mk => keyboards/rgbkb/pan/keymaps/default/rules.mk +0 -3
@@ 1,6 1,3 @@
# RGB layout selection
RGB_ENCODERS          = yes    # For RGB encoders, solder on both WS2811 chips
STAGGERED_LAYOUT      = no     # If you soldered R1-A12 and R4-A12, enable this.

# Do not edit past here
include keyboards/$(KEYBOARD)/post_rules.mk

M keyboards/rgbkb/pan/keymaps/default_eee/rules.mk => keyboards/rgbkb/pan/keymaps/default_eee/rules.mk +0 -3
@@ 1,6 1,3 @@
# RGB layout selection
RGB_ENCODERS          = yes    # For RGB encoders, solder on both WS2811 chips
STAGGERED_LAYOUT      = no     # If you soldered R1-A12 and R4-A12, enable this.

# Do not edit past here
include keyboards/$(KEYBOARD)/post_rules.mk

M keyboards/rgbkb/pan/keymaps/default_sss/rules.mk => keyboards/rgbkb/pan/keymaps/default_sss/rules.mk +0 -3
@@ 1,6 1,3 @@
# RGB layout selection
RGB_ENCODERS          = yes    # For RGB encoders, solder on both WS2811 chips
STAGGERED_LAYOUT      = no     # If you soldered R1-A12 and R4-A12, enable this.

# Do not edit past here
include keyboards/$(KEYBOARD)/post_rules.mk

M keyboards/rgbkb/pan/post_rules.mk => keyboards/rgbkb/pan/post_rules.mk +7 -1
@@ 1,4 1,10 @@
# As long as the users rules.mk has include $(KEYBOARD)/post_rules.mk this will be run after to properly setup any keyboard features and defines
RGB_MATRIX_KEYPRESSES ?= no          # Enable reactive per-key effects.
RGB_MATRIX_FRAMEBUFFER_EFFECTS ?= no # Enable frame buffer effects like the typing heatmap.

# RGB layout selection
STAGGERED_LAYOUT ?= no # If you soldered R1-A12 and R4-A12, enable this.
RGB_ENCODERS ?= yes    # For RGB encoders, solder on both WS2811 chips

ifeq ($(strip $(RGB_MATRIX_KEYPRESSES)), yes)
    OPT_DEFS += -DRGB_MATRIX_KEYPRESSES
endif

D keyboards/rgbkb/pan/rev1/32a/post_rules.mk => keyboards/rgbkb/pan/rev1/32a/post_rules.mk +0 -22
@@ 1,22 0,0 @@
# As long as the users rules.mk has include $(KEYBOARD)/post_rules.mk this will be run after to properly setup any keyboard features and defines
ifeq ($(strip $(RGB_MATRIX_KEYPRESSES)), yes)
    OPT_DEFS += -DRGB_MATRIX_KEYPRESSES
endif

ifeq ($(strip $(RGB_MATRIX_FRAMEBUFFER)), yes)
    OPT_DEFS += -DRGB_MATRIX_FRAMEBUFFER_EFFECTS
endif

ifeq ($(strip $(STAGGERED_LAYOUT)), yes)
    OPT_DEFS += -DSTAGGERED_LAYOUT
endif

ifeq ($(strip $(RGB_ENCODERS)), yes)
    OPT_DEFS += -DRGB_ENCODERS
endif

ifeq ($(strip $(RGB_ENCODERS)), yes)
    ifeq ($(strip $(STAGGERED_LAYOUT)), yes)
        OPT_DEFS += -DSTAGGERED_RGB_ENCODERS=$(strip $(STAGGERED_RGB_ENCODERS))
    endif
endif

D keyboards/rgbkb/pan/rev1/proton_c/post_rules.mk => keyboards/rgbkb/pan/rev1/proton_c/post_rules.mk +0 -22
@@ 1,22 0,0 @@
# As long as the users rules.mk has include $(KEYBOARD)/post_rules.mk this will be run after to properly setup any keyboard features and defines
ifeq ($(strip $(RGB_MATRIX_KEYPRESSES)), yes)
    OPT_DEFS += -DRGB_MATRIX_KEYPRESSES
endif

ifeq ($(strip $(RGB_MATRIX_FRAMEBUFFER)), yes)
    OPT_DEFS += -DRGB_MATRIX_FRAMEBUFFER_EFFECTS
endif

ifeq ($(strip $(STAGGERED_LAYOUT)), yes)
    OPT_DEFS += -DSTAGGERED_LAYOUT
endif

ifeq ($(strip $(RGB_ENCODERS)), yes)
    OPT_DEFS += -DRGB_ENCODERS
endif

ifeq ($(strip $(RGB_ENCODERS)), yes)
    ifeq ($(strip $(STAGGERED_LAYOUT)), yes)
        OPT_DEFS += -DSTAGGERED_RGB_ENCODERS=$(strip $(STAGGERED_RGB_ENCODERS))
    endif
endif

M keyboards/rgbkb/pan/rules.mk => keyboards/rgbkb/pan/rules.mk +1 -20
@@ 1,22 1,3 @@
# Build Options
#   change yes to no to disable
#
BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
MOUSEKEY_ENABLE = no        # Mouse keys
EXTRAKEY_ENABLE = yes       # Audio control and System control
CONSOLE_ENABLE = no         # Console for debug
COMMAND_ENABLE = no         # Commands for debug and configuration
NKRO_ENABLE = no            # Enable N-Key Rollover
AUDIO_ENABLE = no           # Audio output
RGB_MATRIX_ENABLE = yes
ENCODER_ENABLE = yes
OLED_ENABLE = yes
WS2812_DRIVER_REQUIRED = yes

# RGB layout selection
RGB_ENCODERS = yes # For RGB encoders, solder on both WS2811 chips
STAGGERED_LAYOUT = no # If you soldered R1-A12 and R4-A12, enable this.

# Default to revision 1
DEFAULT_FOLDER = rgbkb/pan/rev1

WS2812_DRIVER_REQUIRED := yes

D keyboards/rgbkb/sol/common/glcdfont.c => keyboards/rgbkb/sol/common/glcdfont.c +0 -231
@@ 1,231 0,0 @@
#include "progmem.h"

// Helidox 8x6 font with RGBKB SOL Logo
// Online editor: http://teripom.x0.com/

static const unsigned char font[] PROGMEM = {
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00,
  0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00,
  0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00,
  0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00,
  0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00,
  0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00,
  0x00, 0x18, 0x3C, 0x18, 0x00, 0x00,
  0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00,
  0x00, 0x18, 0x24, 0x18, 0x00, 0x00,
  0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00,
  0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00,
  0x26, 0x29, 0x79, 0x29, 0x26, 0x00,
  0x40, 0x7F, 0x05, 0x05, 0x07, 0x00,
  0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00,
  0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00,
  0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00,
  0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00,
  0x14, 0x22, 0x7F, 0x22, 0x14, 0x00,
  0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00,
  0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00,
  0x00, 0x66, 0x89, 0x95, 0x6A, 0x00,
  0x60, 0x60, 0x60, 0x60, 0x60, 0x00,
  0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00,
  0x08, 0x04, 0x7E, 0x04, 0x08, 0x00,
  0x10, 0x20, 0x7E, 0x20, 0x10, 0x00,
  0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00,
  0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00,
  0x1E, 0x10, 0x10, 0x10, 0x10, 0x00,
  0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00,
  0x30, 0x38, 0x3E, 0x38, 0x30, 0x00,
  0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
  0x00, 0x07, 0x00, 0x07, 0x00, 0x00,
  0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00,
  0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00,
  0x23, 0x13, 0x08, 0x64, 0x62, 0x00,
  0x36, 0x49, 0x56, 0x20, 0x50, 0x00,
  0x00, 0x08, 0x07, 0x03, 0x00, 0x00,
  0x00, 0x1C, 0x22, 0x41, 0x00, 0x00,
  0x00, 0x41, 0x22, 0x1C, 0x00, 0x00,
  0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00,
  0x08, 0x08, 0x3E, 0x08, 0x08, 0x00,
  0x00, 0x80, 0x70, 0x30, 0x00, 0x00,
  0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
  0x00, 0x00, 0x60, 0x60, 0x00, 0x00,
  0x20, 0x10, 0x08, 0x04, 0x02, 0x00,
  0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00,
  0x00, 0x42, 0x7F, 0x40, 0x00, 0x00,
  0x72, 0x49, 0x49, 0x49, 0x46, 0x00,
  0x21, 0x41, 0x49, 0x4D, 0x33, 0x00,
  0x18, 0x14, 0x12, 0x7F, 0x10, 0x00,
  0x27, 0x45, 0x45, 0x45, 0x39, 0x00,
  0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00,
  0x41, 0x21, 0x11, 0x09, 0x07, 0x00,
  0x36, 0x49, 0x49, 0x49, 0x36, 0x00,
  0x46, 0x49, 0x49, 0x29, 0x1E, 0x00,
  0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
  0x00, 0x40, 0x34, 0x00, 0x00, 0x00,
  0x00, 0x08, 0x14, 0x22, 0x41, 0x00,
  0x14, 0x14, 0x14, 0x14, 0x14, 0x00,
  0x00, 0x41, 0x22, 0x14, 0x08, 0x00,
  0x02, 0x01, 0x59, 0x09, 0x06, 0x00,
  0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00,
  0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00,
  0x7F, 0x49, 0x49, 0x49, 0x36, 0x00,
  0x3E, 0x41, 0x41, 0x41, 0x22, 0x00,
  0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00,
  0x7F, 0x49, 0x49, 0x49, 0x41, 0x00,
  0x7F, 0x09, 0x09, 0x09, 0x01, 0x00,
  0x3E, 0x41, 0x41, 0x51, 0x73, 0x00,
  0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00,
  0x00, 0x41, 0x7F, 0x41, 0x00, 0x00,
  0x20, 0x40, 0x41, 0x3F, 0x01, 0x00,
  0x7F, 0x08, 0x14, 0x22, 0x41, 0x00,
  0x7F, 0x40, 0x40, 0x40, 0x40, 0x00,
  0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00,
  0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00,
  0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00,
  0x7F, 0x09, 0x09, 0x09, 0x06, 0x00,
  0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00,
  0x7F, 0x09, 0x19, 0x29, 0x46, 0x00,
  0x26, 0x49, 0x49, 0x49, 0x32, 0x00,
  0x03, 0x01, 0x7F, 0x01, 0x03, 0x00,
  0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00,
  0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00,
  0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00,
  0x63, 0x14, 0x08, 0x14, 0x63, 0x00,
  0x03, 0x04, 0x78, 0x04, 0x03, 0x00,
  0x61, 0x59, 0x49, 0x4D, 0x43, 0x00,
  0x00, 0x7F, 0x41, 0x41, 0x41, 0x00,
  0x02, 0x04, 0x08, 0x10, 0x20, 0x00,
  0x00, 0x41, 0x41, 0x41, 0x7F, 0x00,
  0x04, 0x02, 0x01, 0x02, 0x04, 0x00,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x00,
  0x00, 0x03, 0x07, 0x08, 0x00, 0x00,
  0x20, 0x54, 0x54, 0x78, 0x40, 0x00,
  0x7F, 0x28, 0x44, 0x44, 0x38, 0x00,
  0x38, 0x44, 0x44, 0x44, 0x28, 0x00,
  0x38, 0x44, 0x44, 0x28, 0x7F, 0x00,
  0x38, 0x54, 0x54, 0x54, 0x18, 0x00,
  0x00, 0x08, 0x7E, 0x09, 0x02, 0x00,
  0x18, 0xA4, 0xA4, 0x9C, 0x78, 0x00,
  0x7F, 0x08, 0x04, 0x04, 0x78, 0x00,
  0x00, 0x44, 0x7D, 0x40, 0x00, 0x00,
  0x20, 0x40, 0x40, 0x3D, 0x00, 0x00,
  0x7F, 0x10, 0x28, 0x44, 0x00, 0x00,
  0x00, 0x41, 0x7F, 0x40, 0x00, 0x00,
  0x7C, 0x04, 0x78, 0x04, 0x78, 0x00,
  0x7C, 0x08, 0x04, 0x04, 0x78, 0x00,
  0x38, 0x44, 0x44, 0x44, 0x38, 0x00,
  0xFC, 0x18, 0x24, 0x24, 0x18, 0x00,
  0x18, 0x24, 0x24, 0x18, 0xFC, 0x00,
  0x7C, 0x08, 0x04, 0x04, 0x08, 0x00,
  0x48, 0x54, 0x54, 0x54, 0x24, 0x00,
  0x04, 0x04, 0x3F, 0x44, 0x24, 0x00,
  0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00,
  0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00,
  0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00,
  0x44, 0x28, 0x10, 0x28, 0x44, 0x00,
  0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00,
  0x44, 0x64, 0x54, 0x4C, 0x44, 0x00,
  0x00, 0x08, 0x36, 0x41, 0x00, 0x00,
  0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
  0x00, 0x41, 0x36, 0x08, 0x00, 0x00,
  0x02, 0x01, 0x02, 0x04, 0x02, 0x00,
  0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x80, 0x00,
  0x00, 0x00, 0x00, 0x80, 0x80, 0x80,
  0x00, 0x00, 0x00, 0x00, 0x80, 0x80,
  0x80, 0x80, 0x80, 0x80, 0x80, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x80, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x80, 0x00, 0x00, 0x0C, 0x90,
  0xB0, 0xE0, 0x72, 0x31, 0x9B, 0xDE,
  0xCE, 0xEC, 0xEE, 0xE9, 0xE9, 0xEC,
  0xCF, 0xDA, 0x99, 0x3E, 0x62, 0xE4,
  0xC4, 0x70, 0x10, 0x10, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x60,
  0xC0, 0xC0, 0x80, 0x80, 0x02, 0x85,
  0x85, 0x87, 0x85, 0x89, 0x89, 0x92,
  0xEA, 0xC6, 0xC4, 0x48, 0x50, 0x60,
  0x40, 0x40, 0x40, 0x40, 0xC0, 0xE0,
  0x50, 0x28, 0x10, 0x10, 0x60, 0xC0,
  0x40, 0x40, 0x40, 0x40, 0x80, 0x80,
  0x80, 0x80, 0x80, 0xE0, 0xF8, 0xFC,
  0xF8, 0xF0, 0x00, 0x00, 0x00, 0x00,
  0xE0, 0xF0, 0xF0, 0xF0, 0xE0, 0xEC,
  0xEE, 0xF7, 0xF3, 0x70, 0x20, 0x00,
  0x7C, 0x7C, 0x7C, 0x7E, 0x00, 0x7E,
  0x7E, 0x7E, 0x7F, 0x7F, 0x7F, 0x00,
  0x00, 0x80, 0xC0, 0xE0, 0x7E, 0x5B,
  0x4F, 0x5B, 0xFE, 0xC0, 0x00, 0x00,
  0x00, 0x00, 0xF0, 0xF4, 0xEC, 0xDE,
  0xDE, 0xBE, 0x3E, 0x3E, 0x3F, 0x3F,
  0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x3F,
  0x3F, 0x3E, 0x3E, 0xBE, 0xDE, 0xDE,
  0xEC, 0xF4, 0xF0, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x7F, 0x80, 0x80,
  0x80, 0x70, 0x0F, 0x00, 0x00, 0x80,
  0x7F, 0x00, 0x00, 0x7F, 0x80, 0x80,
  0x80, 0x80, 0x80, 0x80, 0x80, 0x7F,
  0x00, 0x00, 0x80, 0x80, 0x80, 0x80,
  0x80, 0x80, 0x80, 0xFF, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x40, 0x21, 0x33, 0x3B, 0x7B,
  0xFF, 0x00, 0x7C, 0xFF, 0xFF, 0xFF,
  0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
  0xFF, 0xFF, 0xFF, 0xFF, 0x7C, 0x01,
  0xFF, 0xDE, 0x8C, 0x04, 0x0C, 0x08,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x01, 0x01, 0x01, 0x7F, 0x80,
  0x80, 0xBE, 0xBE, 0x80, 0x80, 0x80,
  0xC1, 0xFF, 0x80, 0x04, 0x32, 0x5E,
  0x1C, 0x3D, 0x26, 0x10, 0xC1, 0xFF,
  0x3E, 0x00, 0x00, 0x08, 0x36, 0xC1,
  0x08, 0x08, 0x14, 0x77, 0x94, 0x94,
  0x94, 0xF7, 0x94, 0xF7, 0x9C, 0x9C,
  0xFF, 0xFF, 0x1E, 0x00, 0x00, 0x00,
  0x0F, 0x1F, 0x3F, 0x7F, 0x7F, 0x7F,
  0x7F, 0x7F, 0x3F, 0x1E, 0x0C, 0x00,
  0x1F, 0x1F, 0x1F, 0x3F, 0x00, 0x3F,
  0x3F, 0x3F, 0x7F, 0x7F, 0x7F, 0x00,
  0x30, 0x7B, 0x7F, 0x78, 0x30, 0x20,
  0x20, 0x30, 0x78, 0x7F, 0x3B, 0x00,
  0x00, 0x00, 0x01, 0x0F, 0x3F, 0xFF,
  0xFF, 0xFF, 0xFC, 0xE0, 0x80, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x80, 0xE0, 0xFC, 0xFF, 0xFF, 0xFF,
  0x3F, 0x0F, 0x01, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x06, 0x02, 0x06,
  0x4D, 0x4F, 0x8C, 0xF9, 0x73, 0x37,
  0x27, 0x2F, 0x2F, 0xAF, 0xEF, 0x6F,
  0x77, 0x17, 0x33, 0x79, 0xCC, 0x1F,
  0x31, 0x20, 0x21, 0x02, 0x02, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x40, 0xE0,
  0xA0, 0xA0, 0xD0, 0x90, 0x48, 0x48,
  0x25, 0x2B, 0x11, 0x09, 0x05, 0x03,
  0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
  0x01, 0x03, 0x02, 0x04, 0x03, 0x01,
  0x01, 0x01, 0x01, 0x01, 0x01, 0x00,
  0x00, 0x00, 0x00, 0x03, 0x0F, 0x1F,
  0x0F, 0x03, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  0x03, 0x07, 0x0F, 0x1F, 0x3F, 0x7F,
  0xFE, 0xFC, 0x00, 0xFC, 0xFE, 0x7F,
  0x3F, 0x1F, 0x0F, 0x07, 0x03, 0x00,
  0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};

M keyboards/rgbkb/sol/config.h => keyboards/rgbkb/sol/config.h +2 -0
@@ 62,3 62,5 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT

#define OLED_FONT_H "keyboards/rgbkb/common/glcdfont.c"

M keyboards/rgbkb/sol/keymaps/default/rules.mk => keyboards/rgbkb/sol/keymaps/default/rules.mk +0 -4
@@ 5,7 5,3 @@
# EXTRAKEY_ENABLE         = no       # Audio control and System control
#
# To keep things clean and tidy, as well as make upgrades easier, only place overrides from the defaults in this file.


# Do not edit past here
include keyboards/$(KEYBOARD)/post_rules.mk

M keyboards/rgbkb/sol/rev1/keyboard.json => keyboards/rgbkb/sol/rev1/keyboard.json +10 -0
@@ 8,6 8,16 @@
        "pid": "0x3060",
        "device_version": "0.0.1"
    },
    "features": {
        "bootmagic": false,
        "encoder": true,
        "extrakey": true,
        "mousekey": false,
        "nkro": false,
        "oled": false,
        "rgb_matrix": false,
        "rgblight": true
    },
    "rgb_matrix": {
        "animations": {
            "alphas_mods": true,

M keyboards/rgbkb/sol/rev1/post_rules.mk => keyboards/rgbkb/sol/rev1/post_rules.mk +5 -1
@@ 1,4 1,8 @@
# As long as the users rules.mk has include $(KEYBOARD)/post_rules.mk this will be run after to properly setup any keyboard features and defines
IOS_DEVICE_ENABLE ?= no              # Limit max brightness to connect to IOS device (iPad,iPhone)
RGBLIGHT_FULL_POWER ?= no            # Allow maximum RGB brightness for RGBLIGHT or RGB_MATRIX. Otherwise, limited to a safe level for a normal USB-A port
RGB_MATRIX_KEYPRESSES ?= no          # Enable reactive per-key effects.
RGB_MATRIX_FRAMEBUFFER_EFFECTS ?= no # Enable frame buffer effects like the typing heatmap.
LED_MIRRORED ?= yes                  # Mirror LEDs across halves (enable DIP 1 on slave, and DIP 2 and 3 on master)

ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes)
    OPT_DEFS += -DIOS_DEVICE_ENABLE

D keyboards/rgbkb/sol/rev1/rules.mk => keyboards/rgbkb/sol/rev1/rules.mk +0 -26
@@ 1,26 0,0 @@
# RGBKB Sol Rev1 Defaults

# Keycode Options
BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
MOUSEKEY_ENABLE         = no        # Mouse keys
EXTRAKEY_ENABLE         = yes       # Audio control and System control
NKRO_ENABLE = no            # Enable N-Key Rollover

# Debug Options
CONSOLE_ENABLE          = no        # Console for debug
COMMAND_ENABLE          = no        # Commands for debug and configuration

# RGB Options
RGBLIGHT_ENABLE         = yes       # Enable global lighting effects. Do not enable with RGB Matrix
LED_MIRRORED            = yes       # Mirror LEDs across halves (enable DIP 1 on slave, and DIP 2 and 3 on master)

RGB_MATRIX_ENABLE       = no        # Enable per-key coordinate based RGB effects. Do not enable with RGBlight
RGB_MATRIX_KEYPRESSES   = no        # Enable reactive per-key effects.
RGB_MATRIX_FRAMEBUFFER_EFFECTS = no # Enable frame buffer effects like the typing heatmap.

RGBLIGHT_FULL_POWER     = no        # Allow maximum RGB brightness for RGBLIGHT or RGB_MATRIX. Otherwise, limited to a safe level for a normal USB-A port
IOS_DEVICE_ENABLE       = no        # Limit max brightness to connect to IOS device (iPad,iPhone)

# Misc
OLED_ENABLE     = no        # Enable the OLED Driver
SWAP_HANDS_ENABLE       = no        # Enable one-hand typing

M keyboards/rgbkb/sol/rev2/keyboard.json => keyboards/rgbkb/sol/rev2/keyboard.json +13 -0
@@ 8,6 8,19 @@
        "pid": "0x3060",
        "device_version": "0.0.2"
    },
    "build": {
        "lto": true
    },
    "features": {
        "bootmagic": false,
        "encoder": true,
        "extrakey": true,
        "mousekey": false,
        "nkro": false,
        "oled": false,
        "rgb_matrix": true,
        "rgblight": false
    },
    "rgb_matrix": {
        "animations": {
            "alphas_mods": true,

M keyboards/rgbkb/sol/rev2/post_rules.mk => keyboards/rgbkb/sol/rev2/post_rules.mk +15 -2
@@ 1,4 1,17 @@
# As long as the users rules.mk has include $(KEYBOARD)/post_rules.mk this will be run after to properly setup any keyboard features and defines
IOS_DEVICE_ENABLE ?= no              # Limit max brightness to connect to IOS device (iPad,iPhone)
RGBLIGHT_FULL_POWER ?= no            # Allow maximum RGB brightness for RGBLIGHT or RGB_MATRIX. Otherwise, limited to a safe level for a normal USB-A port
RGB_MATRIX_KEYPRESSES ?= no          # Enable reactive per-key effects.
RGB_MATRIX_FRAMEBUFFER_EFFECTS ?= no # Enable frame buffer effects like the typing heatmap.
LED_MIRRORED ?= no                   # Mirror LEDs across halves (enable DIP 1 on slave, and DIP 2 and 3 on master)
FULLHAND_ENABLE ?= no                # Enables the additional 24 Full Hand LEDs
SF_ENABLE ?= no                      # Enables the additional 38 Starfighter LEDs

EXTRA_ENCODERS_ENABLE ?= no          # Enables 3 encoders per side (up from 1, not compatible with OLED_ENABLE)

# Special RGB Matrix, OLED, & Encoder Control Menu!
RGB_OLED_MENU ?= no                  # Enabled by setting this to the encoder index (0-5) you wish to use to control the menu.
                                     # Use the RGB_MENU keycode in the keymap for the encoder to advance the menu to the next option.


ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes)
    OPT_DEFS += -DIOS_DEVICE_ENABLE


@@ 30,7 43,7 @@ endif

ifeq ($(strip $(OLED_ENABLE)), yes)
    ifeq ($(strip $(ENCODER_ENABLE)), yes)
        ifneq ($(strip $(RGB_MATRIX_ENABLE)), no)
        ifeq ($(strip $(RGB_MATRIX_ENABLE)), yes)
            ifneq ($(strip $(RGB_OLED_MENU)), no)
                OPT_DEFS += -DRGB_OLED_MENU=$(strip $(RGB_OLED_MENU))
            endif

D keyboards/rgbkb/sol/rev2/rules.mk => keyboards/rgbkb/sol/rev2/rules.mk +0 -34
@@ 1,34 0,0 @@
# RGBKB Sol Rev2 Defaults

# Keycode Options
BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
MOUSEKEY_ENABLE         = no        # Mouse keys
EXTRAKEY_ENABLE         = yes       # Audio control and System control
NKRO_ENABLE = no            # Enable N-Key Rollover

# Debug Options
CONSOLE_ENABLE          = no        # Console for debug
COMMAND_ENABLE          = no        # Commands for debug and configuration

# RGB Options
RGBLIGHT_ENABLE         = no        # Enable global lighting effects. Do not enable with RGB Matrix
LED_MIRRORED            = no        # Mirror LEDs across halves (enable DIP 1 on slave, and DIP 2 and 3 on master)

RGB_MATRIX_ENABLE = yes             # Enable per-key coordinate based RGB effects. Do not enable with RGBlight
RGB_MATRIX_KEYPRESSES   = no        # Enable reactive per-key effects.
RGB_MATRIX_FRAMEBUFFER_EFFECTS = no # Enable frame buffer effects like the typing heatmap.

RGBLIGHT_FULL_POWER     = no        # Allow maximum RGB brightness for RGBLIGHT or RGB_MATRIX. Otherwise, limited to a safe level for a normal USB-A port
FULLHAND_ENABLE         = no        # Enables the additional 24 Full Hand LEDs
SF_ENABLE               = no        # Enables the additional 38 Starfighter LEDs
IOS_DEVICE_ENABLE       = no        # Limit max brightness to connect to IOS device (iPad,iPhone)

# Misc
OLED_ENABLE     = no        # Enable the OLED Driver
EXTRA_ENCODERS_ENABLE   = no        # Enables 3 encoders per side (up from 1, not compatible with OLED_ENABLE)
SWAP_HANDS_ENABLE       = no        # Enable one-hand typing
LTO_ENABLE = yes # Enable Link Time Optimizations greatly reducing firmware size by disabling the old Macros and Functions features

# Special RGB Matrix, OLED, & Encoder Control Menu!
RGB_OLED_MENU           = no        # Enabled by setting this to the encoder index (0-5) you wish to use to control the menu.
                                    # Use the RGB_MENU keycode in the keymap for the encoder to advance the menu to the next option.

M keyboards/rgbkb/sol/rules.mk => keyboards/rgbkb/sol/rules.mk +0 -5
@@ 1,6 1,1 @@
# Custom local font file
OPT_DEFS += -DOLED_FONT_H=\"common/glcdfont.c\"

ENCODER_ENABLE = yes

DEFAULT_FOLDER = rgbkb/sol/rev2

R keyboards/rgbkb/sol3/config.h => keyboards/rgbkb/sol3/rev1/config.h +1 -0
@@ 51,6 51,7 @@

#define TOUCH_UPDATE_INTERVAL 33
#define OLED_UPDATE_INTERVAL 33
#define OLED_FONT_H "keyboards/rgbkb/common/glcdfont.c"

/* Audio Configuration */
#define AUDIO_PIN A4

R keyboards/rgbkb/sol3/halconf.h => keyboards/rgbkb/sol3/rev1/halconf.h +0 -0
M keyboards/rgbkb/sol3/rev1/keyboard.json => keyboards/rgbkb/sol3/rev1/keyboard.json +19 -0
@@ 8,6 8,22 @@
        "pid": "0x3510",
        "device_version": "0.0.1"
    },
    "build": {
        "lto": true
    },
    "features": {
        "audio": true,
        "bootmagic": true,
        "dip_switch": true,
        "dynamic_macro": true,
        "encoder": true,
        "extrakey": true,
        "mousekey": true,
        "nkro": true,
        "oled": true,
        "rgb_matrix": true,
        "rgblight": false
    },
    "rgblight": {
        "led_count": 156,
        "split_count": [78, 78],


@@ 25,6 41,9 @@
        }
    },
    "audio": {
        "default": {
            "clicky": false
        },
        "driver": "dac_additive"
    },
    "ws2812": {

R keyboards/rgbkb/sol3/mcuconf.h => keyboards/rgbkb/sol3/rev1/mcuconf.h +0 -0
M keyboards/rgbkb/sol3/rev1/rev1.c => keyboards/rgbkb/sol3/rev1/rev1.c +13 -0
@@ 8,6 8,7 @@
 */

#include "rev1.h"
#include "transactions.h"
#include "split_util.h"

#define NUMBER_OF_TOUCH_ENCODERS 2


@@ 256,3 257,15 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
    }
    return true;
};

void keyboard_post_init_kb(void) {
    touch_encoder_init();
    transaction_register_rpc(TOUCH_ENCODER_SYNC, touch_encoder_slave_sync);
    transaction_register_rpc(RGB_MENU_SYNC, rgb_menu_slave_sync);
    keyboard_post_init_user();
}

void housekeeping_task_kb(void) {
    touch_encoder_update(TOUCH_ENCODER_SYNC);
    rgb_menu_update(RGB_MENU_SYNC);
}

M keyboards/rgbkb/sol3/rev1/rev1.h => keyboards/rgbkb/sol3/rev1/rev1.h +3 -1
@@ 9,7 9,9 @@

#pragma once

#include "sol3.h"
#include "quantum.h"
#include "touch_encoder.h"
#include "common_oled.h"

// weak functions overridable by the user
void render_layer_status(void);

A keyboards/rgbkb/sol3/rev1/rules.mk => keyboards/rgbkb/sol3/rev1/rules.mk +8 -0
@@ 0,0 1,8 @@
# Touch encoder needs
VPATH += keyboards/rgbkb/common
SRC += touch_encoder.c
SRC += common_oled.c
I2C_DRIVER_REQUIRED = yes

SERIAL_DRIVER = usart
OPT = 3

M keyboards/rgbkb/sol3/rules.mk => keyboards/rgbkb/sol3/rules.mk +0 -33
@@ 1,34 1,1 @@
# Touch encoder needs
VPATH += keyboards/rgbkb/common
SRC += touch_encoder.c
SRC += common_oled.c
I2C_DRIVER_REQUIRED = yes

# Build Options
#   change yes to no to disable
#
BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes       # Mouse keys
EXTRAKEY_ENABLE = yes       # Audio control and System control
CONSOLE_ENABLE = no        # Console for debug
COMMAND_ENABLE = no         # Commands for debug and configuration
NKRO_ENABLE = yes           # Enable N-Key Rollover
AUDIO_ENABLE = yes          # Audio output

DYNAMIC_MACRO_ENABLE = yes
DIP_SWITCH_ENABLE = yes

RGBLIGHT_ENABLE = no
RGB_MATRIX_ENABLE = yes

OLED_ENABLE = yes

ENCODER_ENABLE = yes

SERIAL_DRIVER = usart
LTO_ENABLE = yes
OPT = 3

OPT_DEFS += -DOLED_FONT_H=\"keyboards/rgbkb/common/glcdfont.c\"

DEFAULT_FOLDER = rgbkb/sol3/rev1

D keyboards/rgbkb/sol3/sol3.c => keyboards/rgbkb/sol3/sol3.c +0 -38
@@ 1,38 0,0 @@
/*
 * ----------------------------------------------------------------------------
 * "THE BEER-WARE LICENSE" (Revision 42):
 * <https://github.com/Legonut> wrote this file.  As long as you retain this
 * notice you can do whatever you want with this stuff. If we meet some day, and
 * you think this stuff is worth it, you can buy me a beer in return. David Rauseo
 * ----------------------------------------------------------------------------
 */

#include "sol3.h"
#include "eeconfig.h"
#include "audio.h"
#include <transactions.h>

extern audio_config_t audio_config;

void keyboard_post_init_kb(void) {
    touch_encoder_init();
    transaction_register_rpc(TOUCH_ENCODER_SYNC, touch_encoder_slave_sync);
    transaction_register_rpc(RGB_MENU_SYNC, rgb_menu_slave_sync);
    keyboard_post_init_user();
}

void eeconfig_init_kb(void) {
    // Reset Keyboard EEPROM value to blank, rather than to a set value
    eeconfig_update_kb(0);

    audio_config.raw = eeconfig_read_audio();
    audio_config.clicky_enable = false;
    eeconfig_update_audio(audio_config.raw);

    eeconfig_init_user();
}

void housekeeping_task_kb(void) {
    touch_encoder_update(TOUCH_ENCODER_SYNC);
    rgb_menu_update(RGB_MENU_SYNC);
}

D keyboards/rgbkb/sol3/sol3.h => keyboards/rgbkb/sol3/sol3.h +0 -18
@@ 1,18 0,0 @@
/*
 * ----------------------------------------------------------------------------
 * "THE BEER-WARE LICENSE" (Revision 42):
 * <https://github.com/Legonut> wrote this file.  As long as you retain this
 * notice you can do whatever you want with this stuff. If we meet some day, and
 * you think this stuff is worth it, you can buy me a beer in return. David Rauseo
 * ----------------------------------------------------------------------------
 */

#pragma once

#if defined(KEYBOARD_rgbkb_sol3_rev1)
#    include "rev1.h"
#endif

#include "quantum.h"
#include "touch_encoder.h"
#include "common_oled.h"

D keyboards/rgbkb/zen/info.json => keyboards/rgbkb/zen/info.json +0 -5
@@ 1,5 0,0 @@
{
    "split": {
        "enabled": true
    }
}

M keyboards/rgbkb/zen/rev1/keyboard.json => keyboards/rgbkb/zen/rev1/keyboard.json +9 -0
@@ 8,12 8,21 @@
    "pid": "0x3060",
    "device_version": "0.0.1"
  },
  "features": {
    "bootmagic": false,
    "command": true,
    "extrakey": true,
    "mousekey": true,
    "nkro": false,
    "rgblight": true
  },
  "matrix_pins": {
    "cols": ["B2", "B3", "B1", "F7", "F6", "D4", "B6"],
    "rows": ["C6", "D7", "E6", "B4", "B5"]
  },
  "diode_direction": "COL2ROW",
  "split": {
    "enabled": true,
    "soft_serial_pin": "D0"
  },
  "rgblight": {

M keyboards/rgbkb/zen/rev2/config.h => keyboards/rgbkb/zen/rev2/config.h +2 -0
@@ 37,3 37,5 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT

#define OLED_FONT_H "common/glcdfont.c"

M keyboards/rgbkb/zen/rev2/keyboard.json => keyboards/rgbkb/zen/rev2/keyboard.json +10 -0
@@ 8,6 8,15 @@
      "pid": "0x3061",
      "device_version": "0.0.2"
    },
    "features": {
      "bootmagic": false,
      "command": true,
      "encoder": true,
      "extrakey": true,
      "mousekey": true,
      "nkro": false,
      "rgblight": true
    },
    "matrix_pins": {
      "cols": ["F4", "F5", "F6", "F7", "B3", "B1", "B2"],
      "rows": ["C6", "E6", "B5", "D7", "B4"]


@@ 19,6 28,7 @@
      ]
    },
    "split": {
      "enabled": true,
      "soft_serial_pin": "D3"
    },
    "rgblight": {

D keyboards/rgbkb/zen/rev2/post_rules.mk => keyboards/rgbkb/zen/rev2/post_rules.mk +0 -5
@@ 1,5 0,0 @@
# Setup so that OLED can be turned on/off easily
ifeq ($(strip $(OLED_ENABLE)), yes)
  # Custom local font file
  OPT_DEFS += -DOLED_FONT_H=\"common/glcdfont.c\"
endif

D keyboards/rgbkb/zen/rev2/rules.mk => keyboards/rgbkb/zen/rev2/rules.mk +0 -3
@@ 1,3 0,0 @@
ENCODER_ENABLE = yes

OLED_ENABLE = no

M keyboards/rgbkb/zen/rules.mk => keyboards/rgbkb/zen/rules.mk +0 -12
@@ 1,13 1,1 @@
# Build Options
#   change yes to no to disable
#
BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes       # Mouse keys
EXTRAKEY_ENABLE = yes       # Audio control and System control
CONSOLE_ENABLE = no         # Console for debug
COMMAND_ENABLE = yes        # Commands for debug and configuration
NKRO_ENABLE = no            # Enable N-Key Rollover
AUDIO_ENABLE = no           # Audio output
RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight

DEFAULT_FOLDER = rgbkb/zen/rev2

M keyboards/rgbkb/zygomorph/rev1/keyboard.json => keyboards/rgbkb/zygomorph/rev1/keyboard.json +70 -1
@@ 8,9 8,78 @@
      "pid": "0x3060",
      "device_version": "0.0.1"
    },
    "features": {
      "bootmagic": false,
      "extrakey": true,
      "mousekey": false,
      "nkro": false,
      "rgblight": true
    },
    "rgb_matrix": {
      "driver": "ws2812",
      "split_count": [30, 30]
      "split_count": [30, 30],
      "layout": [
        {"matrix": [0, 5], "x": 102, "y": 0, "flags": 4},
        {"matrix": [0, 4], "x": 81, "y": 0, "flags": 4},
        {"matrix": [0, 3], "x": 61, "y": 0, "flags": 4},
        {"matrix": [0, 2], "x": 41, "y": 0, "flags": 4},
        {"matrix": [0, 1], "x": 20, "y": 0, "flags": 4},
        {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
        {"matrix": [1, 5], "x": 102, "y": 16, "flags": 4},
        {"matrix": [1, 4], "x": 81, "y": 16, "flags": 4},
        {"matrix": [1, 3], "x": 61, "y": 16, "flags": 4},
        {"matrix": [1, 2], "x": 41, "y": 16, "flags": 4},
        {"matrix": [1, 1], "x": 20, "y": 16, "flags": 4},
        {"matrix": [1, 0], "x": 0, "y": 16, "flags": 1},
        {"matrix": [2, 5], "x": 102, "y": 32, "flags": 4},
        {"matrix": [2, 4], "x": 81, "y": 32, "flags": 4},
        {"matrix": [2, 3], "x": 61, "y": 32, "flags": 4},
        {"matrix": [2, 2], "x": 41, "y": 32, "flags": 4},
        {"matrix": [2, 1], "x": 20, "y": 32, "flags": 4},
        {"matrix": [2, 0], "x": 0, "y": 32, "flags": 1},
        {"matrix": [3, 5], "x": 102, "y": 48, "flags": 4},
        {"matrix": [3, 4], "x": 81, "y": 48, "flags": 4},
        {"matrix": [3, 3], "x": 61, "y": 48, "flags": 4},
        {"matrix": [3, 2], "x": 41, "y": 48, "flags": 4},
        {"matrix": [3, 1], "x": 20, "y": 48, "flags": 4},
        {"matrix": [3, 0], "x": 0, "y": 48, "flags": 1},
        {"matrix": [4, 5], "x": 102, "y": 64, "flags": 1},
        {"matrix": [4, 4], "x": 81, "y": 64, "flags": 1},
        {"matrix": [4, 3], "x": 61, "y": 64, "flags": 1},
        {"matrix": [4, 2], "x": 41, "y": 64, "flags": 1},
        {"matrix": [4, 1], "x": 20, "y": 64, "flags": 1},
        {"matrix": [4, 0], "x": 0, "y": 64, "flags": 1},
        {"matrix": [5, 5], "x": 224, "y": 0, "flags": 4},
        {"matrix": [5, 4], "x": 204, "y": 0, "flags": 4},
        {"matrix": [5, 3], "x": 183, "y": 0, "flags": 4},
        {"matrix": [5, 2], "x": 163, "y": 0, "flags": 4},
        {"matrix": [5, 1], "x": 143, "y": 0, "flags": 4},
        {"matrix": [5, 0], "x": 122, "y": 0, "flags": 4},
        {"matrix": [6, 5], "x": 224, "y": 16, "flags": 1},
        {"matrix": [6, 4], "x": 204, "y": 16, "flags": 4},
        {"matrix": [6, 3], "x": 183, "y": 16, "flags": 4},
        {"matrix": [6, 2], "x": 163, "y": 16, "flags": 4},
        {"matrix": [6, 1], "x": 143, "y": 16, "flags": 4},
        {"matrix": [6, 0], "x": 122, "y": 16, "flags": 4},
        {"matrix": [7, 5], "x": 224, "y": 32, "flags": 1},
        {"matrix": [7, 4], "x": 204, "y": 32, "flags": 4},
        {"matrix": [7, 3], "x": 183, "y": 32, "flags": 4},
        {"matrix": [7, 2], "x": 163, "y": 32, "flags": 4},
        {"matrix": [7, 1], "x": 143, "y": 32, "flags": 4},
        {"matrix": [7, 0], "x": 122, "y": 32, "flags": 4},
        {"matrix": [8, 5], "x": 224, "y": 48, "flags": 1},
        {"matrix": [8, 4], "x": 204, "y": 48, "flags": 4},
        {"matrix": [8, 3], "x": 183, "y": 48, "flags": 4},
        {"matrix": [8, 2], "x": 163, "y": 48, "flags": 4},
        {"matrix": [8, 1], "x": 143, "y": 48, "flags": 4},
        {"matrix": [8, 0], "x": 122, "y": 48, "flags": 4},
        {"matrix": [9, 5], "x": 224, "y": 64, "flags": 1},
        {"matrix": [9, 4], "x": 204, "y": 64, "flags": 1},
        {"matrix": [9, 3], "x": 183, "y": 64, "flags": 1},
        {"matrix": [9, 2], "x": 163, "y": 64, "flags": 1},
        {"matrix": [9, 1], "x": 143, "y": 64, "flags": 1},
        {"matrix": [9, 0], "x": 122, "y": 64, "flags": 1}
     ]
    },
    "matrix_pins": {
      "cols": ["F4", "F6", "C7", "C6", "B6", "D4"],

D keyboards/rgbkb/zygomorph/rev1/rev1.c => keyboards/rgbkb/zygomorph/rev1/rev1.c +0 -43
@@ 1,43 0,0 @@
#include "quantum.h"


#ifdef RGB_MATRIX_ENABLE
led_config_t g_led_config = { {
    {      5,      4,      3,      2,      1,      0 },
    {     11,     10,      9,      8,      7,      6 },
    {     17,     16,     15,     14,     13,     12 },
    {     23,     22,     21,     20,     19,     18 },
    {     29,     28,     27,     26,     25,     24 },
    {     35,     34,     33,     32,     31,     30 },
    {     41,     40,     39,     38,     37,     36 },
    {     47,     46,     45,     44,     43,     42 },
    {     53,     52,     51,     50,     49,     48 },
    {     59,     58,     57,     56,     55,     54 }
}, {
// Left Hand
    { 102,   0 }, {  81,   0 }, {  61,   0 }, {  41,   0 }, {  20,   0 }, {   0,   0 },
    { 102,  16 }, {  81,  16 }, {  61,  16 }, {  41,  16 }, {  20,  16 }, {   0,  16 },
    { 102,  32 }, {  81,  32 }, {  61,  32 }, {  41,  32 }, {  20,  32 }, {   0,  32 },
    { 102,  48 }, {  81,  48 }, {  61,  48 }, {  41,  48 }, {  20,  48 }, {   0,  48 },
    { 102,  64 }, {  81,  64 }, {  61,  64 }, {  41,  64 }, {  20,  64 }, {   0,  64 },
// Right Hand
    { 224,   0 }, { 204,   0 }, { 183,   0 }, { 163,   0 }, { 143,   0 }, { 122,   0 },
    { 224,  16 }, { 204,  16 }, { 183,  16 }, { 163,  16 }, { 143,  16 }, { 122,  16 },
    { 224,  32 }, { 204,  32 }, { 183,  32 }, { 163,  32 }, { 143,  32 }, { 122,  32 },
    { 224,  48 }, { 204,  48 }, { 183,  48 }, { 163,  48 }, { 143,  48 }, { 122,  48 },
    { 224,  64 }, { 204,  64 }, { 183,  64 }, { 163,  64 }, { 143,  64 }, { 122,  64 }
}, {
// Left Hand
    4, 4, 4, 4, 4, 1,
    4, 4, 4, 4, 4, 1,
    4, 4, 4, 4, 4, 1,
    4, 4, 4, 4, 4, 1,
    1, 1, 1, 1, 1, 1,
// Right Hand
    4, 4, 4, 4, 4, 4,
    1, 4, 4, 4, 4, 4,
    1, 4, 4, 4, 4, 4,
    1, 4, 4, 4, 4, 4,
    1, 1, 1, 1, 1, 1
} };
#endif

A keyboards/rgbkb/zygomorph/rev1/rules.mk => keyboards/rgbkb/zygomorph/rev1/rules.mk +3 -0
@@ 0,0 1,3 @@
# Disable unsupported hardware
AUDIO_SUPPORTED = no
BACKLIGHT_SUPPORTED = no

M keyboards/rgbkb/zygomorph/rules.mk => keyboards/rgbkb/zygomorph/rules.mk +0 -17
@@ 1,18 1,1 @@
# Build Options
#   change yes to no to disable
#
BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
MOUSEKEY_ENABLE = no        # Mouse keys
EXTRAKEY_ENABLE = yes       # Audio control and System control
CONSOLE_ENABLE = no         # Console for debug
COMMAND_ENABLE = no         # Commands for debug and configuration
NKRO_ENABLE = no            # Enable N-Key Rollover
BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
AUDIO_ENABLE = no           # Audio output

DEFAULT_FOLDER = rgbkb/zygomorph/rev1

# Disable unsupported hardware
AUDIO_SUPPORTED = no
BACKLIGHT_SUPPORTED = no