Pipe key outputs |\ (two chars)

Hey all,
I’ve been using my keyboard for a year or so now, and it’s such a joy that I’ve bought a second one.
And issue that I’m having, though, is that whenever I want to type a pipe character, Fn± gives me |, and not just |.

I’ve checked my firmware file, and the layer is definitely configured for Key_Pipe.
The issue definitely seems to be with this keyboard (tested with another usb keyboard, I get a normal pipe char).
Looking at the output of xev when pressing the key, I get the following:

KeyPress event, serial 32, synthetic NO, window 0x3600001,
    root 0x2a5, subw 0x0, time 1433527925, (86,72), root:(1917,3222),
    state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyPress event, serial 32, synthetic NO, window 0x3600001,
    root 0x2a5, subw 0x0, time 1433527926, (86,72), root:(1917,3222),
    state 0x1, keycode 51 (keysym 0x7c, bar), same_screen YES,
    XLookupString gives 1 bytes: (7c) "|"
    XmbLookupString gives 1 bytes: (7c) "|"
    XFilterEvent returns: False

KeyRelease event, serial 32, synthetic NO, window 0x3600001,
    root 0x2a5, subw 0x0, time 1433527926, (86,72), root:(1917,3222),
    state 0x1, keycode 51 (keysym 0x7c, bar), same_screen YES,
    XLookupString gives 1 bytes: (7c) "|"
    XFilterEvent returns: False

KeyRelease event, serial 32, synthetic NO, window 0x3600001,
    root 0x2a5, subw 0x0, time 1433528011, (86,72), root:(1917,3222),
    state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyPress event, serial 32, synthetic NO, window 0x3600001,
    root 0x2a5, subw 0x0, time 1433528011, (86,72), root:(1917,3222),
    state 0x0, keycode 51 (keysym 0x5c, backslash), same_screen YES,
    XLookupString gives 1 bytes: (5c) "\"
    XmbLookupString gives 1 bytes: (5c) "\"
    XFilterEvent returns: False

KeyRelease event, serial 32, synthetic NO, window 0x3600001,
    root 0x2a5, subw 0x0, time 1433528011, (86,72), root:(1917,3222),
    state 0x0, keycode 51 (keysym 0x5c, backslash), same_screen YES,
    XLookupString gives 1 bytes: (5c) "\"
    XFilterEvent returns: False

Any idea of what the problem might be ? Using a led plugin, I can see that only the pipe key lights up when I press it, so it seems a bit dubious that the keyboard would see me pressing the backslash key next to it. Hardware issue ? Firmware issue ?

Are you using the factory firmware, or have you flashed a custom one? We used to have a problem in the firmware where shifted keys (like |, which is Shift+\) would sometimes output both - exactly what you described.

If you are using the factory firmware, I’d recommend upgrading to the newest one, and seeing if that fixes the issue.

1 Like