geekhack

geekhack Community => Keyboards => Topic started by: merlin64 on Wed, 25 April 2018, 18:51:14

Title: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: merlin64 on Wed, 25 April 2018, 18:51:14

QMK has a new tool called QMK Configurator! It will allow you to create a keymap for your QMK powered board with 0 lines of coding!! Still lots of work to be done but improving rapidly! If you're having trouble making your keymaps, please do check it out!

Keymap/Hex Creation:
Flashing Tutorial:

Text Guide: https://github.com/mechmerlin/qmk_setup/blob/master/qmk_configurator.md
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: LightningXI on Wed, 25 April 2018, 22:04:00
Very helpful! This will be useful for my brother who's making his first venture into MKs, specifically into programmable ones (QMK)
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: merlin64 on Wed, 25 April 2018, 23:59:15
Very helpful! This will be useful for my brother who's making his first venture into MKs, specifically into programmable ones (QMK)

Yah!! I'm excited. QMK has always been a giant hurdle for people to jump over! Even as a programmer, my first experience with TMK wasn't very good and the keyboard I built just sat in its box for sometime.
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: YiZZo on Sun, 10 June 2018, 23:57:57
Hi Merlin, I just used this to program my ACR60 build. The tutorials were great and very easy to follow and I had no issues programming my board. Keep up the good work!

Quick question, I wanted to program my Satan GH60 board, but the layout was just 1u keys. Does that mean your configurator won't work on it yet? Do you have a timeline on when it will be supported? Thanks again!
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: merlin64 on Mon, 11 June 2018, 22:25:19
Hi Merlin, I just used this to program my ACR60 build. The tutorials were great and very easy to follow and I had no issues programming my board. Keep up the good work!

Quick question, I wanted to program my Satan GH60 board, but the layout was just 1u keys. Does that mean your configurator won't work on it yet? Do you have a timeline on when it will be supported? Thanks again!

It should still work, the 1u keys still represents the number of keys available to be programmed. We haven't gotten around to make it pretty yet.
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: YiZZo on Mon, 11 June 2018, 22:40:57
Hi Merlin, I just used this to program my ACR60 build. The tutorials were great and very easy to follow and I had no issues programming my board. Keep up the good work!

Quick question, I wanted to program my Satan GH60 board, but the layout was just 1u keys. Does that mean your configurator won't work on it yet? Do you have a timeline on when it will be supported? Thanks again!

It should still work, the 1u keys still represents the number of keys available to be programmed. We haven't gotten around to make it pretty yet.

Ah that's what I was thinking. Thanks for confirming. I didn't want to mess up my keeb. I'll flash my Satan soon and let you know how it goes. Thanks again for this noob friendly tool!

UPDATE: Flashed my Satan successfully without any issues.
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: tuananh_bkk on Wed, 14 November 2018, 17:38:38
hi, is there anyway to load a hex file and continue edit it?
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: merlin64 on Wed, 14 November 2018, 19:11:02
hi, is there anyway to load a hex file and continue edit it?

No there is not. To edit keymaps, you can import a previously exported json.
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: ZyBeR on Mon, 26 November 2018, 02:08:54
How do I map Caps Lock to two functions?

Tap = Normal Caps Lock
Hold = Ctrl

I read somewhere that I should use MT() but I can't find that in the editor?
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: merlin64 on Mon, 26 November 2018, 09:31:03
How do I map Caps Lock to two functions?

Tap = Normal Caps Lock
Hold = Ctrl

I read somewhere that I should use MT() but I can't find that in the editor?

You can find that particular functionality in the Mod Key combinations section of the QMK Configurator. It should be the next section down from the Layer functions. You can hover your mouse over the top right of each key to find out what each one does.
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: ZyBeR on Mon, 26 November 2018, 10:58:38
Thank you, found it and flashed it! :D
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: Zobeid Zuma on Sun, 02 December 2018, 08:52:35
Been configuring my brand new KBD67 for the last couple of days.

