diff options
Diffstat (limited to 'keyboards/lets_split')
| -rw-r--r-- | keyboards/lets_split/Makefile | 4 | ||||
| -rw-r--r-- | keyboards/lets_split/config.h | 3 | ||||
| -rw-r--r-- | keyboards/lets_split/eeprom-lefthand.eep | 2 | ||||
| -rw-r--r-- | keyboards/lets_split/eeprom-righthand.eep | 2 | ||||
| -rw-r--r-- | keyboards/lets_split/keymaps/i2c/config.h | 10 | ||||
| -rw-r--r-- | keyboards/lets_split/keymaps/serial/config.h | 9 | ||||
| -rw-r--r-- | keyboards/lets_split/lets_split.h | 3 | ||||
| -rw-r--r-- | keyboards/lets_split/readme.md | 86 | ||||
| -rw-r--r-- | keyboards/lets_split/rev2/rev2.h | 8 | ||||
| -rw-r--r-- | keyboards/lets_split/rev2fliphalf/Makefile | 3 | ||||
| -rw-r--r-- | keyboards/lets_split/rev2fliphalf/config.h | 91 | ||||
| -rw-r--r-- | keyboards/lets_split/rev2fliphalf/rev2fliphalf.c | 32 | ||||
| -rw-r--r-- | keyboards/lets_split/rev2fliphalf/rev2fliphalf.h | 28 | ||||
| -rw-r--r-- | keyboards/lets_split/rev2fliphalf/rules.mk | 5 | ||||
| -rw-r--r-- | keyboards/lets_split/rules.mk | 12 | ||||
| -rw-r--r-- | keyboards/lets_split/split_util.c | 3 |
16 files changed, 276 insertions, 25 deletions
diff --git a/keyboards/lets_split/Makefile b/keyboards/lets_split/Makefile index 4e2a6f00f..f5c87d4d6 100644 --- a/keyboards/lets_split/Makefile +++ b/keyboards/lets_split/Makefile | |||
| @@ -1,3 +1,5 @@ | |||
| 1 | SUBPROJECT_DEFAULT = rev2 | ||
| 2 | |||
| 1 | ifndef MAKEFILE_INCLUDED | 3 | ifndef MAKEFILE_INCLUDED |
| 2 | include ../../Makefile | 4 | include ../../Makefile |
| 3 | endif \ No newline at end of file | 5 | endif |
diff --git a/keyboards/lets_split/config.h b/keyboards/lets_split/config.h index 7df0c5752..008fb0978 100644 --- a/keyboards/lets_split/config.h +++ b/keyboards/lets_split/config.h | |||
| @@ -26,4 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 26 | #ifdef SUBPROJECT_rev2 | 26 | #ifdef SUBPROJECT_rev2 |
| 27 | #include "rev2/config.h" | 27 | #include "rev2/config.h" |
| 28 | #endif | 28 | #endif |
| 29 | #ifdef SUBPROJECT_rev2fliphalf | ||
| 30 | #include "../../rev2fliphalf/config.h" | ||
| 31 | #endif | ||
| 29 | #endif | 32 | #endif |
diff --git a/keyboards/lets_split/eeprom-lefthand.eep b/keyboards/lets_split/eeprom-lefthand.eep index a92200b12..b9666a74c 100644 --- a/keyboards/lets_split/eeprom-lefthand.eep +++ b/keyboards/lets_split/eeprom-lefthand.eep | |||
| @@ -1,2 +1,2 @@ | |||
| 1 | :080000000000000000000001F7 | 1 | :0B0000000000000000000000000001F4 |
| 2 | :00000001FF | 2 | :00000001FF |
diff --git a/keyboards/lets_split/eeprom-righthand.eep b/keyboards/lets_split/eeprom-righthand.eep index 91a683170..94cc5be7f 100644 --- a/keyboards/lets_split/eeprom-righthand.eep +++ b/keyboards/lets_split/eeprom-righthand.eep | |||
| @@ -1,2 +1,2 @@ | |||
| 1 | :080000000000000000000000F8 | 1 | :0B0000000000000000000000000000F5 |
| 2 | :00000001FF | 2 | :00000001FF |
diff --git a/keyboards/lets_split/keymaps/i2c/config.h b/keyboards/lets_split/keymaps/i2c/config.h index efe8bb0f2..013542731 100644 --- a/keyboards/lets_split/keymaps/i2c/config.h +++ b/keyboards/lets_split/keymaps/i2c/config.h | |||
| @@ -16,12 +16,16 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 16 | */ | 16 | */ |
| 17 | #define USE_I2C | 17 | #define USE_I2C |
| 18 | 18 | ||
| 19 | #define I2C_MASTER_LEFT | 19 | #define MASTER_LEFT |
| 20 | // #define I2C_MASTER_RIGHT | 20 | // #define _MASTER_RIGHT |
| 21 | // #define EE_HANDS | ||
| 21 | 22 | ||
| 22 | #ifdef SUBPROJECT_rev1 | 23 | #ifdef SUBPROJECT_rev1 |
| 23 | #include "../../rev1/config.h" | 24 | #include "../../rev1/config.h" |
| 24 | #endif | 25 | #endif |
| 25 | #ifdef SUBPROJECT_rev2 | 26 | #ifdef SUBPROJECT_rev2 |
| 26 | #include "../../rev2/config.h" | 27 | #include "../../rev2/config.h" |
| 27 | #endif \ No newline at end of file | 28 | #endif |
| 29 | #ifdef SUBPROJECT_rev2fliphalf | ||
| 30 | #include "../../rev2fliphalf/config.h" | ||
| 31 | #endif | ||
diff --git a/keyboards/lets_split/keymaps/serial/config.h b/keyboards/lets_split/keymaps/serial/config.h index cd766cc4f..ba271d1ac 100644 --- a/keyboards/lets_split/keymaps/serial/config.h +++ b/keyboards/lets_split/keymaps/serial/config.h | |||
| @@ -18,7 +18,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 18 | 18 | ||
| 19 | #define USE_SERIAL | 19 | #define USE_SERIAL |
| 20 | 20 | ||
| 21 | #define EE_HANDS | 21 | #define MASTER_LEFT |
| 22 | // #define _MASTER_RIGHT | ||
| 23 | // #define EE_HANDS | ||
| 22 | 24 | ||
| 23 | 25 | ||
| 24 | #ifdef SUBPROJECT_rev1 | 26 | #ifdef SUBPROJECT_rev1 |
| @@ -26,4 +28,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 26 | #endif | 28 | #endif |
| 27 | #ifdef SUBPROJECT_rev2 | 29 | #ifdef SUBPROJECT_rev2 |
| 28 | #include "../../rev2/config.h" | 30 | #include "../../rev2/config.h" |
| 29 | #endif \ No newline at end of file | 31 | #endif |
| 32 | #ifdef SUBPROJECT_rev2fliphalf | ||
| 33 | #include "../../rev2fliphalf/config.h" | ||
| 34 | #endif | ||
diff --git a/keyboards/lets_split/lets_split.h b/keyboards/lets_split/lets_split.h index 2cdfb061f..0de308c7a 100644 --- a/keyboards/lets_split/lets_split.h +++ b/keyboards/lets_split/lets_split.h | |||
| @@ -7,6 +7,9 @@ | |||
| 7 | #ifdef SUBPROJECT_rev2 | 7 | #ifdef SUBPROJECT_rev2 |
| 8 | #include "rev2.h" | 8 | #include "rev2.h" |
| 9 | #endif | 9 | #endif |
| 10 | #ifdef SUBPROJECT_rev2fliphalf | ||
| 11 | #include "rev2fliphalf.h" | ||
| 12 | #endif | ||
| 10 | 13 | ||
| 11 | #include "quantum.h" | 14 | #include "quantum.h" |
| 12 | 15 | ||
diff --git a/keyboards/lets_split/readme.md b/keyboards/lets_split/readme.md index 6e296737a..ecce3f415 100644 --- a/keyboards/lets_split/readme.md +++ b/keyboards/lets_split/readme.md | |||
| @@ -6,9 +6,45 @@ This readme and most of the code are from https://github.com/ahtn/tmk_keyboard/ | |||
| 6 | Split keyboard firmware for Arduino Pro Micro or other ATmega32u4 | 6 | Split keyboard firmware for Arduino Pro Micro or other ATmega32u4 |
| 7 | based boards. | 7 | based boards. |
| 8 | 8 | ||
| 9 | |||
| 10 | ## First Time Setup | ||
| 11 | |||
| 12 | Download or clone the whole firmware and navigate to the keyboards/lets_split directory. Once your dev env is setup, you'll be able to generate the default .hex using: | ||
| 13 | |||
| 14 | ``` | ||
| 15 | $ make rev2 | ||
| 16 | ``` | ||
| 17 | |||
| 18 | You will see a lot of output and if everything worked correctly you will see the built hex files: | ||
| 19 | |||
| 20 | ``` | ||
| 21 | lets_split_rev2_serial.hex | ||
| 22 | lets_split_rev2_i2c.hex | ||
| 23 | ``` | ||
| 24 | |||
| 25 | If you would like to use one of the alternative keymaps, or create your own, copy one of the existing [keymaps](keymaps/) and run make like so: | ||
| 26 | |||
| 27 | |||
| 28 | ``` | ||
| 29 | $ make rev2-YOUR_KEYMAP_NAME | ||
| 30 | ``` | ||
| 31 | |||
| 32 | If everything worked correctly you will see a file: | ||
| 33 | |||
| 34 | ``` | ||
| 35 | lets_split_rev2_YOUR_KEYMAP_NAME.hex | ||
| 36 | ``` | ||
| 37 | |||
| 38 | For more information on customizing keymaps, take a look at the primary documentation for [Customizing Your Keymap](/readme.md##customizing-your-keymap) in the main readme.md. | ||
| 39 | |||
| 40 | ### Let's split 1.0 | ||
| 41 | If you have a first generation Let's Split you will need to use the revision 1 code. To do so, use `rev1` in all your commands instead. | ||
| 42 | |||
| 9 | Features | 43 | Features |
| 10 | -------- | 44 | -------- |
| 11 | 45 | ||
| 46 | For the full Quantum Mechanical Keyboard feature list, see [the parent readme.md](/readme.md). | ||
| 47 | |||
| 12 | Some features supported by the firmware: | 48 | Some features supported by the firmware: |
| 13 | 49 | ||
| 14 | * Either half can connect to the computer via USB, or both halves can be used | 50 | * Either half can connect to the computer via USB, or both halves can be used |
| @@ -62,7 +98,7 @@ unnecessary in simple use cases. | |||
| 62 | Notes on Software Configuration | 98 | Notes on Software Configuration |
| 63 | ------------------------------- | 99 | ------------------------------- |
| 64 | 100 | ||
| 65 | Configuring the firmware is similar to any other TMK project. One thing | 101 | Configuring the firmware is similar to any other QMK project. One thing |
| 66 | to note is that `MATIX_ROWS` in `config.h` is the total number of rows between | 102 | to note is that `MATIX_ROWS` in `config.h` is the total number of rows between |
| 67 | the two halves, i.e. if your split keyboard has 4 rows in each half, then | 103 | the two halves, i.e. if your split keyboard has 4 rows in each half, then |
| 68 | `MATRIX_ROWS=8`. | 104 | `MATRIX_ROWS=8`. |
| @@ -70,33 +106,59 @@ the two halves, i.e. if your split keyboard has 4 rows in each half, then | |||
| 70 | Also the current implementation assumes a maximum of 8 columns, but it would | 106 | Also the current implementation assumes a maximum of 8 columns, but it would |
| 71 | not be very difficult to adapt it to support more if required. | 107 | not be very difficult to adapt it to support more if required. |
| 72 | 108 | ||
| 73 | |||
| 74 | Flashing | 109 | Flashing |
| 110 | ------- | ||
| 111 | From the keymap directory run `make SUBPROJECT-KEYMAP-avrdude` for automatic serial port resolution and flashing. | ||
| 112 | Example: `make rev2-serial-avrdude` | ||
| 113 | |||
| 114 | |||
| 115 | Choosing which board to plug the USB cable into (choosing Master) | ||
| 75 | -------- | 116 | -------- |
| 117 | Because the two boards are identical, the firmware has logic to differentiate the left and right board. | ||
| 118 | |||
| 119 | It uses two strategies to figure things out: look at the EEPROM (memory on the chip) or looks if the current board has the usb cable. | ||
| 120 | |||
| 121 | The EEPROM approach requires additional setup (flashing the eeeprom) but allows you to swap the usb cable to either side. | ||
| 122 | |||
| 123 | The USB cable approach is easier to setup and if you just want the usb cable on the left board, you do not need to do anything extra. | ||
| 124 | |||
| 125 | ### Setting the left hand as master | ||
| 126 | If you always plug the usb cable into the left board, nothing extra is needed as this is the default. Comment out `EE_HANDS` and comment out `I2C_MASTER_RIGHT` or `MASTER_RIGHT` if for some reason it was set. | ||
| 76 | 127 | ||
| 128 | ### Setting the right hand as master | ||
| 129 | If you always plug the usb cable into the right board, add an extra flag to your `config.h` | ||
| 130 | ``` | ||
| 131 | #define MASTER_RIGHT | ||
| 132 | ``` | ||
| 133 | |||
| 134 | ### Setting EE_hands to use either hands as master | ||
| 77 | If you define `EE_HANDS` in your `config.h`, you will need to set the | 135 | If you define `EE_HANDS` in your `config.h`, you will need to set the |
| 78 | EEPROM for the left and right halves. The EEPROM is used to store whether the | 136 | EEPROM for the left and right halves. |
| 137 | |||
| 138 | The EEPROM is used to store whether the | ||
| 79 | half is left handed or right handed. This makes it so that the same firmware | 139 | half is left handed or right handed. This makes it so that the same firmware |
| 80 | file will run on both hands instead of having to flash left and right handed | 140 | file will run on both hands instead of having to flash left and right handed |
| 81 | versions of the firmware to each half. To flash the EEPROM file for the left | 141 | versions of the firmware to each half. To flash the EEPROM file for the left |
| 82 | half run: | 142 | half run: |
| 83 | ``` | 143 | ``` |
| 84 | make eeprom-left | 144 | avrdude -p atmega32u4 -P $(COM_PORT) -c avr109 -U eeprom:w:eeprom-lefthand.eep |
| 145 | // or the equivalent in dfu-programmer | ||
| 146 | |||
| 85 | ``` | 147 | ``` |
| 86 | and similarly for right half | 148 | and similarly for right half |
| 87 | ``` | 149 | ``` |
| 88 | make eeprom-right | 150 | avrdude -p atmega32u4 -P $(COM_PORT) -c avr109 -U eeprom:w:eeprom-righhand.eep |
| 151 | // or the equivalent in dfu-programmer | ||
| 89 | ``` | 152 | ``` |
| 90 | 153 | ||
| 91 | After you have flashed the EEPROM for the first time, you then need to program | 154 | NOTE: replace `$(COM_PORT)` with the port of your device (e.g. `/dev/ttyACM0`) |
| 92 | the flash memory: | 155 | |
| 93 | ``` | 156 | After you have flashed the EEPROM, you then need to set `EE_HANDS` in your config.h, rebuild the hex files and reflash. |
| 94 | make program | 157 | |
| 95 | ``` | ||
| 96 | Note that you need to program both halves, but you have the option of using | 158 | Note that you need to program both halves, but you have the option of using |
| 97 | different keymaps for each half. You could program the left half with a QWERTY | 159 | different keymaps for each half. You could program the left half with a QWERTY |
| 98 | layout and the right half with a Colemak layout. Then if you connect the left | 160 | layout and the right half with a Colemak layout using bootmagic's default layout option. |
| 99 | half to a computer by USB the keyboard will use QWERTY and Colemak when the | 161 | Then if you connect the left half to a computer by USB the keyboard will use QWERTY and Colemak when the |
| 100 | right half is connected. | 162 | right half is connected. |
| 101 | 163 | ||
| 102 | 164 | ||
diff --git a/keyboards/lets_split/rev2/rev2.h b/keyboards/lets_split/rev2/rev2.h index 7c397912f..990976de2 100644 --- a/keyboards/lets_split/rev2/rev2.h +++ b/keyboards/lets_split/rev2/rev2.h | |||
| @@ -9,10 +9,10 @@ | |||
| 9 | //void promicro_bootloader_jmp(bool program); | 9 | //void promicro_bootloader_jmp(bool program); |
| 10 | 10 | ||
| 11 | #define KEYMAP( \ | 11 | #define KEYMAP( \ |
| 12 | k00, k01, k02, k03, k04, k05, k40, k41, k42, k43, k44, k45, \ | 12 | k00, k01, k02, k03, k04, k05, k45, k44, k43, k42, k41, k40, \ |
| 13 | k10, k11, k12, k13, k14, k15, k50, k51, k52, k53, k54, k55, \ | 13 | k10, k11, k12, k13, k14, k15, k55, k54, k53, k52, k51, k50, \ |
| 14 | k20, k21, k22, k23, k24, k25, k60, k61, k62, k63, k64, k65, \ | 14 | k20, k21, k22, k23, k24, k25, k65, k64, k63, k62, k61, k60, \ |
| 15 | k30, k31, k32, k33, k34, k35, k70, k71, k72, k73, k74, k75 \ | 15 | k30, k31, k32, k33, k34, k35, k75, k74, k73, k72, k71, k70 \ |
| 16 | ) \ | 16 | ) \ |
| 17 | { \ | 17 | { \ |
| 18 | { k00, k01, k02, k03, k04, k05 }, \ | 18 | { k00, k01, k02, k03, k04, k05 }, \ |
diff --git a/keyboards/lets_split/rev2fliphalf/Makefile b/keyboards/lets_split/rev2fliphalf/Makefile new file mode 100644 index 000000000..4e2a6f00f --- /dev/null +++ b/keyboards/lets_split/rev2fliphalf/Makefile | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | ifndef MAKEFILE_INCLUDED | ||
| 2 | include ../../Makefile | ||
| 3 | endif \ No newline at end of file | ||
diff --git a/keyboards/lets_split/rev2fliphalf/config.h b/keyboards/lets_split/rev2fliphalf/config.h new file mode 100644 index 000000000..1c45cf136 --- /dev/null +++ b/keyboards/lets_split/rev2fliphalf/config.h | |||
| @@ -0,0 +1,91 @@ | |||
| 1 | /* | ||
| 2 | Copyright 2012 Jun Wako <wakojun@gmail.com> | ||
| 3 | |||
| 4 | This program is free software: you can redistribute it and/or modify | ||
| 5 | it under the terms of the GNU General Public License as published by | ||
| 6 | the Free Software Foundation, either version 2 of the License, or | ||
| 7 | (at your option) any later version. | ||
| 8 | |||
| 9 | This program is distributed in the hope that it will be useful, | ||
| 10 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 12 | GNU General Public License for more details. | ||
| 13 | |||
| 14 | You should have received a copy of the GNU General Public License | ||
| 15 | along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
| 16 | */ | ||
| 17 | |||
| 18 | #ifndef CONFIG_H | ||
| 19 | #define CONFIG_H | ||
| 20 | |||
| 21 | #include "config_common.h" | ||
| 22 | |||
| 23 | /* USB Device descriptor parameter */ | ||
| 24 | #define VENDOR_ID 0xFEED | ||
| 25 | #define PRODUCT_ID 0x3060 | ||
| 26 | #define DEVICE_VER 0x0001 | ||
| 27 | #define MANUFACTURER Wootpatoot | ||
| 28 | #define PRODUCT Lets Split v2 | ||
| 29 | #define DESCRIPTION A split keyboard for the cheap makers | ||
| 30 | |||
| 31 | /* key matrix size */ | ||
| 32 | // Rows are doubled-up | ||
| 33 | #define MATRIX_ROWS 8 | ||
| 34 | #define MATRIX_COLS 6 | ||
| 35 | |||
| 36 | // wiring of each half | ||
| 37 | #define MATRIX_ROW_PINS { D7, E6, B4, B5 } | ||
| 38 | //#define MATRIX_COL_PINS { F6, F7, B1, B3, B2, B6 } | ||
| 39 | #define MATRIX_COL_PINS { B6, B2, B3, B1, F7, F6 } //uncomment this line and comment line above if you need to reverse left-to-right key order | ||
| 40 | |||
| 41 | //#define CATERINA_BOOTLOADER | ||
| 42 | |||
| 43 | /* COL2ROW or ROW2COL */ | ||
| 44 | #define DIODE_DIRECTION COL2ROW | ||
| 45 | |||
| 46 | /* define if matrix has ghost */ | ||
| 47 | //#define MATRIX_HAS_GHOST | ||
| 48 | |||
| 49 | /* number of backlight levels */ | ||
| 50 | // #define BACKLIGHT_LEVELS 3 | ||
| 51 | |||
| 52 | /* Set 0 if debouncing isn't needed */ | ||
| 53 | #define DEBOUNCING_DELAY 5 | ||
| 54 | |||
| 55 | /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ | ||
| 56 | #define LOCKING_SUPPORT_ENABLE | ||
| 57 | /* Locking resynchronize hack */ | ||
| 58 | #define LOCKING_RESYNC_ENABLE | ||
| 59 | |||
| 60 | /* key combination for command */ | ||
| 61 | #define IS_COMMAND() ( \ | ||
| 62 | keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ | ||
| 63 | ) | ||
| 64 | |||
| 65 | /* ws2812 RGB LED */ | ||
| 66 | #define RGB_DI_PIN D3 | ||
| 67 | #define RGBLIGHT_TIMER | ||
| 68 | #define RGBLED_NUM 12 // Number of LEDs | ||
| 69 | #define ws2812_PORTREG PORTD | ||
| 70 | #define ws2812_DDRREG DDRD | ||
| 71 | |||
| 72 | /* | ||
| 73 | * Feature disable options | ||
| 74 | * These options are also useful to firmware size reduction. | ||
| 75 | */ | ||
| 76 | |||
| 77 | /* disable debug print */ | ||
| 78 | // #define NO_DEBUG | ||
| 79 | |||
| 80 | /* disable print */ | ||
| 81 | // #define NO_PRINT | ||
| 82 | |||
| 83 | /* disable action features */ | ||
| 84 | //#define NO_ACTION_LAYER | ||
| 85 | //#define NO_ACTION_TAPPING | ||
| 86 | //#define NO_ACTION_ONESHOT | ||
| 87 | //#define NO_ACTION_MACRO | ||
| 88 | //#define NO_ACTION_FUNCTION | ||
| 89 | |||
| 90 | |||
| 91 | #endif \ No newline at end of file | ||
diff --git a/keyboards/lets_split/rev2fliphalf/rev2fliphalf.c b/keyboards/lets_split/rev2fliphalf/rev2fliphalf.c new file mode 100644 index 000000000..c505d3a6e --- /dev/null +++ b/keyboards/lets_split/rev2fliphalf/rev2fliphalf.c | |||
| @@ -0,0 +1,32 @@ | |||
| 1 | #include "lets_split.h" | ||
| 2 | |||
| 3 | #ifdef AUDIO_ENABLE | ||
| 4 | float tone_startup[][2] = SONG(STARTUP_SOUND); | ||
| 5 | float tone_goodbye[][2] = SONG(GOODBYE_SOUND); | ||
| 6 | #endif | ||
| 7 | |||
| 8 | void matrix_init_kb(void) { | ||
| 9 | |||
| 10 | #ifdef AUDIO_ENABLE | ||
| 11 | _delay_ms(20); // gets rid of tick | ||
| 12 | PLAY_NOTE_ARRAY(tone_startup, false, 0); | ||
| 13 | #endif | ||
| 14 | |||
| 15 | // // green led on | ||
| 16 | // DDRD |= (1<<5); | ||
| 17 | // PORTD &= ~(1<<5); | ||
| 18 | |||
| 19 | // // orange led on | ||
| 20 | // DDRB |= (1<<0); | ||
| 21 | // PORTB &= ~(1<<0); | ||
| 22 | |||
| 23 | matrix_init_user(); | ||
| 24 | }; | ||
| 25 | |||
| 26 | void shutdown_user(void) { | ||
| 27 | #ifdef AUDIO_ENABLE | ||
| 28 | PLAY_NOTE_ARRAY(tone_goodbye, false, 0); | ||
| 29 | _delay_ms(150); | ||
| 30 | stop_all_notes(); | ||
| 31 | #endif | ||
| 32 | } | ||
diff --git a/keyboards/lets_split/rev2fliphalf/rev2fliphalf.h b/keyboards/lets_split/rev2fliphalf/rev2fliphalf.h new file mode 100644 index 000000000..7dc8e5ba8 --- /dev/null +++ b/keyboards/lets_split/rev2fliphalf/rev2fliphalf.h | |||
| @@ -0,0 +1,28 @@ | |||
| 1 | #ifndef REV2FLIPHALF_H | ||
| 2 | #define REV2FLIPHALF_H | ||
| 3 | |||
| 4 | #include "../lets_split.h" | ||
| 5 | |||
| 6 | //void promicro_bootloader_jmp(bool program); | ||
| 7 | #include "quantum.h" | ||
| 8 | |||
| 9 | //void promicro_bootloader_jmp(bool program); | ||
| 10 | |||
| 11 | #define KEYMAP( \ | ||
| 12 | k00, k01, k02, k03, k04, k05, k40, k41, k42, k43, k44, k45, \ | ||
| 13 | k10, k11, k12, k13, k14, k15, k50, k51, k52, k53, k54, k55, \ | ||
| 14 | k20, k21, k22, k23, k24, k25, k60, k61, k62, k63, k64, k65, \ | ||
| 15 | k30, k31, k32, k33, k34, k35, k70, k71, k72, k73, k74, k75 \ | ||
| 16 | ) \ | ||
| 17 | { \ | ||
| 18 | { k00, k01, k02, k03, k04, k05 }, \ | ||
| 19 | { k10, k11, k12, k13, k14, k15 }, \ | ||
| 20 | { k20, k21, k22, k23, k24, k25 }, \ | ||
| 21 | { k30, k31, k32, k33, k34, k35 }, \ | ||
| 22 | { k40, k41, k42, k43, k44, k45 }, \ | ||
| 23 | { k50, k51, k52, k53, k54, k55 }, \ | ||
| 24 | { k60, k61, k62, k63, k64, k65 }, \ | ||
| 25 | { k70, k71, k72, k73, k74, k75 } \ | ||
| 26 | } | ||
| 27 | |||
| 28 | #endif \ No newline at end of file | ||
diff --git a/keyboards/lets_split/rev2fliphalf/rules.mk b/keyboards/lets_split/rev2fliphalf/rules.mk new file mode 100644 index 000000000..80a942d06 --- /dev/null +++ b/keyboards/lets_split/rev2fliphalf/rules.mk | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | BACKLIGHT_ENABLE = no | ||
| 2 | |||
| 3 | ifndef QUANTUM_DIR | ||
| 4 | include ../../../Makefile | ||
| 5 | endif | ||
diff --git a/keyboards/lets_split/rules.mk b/keyboards/lets_split/rules.mk index 1aee5313c..0efa78550 100644 --- a/keyboards/lets_split/rules.mk +++ b/keyboards/lets_split/rules.mk | |||
| @@ -73,3 +73,15 @@ USE_I2C ?= yes | |||
| 73 | SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend | 73 | SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend |
| 74 | 74 | ||
| 75 | CUSTOM_MATRIX = yes | 75 | CUSTOM_MATRIX = yes |
| 76 | |||
| 77 | avrdude: build | ||
| 78 | ls /dev/tty* > /tmp/1; \ | ||
| 79 | echo "Reset your Pro Micro now"; \ | ||
| 80 | while [[ -z $$USB ]]; do \ | ||
| 81 | sleep 1; \ | ||
| 82 | ls /dev/tty* > /tmp/2; \ | ||
| 83 | USB=`diff /tmp/1 /tmp/2 | grep -o '/dev/tty.*'`; \ | ||
| 84 | done; \ | ||
| 85 | avrdude -p $(MCU) -c avr109 -P $$USB -U flash:w:$(BUILD_DIR)/$(TARGET).hex | ||
| 86 | |||
| 87 | .PHONY: avrdude | ||
diff --git a/keyboards/lets_split/split_util.c b/keyboards/lets_split/split_util.c index 461921798..226dc1881 100644 --- a/keyboards/lets_split/split_util.c +++ b/keyboards/lets_split/split_util.c | |||
| @@ -21,7 +21,8 @@ static void setup_handedness(void) { | |||
| 21 | #ifdef EE_HANDS | 21 | #ifdef EE_HANDS |
| 22 | isLeftHand = eeprom_read_byte(EECONFIG_HANDEDNESS); | 22 | isLeftHand = eeprom_read_byte(EECONFIG_HANDEDNESS); |
| 23 | #else | 23 | #else |
| 24 | #ifdef I2C_MASTER_RIGHT | 24 | // I2C_MASTER_RIGHT is deprecated use MASTER_RIGHT instead since this works for both serial and i2c |
| 25 | #if defined(I2C_MASTER_RIGHT) || defined(MASTER_RIGHT) | ||
| 25 | isLeftHand = !has_usb(); | 26 | isLeftHand = !has_usb(); |
| 26 | #else | 27 | #else |
| 27 | isLeftHand = has_usb(); | 28 | isLeftHand = has_usb(); |
