How to use F13-F24 keys?

10,103

Solution 1

This was an issue in the loader used to flash the configuration on the keyboard, build mdloader from sources.

Github issue: https://github.com/Massdrop/mdloader/issues/12#event-2559218821

Solution 2

The default key layouts applied to the Drop Alt Keyboard with QMK do not have mappings for F13-F24, you need to create these yourself. (For info for others, they are not physical keys, they are logical ones defined by the keyboard, check links below). A link to the keyboard here.

QMK is an open source keyboard firmware that allows you to modify a keyboards output to provide more than the usual scancodes that are interpreted at the lowest levels of the OS (more on that later).

For more info on QMK, have a read: here and here.

Your computer keyboard has a processor inside of it, not unlike the one inside your computer. This processor runs software that is responsible for detecting button presses and sending reports about the state of the keyboard when buttons are pressed or released. QMK fills the role of that software, detecting button presses and passing that information on to the host computer. When you build your custom keymap, you are creating the equivalent of an executable program for your keyboard.

A 'basic' keyboard will output scancodes which are interpreted at the kernel and converted to a keycode as determined by your keyboards mapping (check /lib/udev/hwdb.d/60-keyboard.hwdb for the conversion of popular scancodes as already applied in Ubuntu). You can extend this yourself by creating the appropriate rules, mapping and config files, but with QMK, you don't need to.

