Skip to content

Commit

Permalink
[Keyboard] Dumbo (qmk#9656)
Browse files Browse the repository at this point in the history
* added dumbo keyboard

* added my personal keymap

* changed picture in readme

* removed rev1 folder to reduce clutter and confusion

* missed a few changes in last commit, everything should be added now

* Apply suggestions from code review

Committed all of the suggested changes except for removing the bootloader reference comments in rules.mk as i think it is handy.

* Update keyboards/dumbo/rules.mk

Removed the bootloader reference as suggested

* Apply clean up of info.json

* Apply suggestions from noroadsleft to support community layout LAYOUT_SPLIT_3x6_4 in the future_4
  • Loading branch information
adamnaldal authored and nicocesar committed Aug 12, 2020
1 parent 1c96c32 commit 4cf6c63
Show file tree
Hide file tree
Showing 12 changed files with 933 additions and 0 deletions.
58 changes: 58 additions & 0 deletions keyboards/dumbo/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
/*
Copyright 2020 Adam Naldal <[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/>.
*/

#pragma once

#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED
#define PRODUCT_ID 0x25E3
#define DEVICE_VER 0x0001
#define MANUFACTURER trip_trap
#define PRODUCT Dumbo

/* key matrix size */
/* Rows are doubled up */
#define MATRIX_ROWS 8
#define MATRIX_COLS 6

// wiring
#define MATRIX_ROW_PINS { D4, D7, E6, B4 }
#define MATRIX_COL_PINS { B6, B2, B3, B1, F7, F6}
#define UNUSED_PINS

#define ENCODERS_PAD_A { F4, C6 }
#define ENCODERS_PAD_B { F5, B5 }
#define ENCODERS_PAD_A_RIGHT { F5, B5 }
#define ENCODERS_PAD_B_RIGHT { F4, C6 }

/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW

/* define if matrix has ghost (lacks anti-ghosting diodes) */
//#define MATRIX_HAS_GHOST

/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5

/*
* Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN.
*/
#define SOFT_SERIAL_PIN D2

/* 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
16 changes: 16 additions & 0 deletions keyboards/dumbo/dumbo.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
/* Copyright 2020 Adam Naldal <[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 "dumbo.h"
44 changes: 44 additions & 0 deletions keyboards/dumbo/dumbo.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
/* Copyright 2020 Adam Naldal <[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/>.
*/
#pragma once

#include "quantum.h"

/* This a shortcut to help you visually see your layout.
*
* The first section contains all of the arguments representing the physical
* layout of the board and position of the keys.
*
* The second converts the arguments into a two-dimensional array which
* represents the switch matrix.
*/

#define LAYOUT_split_3x6_4( \
L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \
L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \
L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \
L30, L31, L32, L33, R30, R31, R32, R33 \
) \
{ \
{ L00, L01, L02, L03, L04, L05 }, \
{ L10, L11, L12, L13, L14, L15 }, \
{ L20, L21, L22, L23, L24, L25 }, \
{ KC_NO, KC_NO, L30, L31, L32, L33 }, \
{ R05, R04, R03, R02, R01, R00 }, \
{ R15, R14, R13, R12, R11, R10 }, \
{ R25, R24, R23, R22, R21, R20 }, \
{ KC_NO, KC_NO, R33, R32, R31, R30 } \
}
64 changes: 64 additions & 0 deletions keyboards/dumbo/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
{
"keyboard_name": "Dumbo",
"url": "",
"maintainer": "adamnaldal",
"width": 15.5,
"height": 5.25,
"layouts": {
"LAYOUT_split_3x6_4": {
"layout": [
{"x":0, "y":1.25},
{"x":1, "y":1},
{"x":2, "y":0.25},
{"x":3, "y":0},
{"x":4, "y":0.5},
{"x":5, "y":0.75},

{"x":9.5, "y":0.75},
{"x":10.5, "y":0.5},
{"x":11.5, "y":0},
{"x":12.5, "y":0.25},
{"x":13.5, "y":1},
{"x":14.5, "y":1.25},

{"x":0, "y":2.25},
{"x":1, "y":2},
{"x":2, "y":1.25},
{"x":3, "y":1},
{"x":4, "y":1.5},
{"x":5, "y":1.75},

{"x":9.5, "y":1.75},
{"x":10.5, "y":1.5},
{"x":11.5, "y":1},
{"x":12.5, "y":1.25},
{"x":13.5, "y":2},
{"x":14.5, "y":2.25},

{"x":0, "y":3.25},
{"x":1, "y":3},
{"x":2, "y":2.25},
{"x":3, "y":2},
{"x":4, "y":2.5},
{"x":5, "y":2.75},

{"x":9.5, "y":2.75},
{"x":10.5, "y":2.5},
{"x":11.5, "y":2},
{"x":12.5, "y":2.25},
{"x":13.5, "y":3},
{"x":14.5, "y":3.25},

{"x":3.25, "y":3.75},
{"x":4.25, "y":3.75, "h":1.5},
{"x":5.25, "y":3.75, "h":1.5},
{"x":6.25, "y":4.25},

{"x":8.25, "y":4.25},
{"x":9.25, "y":3.75, "h":1.5},
{"x":10.25, "y":3.75, "h":1.5},
{"x":11.25, "y":3.75}
]
}
}
}
21 changes: 21 additions & 0 deletions keyboards/dumbo/keymaps/default/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
/* Copyright 2020 Adam Naldal <[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/>.
*/

#pragma once

// If you are using an Elite C rev3 on the slave side, uncomment the lines below:
// #define SPLIT_USB_DETECT
// #define NO_USB_STARTUP_CHECK
Loading

0 comments on commit 4cf6c63

Please sign in to comment.