geekhack

geekhack Community => Keyboards => Topic started by: ArchDill on Sat, 10 June 2017, 01:56:34

Title: What did you reprogram on your hhkb with the hasu?
Post by: ArchDill on Sat, 10 June 2017, 01:56:34
Hello, I have spent a lot of time, money, and love on my hhkb. I have not wanted a Hasu controller at all. I actually use the USB hub for my trackball when traveling and I like the stock layout. I am just Curious what everyone reprogrammed to?
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: Tactile on Sat, 10 June 2017, 08:59:24
Not much additional, really. I added a numeric keypad layer and got volume control working in Windows.

Code: [Select]
/*
 * HHKB Layout
 */
#include "keymap_common.h"


enum keymap_layout {
    BASE = 0,
    TENKEY,
    HHKB,
};

#ifdef KEYMAP_SECTION_ENABLE
const uint8_t keymaps[][MATRIX_ROWS][MATRIX_COLS] __attribute__ ((section (".keymap.keymaps"))) = {
#else
const uint8_t keymaps[][MATRIX_ROWS][MATRIX_COLS] PROGMEM = {
#endif
    /* Layer 0: Base Layer
     * ,-----------------------------------------------------------.
     * |Esc|  1|  2|  3|  4|  5|  6|  7|  8|  9|  0|  -|  =|  \|  `|
     * |-----------------------------------------------------------|
     * |Tab  |  Q|  W|  E|  R|  T|  Y|  U|  I|  O|  P|  [|  ]|BkSp |
     * |-----------------------------------------------------------|
     * |Contro|  A|  S|  D|  F|  G|  H|  J|  K|  L|  ;|  '|Enter   |
     * |-----------------------------------------------------------|
     * |Shift   |  Z|  X|  C|  V|  B|  N|  M|  ,|  .|  /|Shift |FN0|
     * `-----------------------------------------------------------'
     *       |Alt|FN0  |         Space         |Gui  |Alt|
     *       `-------------------------------------------'
     */
    [BASE] = KEYMAP(ESC, 1,   2,   3,   4,   5,   6,   7,   8,   9,   0,   MINS,EQL, BSLS,GRV,   \
           TAB, Q,   W,   E,   R,   T,   Y,   U,   I,   O,   P,   LBRC,RBRC,BSPC,       \
           LCTL,  A,   S,   D,   F,   G,   H,   J,   K,   L,   SCLN,QUOT,ENT,           \
           LSFT,Z,   X,   C,   V,   B,   N,   M,   COMM,DOT, SLSH,RSFT,FN0,             \
                LALT, FN0,          SPC,                RGUI,RALT),

               
    /* Layer 1: Numeric keypad
     * ,-----------------------------------------------------------.
     * |ESC|   |   |   |   |   |   | 7 | 8 | 9 |   | - |   |Ins|Del|
     * |-----------------------------------------------------------|
     * |Tab  |   |   |   |   |   |   | 4 | 5 | 6 |   |ENT|   |BkSp |
     * |-----------------------------------------------------------|
     * |      |   |   |   |   |   |   | 1  |  2 |  3 | + | * |Enter|
     * |-----------------------------------------------------------|
     * |        |   |   |   |   |   |   |   | 0 | . | / |    |Fn0  |
     * `-----------------------------------------------------------'
     *       |   |NumL |                       |     |   |
     *       `-------------------------------------------'
     */
    [TENKEY] = KEYMAP(ESC,NO,NO,NO,NO,NO,NO, P7, P8, P9, NO,PMNS,NO, INS, DEL,   \
           TAB, NO,NO,NO,NO,NO,NO,P4,P5,P6,NO, PENT,  NO, BSPC,      \
           TRNS,NO,NO,NO,NO,NO,NO,P1,P2,P3,PPLS,PAST,ENT,            \
           TRNS,NO,NO,NO,NO,NO,NO,NO, P0, PDOT,PSLS,TRNS,FN0,       \
                TRNS,NLCK,          TRNS,               TRNS,TRNS),
 
    /* Layer 2: HHKB mode (HHKB Fn)
     * ,-----------------------------------------------------------.
     * |   | F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Ins|Del|
     * |-----------------------------------------------------------|
     * |Caps |Fn1|Fn2|   |   |   |   |   |Psc|Slk|Pau|Up |   |BkSp |
     * |-----------------------------------------------------------|
     * |      |VoD|VoU|Mut|   |   |   |   |Hom|PgU|Lef|Rig|        |
     * |-----------------------------------------------------------|
     * |        |   |   |   |   |   |   |   |End|PgD|Dow|      |   |
     * `-----------------------------------------------------------'
     *       |   |     |                       |     |   |
     *       `-------------------------------------------'
     */
    [HHKB] = KEYMAP(TRNS, F1,  F2,  F3,  F4,  F5,  F6,  F7,  F8,  F9,  F10, F11, F12, INS, DEL,   \
           CAPS,FN1,FN2,TRNS,TRNS,TRNS,TRNS,TRNS,PSCR,SLCK,PAUS, UP, TRNS,BSPC,      \
           TRNS,VOLD,VOLU,MUTE,TRNS,TRNS,TRNS,TRNS,HOME,PGUP,LEFT,RGHT,TRNS,            \
           TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,TRNS,END, PGDN,DOWN,TRNS,TRNS,            \
                TRNS,TRNS,          TRNS,               TRNS,TRNS),

};



/*
 * Fn action definition
 */
#ifdef KEYMAP_SECTION_ENABLE
const action_t fn_actions[] __attribute__ ((section (".keymap.fn_actions"))) = {
    [0]  = ACTION_LAYER_MOMENTARY(1),
    [1]  = ACTION_LAYER_MOMENTARY(2),
    [2]  = ACTION_LAYER_MOMENTARY(3),
    [3]  = ACTION_LAYER_MOMENTARY(4),
    [4]  = ACTION_LAYER_MOMENTARY(5),
    [5]  = ACTION_LAYER_MOMENTARY(6),
    [6]  = ACTION_LAYER_MOMENTARY(7),
    [7]  = ACTION_LAYER_TOGGLE(1),
    [8]  = ACTION_LAYER_TOGGLE(2),
    [9]  = ACTION_LAYER_TOGGLE(3),
    [10] = ACTION_LAYER_TAP_TOGGLE(1),
    [11] = ACTION_LAYER_TAP_TOGGLE(2),
    [12] = ACTION_LAYER_TAP_TOGGLE(3),
    [13] = ACTION_LAYER_TAP_KEY(1, KC_BSLASH),
    [14] = ACTION_LAYER_TAP_KEY(2, KC_TAB),
    [15] = ACTION_LAYER_TAP_KEY(3, KC_ENTER),
    [16] = ACTION_LAYER_TAP_KEY(4, KC_SPACE),
    [17] = ACTION_LAYER_TAP_KEY(5, KC_SCOLON),
    [18] = ACTION_LAYER_TAP_KEY(6, KC_QUOTE),
    [19] = ACTION_LAYER_TAP_KEY(7, KC_SLASH),
    [20] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_SPACE),
    [21] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_SPACE),
    [22] = ACTION_MODS_TAP_KEY(MOD_RCTL, KC_QUOTE),
    [23] = ACTION_MODS_TAP_KEY(MOD_RCTL, KC_ENTER),
    [24] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_ESC),
    [25] = ACTION_MODS_TAP_KEY(MOD_LCTL, KC_BSPACE),
    [26] = ACTION_MODS_ONESHOT(MOD_LCTL),
    [27] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_ESC),
    [28] = ACTION_MODS_TAP_KEY(MOD_LSFT, KC_BSPACE),
    [29] = ACTION_MODS_ONESHOT(MOD_LSFT),
    [30] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_GRAVE),
    [31] = ACTION_MODS_TAP_KEY(MOD_RSFT, KC_BSLASH),
};
#else
const action_t fn_actions[] PROGMEM = {
    [0] = ACTION_LAYER_MOMENTARY(HHKB),
    [1] = ACTION_DEFAULT_LAYER_SET(BASE),
    [2] = ACTION_DEFAULT_LAYER_SET(TENKEY),
};
#endif
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: Bucake on Sat, 10 June 2017, 10:48:40
@Tactile just curious, why two Alt keys?

