Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

handwired/frenchdev Refactor, Configurator support and readme cleanup #4561

Merged
merged 3 commits into from
Dec 6, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion keyboards/handwired/frenchdev/frenchdev.h
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ inline void frenchdev_led_all_set(uint8_t n)
frenchdev_led_3_set(n);
}

#define KEYMAP( \
#define LAYOUT( \
\
k01, k02, k03, k04, k05, k06, k09, k0a, k0b, k0c, k0d, k0e, \
k10, k11, k12, k13, k14, k15, k16, k19, k1a, k1b, k1c, k1d, k1e, k1f, \
Expand Down
114 changes: 114 additions & 0 deletions keyboards/handwired/frenchdev/info.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
{
"keyboard_name": "",
"url": "",
"maintainer": "qmk",
"bootloader": "",
"width": 20,
"height": 8,
"layouts": {
"LAYOUT": {
"layout": [
{"label":"F1", "x":1, "y":0.9},
{"label":"F2", "x":2, "y":0.3},
{"label":"F3", "x":3, "y":0},
{"label":"F4", "x":4, "y":0.4},
{"label":"F5", "x":5, "y":0.5},
{"label":"F6", "x":6, "y":0.5},
{"label":"F7", "x":13, "y":0.5},
{"label":"F8", "x":14, "y":0.5},
{"label":"F9", "x":15, "y":0.4},
{"label":"F10", "x":16, "y":0},
{"label":"F11", "x":17, "y":0.3},
{"label":"F12", "x":18, "y":0.9},

{"label":"Esc", "x":0, "y":1.9},
{"label":"\"", "x":1, "y":1.9},
{"label":"\u00ab", "x":2, "y":1.3},
{"label":"\u00bb", "x":3, "y":1},
{"label":"(", "x":4, "y":1.4},
{"label":")", "x":5, "y":1.5},
{"label":"\u00a8", "x":6, "y":1.5},
{"label":"^", "x":13, "y":1.5},
{"label":"@", "x":14, "y":1.5},
{"label":"+", "x":15, "y":1.4},
{"label":"-", "x":16, "y":1},
{"label":"/", "x":17, "y":1.3},
{"label":"*", "x":18, "y":1.9},
{"label":"Backspace", "x":19, "y":1.9},

{"label":"Tab", "x":0, "y":2.9},
{"label":"B", "x":1, "y":2.9},
{"label":"É", "x":2, "y":2.3},
{"label":"P", "x":3, "y":2},
{"label":"O", "x":4, "y":2.4},
{"label":"È", "x":5, "y":2.5},
{"label":"_", "x":6, "y":2.5},
{"label":"=", "x":13, "y":2.5},
{"label":"K", "x":14, "y":2.5},
{"label":"V", "x":15, "y":2.4},
{"label":"D", "x":16, "y":2},
{"label":"L", "x":17, "y":2.3},
{"label":"J", "x":18, "y":2.9},
{"label":"Enter", "x":19, "y":2.9},

{"label":"`", "x":0, "y":3.9},
{"label":"A", "x":1, "y":3.9},
{"label":"U", "x":2, "y":3.3},
{"label":"E", "x":3, "y":3},
{"label":"I", "x":4, "y":3.4},
{"label":"F", "x":5, "y":3.5},
{"label":";", "x":6, "y":3.5},
{"label":"!", "x":13, "y":3.5},
{"label":"C", "x":14, "y":3.5},
{"label":"T", "x":15, "y":3.4},
{"label":"S", "x":16, "y":3},
{"label":"R", "x":17, "y":3.3},
{"label":"N", "x":18, "y":3.9},
{"label":"'", "x":19, "y":3.9},

{"label":"Shift", "x":0, "y":4.9},
{"label":"Z", "x":1, "y":4.9},
{"label":"À", "x":2, "y":4.3},
{"label":"Y", "x":3, "y":4},
{"label":"X", "x":4, "y":4.4},
{"label":"]", "x":5, "y":4.5},
{"label":"Shift/Space", "x":6.5, "y":5},
{"label":"Ctrl/Backspace", "x":7.5, "y":5},
{"label":"Layer 2/Insert", "x":8.5, "y":5},
{"label":"Layer 2 Lock", "x":10.5, "y":5},
{"label":"Ctrl/Delete", "x":11.5, "y":5},
{"label":"Shift/Space", "x":12.5, "y":5},
{"label":"M", "x":14, "y":4.5},
{"label":"G", "x":15, "y":4.4},
{"label":"Up", "x":16, "y":4},
{"label":"H", "x":17, "y":4.3},
{"label":"Q", "x":18, "y":4.9},
{"label":"Shift", "x":19, "y":4.9},

{"label":"Ctrl", "x":0, "y":5.9},
{"label":"GUI", "x":1, "y":5.9},
{"label":"Keypad /", "x":2, "y":5.3},
{"label":".", "x":3, "y":5},
{"label":",", "x":4, "y":5.4},
{"label":"Space", "x":5, "y":5.5},
{"label":"Layer 1/Space", "x":6.5, "y":6},
{"label":"Alt", "x":7.5, "y":6},
{"label":"Caps Lock", "x":11.5, "y":6},
{"label":"Layer 1/Space", "x":12.5, "y":6},
{"label":"Space", "x":14, "y":5.5},
{"label":"Left", "x":15, "y":5.4},
{"label":"Down", "x":16, "y":5},
{"label":"Right", "x":17, "y":5.3},
{"label":":", "x":18, "y":5.9},
{"label":"Ctrl", "x":19, "y":5.9},

{"label":"Left Pedal 1", "x":2.25, "y":7.5, "w":1.5, "h":2},
{"label":"Left Pedal 2", "x":3.75, "y":7.5, "w":1.5, "h":2},
{"label":"Left Pedal 3", "x":5.25, "y":7.5, "w":1.5, "h":2},
{"label":"Right Pedal 1", "x":13.25, "y":7.5, "w":1.5, "h":2},
{"label":"Right Pedal 2", "x":14.75, "y":7.5, "w":1.5, "h":2},
{"label":"Right Pedal 3", "x":16.25, "y":7.5, "w":1.5, "h":2}
]
}
}
}
14 changes: 6 additions & 8 deletions keyboards/handwired/frenchdev/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
#include "frenchdev.h"
#include QMK_KEYBOARD_H
#include "mousekey.h"
#include "action.h"
#include "action_layer.h"
#include "keymap_extras/keymap_bepo.h"
#include "keymap_bepo.h"