QMK tries to put a lot of power into your hands by making easy things easy, and hard things possible. You don't have to know how to program to create powerful keymaps — you only have to follow a few simple syntax rules.
( from https://docs.qmk.fm/#/newbs_getting_started )

The default layout doesn't include a mappying for F13-F24, you will need to include that yourself. By default the mapping is:

Drop Alt Layer 0 Drop Alt Layer 1

You are going to need to either create a new layer, create a new modifier or extend the current layers.

For QMK on Drop Alt and it's configuration you will want to look here and here.

Some other great resources:

You have bought an awesome keyboard, I myself am looking at the (Mass)Drop CTRL because I can't do without the keyboard arrows and paging keys, but the dedicated function row is nice (more keys to macro out!).

As great as they are, they are a very plain/ordinary keyboard (functionality) out of the box. You can do a lot through QMK with the keyboard, but it is now up to you to define what your goals are and how to achieve them.

Start with the configurator (same link as before) and create your keycodes as desired example:

enter image description here

Then compile and download your firmware!

Install, enjoy and HAVE FUN!

Share:
10,103

Related videos on Youtube

Adam
Author by

Adam

Updated on September 18, 2022

Comments

  • Adam
    Adam over 1 year

    My keyboard has 12 extra function keys available using a modifier key and QMK, but the F13-F24 don't seem to register. I'm using Manjaro Linux with Gnome. Where could the problem lie?

    EDIT: Keyboard model is Drop Alt, F13-F24 is configured using QMK

    EDIT: The keys do not register in evtest

    dmesg outputs the following on keyboard plug in

    [74749.149041] usb 2-7: new full-speed USB device number 26 using xhci_hcd
    [74749.275874] usb 2-7: New USB device found, idVendor=04d8, idProduct=eec5, bcdDevice= 1.01
    [74749.275880] usb 2-7: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [74749.275884] usb 2-7: Product: Massdrop Hub
    [74749.275887] usb 2-7: Manufacturer: Massdrop Inc.
    [74749.275889] usb 2-7: SerialNumber: 1541411764
    [74749.276475] hub 2-7:1.0: USB hub found
    [74749.276564] hub 2-7:1.0: 2 ports detected
    [74749.561089] usb 2-7.2: new full-speed USB device number 27 using xhci_hcd
    [74749.651175] usb 2-7.2: New USB device found, idVendor=04d8, idProduct=eed3, bcdDevice= 1.01
    [74749.651181] usb 2-7.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
    [74749.651185] usb 2-7.2: Product: ALT Keyboard
    [74749.651188] usb 2-7.2: Manufacturer: Massdrop Inc.
    [74749.651190] usb 2-7.2: SerialNumber: 1541411764
    [74749.654451] input: Massdrop Inc. ALT Keyboard as /devices/pci0000:00/0000:00:14.0/usb2/2-7/2-7.2/2-7.2:1.0/0003:04D8:EED3.001E/input/input52
    [74749.706726] hid-generic 0003:04D8:EED3.001E: input,hidraw9: USB HID v1.11 Keyboard [Massdrop Inc. ALT Keyboard] on usb-0000:00:14.0-7.2/input0
    [74749.708366] input: Massdrop Inc. ALT Keyboard System Control as /devices/pci0000:00/0000:00:14.0/usb2/2-7/2-7.2/2-7.2:1.1/0003:04D8:EED3.001F/input/input53
    [74749.760390] input: Massdrop Inc. ALT Keyboard Consumer Control as /devices/pci0000:00/0000:00:14.0/usb2/2-7/2-7.2/2-7.2:1.1/0003:04D8:EED3.001F/input/input54
    [74749.760544] hid-generic 0003:04D8:EED3.001F: input,hidraw10: USB HID v1.11 Device [Massdrop Inc. ALT Keyboard] on usb-0000:00:14.0-7.2/input1
    [74749.761935] input: Massdrop Inc. ALT Keyboard as /devices/pci0000:00/0000:00:14.0/usb2/2-7/2-7.2/2-7.2:1.2/0003:04D8:EED3.0020/input/input55
    [74749.813743] hid-generic 0003:04D8:EED3.0020: input,hidraw11: USB HID v1.11 Keyboard [Massdrop Inc. ALT Keyboard] on usb-0000:00:14.0-7.2/input2```
    
    
    • dirkt
      dirkt almost 5 years
      First step is to use xev and evtest (find your keyboard among the input devices), and see as what kind of events they show up. If they don't show up at all, next step is to edit the question with details about your keyboard (USB? If yes, then probably HID?), for example by copying the lines in dmesg that appear after you connect your keyboard.
    • fixer1234
      fixer1234 almost 5 years
      Are there 24 physical function keys, or 12 that double using a modifier key? It might also be worth adding the keyboard model to the question.
    • Adam
      Adam almost 5 years
      @dirkt they don't show up at all, indeed via USB and HID. dmesg info posted. @fixer1234 indeed. Done.
    • dirkt
      dirkt almost 5 years
      Your keyboard shows up as three input devices. Did you check all three with evtest? If nothing shows up: Check all three corresponding /dev/hidraw devices e.g. with hexdump -C /dev/hidrawX. Lines are buffered, so you'll need multiple keypress before something shows up. If you get something on hidraw, but nothing on the corresponding input device, the kernel doesn't now how to translate the HID events properly.
    • Adam
      Adam almost 5 years
      @dirkt I did check all three, two of them look like "keyboards", the two programmable layers of the keyboard I think. One of the layers shows F13-F24 event keys, but they do not register as F1-F12 do. Hexdump does show entries for all keys, including F12-F24. So the HID events do just not get translated?
    • fixer1234
      fixer1234 almost 5 years
      Do you have QMK installed on Manjaro and it's not working, or is the problem that you don't and need equivalent driver software?
    • dirkt
      dirkt almost 5 years
      So you need a dedicated driver, as @fixer1234 has said, because the keyboard as apparently made in such a way that the HID descriptors are not enough to get all keys translated properly.
    • Adam
      Adam almost 5 years
      I don't think there is a specific driver, I found (stackoverflow.com/questions/47126939/…) which seems to be the same issue, I don't understand how you change the report-descriptor.
    • fixer1234
      fixer1234 almost 5 years
      Your question states that the issue is simulating F13-F24, which is a non-built-in feature provided through QMK. You have not made clear whether QMK is installed. You have added a lot of detail about diagnosing scan codes. It sounds like you may be trying to replicate the feature by other means. It isn't clear what issue you're trying to solve.
    • Madivad
      Madivad almost 5 years
      To those stating the OP needs a QMK driver, it is not that. Essentially, QMK is the driver and sits in the keyboard, it provides scan codes and macros to the OS (agnostic) as programmed.
    • Madivad
      Madivad almost 5 years
      @Adam have you compiled your own config for QMK or just using what’s come with it? Have you solved the issue since posting? I will prepare an answer for you
  • Adam
    Adam almost 5 years
    Hi, thank you for your answer, it is indeed a great purchase. I did configure my keyboard (configuration screenshot imgur.com/a/gMi8T77) and the other configured keys do work properly. However, when I inspect the HID descriptor, the usage maximum (max keycode that gets interpreted) reads 101 (so not including the 103-115 of the F13-F24 keys)