Keyboard refuses to cooparate during boot

I switched keyboard from a TKL wired to 75% wireless (connected via the usb connector thingy), and now the keyboard does not allow me to enter TTY during launch.

The problem is a little weird: the keyboard works in the boot menu, I can select what system to launch just fine, but then it’s like the keyboard is disabled, or that the F1-4 keys do not work. I changed the layout in the /etc/default/keyboard to 82 key mode, but it did not help. But even if I plug in the old keyboard and open TTY, the new keyboard kinda goes crazy: I can type in the username just fine to login, but once I get into the password line it’s like the keyboard writes a bunch of gibberish @@@!@!@ for some time and then it stops. At that point, using the old keyboard does not work either, and so I have to restart the PC and finalize the login process using the old keyboard, and only use the new one once everything is up and running.

I’ve found this topic: [SOLVED] How to use a Bluetooth Keyboard in the Boot manuel - #8 by schawarmaliebe but it’s not that helpful. The /etc/bluetooth/main.conf setting is correct, and the bluetoothctl does not work - I can run it, I see the “Waiting to connect…” prompt but it goes nowhere - it’s been stuck on that for 40 minutes already.

One thing I’ve found weird is the output of the lsusb command:


It says Apple Aluminum Keyboard, which definitely is not the kind of keyboard I’m using - I think it should be another 2.4G Wireless Receiver, as both my keyboard and mice are from the same company and each of them have a separate receiver

EDIT: missing inxi

System:
  Kernel: 6.12.4-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 14.2.1
    clocksource: tsc avail: hpet,acpi_pm
    parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
    root=UUID=0eaf39bc-37d0-4390-9b01-431018847fbd rw rootflags=subvol=@
    quiet resume=UUID=3b4f0e3a-8376-47c9-9984-7fd88b70a902 loglevel=3 ibt=off
  Desktop: Sway v: 0.4 with: waybar tools: swayidle avail: swaylock vt: 2
    lm: greetd Distro: Garuda base: Arch Linux
Machine:
  Type: Desktop Mobo: ASRock model: B460M Pro4 serial: <superuser required>
    uuid: <superuser required> UEFI: American Megatrends v: L1.51
    date: 12/07/2020
CPU:
  Info: model: Intel Core i5-10500 bits: 64 type: MT MCP arch: Comet Lake
    gen: core 10 level: v3 note: check built: 2020 process: Intel 14nm family: 6
    model-id: 0xA5 (165) stepping: 3 microcode: 0xFC
  Topology: cpus: 1x dies: 1 clusters: 6 cores: 6 threads: 12 tpc: 2
    smt: enabled cache: L1: 384 KiB desc: d-6x32 KiB; i-6x32 KiB L2: 1.5 MiB
    desc: 6x256 KiB L3: 12 MiB desc: 1x12 MiB
  Speed (MHz): avg: 4500 min/max: 800/4500 scaling: driver: intel_cpufreq
    governor: performance cores: 1: 4500 2: 4500 3: 4500 4: 4500 5: 4500 6: 4500
    7: 4500 8: 4500 9: 4500 10: 4500 11: 4500 12: 4500 bogomips: 74399
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Vulnerabilities: <filter>
Graphics:
  Device-1: NVIDIA GA106 [GeForce RTX 3060 Lite Hash Rate] driver: nvidia
    v: 565.77 alternate: nouveau,nvidia_drm non-free: 550.xx+ status: current
    (as of 2024-09; EOL~2026-12-xx) arch: Ampere code: GAxxx
    process: TSMC n7 (7nm) built: 2020-2023 pcie: gen: 1 speed: 2.5 GT/s
    lanes: 16 link-max: gen: 4 speed: 16 GT/s ports: active: none
    off: HDMI-A-1 empty: DP-1,DP-2,DP-3 bus-ID: 01:00.0 chip-ID: 10de:2504
    class-ID: 0300
  Device-2: Generic NexiGo N660P FHD Webcam driver: snd-usb-audio,uvcvideo
    type: USB rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-8:6
    chip-ID: 660a:3443 class-ID: 0102 serial: <filter>
  Display: wayland server: Xwayland v: 24.1.4 compositor: Sway v: 0.4
    driver: gpu: nvidia,nvidia-nvswitch display-ID: 1
  Monitor-1: HDMI-A-1 model: Philips PHL 241V8 serial: <filter> built: 2021
    res: 1920x1080 hz: 60 dpi: 93 gamma: 1.2 scale: 1
    size: 527x296mm (20.75x11.65") diag: 604mm (23.8") ratio: 16:9 modes:
    max: 1920x1080 min: 640x480
  API: EGL v: 1.5 hw: drv: nvidia platforms: device: 0 drv: nvidia gbm:
    drv: nvidia surfaceless: drv: nvidia wayland: drv: nvidia x11: drv: nvidia
  API: OpenGL v: 4.6.0 vendor: nvidia v: 565.77 glx-v: 1.4
    direct-render: yes renderer: NVIDIA GeForce RTX 3060/PCIe/SSE2
    memory: 11.72 GiB
  API: Vulkan v: 1.4.303 layers: 5 device: 0 type: discrete-gpu
    name: NVIDIA GeForce RTX 3060 driver: N/A device-ID: 10de:2504
    surfaces: xcb,xlib,wayland
