pátek 19. prosince 2025

Connect IT CKB-50-53-CS - DaKai Consumer Control

evtest

Available devices:
/dev/input/event0:    Lid Switch
/dev/input/event1:    Power Button
/dev/input/event2:    Power Button
/dev/input/event3:    AT Translated Set 2 keyboard
/dev/input/event4:    DaKai
/dev/input/event5:    Video Bus
/dev/input/event6:    DaKai Consumer Control
/dev/input/event7:    DaKai System Control
/dev/input/event8:    DaKai Keyboard
/dev/input/event9:    Wireless dongle
/dev/input/event10:    Wireless dongle
/dev/input/event11:    SynPS/2 Synaptics TouchPad
/dev/input/event12:    Toshiba input device
/dev/input/event13:    USB 2.0 Camera: USB 2.0 Camera
/dev/input/event14:    HDA Intel Mic
/dev/input/event15:    HDA Intel Headphone
/dev/input/event16:    HDA Intel HDMI/DP,pcm=3
/dev/input/event17:    XP-Pen Pen
/dev/input/event18:    XP-Pen Mouse
/dev/input/event19:    XP-Pen Eraser
Select the device event number [0-19]: 6
Input driver version is 1.0.1
Input device ID: bus 0x3 vendor 0xe6a product 0x2c0 version 0x111
Input device name: "DaKai Consumer Control"
Supported events:
  Event type 0 (EV_SYN)
  Event type 1 (EV_KEY)
    Event code 1 (KEY_ESC)
    Event code 28 (KEY_ENTER)
    Event code 74 (KEY_KPMINUS)
    Event code 78 (KEY_KPPLUS)
    Event code 103 (KEY_UP)
    Event code 105 (KEY_LEFT)
    Event code 106 (KEY_RIGHT)
    Event code 108 (KEY_DOWN)
    Event code 110 (KEY_INSERT)
    Event code 111 (KEY_DELETE)
    Event code 113 (KEY_MUTE)
    Event code 114 (KEY_VOLUMEDOWN)
    Event code 115 (KEY_VOLUMEUP)
    Event code 116 (KEY_POWER)
    Event code 119 (KEY_PAUSE)
    Event code 120 (KEY_SCALE)
    Event code 128 (KEY_STOP)
    Event code 130 (KEY_PROPS)
    Event code 131 (KEY_UNDO)
    Event code 133 (KEY_COPY)
    Event code 134 (KEY_OPEN)
    Event code 135 (KEY_PASTE)
    Event code 136 (KEY_FIND)
    Event code 137 (KEY_CUT)
    Event code 138 (KEY_HELP)
    Event code 139 (KEY_MENU)
    Event code 140 (KEY_CALC)
    Event code 142 (KEY_SLEEP)
    Event code 144 (KEY_FILE)
    Event code 150 (KEY_WWW)
    Event code 152 (KEY_SCREENLOCK)
    Event code 155 (KEY_MAIL)
    Event code 156 (KEY_BOOKMARKS)
    Event code 158 (KEY_BACK)
    Event code 159 (KEY_FORWARD)
    Event code 161 (KEY_EJECTCD)
    Event code 163 (KEY_NEXTSONG)
    Event code 164 (KEY_PLAYPAUSE)
    Event code 165 (KEY_PREVIOUSSONG)
    Event code 166 (KEY_STOPCD)
    Event code 167 (KEY_RECORD)
    Event code 168 (KEY_REWIND)
    Event code 169 (KEY_PHONE)
    Event code 171 (KEY_CONFIG)
    Event code 172 (KEY_HOMEPAGE)
    Event code 173 (KEY_REFRESH)
    Event code 174 (KEY_EXIT)
    Event code 176 (KEY_EDIT)
    Event code 177 (KEY_SCROLLUP)
    Event code 178 (KEY_SCROLLDOWN)
    Event code 181 (KEY_NEW)
    Event code 182 (KEY_REDO)
    Event code 204 (KEY_DASHBOARD)
    Event code 206 (KEY_CLOSE)
    Event code 207 (KEY_PLAY)
    Event code 208 (KEY_FASTFORWARD)
    Event code 209 (KEY_BASSBOOST)
    Event code 210 (KEY_PRINT)
    Event code 212 (KEY_CAMERA)
    Event code 216 (KEY_CHAT)
    Event code 217 (KEY_SEARCH)
    Event code 219 (KEY_FINANCE)
    Event code 223 (KEY_CANCEL)
    Event code 224 (KEY_BRIGHTNESSDOWN)
    Event code 225 (KEY_BRIGHTNESSUP)
    Event code 228 (KEY_KBDILLUMTOGGLE)
    Event code 229 (KEY_KBDILLUMDOWN)
    Event code 230 (KEY_KBDILLUMUP)
    Event code 231 (KEY_SEND)
    Event code 232 (KEY_REPLY)
    Event code 233 (KEY_FORWARDMAIL)
    Event code 234 (KEY_SAVE)
    Event code 235 (KEY_DOCUMENTS)
    Event code 240 (KEY_UNKNOWN)
    Event code 241 (KEY_VIDEO_NEXT)
    Event code 244 (KEY_BRIGHTNESS_ZERO)
    Event code 256 (BTN_0)
    Event code 353 (KEY_SELECT)
    Event code 354 (KEY_GOTO)
    Event code 358 (KEY_INFO)
    Event code 362 (KEY_PROGRAM)
    Event code 366 (KEY_PVR)
    Event code 370 (KEY_SUBTITLE)
    Event code 372 (KEY_ZOOM)
    Event code 374 (KEY_KEYBOARD)
    Event code 375 (KEY_SCREEN)
    Event code 376 (KEY_PC)
    Event code 377 (KEY_TV)
    Event code 378 (KEY_TV2)
    Event code 379 (KEY_VCR)
    Event code 380 (KEY_VCR2)
    Event code 381 (KEY_SAT)
    Event code 383 (KEY_CD)
    Event code 384 (KEY_TAPE)
    Event code 386 (KEY_TUNER)
    Event code 387 (KEY_PLAYER)
    Event code 389 (KEY_DVD)
    Event code 392 (KEY_AUDIO)
    Event code 393 (KEY_VIDEO)
    Event code 396 (KEY_MEMO)
    Event code 397 (KEY_CALENDAR)
    Event code 398 (KEY_RED)
    Event code 399 (KEY_GREEN)
    Event code 400 (KEY_YELLOW)
    Event code 401 (KEY_BLUE)
    Event code 402 (KEY_CHANNELUP)
    Event code 403 (KEY_CHANNELDOWN)
    Event code 405 (KEY_LAST)
    Event code 407 (KEY_NEXT)
    Event code 408 (KEY_RESTART)
    Event code 409 (KEY_SLOW)
    Event code 410 (KEY_SHUFFLE)
    Event code 412 (KEY_PREVIOUS)
    Event code 416 (KEY_VIDEOPHONE)
    Event code 417 (KEY_GAMES)
    Event code 418 (KEY_ZOOMIN)
    Event code 419 (KEY_ZOOMOUT)
    Event code 420 (KEY_ZOOMRESET)
    Event code 421 (KEY_WORDPROCESSOR)
    Event code 422 (KEY_EDITOR)
    Event code 423 (KEY_SPREADSHEET)
    Event code 424 (KEY_GRAPHICSEDITOR)
    Event code 425 (KEY_PRESENTATION)
    Event code 426 (KEY_DATABASE)
    Event code 427 (KEY_NEWS)
    Event code 428 (KEY_VOICEMAIL)
    Event code 429 (KEY_ADDRESSBOOK)
    Event code 430 (KEY_MESSENGER)
    Event code 431 (KEY_DISPLAYTOGGLE)
    Event code 432 (KEY_SPELLCHECK)
    Event code 433 (KEY_LOGOFF)
    Event code 439 (KEY_MEDIA_REPEAT)
    Event code 442 (KEY_IMAGES)
    Event code 576 (KEY_BUTTONCONFIG)
    Event code 577 (KEY_TASKMANAGER)
    Event code 578 (KEY_JOURNAL)
    Event code 579 (KEY_CONTROLPANEL)
    Event code 580 (KEY_APPSELECT)
    Event code 581 (KEY_SCREENSAVER)
    Event code 582 (KEY_VOICECOMMAND)
    Event code 583 (KEY_ASSISTANT)
    Event code 584 (?)
    Event code 585 (?)
    Event code 586 (?)
    Event code 592 (KEY_BRIGHTNESS_MIN)
    Event code 593 (KEY_BRIGHTNESS_MAX)
    Event code 608 (KEY_KBDINPUTASSIST_PREV)
    Event code 609 (KEY_KBDINPUTASSIST_NEXT)
    Event code 610 (KEY_KBDINPUTASSIST_PREVGROUP)
    Event code 611 (KEY_KBDINPUTASSIST_NEXTGROUP)
    Event code 612 (KEY_KBDINPUTASSIST_ACCEPT)
    Event code 613 (KEY_KBDINPUTASSIST_CANCEL)