mine's nothing fancy, maybe a bit strange:
(http://i.imgur.com/wzpUHQc.png)
(http://i.imgur.com/VkBRtk7.png)


i want to try a toggle-able default layer some day to implement dual-role keys.
the repeat function of keys like space, alt and ctrl is something i frequently use so i need to be able to turn off the dual-functionality

i can see why the hub is useful if you don't have enough USB ports otherwise, but i've never had a use for it myself.
the stock layout isn't bad imo, but i'm sure i can't go back now that i'm so used to my own navigation layers. i especially love that i can use my left hand OR right hand for navigation.
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: Tactile on Sat, 10 June 2017, 11:33:38
@Tactile just curious, why two Alt keys?

I just never felt the need to change that, and I do use both.
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: f32h80fsd08h34r5 on Mon, 12 June 2017, 20:08:15
Absolutely nothing, just appreciated the fact that the FN Volume keys worked! :thumb:
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: Joey Quinn on Tue, 13 June 2017, 01:46:46
Swapped both of mine to Dvorak and moved the volume controls, other than that it's mostly default.
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: nya on Tue, 13 June 2017, 02:18:26
I haven't gotten around to it yet, but It'll be nice to use the extra keys on the jis layout
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: futurecrime on Tue, 13 June 2017, 10:54:54
Just added a Colemak layer. C'est tout.
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: ArchDill on Tue, 13 June 2017, 10:58:10
The only thing I wold like is volume keys that work.
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: futurecrime on Tue, 13 June 2017, 11:51:34
The only thing I wold like is volume keys that work.

It does that by default. It's pretty nifty.
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: Tactile on Tue, 13 June 2017, 17:21:56
The only thing I wold like is volume keys that work.

It does that by default. It's pretty nifty.

Only on a MAC. No volume control under Windows.
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: futurecrime on Tue, 13 June 2017, 18:33:34
The only thing I wold like is volume keys that work.

It does that by default. It's pretty nifty.

Only on a MAC. No volume control under Windows.

By 'it' I mean the Hasu controller. It enables volume control on Windows without having to configure it.
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: Tactile on Tue, 13 June 2017, 22:29:55
The only thing I wold like is volume keys that work.

It does that by default. It's pretty nifty.

Only on a MAC. No volume control under Windows.

By 'it' I mean the Hasu controller. It enables volume control on Windows without having to configure it.

Ahhh.. Gotcha
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: sth on Tue, 13 June 2017, 22:50:16
RAlt to RCtrl and disable fn+Esc power key.
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: hernianrunner on Sat, 17 June 2017, 22:05:15
I don't have hasu's controller, but have a USB-USB converter.
Function the USB-USB converter has:
  SpaceFN with Japanese conversion keys.
  Some logic that makes HHKB(us layout) as HHKB(jp layout).

[attach=1]
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: Bucake on Sun, 18 June 2017, 13:25:03
are those (legends) stickers? looks cool!
Title: Re: What did you reprogram on your hhkb with the hasu?
Post by: alienman82 on Sun, 18 June 2017, 14:25:16
removed.