fixed all the confusion with diode direction, as it turns out, you only need one firmware

This commit is contained in:
Sadek Baroudi 2021-12-02 13:22:47 -08:00
parent 466f2a1d88
commit cd7deb2280
8 changed files with 4 additions and 268 deletions

View File

@ -4,11 +4,4 @@
# NOTE: I had to set COMBO_ENABLE to no in my users/sadekbaroudi/rules.mk due to space limitations
cp keyboards/xoiviox/bgkeeb/config.h keyboards/xoiviox/bgkeeb/config.h.bak
cp keyboards/xoiviox/bgkeeb/config.left.h keyboards/xoiviox/bgkeeb/config.h
make xoiviox/bgkeeb:default ; cp .build/xoiviox_bgkeeb_default.hex /mnt/g/My\ Drive/qmk-keyboards/bgkeeb-default/left/ ;
cp keyboards/xoiviox/bgkeeb/config.right.h keyboards/xoiviox/bgkeeb/config.h
make xoiviox/bgkeeb:default ; cp .build/xoiviox_bgkeeb_default.hex /mnt/g/My\ Drive/qmk-keyboards/bgkeeb-default/right/ ;
mv keyboards/xoiviox/bgkeeb/config.h.bak keyboards/xoiviox/bgkeeb/config.h
make xoiviox/bgkeeb:sadekbaroudi ; cp .build/xoiviox_bgkeeb_sadekbaroudi.hex /mnt/g/My\ Drive/qmk-keyboards/bgkeeb/ ;

View File

@ -1,7 +0,0 @@
#!/bin/bash
# TODO: consolidate all the build files into one
# NOTE: I had to set COMBO_ENABLE to no in my users/sadekbaroudi/rules.mk due to space limitations
make xoiviox/bgkeeb:default ; cp .build/xoiviox_bgkeeb_default.hex /mnt/g/My\ Drive/qmk-keyboards/bgkeeb-default/v2/ ;

View File

@ -4,11 +4,4 @@
# NOTE: I had to set COMBO_ENABLE to no in my users/sadekbaroudi/rules.mk due to space limitations
cp keyboards/xoiviox/bgkeeb/config.h keyboards/xoiviox/bgkeeb/config.h.bak
cp keyboards/xoiviox/bgkeeb/config.left.h keyboards/xoiviox/bgkeeb/config.h
make xoiviox/bgkeeb:sadekbaroudi ; cp .build/xoiviox_bgkeeb_sadekbaroudi.hex /mnt/g/My\ Drive/qmk-keyboards/bgkeeb/left/ ;
cp keyboards/xoiviox/bgkeeb/config.right.h keyboards/xoiviox/bgkeeb/config.h
make xoiviox/bgkeeb:sadekbaroudi ; cp .build/xoiviox_bgkeeb_sadekbaroudi.hex /mnt/g/My\ Drive/qmk-keyboards/bgkeeb/right/ ;
mv keyboards/xoiviox/bgkeeb/config.h.bak keyboards/xoiviox/bgkeeb/config.h
make xoiviox/bgkeeb:sadekbaroudi ; cp .build/xoiviox_bgkeeb_sadekbaroudi.hex /mnt/g/My\ Drive/qmk-keyboards/bgkeeb/ ;

View File

@ -1,7 +0,0 @@
#!/bin/bash
# TODO: consolidate all the build files into one
# NOTE: I had to set COMBO_ENABLE to no in my users/sadekbaroudi/rules.mk due to space limitations
make xoiviox/bgkeeb:sadekbaroudi ; cp .build/xoiviox_bgkeeb_sadekbaroudi.hex /mnt/g/My\ Drive/qmk-keyboards/bgkeeb/v2/ ;

View File

@ -33,10 +33,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define MATRIX_COLS 10
/* COL2ROW or ROW2COL */
// right side
#define DIODE_DIRECTION COL2ROW
// left side
//#define DIODE_DIRECTION COL2ROW
// wiring of each half
#define MATRIX_ROW_PINS { F6, D7, B3, E6 }

View File

@ -1,114 +0,0 @@
/*
Copyright 2012 Jun Wako <wakojun@gmail.com>
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 "config_common.h"
/* USB Device descriptor parameter */
#define DEVICE_VER 0x0001
#define VENDOR_ID 0xFEFE
#define PRODUCT_ID 0x8814
#define MANUFACTURER sadekbaroudi
#define PRODUCT sadekbaroudi bgkeeb
#define DESCRIPTION sadekbaroudi bgkeeb
/* key matrix size */
// Rows are doubled-up
#define MATRIX_ROWS 8
#define MATRIX_COLS 10
/* COL2ROW or ROW2COL */
// right side
//#define DIODE_DIRECTION COL2ROW
// left side
#define DIODE_DIRECTION COL2ROW
// wiring of each half
#define MATRIX_ROW_PINS { F6, D7, B3, E6 }
#define MATRIX_COL_PINS { F4, D4, F5, B1, B2 }
#define SOFT_SERIAL_PIN D2
#define USE_SERIAL
#define RGB_DI_PIN D3
#ifdef RGBLIGHT_ENABLE
#define RGBLIGHT_SPLIT
#define RGBLED_SPLIT { 18, 18 }
#ifdef RGBLIGHT_ANIMATIONS
#undef RGBLIGHT_ANIMATIONS
#endif
#define RGBLED_NUM 36
#define RGBLIGHT_HUE_STEP 16
#define RGBLIGHT_SAT_STEP 16
#define RGBLIGHT_VAL_STEP 16
#define RGBLIGHT_LIMIT_VAL 60 /* The maximum brightness level for RGBLIGHT_ENABLE */
#define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
// /*== all animations enable ==*/
// #define RGBLIGHT_ANIMATIONS
// /*== or choose animations ==*/
// #define RGBLIGHT_EFFECT_BREATHING
// #define RGBLIGHT_EFFECT_RAINBOW_MOOD
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
// #define RGBLIGHT_EFFECT_SNAKE
// #define RGBLIGHT_EFFECT_KNIGHT
// #define RGBLIGHT_EFFECT_CHRISTMAS
// #define RGBLIGHT_EFFECT_STATIC_GRADIENT
// #define RGBLIGHT_EFFECT_RGB_TEST
// #define RGBLIGHT_EFFECT_ALTERNATING
// /*== customize breathing effect ==*/
// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/
// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64
// /*==== use exp() and sin() ====*/
// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7
// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255
#endif
#define ENCODERS_PAD_A {B5}
#define ENCODERS_PAD_B {B4}
#define ENCODER_RESOLUTION 4
// Per encoder settings
//#define ENCODER_RESOLUTIONS { 4, 4 }
/* define if matrix has ghost */
//#define MATRIX_HAS_GHOST
/* number of backlight levels */
// #define BACKLIGHT_LEVELS 3
/* Set 0 if debouncing isn't needed */
#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/* 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