Your new keyboard (the "DaKai" one) is a typical cheap/generic wireless/USB multimedia keyboard. It splits its input into multiple separate devices:
  • /dev/input/event8: DaKai Keyboard → normal letter/number/F-keys
  • /dev/input/event6: DaKai Consumer Control → all your multimedia keys, including volume up/down/mute, play/pause, next/prev, etc.
  • /dev/input/event7: DaKai System Control → power/sleep/etc. (less relevant)
The key detail from your evtest on event6:It supports and directly reports the standard Linux key codes:
  • KEY_VOLUMEUP (115)
  • KEY_VOLUMEDOWN (114)
  • KEY_MUTE (113)
  • KEY_PLAYPAUSE (164)
  • KEY_NEXTSONG (163)
  • KEY_PREVIOUSSONG (165)
  • And many more...
This means the kernel already receives perfect, standard volume/multimedia events from the separate "Consumer Control" device. No scancode remapping (hwdb) is needed!Why volume keys don't work (but play/pause etc. do)
  • Linux Mint Cinnamon natively handles standard multimedia events (via its media-keys daemon).
  • Play/pause, next/previous (which you said F5/F7 do) work because Cinnamon fully supports those.
  • Volume up/down/mute often fail on keyboards with a separate Consumer Control device because:
    • The volume applet or PulseAudio sometimes only listens to events from the "main" keyboard device (event8 in your case).
    • Or there's a minor quirk in how the events are grabbed/processed.