Audio:
  Device-1: Intel Comet Lake PCH-V cAVS vendor: ASRock driver: snd_hda_intel
    v: kernel alternate: snd_soc_avs,snd_sof_pci_intel_cnl bus-ID: 00:1f.3
    chip-ID: 8086:a3f0 class-ID: 0403
  Device-2: NVIDIA GA106 High Definition Audio driver: snd_hda_intel
    v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 16 link-max: gen: 4
    speed: 16 GT/s bus-ID: 01:00.1 chip-ID: 10de:228e class-ID: 0403
  Device-3: Creative Pebble V3 driver: hid-generic,snd-usb-audio,usbhid
    type: USB rev: 1.1 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-4.4:7
    chip-ID: 041e:3272 class-ID: 0300 serial: <filter>
  Device-4: Generic NexiGo N660P FHD Webcam driver: snd-usb-audio,uvcvideo
    type: USB rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-8:6
    chip-ID: 660a:3443 class-ID: 0102 serial: <filter>
  API: ALSA v: k6.12.4-zen1-1-zen status: kernel-api with: aoss
    type: oss-emulator tools: alsactl,alsamixer,amixer
  Server-1: sndiod v: N/A status: off tools: aucat,midicat,sndioctl
  Server-2: PipeWire v: 1.2.7 status: active with: 1: pipewire-pulse
    status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
    4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Network:
  Device-1: Intel Ethernet I219-V vendor: ASRock driver: e1000e v: kernel
    port: N/A bus-ID: 00:1f.6 chip-ID: 8086:0d55 class-ID: 0200
  IF: eno1 state: up speed: 1000 Mbps duplex: full mac: <filter>
  Info: services: NetworkManager, smbd, systemd-timesyncd