View File

@ -1,114 +0,0 @@
/*
Copyright 2012 Jun Wako <wakojun@gmail.com>
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 "config_common.h"
/* USB Device descriptor parameter */
#define DEVICE_VER 0x0001
#define VENDOR_ID 0xFEFE
#define PRODUCT_ID 0x8814
#define MANUFACTURER sadekbaroudi
#define PRODUCT sadekbaroudi bgkeeb
#define DESCRIPTION sadekbaroudi bgkeeb
/* key matrix size */
// Rows are doubled-up
#define MATRIX_ROWS 8
#define MATRIX_COLS 10
/* COL2ROW or ROW2COL */
// right side
#define DIODE_DIRECTION COL2ROW
// left side
//#define DIODE_DIRECTION COL2ROW
// wiring of each half
#define MATRIX_ROW_PINS { F6, D7, B3, E6 }
#define MATRIX_COL_PINS { F4, D4, F5, B1, B2 }
#define SOFT_SERIAL_PIN D2
#define USE_SERIAL
#define RGB_DI_PIN D3
#ifdef RGBLIGHT_ENABLE
#define RGBLIGHT_SPLIT
#define RGBLED_SPLIT { 18, 18 }
#ifdef RGBLIGHT_ANIMATIONS
#undef RGBLIGHT_ANIMATIONS
#endif
#define RGBLED_NUM 36
#define RGBLIGHT_HUE_STEP 16
#define RGBLIGHT_SAT_STEP 16
#define RGBLIGHT_VAL_STEP 16
#define RGBLIGHT_LIMIT_VAL 60 /* The maximum brightness level for RGBLIGHT_ENABLE */
#define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
// /*== all animations enable ==*/
// #define RGBLIGHT_ANIMATIONS
// /*== or choose animations ==*/
// #define RGBLIGHT_EFFECT_BREATHING
// #define RGBLIGHT_EFFECT_RAINBOW_MOOD
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
// #define RGBLIGHT_EFFECT_SNAKE
// #define RGBLIGHT_EFFECT_KNIGHT
// #define RGBLIGHT_EFFECT_CHRISTMAS
// #define RGBLIGHT_EFFECT_STATIC_GRADIENT
// #define RGBLIGHT_EFFECT_RGB_TEST
// #define RGBLIGHT_EFFECT_ALTERNATING
// /*== customize breathing effect ==*/
// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/
// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64
// /*==== use exp() and sin() ====*/
// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7
// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255
#endif
#define ENCODERS_PAD_A {B5}
#define ENCODERS_PAD_B {B4}
#define ENCODER_RESOLUTION 4
// Per encoder settings
//#define ENCODER_RESOLUTIONS { 4, 4 }
/* define if matrix has ghost */
//#define MATRIX_HAS_GHOST
/* number of backlight levels */
// #define BACKLIGHT_LEVELS 3
/* Set 0 if debouncing isn't needed */
#define DEBOUNCE 5
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/* 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

View File

@ -5,11 +5,11 @@
Make example for this keyboard (after setting up your build environment):
make bgkeeb:default
make xoiviox/bgkeeb:default
Flashing example for this keyboard ([using the command line](https://docs.qmk.fm/#/newbs_flashing?id=flash-your-keyboard-from-the-command-line)):
make bgkeeb:default:flash
make xoiviox/bgkeeb:default:flash
See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information.
@ -18,11 +18,6 @@ See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools)
See:
https://github.com/sadekbaroudi/bgkeeb/blob/master/BUILDGUIDE.md
## Notes
IMPORTANT: Please read the firmware section on this page to determine which version of bgkeeb that you have, and how to build the firmware based on that:
https://github.com/sadekbaroudi/bgkeeb/blob/master/README.md
## Choosing which board to plug the USB cable into (choosing Master)
Because the two boards are identical, the firmware has logic to differentiate the left and right board. It uses two strategies to figure things out, [EE_HANDS](https://docs.qmk.fm/#/feature_split_keyboard?id=handedness-by-eeprom) or [by define](https://docs.qmk.fm/#/feature_split_keyboard?id=handedness-by-define). See [setting-handedness](https://docs.qmk.fm/#/config_options?id=setting-handedness) for more information.