aboutsummaryrefslogtreecommitdiff
path: root/keyboards/handwired/tractyl_manuform/5x6_right
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/handwired/tractyl_manuform/5x6_right')
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/arduinomicro/keyboard.json4
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/config.h9
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/elite_c/keyboard.json4
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/f303/halconf.h2
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/f405/board.h23
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/f405/config.h89
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/f405/f405.c52
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/f405/halconf.h30
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/f405/keyboard.json66
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/f405/mcuconf.h82
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/f411/config.h4
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/f411/f411.c41
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/f411/halconf.h2
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/f411/rules.mk2
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/info.json204
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/post_rules.mk1
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/rules.mk4
-rw-r--r--keyboards/handwired/tractyl_manuform/5x6_right/teensy2pp/keyboard.json4
18 files changed, 558 insertions, 65 deletions
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/arduinomicro/keyboard.json b/keyboards/handwired/tractyl_manuform/5x6_right/arduinomicro/keyboard.json
index df810f2881..bd4c41e17b 100644
--- a/keyboards/handwired/tractyl_manuform/5x6_right/arduinomicro/keyboard.json
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/arduinomicro/keyboard.json
@@ -6,7 +6,9 @@
},
"diode_direction": "COL2ROW",
"split": {
- "soft_serial_pin": "D0",
+ "serial": {
+ "pin": "D0"
+ },
"matrix_pins": {
"right": {
"cols": ["D6", "D7", "B4", "D3", "C6", "C7"],
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/config.h b/keyboards/handwired/tractyl_manuform/5x6_right/config.h
index 194874b5cf..686cb30fc2 100644
--- a/keyboards/handwired/tractyl_manuform/5x6_right/config.h
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/config.h
@@ -21,13 +21,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define ROTATIONAL_TRANSFORM_ANGLE -25
#define POINTING_DEVICE_INVERT_X
-#define DYNAMIC_KEYMAP_LAYER_COUNT 16
-#define LAYER_STATE_16BIT
-
-
-/* disable action features */
-//#define NO_ACTION_LAYER
-//#define NO_ACTION_TAPPING
-//#define NO_ACTION_ONESHOT
-
#define POINTING_DEVICE_RIGHT
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/elite_c/keyboard.json b/keyboards/handwired/tractyl_manuform/5x6_right/elite_c/keyboard.json
index e6c0e42bde..739aad07ba 100644
--- a/keyboards/handwired/tractyl_manuform/5x6_right/elite_c/keyboard.json
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/elite_c/keyboard.json
@@ -11,7 +11,9 @@
]
},
"split": {
- "soft_serial_pin": "D2"
+ "serial": {
+ "pin": "D2"
+ }
},
"ws2812": {
"pin": "D3"
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f303/halconf.h b/keyboards/handwired/tractyl_manuform/5x6_right/f303/halconf.h
index 62f56e4d2b..b06f52b7df 100644
--- a/keyboards/handwired/tractyl_manuform/5x6_right/f303/halconf.h
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/f303/halconf.h
@@ -21,7 +21,5 @@
#define HAL_USE_SPI TRUE
#define HAL_USE_GPT TRUE
#define HAL_USE_DAC TRUE
-#define SPI_USE_WAIT TRUE
-#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
#include_next <halconf.h>
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f405/board.h b/keyboards/handwired/tractyl_manuform/5x6_right/f405/board.h
new file mode 100644
index 0000000000..9be86942d6
--- /dev/null
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/f405/board.h
@@ -0,0 +1,23 @@
+/* Copyright 2020 Nick Brassel (tzarc)
+ *
+ * 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 3 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 <https://www.gnu.org/licenses/>.
+ */
+#pragma once
+
+#include_next <board.h>
+
+#undef STM32_HSECLK
+#define STM32_HSECLK 8000000U
+#undef STM32_LSECLK
+#define STM32_LSECLK 32768U
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f405/config.h b/keyboards/handwired/tractyl_manuform/5x6_right/f405/config.h
new file mode 100644
index 0000000000..3878d9c671
--- /dev/null
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/f405/config.h
@@ -0,0 +1,89 @@
+/*
+Copyright 2012 Jun Wako <[email protected]>
+Copyright 2015 Jack Humbert
+
+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
+
+#define USER_BUTTON_PIN C13
+#define DEBUG_LED_PIN B2
+#define USB_VBUS_PIN B10
+
+#ifdef USE_USB_OTG_HS_PORT
+# define USB_DRIVER USBD2
+#endif
+
+// WS2812 RGB LED strip input and number of LEDs
+#define WS2812_PWM_DRIVER PWMD3
+#define WS2812_PWM_CHANNEL 1
+#define WS2812_PWM_PAL_MODE 2
+#define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM2
+#define WS2812_PWM_DMA_CHANNEL 5
+#define WS2812_EXTERNAL_PULLUP
+
+#define BACKLIGHT_PWM_DRIVER PWMD8
+#define BACKLIGHT_PWM_CHANNEL 2
+#define BACKLIGHT_PAL_MODE 3
+
+/* Audio config */
+#define AUDIO_PIN A4
+#define AUDIO_PIN_ALT A5
+#define AUDIO_PIN_ALT_AS_NEGATIVE
+
+/* serial.c configuration for split keyboard */
+#define SERIAL_USART_DRIVER SD1
+#define SERIAL_USART_TX_PIN A10
+#define SERIAL_USART_TX_PAL_MODE 7
+#define SERIAL_USART_RX_PIN A9
+#define SERIAL_USART_RX_PAL_MODE 7
+#define SERIAL_USART_TIMEOUT 10
+#define SERIAL_USART_SPEED (1 * 1024 * 1024)
+#define SERIAL_USART_FULL_DUPLEX
+
+
+/* i2c config for oleds */
+#define I2C_DRIVER I2CD1
+#define I2C1_CLOCK_SPEED 400000
+#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_16_9
+
+/* spi config for eeprom and pmw3360 sensor */
+#define SPI_DRIVER SPID1
+#define SPI_SCK_PIN B3
+#define SPI_SCK_PAL_MODE 5
+#define SPI_MOSI_PIN B5
+#define SPI_MOSI_PAL_MODE 5
+#define SPI_MISO_PIN B4
+#define SPI_MISO_PAL_MODE 5
+
+#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN B13
+#define EXTERNAL_FLASH_SPI_CLOCK_DIVISOR 4
+#define EXTERNAL_FLASH_SIZE (8 * 1024 * 1024)
+
+/* pmw3360 config */
+#define POINTING_DEVICE_CS_PIN B8
+#define POINTING_DEVICE_ROTATION_270
+#undef ROTATIONAL_TRANSFORM_ANGLE
+#define PMW33XX_SPI_DIVISOR 16
+
+// lcd
+#define DISPLAY_RST_PIN NO_PIN
+#define DISPLAY_DC_PIN B12
+#define DISPLAY_CS_PIN B9
+#define DISPLAY_SPI_DIVIDER 1
+
+#define DRV2605L_FB_ERM_LRA 0
+#define DRV2605L_GREETING DRV2605L_EFFECT_750_MS_ALERT_100
+#define DRV2605L_DEFAULT_MODE DRV2605L_EFFECT_BUZZ_1_100
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f405/f405.c b/keyboards/handwired/tractyl_manuform/5x6_right/f405/f405.c
new file mode 100644
index 0000000000..5aabc70dca
--- /dev/null
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/f405/f405.c
@@ -0,0 +1,52 @@
+/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <[email protected]>
+ *
+ * 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/>.
+ */
+
+#include "tractyl_manuform.h"
+
+#ifdef USB_VBUS_PIN
+bool usb_vbus_state(void) {
+ gpio_set_pin_input_low(USB_VBUS_PIN);
+ wait_us(5);
+ return gpio_read_pin(USB_VBUS_PIN);
+}
+#endif
+
+#ifdef USER_BUTTON_PIN
+void user_button_init(void) {
+ // Pin needs to be configured as input low
+ gpio_set_pin_input_low(USER_BUTTON_PIN);
+}
+
+bool check_user_button_state(void) {
+ return gpio_read_pin(USER_BUTTON_PIN);
+}
+#endif // USER_BUTTON_PIN
+
+void board_init(void) {
+ // Board setup sets these pins as SPI, but we aren't using them as such.
+ // So to prevent them from misbehaving, we need to set them to a different, non-spi mode.
+ // This is a bit of a hack, but nothing else runs soon enough, without re-implementing spi_init().
+ gpio_set_pin_input(A5);
+ gpio_set_pin_input(A6);
+ gpio_set_pin_input(A7);
+
+ // If using USB_OTG_HS, we need to set the data pins since they're set wrong for our needs by default.
+ // We set it here by default, in case it's bridged with A11/A12, as to reduce the chance of issues.
+ palSetLineMode(
+ B14, PAL_MODE_ALTERNATE(12) | PAL_STM32_OTYPE_PUSHPULL | PAL_STM32_OSPEED_HIGHEST | PAL_STM32_PUPDR_FLOATING);
+ palSetLineMode(
+ B15, PAL_MODE_ALTERNATE(12) | PAL_STM32_OTYPE_PUSHPULL | PAL_STM32_OSPEED_HIGHEST | PAL_STM32_PUPDR_FLOATING);
+}
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f405/halconf.h b/keyboards/handwired/tractyl_manuform/5x6_right/f405/halconf.h
new file mode 100644
index 0000000000..3cf07b9be0
--- /dev/null
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/f405/halconf.h
@@ -0,0 +1,30 @@
+/* Copyright 2020 Nick Brassel (tzarc)
+ *
+ * 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 3 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 <https://www.gnu.org/licenses/>.
+ */
+#pragma once
+
+#define HAL_USE_SERIAL TRUE
+#define SERIAL_BUFFERS_SIZE 256
+
+#if defined(WS2812_PWM) || defined(BACKLIGHT_PWM)
+# define HAL_USE_PWM TRUE
+#endif // defined(WS2812_PWM) || defined(BACKLIGHT_PWM)
+
+#ifdef AUDIO_DRIVER_DAC
+# define HAL_USE_GPT TRUE
+# define HAL_USE_DAC TRUE
+#endif
+
+#include_next <halconf.h>
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f405/keyboard.json b/keyboards/handwired/tractyl_manuform/5x6_right/f405/keyboard.json
new file mode 100644
index 0000000000..b56e2d31c2
--- /dev/null
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/f405/keyboard.json
@@ -0,0 +1,66 @@
+{
+ "keyboard_name": "Tractyl Manuform (5x6) WeAct STM32F405",
+ "audio": {
+ "driver": "dac_additive",
+ "power_control": {
+ "pin": "A3"
+ }
+ },
+ "backlight": {
+ "levels": 16,
+ "pin": "C7"
+ },
+ "bootloader": "stm32-dfu",
+ "build": {
+ "debounce_type": "asym_eager_defer_pk"
+ },
+ "diode_direction": "COL2ROW",
+ "encoder": {
+ "rotary": [
+ {"pin_a": "C0", "pin_b": "A15"}
+ ]
+ },
+ "eeprom": {
+ "driver": "wear_leveling",
+ "wear_leveling": {
+ "driver": "spi_flash",
+ "backing_size": 16384,
+ "logical_size": 4096
+ }
+ },
+ "features": {
+ "console": true,
+ "haptic": true
+ },
+ "haptic": {
+ "driver": "drv2605l"
+ },
+ "matrix_pins": {
+ "cols": ["C1", "C2", "C3", "A0", "A1", "A2"],
+ "rows": ["A6", "A7", "C4", "C5", "B0", "B1"]
+ },
+ "processor": "STM32F405",
+ "rgblight": {
+ "led_count": 24,
+ "split": true
+ },
+ "split": {
+ "handedness": {
+ "pin": "B11"
+ },
+ "serial": {
+ "driver": "usart"
+ },
+ "transport": {
+ "sync": {
+ "activity": true,
+ "haptic": true,
+ "matrix_state": true
+ }
+ }
+ },
+ "ws2812": {
+ "driver": "pwm",
+ "pin": "C6"
+ }
+}
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f405/mcuconf.h b/keyboards/handwired/tractyl_manuform/5x6_right/f405/mcuconf.h
new file mode 100644
index 0000000000..46920b17b3
--- /dev/null
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/f405/mcuconf.h
@@ -0,0 +1,82 @@
+/* Copyright 2020 Nick Brassel (tzarc)
+ *
+ * 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 3 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 <https://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#include_next <mcuconf.h>
+
+#undef STM32_LSE_ENABLED
+#define STM32_LSE_ENABLED TRUE
+
+#undef STM32_PLLM_VALUE
+#define STM32_PLLM_VALUE 8
+
+#undef STM32_RTCSEL
+#define STM32_RTCSEL STM32_RTCSEL_LSE
+
+#undef STM32_SERIAL_USE_USART1
+#define STM32_SERIAL_USE_USART1 TRUE
+
+#if HAL_USE_WDG == TRUE
+# undef STM32_WDG_USE_IWDG
+# define STM32_WDG_USE_IWDG TRUE
+#endif
+
+#if HAL_USE_I2C == TRUE
+# undef STM32_I2C_USE_I2C1
+# define STM32_I2C_USE_I2C1 TRUE
+
+# undef STM32_I2C_BUSY_TIMEOUT
+# define STM32_I2C_BUSY_TIMEOUT 10
+
+# undef STM32_I2C_I2C1_RX_DMA_STREAM
+# define STM32_I2C_I2C1_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 0)
+# undef STM32_I2C_I2C1_TX_DMA_STREAM
+# define STM32_I2C_I2C1_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 7)
+#endif // HAL_USE_I2C
+
+#ifdef WS2812_PWM
+# undef STM32_PWM_USE_TIM3
+# define STM32_PWM_USE_TIM3 TRUE
+#endif // WS2812_PWM
+
+#ifdef BACKLIGHT_PWM
+# undef STM32_PWM_USE_TIM8
+# define STM32_PWM_USE_TIM8 TRUE
+#endif
+
+#if HAL_USE_SPI == TRUE
+# undef STM32_SPI_USE_SPI1
+# define STM32_SPI_USE_SPI1 TRUE
+#endif
+
+#ifdef AUDIO_DRIVER_DAC
+# undef STM32_DAC_USE_DAC1_CH1
+# define STM32_DAC_USE_DAC1_CH1 TRUE
+# undef STM32_DAC_USE_DAC1_CH2
+# define STM32_DAC_USE_DAC1_CH2 TRUE
+
+# undef STM32_GPT_USE_TIM6
+# define STM32_GPT_USE_TIM6 TRUE
+#endif // AUDIO_DRIVER_DAC
+
+
+#ifdef USE_USB_OTG_HS_PORT
+# undef STM32_USB_USE_OTG1
+# define STM32_USB_USE_OTG1 FALSE
+# undef STM32_USB_USE_OTG2
+# define STM32_USB_USE_OTG2 TRUE
+#endif
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f411/config.h b/keyboards/handwired/tractyl_manuform/5x6_right/f411/config.h
index 28acc1e69b..bbbc16e3ea 100644
--- a/keyboards/handwired/tractyl_manuform/5x6_right/f411/config.h
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/f411/config.h
@@ -19,6 +19,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#pragma once
// #define USB_VBUS_PIN B10 // doesn't seem to work for me on one of my controllers... */
+#define USER_BUTTON_PIN A0
// WS2812 RGB LED strip input and number of LEDs
#define WS2812_PWM_DRIVER PWMD2 // default: PWMD2
@@ -70,7 +71,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* eeprom config */
#define EXTERNAL_EEPROM_SPI_SLAVE_SELECT_PIN A4
-#define EXTERNAL_EEPROM_SPI_CLOCK_DIVISOR 64
+#define EXTERNAL_EEPROM_SPI_CLOCK_DIVISOR 8
/* pmw3360 config */
#define PMW33XX_CS_PIN B0
+#define PMW33XX_SPI_DIVISOR 8
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f411/f411.c b/keyboards/handwired/tractyl_manuform/5x6_right/f411/f411.c
index dbacb1685c..cfe97d6318 100644
--- a/keyboards/handwired/tractyl_manuform/5x6_right/f411/f411.c
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/f411/f411.c
@@ -16,41 +16,6 @@
#include "tractyl_manuform.h"
-void keyboard_pre_init_sub(void) { gpio_set_pin_input_high(A0); }
-
-void matrix_scan_sub_kb(void) {
- if (!gpio_read_pin(A0)) {
- reset_keyboard();
- }
-}
-
-__attribute__((weak)) void bootmagic_scan(void) {
- // We need multiple scans because debouncing can't be turned off.
- matrix_scan();
-#if defined(DEBOUNCE) && DEBOUNCE > 0
- wait_ms(DEBOUNCE * 2);
-#else
- wait_ms(30);
-#endif
- matrix_scan();
-
- uint8_t row = BOOTMAGIC_ROW;
- uint8_t col = BOOTMAGIC_COLUMN;
-
-#if defined(SPLIT_KEYBOARD) && defined(BOOTMAGIC_ROW_RIGHT) && defined(BOOTMAGIC_COLUMN_RIGHT)
- if (!is_keyboard_left()) {
- row = BOOTMAGIC_ROW_RIGHT;
- col = BOOTMAGIC_COLUMN_RIGHT;
- }
-#endif
-
- if (matrix_get_row(row) & (1 << col) || !gpio_read_pin(A0)) {
- eeconfig_disable();
- bootloader_jump();
- }
-}
-
-
#ifdef USB_VBUS_PIN
bool usb_vbus_state(void) {
gpio_set_pin_input_low(USB_VBUS_PIN);
@@ -58,9 +23,3 @@ bool usb_vbus_state(void) {
return gpio_read_pin(USB_VBUS_PIN);
}
#endif
-
-void matrix_output_unselect_delay(uint8_t line, bool key_pressed) {
- for (int32_t i = 0; i < 40; i++) {
- __asm__ volatile("nop" ::: "memory");
- }
-}
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f411/halconf.h b/keyboards/handwired/tractyl_manuform/5x6_right/f411/halconf.h
index bc07c10527..296119b080 100644
--- a/keyboards/handwired/tractyl_manuform/5x6_right/f411/halconf.h
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/f411/halconf.h
@@ -19,7 +19,5 @@
#define HAL_USE_SERIAL TRUE
#define HAL_USE_I2C TRUE
#define HAL_USE_SPI TRUE
-#define SPI_USE_WAIT TRUE
-#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
#include_next <halconf.h>
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f411/rules.mk b/keyboards/handwired/tractyl_manuform/5x6_right/f411/rules.mk
deleted file mode 100644
index 4aa582e7a2..0000000000
--- a/keyboards/handwired/tractyl_manuform/5x6_right/f411/rules.mk
+++ /dev/null
@@ -1,2 +0,0 @@
-KEYBOARD_SHARED_EP = yes
-MOUSE_SHARED_EP = yes
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/info.json b/keyboards/handwired/tractyl_manuform/5x6_right/info.json
index b28f309fdb..0264000b20 100644
--- a/keyboards/handwired/tractyl_manuform/5x6_right/info.json
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/info.json
@@ -1,5 +1,4 @@
{
- "url": "",
"usb": {
"pid": "0x3536",
"device_version": "0.0.1"
@@ -99,6 +98,209 @@
{"matrix": [11, 2], "x": 9, "y": 7},
{"matrix": [11, 3], "x": 10, "y": 7}
]
+ },
+ "LAYOUT_5x6_full_right": {
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0},
+ {"matrix": [0, 1], "x": 1, "y": 0},
+ {"matrix": [0, 2], "x": 2, "y": 0},
+ {"matrix": [0, 3], "x": 3, "y": 0},
+ {"matrix": [0, 4], "x": 4, "y": 0},
+ {"matrix": [0, 5], "x": 5, "y": 0},
+
+ {"matrix": [6, 0], "x": 11, "y": 0},
+ {"matrix": [6, 1], "x": 12, "y": 0},
+ {"matrix": [6, 2], "x": 13, "y": 0},
+ {"matrix": [6, 3], "x": 14, "y": 0},
+ {"matrix": [6, 4], "x": 15, "y": 0},
+ {"matrix": [6, 5], "x": 16, "y": 0},
+
+ {"matrix": [1, 0], "x": 0, "y": 1},
+ {"matrix": [1, 1], "x": 1, "y": 1},
+ {"matrix": [1, 2], "x": 2, "y": 1},
+ {"matrix": [1, 3], "x": 3, "y": 1},
+ {"matrix": [1, 4], "x": 4, "y": 1},
+ {"matrix": [1, 5], "x": 5, "y": 1},
+
+ {"matrix": [7, 0], "x": 11, "y": 1},
+ {"matrix": [7, 1], "x": 12, "y": 1},
+ {"matrix": [7, 2], "x": 13, "y": 1},
+ {"matrix": [7, 3], "x": 14, "y": 1},
+ {"matrix": [7, 4], "x": 15, "y": 1},
+ {"matrix": [7, 5], "x": 16, "y": 1},
+
+ {"matrix": [2, 0], "x": 0, "y": 2},
+ {"matrix": [2, 1], "x": 1, "y": 2},
+ {"matrix": [2, 2], "x": 2, "y": 2},
+ {"matrix": [2, 3], "x": 3, "y": 2},
+ {"matrix": [2, 4], "x": 4, "y": 2},
+ {"matrix": [2, 5], "x": 5, "y": 2},
+
+ {"matrix": [8, 0], "x": 11, "y": 2},
+ {"matrix": [8, 1], "x": 12, "y": 2},
+ {"matrix": [8, 2], "x": 13, "y": 2},
+ {"matrix": [8, 3], "x": 14, "y": 2},
+ {"matrix": [8, 4], "x": 15, "y": 2},
+ {"matrix": [8, 5], "x": 16, "y": 2},
+
+ {"matrix": [3, 0], "x": 0, "y": 3},
+ {"matrix": [3, 1], "x": 1, "y": 3},
+ {"matrix": [3, 2], "x": 2, "y": 3},
+ {"matrix": [3, 3], "x": 3, "y": 3},
+ {"matrix": [3, 4], "x": 4, "y": 3},
+ {"matrix": [3, 5], "x": 5, "y": 3},
+
+ {"matrix": [9, 0], "x": 11, "y": 3},
+ {"matrix": [9, 1], "x": 12, "y": 3},
+ {"matrix": [9, 2], "x": 13, "y": 3},
+ {"matrix": [9, 3], "x": 14, "y": 3},
+ {"matrix": [9, 4], "x": 15, "y": 3},
+ {"matrix": [9, 5], "x": 16, "y": 3},
+
+ {"matrix": [4, 0], "x": 0, "y": 4},
+ {"matrix": [4, 1], "x": 1, "y": 4},
+ {"matrix": [4, 2], "x": 2, "y": 4},
+ {"matrix": [4, 3], "x": 3, "y": 4},
+
+ {"matrix": [10, 2], "x": 13, "y": 4},
+ {"matrix": [10, 3], "x": 14, "y": 4},
+ {"matrix": [10, 4], "x": 15, "y": 4},
+ {"matrix": [10, 5], "x": 16, "y": 4},
+
+ {"matrix": [4, 4], "x": 4, "y": 5},
+ {"matrix": [4, 5], "x": 5, "y": 5},
+
+ {"matrix": [10, 1], "x": 12, "y": 5},
+
+ {"matrix": [5, 4], "x": 6, "y": 6},
+ {"matrix": [5, 5], "x": 7, "y": 6},
+
+ {"matrix": [11, 1], "x": 10, "y": 6},
+
+ {"matrix": [5, 2], "x": 6, "y": 7},
+ {"matrix": [5, 3], "x": 7, "y": 7},
+
+ {"matrix": [11, 2], "x": 9, "y": 7},
+ {"matrix": [11, 3], "x": 10, "y": 7}
+ ]
}
+ },
+ "rgb_matrix": {
+ "animations": {
+ "alphas_mods": true,
+ "gradient_up_down": true,
+ "gradient_left_right": true,
+ "breathing": true,
+ "band_sat": true,
+ "band_val": true,
+ "band_pinwheel_sat": true,
+ "band_pinwheel_val": true,
+ "band_spiral_sat": true,
+ "band_spiral_val": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_up_down": true,
+ "rainbow_moving_chevron": true,
+ "cycle_out_in": true,
+ "cycle_out_in_dual": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "dual_beacon": true,
+ "rainbow_beacon": true,
+ "rainbow_pinwheels": true,
+ "raindrops": true,
+ "jellybean_raindrops": true,
+ "hue_breathing": true,
+ "hue_pendulum": true,
+ "hue_wave": true,
+ "pixel_rain": true,
+ "pixel_flow": true,
+ "pixel_fractal": true,
+ "typing_heatmap": true,
+ "digital_rain": true,
+ "solid_reactive_simple": true,
+ "solid_reactive": true,
+ "solid_reactive_wide": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_cross": true,
+ "solid_reactive_multicross": true,
+ "solid_reactive_nexus": true,
+ "solid_reactive_multinexus": true,
+ "splash": true,
+ "multisplash": true,
+ "solid_splash": true,
+ "solid_multisplash": true
+ },
+ "driver": "ws2812",
+ "led_count": 64,
+ "max_brightness": 100,
+ "split_count": [33, 31],
+ "sleep": true,
+ "layout": [
+ {"matrix": [0, 0], "x": 0, "y": 0, "flags": 1},
+ {"matrix": [1, 0], "x": 0, "y": 10, "flags": 1},
+ {"matrix": [2, 0], "x": 0, "y": 20, "flags": 1},
+ {"matrix": [3, 0], "x": 0, "y": 30, "flags": 1},
+ {"matrix": [3, 1], "x": 12, "y": 30, "flags": 4},
+ {"matrix": [2, 1], "x": 12, "y": 20, "flags": 4},
+ {"matrix": [1, 1], "x": 12, "y": 10, "flags": 4},
+ {"matrix": [0, 1], "x": 12, "y": 0, "flags": 4},
+ {"matrix": [0, 2], "x": 24, "y": 0, "flags": 4},
+ {"matrix": [1, 2], "x": 24, "y": 10, "flags": 4},
+ {"matrix": [2, 2], "x": 24, "y": 20, "flags": 4},
+ {"matrix": [3, 2], "x": 24, "y": 30, "flags": 4},
+ {"matrix": [4, 2], "x": 24, "y": 40, "flags": 1},
+ {"matrix": [4, 3], "x": 36, "y": 40, "flags": 1},
+ {"matrix": [3, 3], "x": 36, "y": 30, "flags": 4},
+ {"matrix": [2, 3], "x": 36, "y": 20, "flags": 4},
+ {"matrix": [1, 3], "x": 36, "y": 10, "flags": 4},
+ {"matrix": [0, 3], "x": 36, "y": 0, "flags": 4},
+ {"matrix": [0, 4], "x": 48, "y": 0, "flags": 4},
+ {"matrix": [1, 4], "x": 48, "y": 10, "flags": 4},
+ {"matrix": [2, 4], "x": 48, "y": 40, "flags": 4},
+ {"matrix": [3, 4], "x": 48, "y": 30, "flags": 4},
+ {"matrix": [3, 5], "x": 60, "y": 30, "flags": 4},
+ {"matrix": [2, 5], "x": 60, "y": 20, "flags": 4},
+ {"matrix": [1, 5], "x": 60, "y": 10, "flags": 4},
+ {"matrix": [0, 5], "x": 60, "y": 0, "flags": 4},
+ {"matrix": [4, 4], "x": 48, "y": 50, "flags": 1},
+ {"matrix": [5, 4], "x": 65, "y": 56, "flags": 1},
+ {"matrix": [5, 5], "x": 70, "y": 60, "flags": 1},
+ {"matrix": [5, 3], "x": 65, "y": 64, "flags": 1},
+ {"matrix": [5, 2], "x": 60, "y": 60, "flags": 1},
+ {"matrix": [4, 1], "x": 0, "y": 40, "flags": 1},
+ {"matrix": [4, 0], "x": 12, "y": 40, "flags": 1},
+ {"matrix": [6, 5], "x": 224, "y": 0, "flags": 1},
+ {"matrix": [7, 5], "x": 224, "y": 10, "flags": 1},
+ {"matrix": [8, 5], "x": 224, "y": 20, "flags": 1},
+ {"matrix": [9, 5], "x": 224, "y": 30, "flags": 1},
+ {"matrix": [9, 4], "x": 212, "y": 30, "flags": 4},
+ {"matrix": [8, 4], "x": 212, "y": 20, "flags": 4},
+ {"matrix": [7, 4], "x": 212, "y": 10, "flags": 4},
+ {"matrix": [6, 4], "x": 212, "y": 0, "flags": 4},
+ {"matrix": [6, 3], "x": 200, "y": 0, "flags": 4},
+ {"matrix": [7, 3], "x": 200, "y": 10, "flags": 4},
+ {"matrix": [8, 3], "x": 200, "y": 20, "flags": 4},
+ {"matrix": [9, 3], "x": 200, "y": 30, "flags": 4},
+ {"matrix": [10, 3], "x": 200, "y": 40, "flags": 1},
+ {"matrix": [10, 2], "x": 188, "y": 40, "flags": 1},
+ {"matrix": [9, 2], "x": 188, "y": 30, "flags": 4},
+ {"matrix": [8, 2], "x": 188, "y": 20, "flags": 4},
+ {"matrix": [7, 2], "x": 188, "y": 10, "flags": 4},
+ {"matrix": [6, 2], "x": 188, "y": 0, "flags": 4},
+ {"matrix": [6, 1], "x": 176, "y": 0, "flags": 4},
+ {"matrix": [7, 1], "x": 176, "y": 10, "flags": 4},
+ {"matrix": [8, 1], "x": 176, "y": 20, "flags": 4},
+ {"matrix": [9, 1], "x": 176, "y": 30, "flags": 4},
+ {"matrix": [9, 0], "x": 164, "y": 30, "flags": 4},
+ {"matrix": [8, 0], "x": 164, "y": 20, "flags": 4},
+ {"matrix": [7, 0], "x": 164, "y": 10, "flags": 4},
+ {"matrix": [6, 0], "x": 164, "y": 0, "flags": 4},
+ {"matrix": [11, 1], "x": 164, "y": 60, "flags": 1},
+ {"matrix": [11, 3], "x": 152, "y": 70, "flags": 1},
+ {"matrix": [11, 2], "x": 140, "y": 70, "flags": 1},
+ {"matrix": [10, 4], "x": 224, "y": 40, "flags": 1},
+ {"matrix": [10, 5], "x": 208, "y": 40, "flags": 1}
+ ]
}
}
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/post_rules.mk b/keyboards/handwired/tractyl_manuform/5x6_right/post_rules.mk
new file mode 100644
index 0000000000..fab9162dc6
--- /dev/null
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/post_rules.mk
@@ -0,0 +1 @@
+POINTING_DEVICE_DRIVER = pmw3360
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/rules.mk b/keyboards/handwired/tractyl_manuform/5x6_right/rules.mk
deleted file mode 100644
index b7f7c949ec..0000000000
--- a/keyboards/handwired/tractyl_manuform/5x6_right/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-POINTING_DEVICE_DRIVER = pmw3360
-MOUSE_SHARED_EP = yes
-
-DEFAULT_FOLDER = handwired/tractyl_manuform/5x6_right/teensy2pp
diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/teensy2pp/keyboard.json b/keyboards/handwired/tractyl_manuform/5x6_right/teensy2pp/keyboard.json
index a131ac085b..5a091996b6 100644
--- a/keyboards/handwired/tractyl_manuform/5x6_right/teensy2pp/keyboard.json
+++ b/keyboards/handwired/tractyl_manuform/5x6_right/teensy2pp/keyboard.json
@@ -11,7 +11,9 @@
]
},
"split": {
- "soft_serial_pin": "D2"
+ "serial": {
+ "pin": "D2"
+ }
},
"ws2812": {
"pin": "E7"