You are not logged in.
Tortured chatgpt with queries, but nothing helped, I need a help please.
Brief summary of my actions:
Description:
- In an Arch Linux Live boot (ISO 2025.03.01, kernel 6.13.5-arch1-1), Ctrl behaves like Shift or Caps Lock. For example, Ctrl+C outputs C (code 67) instead of ^C (code 3), breaking process interruption.
- showkey detects Ctrl as keycode 42, but showkey -a confirms the modifier isn’t applied — only uppercase letters are produced.
- Issue occurs in tty (likely $TERM = linux). The keyboard works fine (confirmed in Windows).
Steps to reproduce:
1. Boot the Arch Linux Live ISO (March 2025).
2. run sleep 100.
3. Press Ctrl+C — it displays C, and the process doesn’t terminate.
Diagnostics:
- stty -a: intr = ^C (but it doesn’t work).
- showkey -a: Ctrl+C → 67 0103 0x43 (should be 3 0003 0x03).
- dumpkeys, loadkeys us, stty sane, reset, chvt 2 — no fix.
- dmesg and journalctl — probably no input-related errors.
Related:
https://bbs.archlinux.org/viewtopic.php?id=271983
https://github.com/kovidgoyal/kitty/issues/2787
Last edited by armorclub (2025-03-16 09:20:58)
Offline
Is "archlinux live boot" the install iso (ie. console, no GUI and kitty is hardly relevant)?
Is it on bare metal?
showkey detects Ctrl as keycode 42
keycode 42 is shift, not ctrl (29)
What kind of hardware is this? You'll probably need some quirk in the udev rules/hwdb.
Do you have an external keyboard? (I'll just assume that this is a notebook keyboard?)
Offline
I thought it was related because it says it might be a problem with the keyboard itself.
Is "archlinux live boot" the install iso (ie. console, no GUI and kitty is hardly relevant)?
Is it on bare metal?
Yeah, clean, just booted Arch Live Boot ISO.
keycode 42 is shift, not ctrl (29)
Lol, interesting, I wasn't paying attention. But I did see that CTRL + C gives a capital C like shift.
What kind of hardware is this? You'll probably need some quirk in the udev rules/hwdb.
I don't understand the question. Desktop PC, not laptop.
Do you have an external keyboard?
This is an external keyboard. Not a laptop.
Last edited by armorclub (2025-03-16 04:23:07)
Offline
Problem: The keyboard in Linux TTY sends a single scancode
700e1
for Ctrl, Shift, and Alt, all interpreted as Shift (code 42). Works fine on Windows probably due to drivers.
Solution: Remapped
700e1
to
leftctrl
via udev hwdb, so all three keys now act as Ctrl. Separation is impossible due to hardware limitations.
Commands:
Diagnostics:
cat /proc/bus/input/devices | less
evtest /dev/input/eventX
Configuration:
echo -e "evdev:input:b0003v1A2Cp002F*\n KEYBOARD_KEY_700e1=leftctrl" | sudo tee /etc/udev/hwdb.d/70-keyboard.hwdb
systemd-hwdb update
udevadm trigger
Conclusion: The issue stems from the keyboard’s simplified firmware. A different keyboard is needed for full functionality.
---
What do you think?
Last edited by armorclub (2025-03-16 06:22:10)
Offline
I don't understand the question. Desktop PC, not laptop.
What kind of keyboard is this? Soem "gaming" keyboard? Programmable? Do you have a $5 office supply keyboard?
Offline
I don't understand the question. Desktop PC, not laptop.
What kind of keyboard is this? Soem "gaming" keyboard? Programmable? Do you have a $5 office supply keyboard?
Cheap temporary "gaming" keyboard. And yes the problem is the keyboard. I switched to another keyboard and everything works fine. Too bad Linux doesn't have magic drivers like Windows that make the first temporary keyboard work. I think that's solved. Thanks for your help!
Last edited by armorclub (2025-03-16 09:21:31)
Offline