This is a known issue with many generic/multimedia keyboards (Dell, Logitech, and no-name ones like DaKai) that split multimedia into a separate input.Fixes (try in order — easiest first)1. Quick Cinnamon reset (often fixes it instantly)Run these commands:
dconf reset -f /org/cinnamon/desktop/keybindings/media-keys/
killall cinnamon-settings-daemon
Then log out and back in (or reboot).This resets all built-in media key handling and forces Cinnamon to re-detect/listen to all input devices properly.2. Use Cinnamon's built-in shortcuts to "re-bind" the defaultsGo to System Settings → Keyboard → Shortcuts → Sound and Media.For each non-working one (Volume up, Volume down, Mute):
  • Click the current binding (it might show the dedicated symbol or nothing).
  • Press the actual key on your new keyboard (volume up button, etc.).
  • Cinnamon should detect it (even from the separate device) and set the binding.
Do this for the ones that don't work. It reinforces that Cinnamon listens to the Consumer Control device.3. If volume still ignored: Force PulseAudio to accept from all devicesEdit /etc/pulse/default.pa (backup first!):
sudo cp /etc/pulse/default.pa /etc/pulse/default.pa.bak
sudo nano /etc/pulse/default.pa
Find the line:
load-module module-x11-publish
Change it to:
load-module module-x11-publish display=$DISPLAY
(Or add the display=$DISPLAY part if missing.)Then restart PulseAudio:
pulseaudio -k
(Reboot if needed.)4. Last resort: Install a media key daemon that listens globally
sudo apt install playerctl
(For play/pause/next if needed, but mainly for volume.)But usually #1 or #2 fixes volume on these split-device keyboards.Your old keyboard worked perfectly because it sent volume events on the main keyboard device (merged with normal keys, using XF86 keysyms visible in xev/keycode 123).The new one sends them correctly too — just on the separate Consumer Control device, which Cinnamon sometimes needs a nudge to fully respect for volume.Try the reset in #1 first — that's fixed this exact scenario for many users with similar "DaKai" or generic wireless keyboards. If it doesn't, do #2 and report back if Cinnamon detects the key presses when setting shortcuts!

* * *

Your DaKai keyboard (a generic wireless/multimedia model) splits its functions across multiple input devices:
  • event8 ("DaKai Keyboard"): Handles normal keys (letters, F1-F12, arrows, etc.) and the volume/mute keys — it directly supports KEY_VOLUMEUP (115), KEY_VOLUMEDOWN (114), and KEY_MUTE (113).
  • event6 ("DaKai Consumer Control"): Handles other multimedia keys (play/pause, next/prev, etc.), which is why F5/F7 work fine.
The kernel receives perfect standard volume events from the main keyboard device (event8). The issue is that XFCE (unlike Cinnamon) sometimes doesn't automatically handle volume keys from certain keyboards, especially generic ones like this. * * *

xev