When using QMK on my own Linux system, backlight LED commands didn't work, and the caps lock indicator LED also never comes on.  I also had a problem with MT(KC_RALT, KC_APP) on my right alt key.  I've used this before on other keyboards to make right-alt double as a compose key.  On the KBD67 it had an odd side effect, as it registers both Alt and Shift when held down.  That's a problem because one program I use heavily has Ctrl-Alt-S and Ctr-Alt-Shift-S as two completely different commands!

I set up the same thing with the web configurator, and that problem went away!  However, it still didn't get any of my LEDs working.

I tried to download the source, thinking that would let me see what the web tool did differently from my own efforts, but it tried to download a huge zip file (the entire QMK distro?), and then the download always fails.  Not sure if I understood how that is supposed to work.

Got to say the web tool is a lot less work than I went though creating my own keymap source files.
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: merlin64 on Sun, 02 December 2018, 18:41:57
Been configuring my brand new KBD67 for the last couple of days.

When using QMK on my own Linux system, backlight LED commands didn't work, and the caps lock indicator LED also never comes on.  I also had a problem with MT(KC_RALT, KC_APP) on my right alt key.  I've used this before on other keyboards to make right-alt double as a compose key.  On the KBD67 it had an odd side effect, as it registers both Alt and Shift when held down.  That's a problem because one program I use heavily has Ctrl-Alt-S and Ctr-Alt-Shift-S as two completely different commands!

I set up the same thing with the web configurator, and that problem went away!  However, it still didn't get any of my LEDs working.

I tried to download the source, thinking that would let me see what the web tool did differently from my own efforts, but it tried to download a huge zip file (the entire QMK distro?), and then the download always fails.  Not sure if I understood how that is supposed to work.

Got to say the web tool is a lot less work than I went though creating my own keymap source files.

I have the backlight and rgb underglow off by default on that board. I can turn them on for you.
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: Zobeid Zuma on Mon, 03 December 2018, 06:05:14
I have the backlight and rgb underglow off by default on that board. I can turn them on for you.

That would be OK, but I am more concerned about the caps lock indicator LED which is something I actually use.
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: eastern_thug on Sun, 06 January 2019, 15:37:33
I have the backlight and rgb underglow off by default on that board. I can turn them on for you.

That would be OK, but I am more concerned about the caps lock indicator LED which is something I actually use.

Is there a solution to this problem yet?
I recently flashed my tada68 using the web tool and just realized the caps lock LED isn't working.
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: merlin64 on Sun, 06 January 2019, 17:50:49
I have the backlight and rgb underglow off by default on that board. I can turn them on for you.

That would be OK, but I am more concerned about the caps lock indicator LED which is something I actually use.

Is there a solution to this problem yet?
I recently flashed my tada68 using the web tool and just realized the caps lock LED isn't working.

I haven't gotten around to doing it yet.
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: Zylkan on Thu, 20 February 2020, 11:56:26
Hi everyone.

I've put this on reddit as well. Could really use some help...

Here goes:

I come to ask for help and I'll try to stay on point for the most part.

Recently bought a Tada68 (pcb+plate+case) and after all the lubing/modding/soldering finished I successfully flashed it using QMK the way I wanted it (2x 1.5u keys between spacebar and arrows, one being my fn) except for one thing which is an indicator backlight LED on the fn key for when I switch to my only extra layer (toggle). I only have 2 LEDs installed, Caps lock + fn.

Caps led works as it should out of the box.

I realize that for the the fn led I will need to enter a custom function in my keymap.c, however, not only the coding part itself is alien to me but so is all the ports and pins as well.

I've read the docs, seen some examples of setting LED state with layer state and all that but didn't come across anything exactly like I want for the same board. People often go with RGB etc.

So my question is: would anyone be able to provide me with the exact function I need to put on my keymap file to get this to work ?

