diff options
| -rw-r--r-- | keyboards/helix/config.h | 22 | ||||
| -rw-r--r-- | keyboards/helix/rev1/config.h | 2 | ||||
| -rw-r--r-- | keyboards/helix/rev1/keymaps/OLED_sample/config.h | 4 | ||||
| -rw-r--r-- | keyboards/helix/rev1/keymaps/OLED_sample/serial_config.h | 16 | ||||
| -rw-r--r-- | keyboards/helix/rev1/keymaps/default/config.h | 4 | ||||
| -rw-r--r-- | keyboards/helix/rev1/serial_config.h | 16 | ||||
| -rw-r--r-- | keyboards/helix/rev2/config.h | 3 | ||||
| -rw-r--r-- | keyboards/helix/rev2/keymaps/default/config.h | 2 | ||||
| -rw-r--r-- | keyboards/helix/rev2/keymaps/edvorakjp/config.h | 2 | ||||
| -rw-r--r-- | keyboards/helix/rev2/keymaps/five_rows/config.h | 2 | ||||
| -rw-r--r-- | keyboards/helix/rev2/keymaps/five_rows_jis/config.h | 4 | ||||
| -rw-r--r-- | keyboards/helix/rev2/keymaps/froggy/config.h | 2 | ||||
| -rw-r--r-- | keyboards/helix/rev2/keymaps/led_test/config.h | 2 | ||||
| -rw-r--r-- | keyboards/helix/rev2/matrix.c | 1 | ||||
| -rw-r--r-- | keyboards/helix/rev2/serial_config.h | 16 | ||||
| -rw-r--r-- | keyboards/helix/rev2/split_util.c | 1 | ||||
| -rw-r--r-- | keyboards/helix/serial.c | 6 | ||||
| -rw-r--r-- | keyboards/helix/serial.h | 37 | ||||
| -rw-r--r-- | keyboards/helix/ssd1306.h | 1 | 
19 files changed, 85 insertions, 58 deletions
| diff --git a/keyboards/helix/config.h b/keyboards/helix/config.h index 8f0524f972..7bd4d26456 100644 --- a/keyboards/helix/config.h +++ b/keyboards/helix/config.h @@ -21,8 +21,22 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  #include "config_common.h" -#ifdef SUBPROJECT_rev1 -    #include "rev1/config.h" -#endif +// GCC include 'config.h" sequence in qmk_firmware/keyboards/helix/ +//   -include keyboards/helix/config.h +//   -include keyboards/helix/rev?/config.h +//   -include keyboards/helix/rev?/keymaps/MAPNAME/config.h +//   XXXX.c -#endif +#include <serial_config.h> + +// GCC include search path in qmk_firmare/keyboards/helix/ +//    #include "..." search starts here: +//    #include <...> search starts here: +//     keyboards/helix/rev?/keymaps/MAPNAME +//     keyboards/helix +//     keyboards/helix/rev? +//     . +//     ./tmk_core +//     ...... + +#endif /* CONFIG_H */ diff --git a/keyboards/helix/rev1/config.h b/keyboards/helix/rev1/config.h index 3420992d83..7fec62fc83 100644 --- a/keyboards/helix/rev1/config.h +++ b/keyboards/helix/rev1/config.h @@ -19,8 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  #ifndef REV1_CONFIG_H  #define REV1_CONFIG_H -#include "../config.h" -  /* USB Device descriptor parameter */  #define VENDOR_ID       0xFEED  #define PRODUCT_ID      0x3060 diff --git a/keyboards/helix/rev1/keymaps/OLED_sample/config.h b/keyboards/helix/rev1/keymaps/OLED_sample/config.h index 6cd3072b14..0e1b787a5a 100644 --- a/keyboards/helix/rev1/keymaps/OLED_sample/config.h +++ b/keyboards/helix/rev1/keymaps/OLED_sample/config.h @@ -21,8 +21,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  #ifndef CONFIG_USER_H  #define CONFIG_USER_H -#include "../../config.h" -  /* Use I2C or Serial */  #define USE_I2C @@ -37,8 +35,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  #define SSD1306OLED -#define USE_SERIAL_PD2 -  #define PREVENT_STUCK_MODIFIERS  #define TAPPING_FORCE_HOLD  #define TAPPING_TERM 100 diff --git a/keyboards/helix/rev1/keymaps/OLED_sample/serial_config.h b/keyboards/helix/rev1/keymaps/OLED_sample/serial_config.h new file mode 100644 index 0000000000..be2e7cb8b1 --- /dev/null +++ b/keyboards/helix/rev1/keymaps/OLED_sample/serial_config.h @@ -0,0 +1,16 @@ +#ifndef SOFT_SERIAL_CONFIG_H +#define SOFT_SERIAL_CONFIG_H + +/* Soft Serial defines */ +#define SERIAL_PIN_DDR DDRD +#define SERIAL_PIN_PORT PORTD +#define SERIAL_PIN_INPUT PIND +#define SERIAL_PIN_MASK _BV(PD2) +#define SERIAL_PIN_INTERRUPT INT2_vect + +#define SERIAL_SLAVE_BUFFER_LENGTH MATRIX_ROWS/2 +#define SERIAL_MASTER_BUFFER_LENGTH 1 + +//// #error rev1/keymaps/OLED_sample serial config + +#endif /* SOFT_SERIAL_CONFIG_H */ diff --git a/keyboards/helix/rev1/keymaps/default/config.h b/keyboards/helix/rev1/keymaps/default/config.h index 7f33a43630..d95925d4e4 100644 --- a/keyboards/helix/rev1/keymaps/default/config.h +++ b/keyboards/helix/rev1/keymaps/default/config.h @@ -21,8 +21,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  #ifndef CONFIG_USER_H  #define CONFIG_USER_H -#include "../../config.h" -  /* Use I2C or Serial, not both */  #define USE_SERIAL @@ -34,4 +32,4 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  // #define _MASTER_RIGHT  // #define EE_HANDS -#endif
\ No newline at end of file +#endif diff --git a/keyboards/helix/rev1/serial_config.h b/keyboards/helix/rev1/serial_config.h new file mode 100644 index 0000000000..2b668a6afc --- /dev/null +++ b/keyboards/helix/rev1/serial_config.h @@ -0,0 +1,16 @@ +#ifndef SOFT_SERIAL_CONFIG_H +#define SOFT_SERIAL_CONFIG_H + +/* Soft Serial defines */ +#define SERIAL_PIN_DDR DDRD +#define SERIAL_PIN_PORT PORTD +#define SERIAL_PIN_INPUT PIND +#define SERIAL_PIN_MASK _BV(PD0) +#define SERIAL_PIN_INTERRUPT INT0_vect + +#define SERIAL_SLAVE_BUFFER_LENGTH MATRIX_ROWS/2 +#define SERIAL_MASTER_BUFFER_LENGTH 1 + +/// #error rev1 serial config + +#endif /* SOFT_SERIAL_CONFIG_H */ diff --git a/keyboards/helix/rev2/config.h b/keyboards/helix/rev2/config.h index 5307578832..058236122f 100644 --- a/keyboards/helix/rev2/config.h +++ b/keyboards/helix/rev2/config.h @@ -19,8 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  #ifndef REV2_CONFIG_H  #define REV2_CONFIG_H -#include "../config.h" -  /* USB Device descriptor parameter */  #define VENDOR_ID       0xFEED  #define PRODUCT_ID      0x3060 @@ -37,7 +35,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  /* Use I2C or Serial */  #define USE_I2C  #define USE_SERIAL -#define USE_SERIAL_PD2  //#define USE_MATRIX_I2C  /* Select hand configuration */ diff --git a/keyboards/helix/rev2/keymaps/default/config.h b/keyboards/helix/rev2/keymaps/default/config.h index 0e7967c73b..6da6849a1d 100644 --- a/keyboards/helix/rev2/keymaps/default/config.h +++ b/keyboards/helix/rev2/keymaps/default/config.h @@ -21,8 +21,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  #ifndef CONFIG_USER_H  #define CONFIG_USER_H -#include "../../config.h" -  // place overrides here  #endif /* CONFIG_USER_H */ diff --git a/keyboards/helix/rev2/keymaps/edvorakjp/config.h b/keyboards/helix/rev2/keymaps/edvorakjp/config.h index bb569ca5df..a7a5f83600 100644 --- a/keyboards/helix/rev2/keymaps/edvorakjp/config.h +++ b/keyboards/helix/rev2/keymaps/edvorakjp/config.h @@ -1,8 +1,6 @@  #ifndef CONFIG_USER_H  #define CONFIG_USER_H -#include "../../config.h" -  #undef TAPPING_FORCE_HOLD  #undef TAPPING_TERM  #define TAPPING_TERM 120 diff --git a/keyboards/helix/rev2/keymaps/five_rows/config.h b/keyboards/helix/rev2/keymaps/five_rows/config.h index 0e7967c73b..6da6849a1d 100644 --- a/keyboards/helix/rev2/keymaps/five_rows/config.h +++ b/keyboards/helix/rev2/keymaps/five_rows/config.h @@ -21,8 +21,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  #ifndef CONFIG_USER_H  #define CONFIG_USER_H -#include "../../config.h" -  // place overrides here  #endif /* CONFIG_USER_H */ diff --git a/keyboards/helix/rev2/keymaps/five_rows_jis/config.h b/keyboards/helix/rev2/keymaps/five_rows_jis/config.h index 17c4a30b34..b4390551ef 100644 --- a/keyboards/helix/rev2/keymaps/five_rows_jis/config.h +++ b/keyboards/helix/rev2/keymaps/five_rows_jis/config.h @@ -21,8 +21,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  #ifndef CONFIG_USER_H  #define CONFIG_USER_H -#include "../../config.h" -  /* Use I2C or Serial */  #define USE_I2C @@ -59,8 +57,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.    #error "expected HELIX_ROWS 4 or 5"  #endif -#define USE_SERIAL_PD2 -  #define PREVENT_STUCK_MODIFIERS  #define TAPPING_FORCE_HOLD  #define TAPPING_TERM 100 diff --git a/keyboards/helix/rev2/keymaps/froggy/config.h b/keyboards/helix/rev2/keymaps/froggy/config.h index 8161d4a25d..df72aef123 100644 --- a/keyboards/helix/rev2/keymaps/froggy/config.h +++ b/keyboards/helix/rev2/keymaps/froggy/config.h @@ -21,8 +21,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  #ifndef CONFIG_USER_H  #define CONFIG_USER_H -#include "../../config.h" -  #undef TAPPING_TERM  #define TAPPING_TERM 200  #define ONESHOT_TAP_TOGGLE 5 /* Tapping this number of times holds the key until tapped this number of times again. */ diff --git a/keyboards/helix/rev2/keymaps/led_test/config.h b/keyboards/helix/rev2/keymaps/led_test/config.h index 0e7967c73b..6da6849a1d 100644 --- a/keyboards/helix/rev2/keymaps/led_test/config.h +++ b/keyboards/helix/rev2/keymaps/led_test/config.h @@ -21,8 +21,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  #ifndef CONFIG_USER_H  #define CONFIG_USER_H -#include "../../config.h" -  // place overrides here  #endif /* CONFIG_USER_H */ diff --git a/keyboards/helix/rev2/matrix.c b/keyboards/helix/rev2/matrix.c index a908360c59..8a1ce3af1e 100644 --- a/keyboards/helix/rev2/matrix.c +++ b/keyboards/helix/rev2/matrix.c @@ -30,7 +30,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  #include "matrix.h"  #include "split_util.h"  #include "pro_micro.h" -#include "config.h"  #ifdef USE_MATRIX_I2C  #  include "i2c.h" diff --git a/keyboards/helix/rev2/serial_config.h b/keyboards/helix/rev2/serial_config.h new file mode 100644 index 0000000000..82c6e4e836 --- /dev/null +++ b/keyboards/helix/rev2/serial_config.h @@ -0,0 +1,16 @@ +#ifndef SOFT_SERIAL_CONFIG_H +#define SOFT_SERIAL_CONFIG_H + +/* Soft Serial defines */ +#define SERIAL_PIN_DDR DDRD +#define SERIAL_PIN_PORT PORTD +#define SERIAL_PIN_INPUT PIND +#define SERIAL_PIN_MASK _BV(PD2) +#define SERIAL_PIN_INTERRUPT INT2_vect + +#define SERIAL_SLAVE_BUFFER_LENGTH MATRIX_ROWS/2 +#define SERIAL_MASTER_BUFFER_LENGTH MATRIX_ROWS/2 + +//// #error rev2 serial config + +#endif /* SOFT_SERIAL_CONFIG_H */ diff --git a/keyboards/helix/rev2/split_util.c b/keyboards/helix/rev2/split_util.c index 8bc064174e..beb39fa005 100644 --- a/keyboards/helix/rev2/split_util.c +++ b/keyboards/helix/rev2/split_util.c @@ -7,7 +7,6 @@  #include "split_util.h"  #include "matrix.h"  #include "keyboard.h" -#include "config.h"  #ifdef USE_MATRIX_I2C  #  include "i2c.h" diff --git a/keyboards/helix/serial.c b/keyboards/helix/serial.c index 182f222196..5919415877 100644 --- a/keyboards/helix/serial.c +++ b/keyboards/helix/serial.c @@ -110,16 +110,18 @@ void serial_master_init(void) {  void serial_slave_init(void) {    serial_input_with_pullup(); -#ifndef USE_SERIAL_PD2 +#if SERIAL_PIN_MASK == _BV(PD0)    // Enable INT0    EIMSK |= _BV(INT0);    // Trigger on falling edge of INT0    EICRA &= ~(_BV(ISC00) | _BV(ISC01)); -#else +#elif SERIAL_PIN_MASK == _BV(PD2)    // Enable INT2    EIMSK |= _BV(INT2);    // Trigger on falling edge of INT2    EICRA &= ~(_BV(ISC20) | _BV(ISC21)); +#else + #error unknown SERIAL_PIN_MASK value  #endif  } diff --git a/keyboards/helix/serial.h b/keyboards/helix/serial.h index 8f15d66753..c3c9569b2c 100644 --- a/keyboards/helix/serial.h +++ b/keyboards/helix/serial.h @@ -1,28 +1,19 @@ -#ifndef MY_SERIAL_H -#define MY_SERIAL_H +#ifndef SOFT_SERIAL_H +#define SOFT_SERIAL_H -#include "config.h"  #include <stdbool.h> -/* TODO:  some defines for interrupt setup */ -#define SERIAL_PIN_DDR DDRD -#define SERIAL_PIN_PORT PORTD -#define SERIAL_PIN_INPUT PIND - -#ifndef USE_SERIAL_PD2 -#define SERIAL_PIN_MASK _BV(PD0) -#define SERIAL_PIN_INTERRUPT INT0_vect -#else -#define SERIAL_PIN_MASK _BV(PD2) -#define SERIAL_PIN_INTERRUPT INT2_vect -#endif - -#define SERIAL_SLAVE_BUFFER_LENGTH MATRIX_ROWS/2 -#ifdef KEYBOARD_helix_rev1 -#define SERIAL_MASTER_BUFFER_LENGTH 1 -#else -#define SERIAL_MASTER_BUFFER_LENGTH MATRIX_ROWS/2 -#endif +// //////////////////////////////////////////// +// Need Soft Serial defines in serial_config.h +// //////////////////////////////////////////// +// ex. +//  #define SERIAL_PIN_DDR DDRD +//  #define SERIAL_PIN_PORT PORTD +//  #define SERIAL_PIN_INPUT PIND +//  #define SERIAL_PIN_MASK _BV(PD?)   ?=0,2 +//  #define SERIAL_PIN_INTERRUPT INT?_vect  ?=0,2 +//  #define SERIAL_SLAVE_BUFFER_LENGTH MATRIX_ROWS/2 +//  #define SERIAL_MASTER_BUFFER_LENGTH MATRIX_ROWS/2  // Buffers for master - slave communication  extern volatile uint8_t serial_slave_buffer[SERIAL_SLAVE_BUFFER_LENGTH]; @@ -33,4 +24,4 @@ void serial_slave_init(void);  int serial_update_buffers(void);  bool serial_slave_data_corrupt(void); -#endif +#endif /* SOFT_SERIAL_H */ diff --git a/keyboards/helix/ssd1306.h b/keyboards/helix/ssd1306.h index b65c505c97..77ce7c211a 100644 --- a/keyboards/helix/ssd1306.h +++ b/keyboards/helix/ssd1306.h @@ -4,7 +4,6 @@  #include <stdbool.h>  #include <stdio.h>  #include "pincontrol.h" -#include "config.h"  enum ssd1306_cmds {    DisplayOff = 0xAE, | 