KeyPress event, serial 38, synthetic NO, window 0x4800001,
    root 0x259, subw 0x0, time 4114430, (172,-10), root:(483,213),
    state 0x4010, keycode 122 (keysym 0x1008ff11, XF86AudioLowerVolume), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyRelease event, serial 38, synthetic NO, window 0x4800001,
    root 0x259, subw 0x0, time 4114558, (172,-10), root:(483,213),
    state 0x4010, keycode 122 (keysym 0x1008ff11, XF86AudioLowerVolume), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyPress event, serial 38, synthetic NO, window 0x4800001,
    root 0x259, subw 0x0, time 4115326, (172,-10), root:(483,213),
    state 0x4010, keycode 123 (keysym 0x1008ff13, XF86AudioRaiseVolume), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyRelease event, serial 38, synthetic NO, window 0x4800001,
    root 0x259, subw 0x0, time 4115478, (172,-10), root:(483,213),
    state 0x4010, keycode 123 (keysym 0x1008ff13, XF86AudioRaiseVolume), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False

* * *

REMAPOVAT NEBO NE?

Na tvé nové klávesnici DaKai je situace teď mnohem lepší, než jsme mysleli!Z xev výstupu vidím přesně toto:
  • Stisk klávesy pro snížení hlasitostikeycode 122 → keysym XF86AudioLowerVolume
  • Stisk klávesy pro zvýšení hlasitostikeycode 123 → keysym XF86AudioRaiseVolume
To jsou přesně ty standardní X11 keysymy, které XFCE (a prakticky všechny desktopové prostředí) nativně rozpoznávají pro ovládání hlasitosti.Proč to tedy nefunguje?I když klávesnice posílá správné XF86 keysymy (viditelné v xev), XFCE je někdy ignoruje, protože:
  • Multimediální klávesy nejsou explicitně povolené v nastavení.
  • Chybí nebo není správně nastavený volume manager (PulseAudio plugin).
  • XFCE má defaultně některé media keys „vypnuté“, dokud je ručně nepovolíš.
Nemusíš nic remapovat přes xmodmap!
Keycode 122 a 123 jsou už správně namapované na XF86AudioLowerVolume a XF86AudioRaiseVolume – přesně jak má být. Remapování by situaci jen zhoršilo.
Co udělat – správné řešení pro XFCE
  1. Nainstaluj a nastav PulseAudio plugin (nejdůležitější krok):
    sudo apt install xfce4-pulseaudio-plugin
  2. Přidej plugin do panelu:
    • Pravý klik na panel → Panel → Přidat nové položky
    • Vyber PulseAudio Plugin (ikona reproduktoru) → Přidat
  3. Nastavení pluginu:
    • Pravý klik na ikonu reproduktoru v panelu → Vlastnosti
    • Zaškrtni: Povolit klávesové zkratky pro ovládání hlasitosti
      (v angličtině: "Enable keyboard shortcuts for volume control")
  4. Odhlásit se a přihlásit zpět (nebo restartovat počítač).
Po tomto kroku by měly klávesy pro zvýšení/snížení hlasitosti fungovat okamžitě – včetně zobrazení OSD (lišta s úrovní hlasitosti na obrazovce).Pokud by pořád nefungovalo (velmi vzácné)Pak jdi do: Nastavení → Klávesnice → Zkratky aplikací (Keyboard → Application Shortcuts)
  • Přidej novou zkratku:
    • Příkaz: xfce4-mixer nebo lepší pactl set-sink-volume @DEFAULT_SINK@ +5% (pro zvýšení)
    • Stiskni klávesu pro zvýšení hlasitosti – XFCE ji zachytí jako XF86AudioRaiseVolume
  • Totéž pro snížení: pactl set-sink-volume @DEFAULT_SINK@ -5%
Ale v 95 % případů to PulseAudio plugin vyřeší sám a bez ručního nastavování.Shrnuto: Klávesnice je v pořádku, posílá správné kódy (122 a 123 = XF86 volume), žádný xmodmap není potřeba. Stačí povolit podporu multimediálních kláves v XFCE přes PulseAudio plugin.Zkus to a napiš, jestli to zabralo – tentokrát by to mělo fungovat na 100 %!

Connect IT CKB-50-53-CS - DaKai Consumer Control

evtest Available devices: /dev/input/event0:    Lid Switch /dev/input/event1:    Power Button /dev/input/event2:    Power Button /dev/input/...

Štítky