I'd be forever grateful !!
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: ErgoMacros on Fri, 21 February 2020, 13:53:42
Hi,
I don't know what pin your Fn LED is on, or if RGBLIGHT_COLOR_LAYER_0 is defined, but this is a sample from ergodox-ez: 

https://github.com/qmk/qmk_firmware/blob/master/keyboards/ergodox_ez/keymaps/default/keymap.c

At the end of the file, line 170+

This code is for up to 8 layers, so you could simplify, if you like.

Good luck.
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: Zylkan on Sat, 22 February 2020, 08:24:01
Hi,
I don't know what pin your Fn LED is on, or if RGBLIGHT_COLOR_LAYER_0 is defined, but this is a sample from ergodox-ez: 

https://github.com/qmk/qmk_firmware/blob/master/keyboards/ergodox_ez/keymaps/default/keymap.c

At the end of the file, line 170+

This code is for up to 8 layers, so you could simplify, if you like.

Good luck.

Thanks a lot for your input friend!

being illiterate is complicated to try and adapt stuff because I hardly know where most commands come from. This is what I've tried:

uint32_t layer_state_set_kb(uint32_t state) {

  if (state & (1<<1)){

    PORTB |= (1 << 6);

  }
  else{
    PORTB &= ~(1 << 6);
  }
  return state;
}

Backlight pin on the Tada68 is port B pin 6

Basically what happens is that the led is now always on, layer change or not.
I've tried changing the layer state argument as 1<<0 and 1<<2 without success (I don't know **** about bitwise either). It stays on either way if I remember correctly

I know there are also functions such as:

backlight_toggle() Turn the backlight on or off
backlight_enable() Turn the backlight on
backlight_disable() Turn the backlight off

which would probably be better. But again, I wouldn't know where and how to put them.

Again, thank you for chiming in!
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: ErgoMacros on Sat, 22 February 2020, 17:28:28
OK, maybe we're getting closer... try something like this?

Code: [Select]
// Runs whenever there is a layer state change.
layer_state_t layer_state_set_user(layer_state_t state) {
  backlight_disable()      // Turn the backlight off

  uint8_t layer = get_highest_layer(state);
  switch (layer) {
      //  On base layer, light off.
      case 0:
        backlight_disable()      // Turn the backlight off
        break;
     //  On first layer, light on
      case 1:
        backlight_enable()      //  Turn the backlight on
        break;

      default:
        break;
    }

  return state;
};
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: Zylkan on Sun, 23 February 2020, 16:08:29
OK, maybe we're getting closer... try something like this?

Code: [Select]
// Runs whenever there is a layer state change.
layer_state_t layer_state_set_user(layer_state_t state) {
  backlight_disable()      // Turn the backlight off

  uint8_t layer = get_highest_layer(state);
  switch (layer) {
      //  On base layer, light off.
      case 0:
        backlight_disable()      // Turn the backlight off
        break;
     //  On first layer, light on
      case 1:
        backlight_enable()      //  Turn the backlight on
        break;

      default:
        break;
    }

  return state;
};

@ErgoMacros

it worked!

it threw a couple of compiling errors. I tried to follow through and problem solved!

// Runs whenever there is a layer state change.
layer_state_t layer_state_set_user(layer_state_t state) {
    backlight_disable();  // Turn the backlight off

    uint8_t layer = get_highest_layer(state);
    switch (layer) {
        //  On base layer, light off.
        case 0: {
            backlight_disable();  // Turn the backlight off
            break;
        }

        //  On first layer, light on
        case 1: {
            backlight_enable();  //  Turn the backlight on
            break;
        }

        default:
            break;
    }

  return state;
};

Thank you sooo much!
Title: Re: QMK Configurator - An Easy Way to Make Your Keymaps/Hex
Post by: ErgoMacros on Sun, 23 February 2020, 22:37:40
Glad it worked!
(I should have mentioned I didn't try compiling it.)