Drives:
  Local Storage: total: 1.14 TiB used: 80.76 GiB (6.9%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Kingston model: SNVS1000GB
    size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s
    lanes: 4 tech: SSD serial: <filter> fw-rev: S8442101 temp: 30.9 C
    scheme: GPT
  ID-2: /dev/sda maj-min: 8:0 vendor: TeamGroup model: T253256GB
    size: 238.47 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
    tech: SSD serial: <filter> fw-rev: 18B9 scheme: GPT
Partition:
  ID-1: / raw-size: 205.47 GiB size: 205.47 GiB (100.00%)
    used: 27.26 GiB (13.3%) fs: btrfs dev: /dev/sda2 maj-min: 8:2
  ID-2: /boot/efi raw-size: 1024 MiB size: 1022 MiB (99.80%)
    used: 584 KiB (0.1%) fs: vfat dev: /dev/sda3 maj-min: 8:3
  ID-3: /home raw-size: 931.51 GiB size: 931.51 GiB (100.00%)
    used: 53.5 GiB (5.7%) fs: btrfs dev: /dev/nvme0n1p1 maj-min: 259:1
  ID-4: /var/log raw-size: 205.47 GiB size: 205.47 GiB (100.00%)
    used: 27.26 GiB (13.3%) fs: btrfs dev: /dev/sda2 maj-min: 8:2
  ID-5: /var/tmp raw-size: 205.47 GiB size: 205.47 GiB (100.00%)
    used: 27.26 GiB (13.3%) fs: btrfs dev: /dev/sda2 maj-min: 8:2
Swap:
  Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default) zswap: no
  ID-1: swap-1 type: zram size: 15.54 GiB used: 0 KiB (0.0%) priority: 100
    comp: zstd avail: lzo-rle,lzo,lz4,lz4hc,deflate,842 max-streams: 12
    dev: /dev/zram0
  ID-2: swap-2 type: partition size: 32 GiB used: 0 KiB (0.0%) priority: -2
    dev: /dev/sda1 maj-min: 8:1
Sensors:
  System Temperatures: cpu: 35.0 C mobo: N/A
  Fan Speeds (rpm): N/A
Info:
  Memory: total: 16 GiB available: 15.54 GiB used: 3.9 GiB (25.1%)
  Processes: 306 Power: uptime: 2h 30m states: freeze,mem,disk suspend: deep
    avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
    suspend, test_resume image: 6.16 GiB services: upowerd Init: systemd
    v: 257 default: graphical tool: systemctl
  Packages: pm: pacman pkgs: 1419 libs: 493 tools: pacseek,paru Compilers:
    gcc: 14.2.1 Shell: garuda-inxi default: fish v: 3.7.1 running-in: foot
    inxi: 3.3.36
Garuda (2.6.26-1):
  System install date:     2024-11-14
  Last full system update: 2024-12-14
  Is partially upgraded:   No
  Relevant software:       snapper NetworkManager dracut nvidia-dkms
  Windows dual boot:       No/Undetected
  Failed units:            greetd.service 

Maybe the Sway maintainer can fix it @BluishHumility :slight_smile:

Perhaps try setting your bios to ignore keyboard errors during boot. Not a fix, but usually the keyboard isn’t required during boot. At least that way you will only rarely need to juggle keyboards.

You should also check your logs for errors during boot up.

1 Like

Is it a Keycron keyboard? See if this helps:


With Nvidia proprietary drivers, you will need to enable early kernel module loading and add the --unsupported-gpu flag to the sway command in /etc/greetd/config.toml. Then, create a desktop file for launching the session and add the --unsupported-gpu flag there as well.

This article describes how to set it up: Install Nvidia Drivers on Garuda Sway | Garuda Linux wiki

3 Likes

Thanks! It’s not Keychron keyboard (it’s Endorfy one), but the fix is kind of working. Only kind of, as I can only make the fix for the current session. The command to make it permanent doesn’t work for me. Any idea why?

sudo: update-initramfs: command not found

Or at least, it didn’t work completely until I enabled Early Module Loading. Not sure why that would help (the update-initramfs command still does not work), but I managed to enter TTY and login without plugging in the old keyboard, so there’s a win already.

Now I added the flags and created a new file and everything’s working. Thanks a lot!

Ah, sorry I missed that one. That command is not appropriate for Garuda (the article was written for another distro). In our case, you can rebuild the initramfs with this dracut script:

sudo dracut-rebuild

If you were following along in that wiki article, there is a sudo dracut-rebuild in there for adding the Nvidia modules to the initramfs, so that one likely took care of it!

Nice. I thought I’d have to run it again and add the

**-c -k all**

to the rebuild command, but since it’s working I’m just going to leave it as it is. Thanks again!

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.