// Each layer gets a name for readability, which is then used in the keymap matrix below.
Expand Down Expand Up @@ -67,7 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* `-------------/ \-------------/ .. \-------------/ \-------------/ *
*M(M_LP)
*/
[_BASE] = KEYMAP(
[_BASE] = LAYOUT(
KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, \
KC_ESC, BP_DQOT, BP_LGIL, BP_RGIL, BP_LPRN, BP_RPRN, BP_DTRM, BP_DCRC, BP_AT, BP_PLUS, BP_MINS, BP_SLSH, BP_ASTR, KC_BSPC, \
KC_TAB, BP_B, BP_ECUT, BP_O, BP_P, BP_EGRV, BP_UNDS, BP_EQL, BP_K, BP_V, BP_D, BP_L, BP_J, KC_ENT, \
Expand Down Expand Up @@ -99,7 +97,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* `-------------/ \-------------/ .. \-------------/ \-------------/ *
*
*/
[_SYMBOLS] = KEYMAP(
[_SYMBOLS] = LAYOUT(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
KC_TRNS, BP_DCUR, BP_PARG, BP_SECT, BP_DGRK, KC_TRNS, BP_TILD, BP_DCAR, BP_LEQL, BP_GEQL, BP_PSMS, BP_OBEL, BP_TIMS, KC_TRNS, \
KC_TRNS, BP_BSLS, BP_ASTR, BP_LCBR, BP_RCBR, BP_GRV, KC_TRNS, BP_DIFF, BP_HASH, BP_LBRC, BP_RBRC, BP_PERC, BP_PMIL, KC_TRNS, \
Expand Down Expand Up @@ -131,7 +129,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* `-------------/ \-------------/ .. \-------------/ \-------------/ *
*
*/
[_MEDIA] = KEYMAP(
[_MEDIA] = LAYOUT(
RESET, KC_SLCK, KC_PAUS, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_VOLD, KC_VOLU, KC_PSCR, KC_CALC, KC_NLCK, \
KC_TRNS, KC_TRNS, KC_TRNS, KC_MSTP, KC_MPRV, KC_MNXT, KC_MPLY, KC_MPLY, KC_MPRV, KC_MNXT, KC_MSTP, KC_TRNS, KC_PMNS, KC_TRNS, \
KC_TRNS, KC_TRNS, KC_TRNS, KC_WH_U, KC_TRNS, KC_BTN4, KC_BTN5, KC_BTN4, KC_BTN5, KC_KP_7, KC_KP_8, KC_KP_9, KC_PPLS, KC_TRNS, \
Expand Down Expand Up @@ -163,7 +161,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
*
*/

[_TRNS] = KEYMAP(
[_TRNS] = LAYOUT(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
Expand Down
16 changes: 8 additions & 8 deletions keyboards/handwired/frenchdev/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,29 +6,29 @@ Concept based on
with the added possibility to connect up to 6 external switches like pedals,
and somewhat like the katy, not all keys are on the same level for easier reach.

###Photos
### Photos
- [default layout](http://i.imgur.com/r2Nvr4p.png)
- [editable layout on keyboard layout editor](http://www.keyboard-layout-editor.com/#/gists/4480e3ab8026eb7c710a7e22203ef4aa) (keys placement is NOT precise on this)
- [the thing when finished](http://imgur.com/a/6FY8v)
- [concept and cardboard mockup](http://imgur.com/a/R0vvs)

##Build instructions
## Build instructions

docker run --rm -e keymap=default -e keyboard=frenchdev --rm -v D:/Repositories/qmk:/qmk:rw edasque/qmk_firmware

##Laser-cuttable file
## Laser-cuttable file
There is intentionnaly no hole for the TRRS connector, you are supposed to use a drill for it.
This way if you don't want to use the pedals you don't have a useless hole. Plus it's cleaner.
http://qmk.fm/frenchdev/frenchdev_v1_lasercut_template.svg

##Side stickers
## Side stickers
You can find my original file here : http://qmk.fm/frenchdev/example_printable_stickers.svg

I used it when training but now I use blanks and the layout is different.
I still uploaded it because I think it can be a good jumpstart for any temporary stickers on the
side of keycaps.

##List of parts
## List of parts
- I2C mcp23018
- [teensy 2](https://www.pjrc.com/store/teensy.html)
- 3 LED, 5mm tall with flat head
Expand All @@ -43,13 +43,13 @@ side of keycaps.
- 20 R2 keys
- 22 R1 keys

if you fancy adding pedals :
If you fancy adding pedals :
[these are good enough and cheap](https://www.amazon.fr/gp/product/B00V7WITKI/ref=oh_aui_detailpage_o04_s00?ie=UTF8&psc=1). You also need a RCA connector for each of those to replace the included cable

If you (or your coworkers) find them too loud you can replace the switch inside them.
For once we don't really care about what's inside :)

##Various indications
## Various indications

The PHYSICAL rows and columns are connected as such :

Expand Down Expand Up @@ -96,7 +96,7 @@ and on left hand (main) :

We use pull up resistor for SCL and VDA, see https://github.com/ErgoDox-EZ/docs/blob/master/ErgoDox%20EZ%20Schematic.pdf for example

the connector is a standard TRRS (jack with audio + mic)
The connector is a standard TRRS (jack with audio + mic)

Diode direction is row to column