.profile adm administrace Adobe Aho-Corasick AI akcelerace alfa transparence analýza AND any aplikace apt ar archiv asociativní pole atomicity audacity audio audio redirect autentifikace awk balíčkovací systém bash beacon beacon_hint benchmark Bézierovy křivky bezpečnost biblehub BJT blogger boolean Braessův paradox brainstorming BRE buffer buffering bufferované čtení Cache-Conrol Cloudflare code Collector Cut-off ColorManager colorpicker common compare config cookies CPU CPU pipe crop css CSS3 curl current code cut čas data loss data lost data transfer reliability datasheet datetime.strptime deb deb-systemd-helper debian debián depricated development dict dioda diody disonance doprava dpkg dpkg -S dpkg-deb drivers EBO efekt Emitter Cut-off Current eps ETag evtest exclude exec Expires extrakce jediného extrakce názvu balíčku souboru extrakce obrázků extrakce souboru .deb fflock fflush ffmpeg FIFO file read file write file_get_contents file_get_contents/file_put_contents file_put_contents filter find first_install.sh flock Fly-back dioda font-face fonty fóra formant-preserving morphing fotorezistor fread functions funkce fwrite gate gate drive GDVfs gedit gedit-common geolokace getdata Ghostscript GIO glib gnome gnome settings GNU Privacy Guard gnupg gpg gradient-background grafika grep grep -v groupadd grub grub update gs gsettings gtk gtk.css gtk+ hebrejština history hlavičky HS html html 5 https hudba hunspell charakterizace chatGPT chroot chyba ICES IGBT Image img sizes img srcset impedance implementace imshow inference inkscape inrush current install IQ jalový výkon javascript javescript jednocení seznamů js jsonData kapacita součástek klávesnice koeficient zesílení komponenty xFce komunikace se serverem koncept konfigurace kontejner korekce barev Krita KSF kvantifikátor Last-Modified lazy caching led LEFT JOIN librosa ligatury light-locker lightdm linux list log maják manuál map mapování maskování maskování hlasu maskování služby masky matplotlib Max-Age measure memory měření meta MFCC MFCC koeficienty mint Mint 21.3 Mint xFce míry modules moralizace morphologie MOSFET mount moviepy mysql náběhový proud napěťová ochrana nastavení šablony návod nel Network Error Logging NLP normalizace šedi po resize not Notifications NTFS nth-child oblasti oblékání ochrana okruhy přátel OpenVINO IR formát oprava oprava balíčku optočlen org.gnome.desktop.screensaver org.gnome.nm-applet ořezové masky OSHB otázky otázky_jazyky otázky_moralismu_řešení overlay ovladače panely parsování path pdf personifikace photorec php php 4 php 5 php 6 php 7 php 8 phpbb phpBB3 PipeWire pitch plus PN přechody pnp pole Policykit postscript práva profilování program prune průraz přeinstalování přepěťová ochrana přepolování příkazy připojení k síti připojení k wifi pseudokódd pstoedit pulse PulseAudio PWM regulátory pydub python python3 pytorch ramdisk RBE RDSon read reaktance rectifier regex regulace vstupního napětí reinstall relyability remount replace restore reverzní geolokace RIGHT JOIN rm robotický hlas role rozvržení disků pro OS linux a data databází řešení samba scan scroll sdílení sdílení souborů Sec-Fetch-Dest Sec-Fetch-Mode Sec-Fetch-Site Sec-Fetch-User Secure Shell sed Set Cookie show-manual-login show-remote-login shunt schemas schémata schottka signal morphing sink skript skupiny sledovanost sloupce slučování seznamů služby small song sort soubory soundfile spínané zdroje spínání splines split spojování správa diskových zařízení SQL ssh stabilizace napětí stahování stíny stream stream redirect string strojové učení stropové učení supplicant svg syntax systemctl systemd-logind T5 tabulka tabulky Tangentové úsečky tar témata tepelná ztráta terminologie test text-shadow themes thermal runaway time timestamp tkinter tr transformace transistor transition transpose tranzistor tranzistory ttf tuple tvorba otázek TVS typografie ubuntu účiník udiskd udisks unconfined underrun unity-greeter update usermod uživatelé va charakteristika vala věda vektorová grafika Vgs video virtual devices vocoder Vth výkon vynechání adresářů vývoj while wpa wpa_supplicant wrapovací funkce x xandr xapp-watt xargs -I xed xed-common xfdesktop xml xmp XOR Xorg Xorg Thumbnails xrandr závislosti zdánlivý výkon zdroj zenerka zenerovo napětí zip zip archiv zkratky zpomalení zpracování textu zrychlení zvuk Žalmy