Browse Source

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

* handwired/frenchdev: refactor

- layout macro KEYMAP renamed to LAYOUT
- default keymap
  - now uses #include QMK_KEYBOARD_H
  - updated layout macro names

* handwired/frenchdev: Configurator support

* handwired/frenchdev: readme cleanup

Capitalization and markdown formatting fixes.
pull/4564/head
noroadsleft 5 years ago
committed by MechMerlin
parent
commit
dee2faf387
4 changed files with 129 additions and 17 deletions
  1. +1
    -1
      keyboards/handwired/frenchdev/frenchdev.h
  2. +114
    -0
      keyboards/handwired/frenchdev/info.json
  3. +6
    -8
      keyboards/handwired/frenchdev/keymaps/default/keymap.c
  4. +8
    -8
      keyboards/handwired/frenchdev/readme.md

+ 1
- 1
keyboards/handwired/frenchdev/frenchdev.h View File

@ -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, \


+ 114
- 0
keyboards/handwired/frenchdev/info.json View File

@ -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}
]
}
}
}

+ 6
- 8
keyboards/handwired/frenchdev/keymaps/default/keymap.c View File

@ -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.
@ -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, \
@ -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, \
@ -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, \
@ -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, \


+ 8
- 8
keyboards/handwired/frenchdev/readme.md View File

@ -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
@ -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 :
@ -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

Loading…
Cancel
Save