summaryrefslogtreecommitdiffstats
path: root/keyboards/spiderisland/split78
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/spiderisland/split78')
-rw-r--r--keyboards/spiderisland/split78/config.h32
-rw-r--r--keyboards/spiderisland/split78/info.json98
-rw-r--r--keyboards/spiderisland/split78/matrix.c167
-rw-r--r--keyboards/spiderisland/split78/readme.md25
-rw-r--r--keyboards/spiderisland/split78/rules.mk23
-rw-r--r--keyboards/spiderisland/split78/split78.c17
-rw-r--r--keyboards/spiderisland/split78/split78.h36
7 files changed, 0 insertions, 398 deletions
diff --git a/keyboards/spiderisland/split78/config.h b/keyboards/spiderisland/split78/config.h
deleted file mode 100644
index 30c5ec23a8..0000000000
--- a/keyboards/spiderisland/split78/config.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
-Copyright 2020 unrelenting.technology
-
-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"
-
-/* key matrix size */
-#define MATRIX_ROWS 8
-#define MATRIX_COLS 14
-
-#define BACKLIGHT_PIN D4
-#define BACKLIGHT_LEVELS 3
-#define BACKLIGHT_BREATHING
-
-#define DEBOUNCE 50
-
-#define I2C_START_RETRY_COUNT 1
diff --git a/keyboards/spiderisland/split78/info.json b/keyboards/spiderisland/split78/info.json
deleted file mode 100644
index b833b0ef44..0000000000
--- a/keyboards/spiderisland/split78/info.json
+++ /dev/null
@@ -1,98 +0,0 @@
-{
- "keyboard_name": "Split 78-key",
- "manufacturer": "SpiderIsland",
- "url": "",
- "maintainer": "qmk",
- "usb": {
- "vid": "0xFEED",
- "pid": "0xF4E4",
- "device_version": "0.0.1"
- },
- "layouts": {
- "LAYOUT": {
- "layout": [
- {"x": 0, "y": 0},
- {"x": 2, "y": 0},
- {"x": 3, "y": 0},
- {"x": 4, "y": 0},
- {"x": 5, "y": 0},
- {"x": 6.5, "y": 0},
- {"x": 8.5, "y": 0},
- {"x": 9.5, "y": 0},
- {"x": 10.5, "y": 0},
- {"x": 12, "y": 0},
- {"x": 13, "y": 0},
- {"x": 14, "y": 0},
- {"x": 15, "y": 0},
- {"x": 0, "y": 1.25},
- {"x": 1, "y": 1.25},
- {"x": 2, "y": 1.25},
- {"x": 3, "y": 1.25},
- {"x": 4, "y": 1.25},
- {"x": 5, "y": 1.25},
- {"x": 6, "y": 1.25},
- {"x": 8, "y": 1.25},
- {"x": 9, "y": 1.25},
- {"x": 10, "y": 1.25},
- {"x": 11, "y": 1.25},
- {"x": 12, "y": 1.25},
- {"x": 13, "y": 1.25},
- {"x": 14, "y": 1.25, "w": 2},
- {"x": 0, "y": 2.25, "w": 1.5},
- {"x": 1.5, "y": 2.25},
- {"x": 2.5, "y": 2.25},
- {"x": 3.5, "y": 2.25},
- {"x": 4.5, "y": 2.25},
- {"x": 5.5, "y": 2.25},
- {"x": 7.5, "y": 2.25},
- {"x": 8.5, "y": 2.25},
- {"x": 9.5, "y": 2.25},
- {"x": 10.5, "y": 2.25},
- {"x": 11.5, "y": 2.25},
- {"x": 12.5, "y": 2.25},
- {"x": 13.5, "y": 2.25},
- {"x": 14.5, "y": 2.25, "w": 1.5},
-
- {"x": 0, "y": 3.25, "w": 1.75},
- {"x": 1.75, "y": 3.25},
- {"x": 2.75, "y": 3.25},
- {"x": 3.75, "y": 3.25},
- {"x": 4.75, "y": 3.25},
- {"x": 5.75, "y": 3.25},
- {"x": 7.75, "y": 3.25},
- {"x": 8.75, "y": 3.25},
- {"x": 9.75, "y": 3.25},
- {"x": 10.75, "y": 3.25},
- {"x": 11.75, "y": 3.25},
- {"x": 12.75, "y": 3.25},
- {"x": 13.75, "y": 3.25, "w": 2.25},
-
- {"x": 0, "y": 4.25, "w": 2.25},
- {"x": 2.25, "y": 4.25},
- {"x": 3.25, "y": 4.25},
- {"x": 4.25, "y": 4.25},
- {"x": 5.25, "y": 4.25},
- {"x": 6.25, "y": 4.25},
- {"x": 8.25, "y": 4.25},
- {"x": 9.25, "y": 4.25},
- {"x": 10.25, "y": 4.25},
- {"x": 11.25, "y": 4.25},
- {"x": 12.25, "y": 4.25, "w": 1.75},
- {"x": 14, "y": 4.25},
- {"x": 15, "y": 4.25},
-
- {"x": 0, "y": 5.25, "w": 1.25},
- {"x": 1.25, "y": 5.25, "w": 1.25},
- {"x": 2.5, "y": 5.25, "w": 1.25},
- {"x": 3.75, "y": 5.25, "w": 1.25},
- {"x": 5, "y": 5.25, "w": 2.25},
- {"x": 8.25, "y": 5.25, "w": 2.25},
- {"x": 10.5, "y": 5.25, "w": 1.25},
- {"x": 11.75, "y": 5.25, "w": 1.25},
- {"x": 13, "y": 5.25},
- {"x": 14, "y": 5.25},
- {"x": 15, "y": 5.25}
- ]
- }
- }
-}
diff --git a/keyboards/spiderisland/split78/matrix.c b/keyboards/spiderisland/split78/matrix.c
deleted file mode 100644
index 71e154e5b7..0000000000
--- a/keyboards/spiderisland/split78/matrix.c
+++ /dev/null
@@ -1,167 +0,0 @@
-/*
-Copyright 2017 Luiz Ribeiro <luizribeiro@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/>.
-*/
-
-#include <string.h>
-#include <stdio.h>
-#include "quantum.h"
-#include "i2c_master.h"
-#include "split78.h"
-
-#define RIGHT_HALF
-
-
-void matrix_set_row_status(uint8_t row);
-
-
-#if defined(RIGHT_HALF)
-#define I2C_TIMEOUT 10
-#define MCP23018_TWI_ADDRESS 0b0100000
-#define TW_READ 1
-#define TW_WRITE 0
-#define TWI_ADDR_WRITE ( (MCP23018_TWI_ADDRESS<<1) | TW_WRITE )
-#define TWI_ADDR_READ ( (MCP23018_TWI_ADDRESS<<1) | TW_READ )
-#define IODIRA 0x00 // i/o direction register
-#define IODIRB 0x01
-#define IODIRA 0x00 // i/o direction register
-#define IODIRB 0x01
-#define GPPUA 0x0C // GPIO pull-up resistor register
-#define GPPUB 0x0D
-#define GPIOA 0x12 // general purpose i/o port register (write modifies OLAT)
-#define GPIOB 0x13
-#define OLATA 0x14 // output latch register
-#define OLATB 0x15
-#define MCP_ROWS_START 8
-
-static uint8_t mcp23018_init(void) {
- uint8_t ret;
- uint8_t data[3];
- // set pin direction
- // - unused : input : 1
- // - input : input : 1
- // - driving : output : 0
- data[0] = IODIRA;
- data[1] = 0b00000000; // IODIRA
- data[2] = (0b11111111); // IODIRB
-
- ret = i2c_transmit(TWI_ADDR_WRITE, (uint8_t *)data, 3, I2C_TIMEOUT);
- if (ret) goto out; // make sure we got an ACK
-
- // set pull-up
- // - unused : on : 1
- // - input : on : 1
- // - driving : off : 0
- data[0] = GPPUA;
- data[1] = 0b00000000; // IODIRA
- data[2] = (0b11111111); // IODIRB
-
- ret = i2c_transmit(TWI_ADDR_WRITE, (uint8_t *)data, 3, I2C_TIMEOUT);
- if (ret) goto out; // make sure we got an ACK
-
- // set logical value (doesn't matter on inputs)
- // - unused : hi-Z : 1
- // - input : hi-Z : 1
- // - driving : hi-Z : 1
- data[0] = OLATA;
- data[1] = 0b11111111; // IODIRA
- data[2] = (0b11111111); // IODIRB
-
- ret = i2c_transmit(TWI_ADDR_WRITE, (uint8_t *)data, 3, I2C_TIMEOUT);
-
-out:
- return ret;
-}
-#endif
-
-void matrix_init_custom(void) {
- // Set rows as output starting high
- DDRB = 0xFF;
- PORTB = 0xFF;
-
- // Set columns as inputs with pull-up enabled
- DDRA = 0x00;
- PORTA = 0xFF;
-
- // Initialize i2c communication
- i2c_init();
-
-#if defined(RIGHT_HALF)
- // Initialize the chip on the other half
- mcp23018_init();
-#endif
-
-}
-
-static i2c_status_t mcp23018_status = I2C_STATUS_SUCCESS;
-
-bool matrix_scan_custom(matrix_row_t current_matrix[]) {
- bool matrix_has_changed = false;
-
-#if defined(RIGHT_HALF)
- if (mcp23018_status != I2C_STATUS_SUCCESS) {
- mcp23018_status = mcp23018_init();
- }
-#endif
-
- for (uint8_t row = 0; row < MATRIX_ROWS; row++) {
- // Store last value of row prior to reading
- matrix_row_t last_row_value = current_matrix[row];
-
- matrix_row_t cols = 0;
- // Select the row to scan
- matrix_set_row_status(row);
-
- matrix_io_delay();
- //Set the local row
-
-#if defined(RIGHT_HALF)
- // Initialize to 0x7F in case I2C read fails,
- // as 0x75 would be no keys pressed
- uint8_t data = 0x7F;
- // Receive the columns from right half
- if (mcp23018_status == I2C_STATUS_SUCCESS) {
- mcp23018_status = i2c_receive(TWI_ADDR_WRITE, &data, 1, I2C_TIMEOUT);
- }
-#endif
-
- cols |= ((~(PINA | 0x80)) & 0x7F);
-#if defined(RIGHT_HALF)
- cols |= (((~(data | 0x80)) & 0x7F) << 7);
-#endif
-
- current_matrix[row] = cols;
- matrix_has_changed |= (last_row_value != current_matrix[row]);
- }
-
- return matrix_has_changed;
-}
-
-void matrix_set_row_status(uint8_t row) {
-#if defined(RIGHT_HALF)
- uint8_t txdata[3];
-
- //Set the remote row on port A
- txdata[0] = (GPIOA);
- txdata[1] = ( 0xFF & ~(1<<row) );
- if (mcp23018_status == I2C_STATUS_SUCCESS) {
- mcp23018_status = i2c_transmit(TWI_ADDR_WRITE, (uint8_t *)txdata, 2, I2C_TIMEOUT);
- }
-#endif
-
- //Set the local row on port B
- DDRB = (1 << row);
- PORTB = ~(1 << row);
-}
diff --git a/keyboards/spiderisland/split78/readme.md b/keyboards/spiderisland/split78/readme.md
deleted file mode 100644
index 84db8f0ffa..0000000000
--- a/keyboards/spiderisland/split78/readme.md
+++ /dev/null
@@ -1,25 +0,0 @@
-# SpiderIsland Split 78-key
-
-![Board Photo](https://i.imgur.com/N3DjdGql.jpg)
-[Image Gallery](https://imgur.com/a/0AUY8Ng)
-
-The 78 key split keyboard from [SpiderIsland on AliExpress](https://a.aliexpress.com/_dVJsSpR).
-Out of the box it runs ps2avrGB firmware, like [`split75`](../../wheatfield/split75/README.md).
-It is mistakenly called "87 key" on the AliExpress title and "104 key" (?!) in the caption inside the photo.
-
-This port is based on the `split75` port which was mostly done by [Michael L. Walker](https://github.com/walkerstop).
-
-* Keyboard Maintainer: [unrelenting.technology](https://github.com/unrelentingtech)
-* Hardware Availability: https://a.aliexpress.com/_dVJsSpR
-
-Make example for this keyboard (after setting up your build environment):
-
- make spiderisland/split78:default
-
-Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid))
-
- make spiderisland/split78:default:flash
-
-**Reset Key**: Hold down the key located at the leftmost position in the top row, commonly programmed as Escape while plugging in the keyboard.
-
-See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
diff --git a/keyboards/spiderisland/split78/rules.mk b/keyboards/spiderisland/split78/rules.mk
deleted file mode 100644
index c5319e8410..0000000000
--- a/keyboards/spiderisland/split78/rules.mk
+++ /dev/null
@@ -1,23 +0,0 @@
-# MCU name
-MCU = atmega32a
-
-# Bootloader selection
-BOOTLOADER = bootloadhid
-
-# 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
-BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
-WS2812_DRIVER = i2c
-DEBOUNCE_TYPE = sym_eager_pr
-
-# custom matrix setup
-CUSTOM_MATRIX = lite
-SRC += matrix.c
-QUANTUM_LIB_SRC += i2c_master.c
diff --git a/keyboards/spiderisland/split78/split78.c b/keyboards/spiderisland/split78/split78.c
deleted file mode 100644
index 0301012749..0000000000
--- a/keyboards/spiderisland/split78/split78.c
+++ /dev/null
@@ -1,17 +0,0 @@
-/* Copyright 2020 unrelenting.technology
- *
- * 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 "split78.h"
diff --git a/keyboards/spiderisland/split78/split78.h b/keyboards/spiderisland/split78/split78.h
deleted file mode 100644
index 2f6252f0c9..0000000000
--- a/keyboards/spiderisland/split78/split78.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/* Copyright 2020 unrelenting.technology
- *
- * 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 "quantum.h"
-
-#define LAYOUT( \
- l00, l01, l02, l03, l04, l05, r00, r01, r02, r03, r04, r05, r06, \
- l06, l07, l08, l09, l10, l11, l12, r07, r08, r09, r10, r11, r12, r13, \
- l13, l14, l15, l16, l17, l18, r14, r15, r16, r17, r18, r19, r20, r21, \
- l19, l20, l21, l22, l23, l24, r22, r23, r24, r25, r26, r27, r28, \
- l25, l26, l27, l28, l29, l30, r29, r30, r31, r32, r33, r34, r35, \
- l31, l32, l33, l34, l35, r36, r37, r38, r39, r40, r41 \
-) { \
- { l00, l06, l13, l19, l25, l31, KC_NO, r00, r07, r14, r22, r29, r21 }, \
- { l01, l07, l14, l20, l26, l32, KC_NO, r01, r08, r15, r23, r30, r36 }, \
- { l02, l08, l15, l21, l27, l33, KC_NO, r02, r09, r16, r24, r31, r37 }, \
- { l03, l09, l16, l22, l28, l34, KC_NO, r03, r10, r17, r25, r32, r38 }, \
- { l04, l10, l17, l23, l29, l35, KC_NO, r04, r11, r18, r27, r33, r39 }, \
- { l05, l11, l18, l24, l30, l12, KC_NO, r05, r12, r19, r26, r34, r40 }, \
- { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, r06, r13, r20, r28, r35, r41 }, \
-}