abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 16:22 | Nová verze

Byl vydán Mozilla Firefox 77.0. Přehled novinek v poznámkách k vydání a na stránce věnované vývojářům. Zmínit lze novou stránku "about:certificate". Řešeny jsou také bezpečnostní chyby. Nejnovější Firefox je již k dispozici také na Flathubu.

Ladislav Hagara | Komentářů: 0
dnes 07:00 | Zajímavý článek

Raphaël Hertzog oznámil aktualizaci The Debian Administrator's Handbooku pro Debian 10 Buster. Vedle papírové verze a ebooku je k dispozici také online.

Ladislav Hagara | Komentářů: 0
včera 23:33 | IT novinky

Poslanecká sněmovna bude projednávat vládní návrh novely zákona č. 289/2005 Sb., o Vojenském zpravodajství, který by právě Vojenskému zpravodajství dal možnost sledovat síťový provoz a provádět aktivní zásahy v kyberprostoru. Okolnostmi předložení novely a kontroverzí v jejím obsahu rozebírá např. Jan Cibulka na iRozhlasu, a to včetně kritizované nedostatečné kontroly.

Fluttershy, yay! | Komentářů: 2
včera 22:00 | Nová verze

Byla vydána verze 2.27.0 distribuovaného systému správy verzí Git. Přispělo 71 vývojářů, z toho 19 nových. Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
včera 16:22 | Upozornění

V rámci projektu ADAM (Advanced DNS Analytics and Measurements) uvádí Laboratoře CZ.NIC ve spolupráci s CSIRT.CZ do produkčního provozu nástroj DNS crawler. Záměrem je periodicky procházet všechny domény 2. úrovně pod TLD .cz, získávat o nich různá veřejně dostupná data a ta pak dále zpracovávat. I když to jeho jméno přímo nenapovídá, DNS crawler bude kromě sběru dat z DNS také komunikovat s webovým a e-mailovým serverem každé domény.

Ladislav Hagara | Komentářů: 5
včera 07:00 | Nová verze

Po 9 týdnech vývoje od vydání Linuxu 5.6 oznámil Linus Torvalds vydání Linuxu 5.7 (LKML). Přehled nových vlastností a vylepšení na stránce Linux Kernel Newbies. Kódové jméno Linuxu 5.7 zůstává Kleptomaniac Octopus.

Ladislav Hagara | Komentářů: 2
včera 00:22 | Komunita

Byl aktualizován styl zápisu zdrojových kódů Linuxu. Maximální počet znaků (sloupců) na řádek byl zvýšen z 80 na 100. Preferováno ale zůstává 80 znaků [reddit].

Ladislav Hagara | Komentářů: 22
31.5. 23:44 | Komunita

Vývojáři postmarketOS (GitLab) hodnotí tři roky vývoje tohoto v květnu 2017 představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky.

Ladislav Hagara | Komentářů: 26
30.5. 01:00 | Nová verze

Po více než pěti měsících od vydání verze 3.11.0 byla vydána nová stabilní verze 3.12.0, tj. první z nové řady 3.12, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Z novinek lze zmínit počáteční podporu architektury mips64 (big endian) a programovacího jazyka D.

Ladislav Hagara | Komentářů: 0
29.5. 23:00 | Komunita

Coffee Run je další krátký open source film od Blender Animation Studia. Vše o filmu na Blender Cloudu.

Ladislav Hagara | Komentářů: 7
Používáte některé open-source řešení [protokol] pro šifrovaný instant messaging?
 (43%)
 (14%)
 (4%)
 (12%)
 (6%)
 (4%)
 (14%)
 (16%)
Celkem 49 hlasů
 Komentářů: 0
Rozcestník
Nástroje

CM Storm QuickFire Rapid

Technické parametry

„tenkeyless“ mechanická klávesnice založená na prototypu od Costaru

  • běžné rozložení s 87 (ANSI), 88 (ISO) nebo 91 (JIS) klávesami, pouze na místě Menu je Fn (nevrací žádný kód) pro přístup k „multimediálním“ klávesám (Fn+F5-F8 ovládá přehrávač, Fn+F9 (de)aktivuje klávesu Win, Fn+F10-F12 ovládá hlasitost)
  • spínače Cherry MX (Black/Blue/Brown/Red, výjimečně Green aj.) upevněné plátem; stabilizátory Costar; běžné tenké OEM klávesy z ABS
  • 1kHz polling rate
  • NKRO přes PS/2, 6KRO přes USB
  • odpojitelný opletený USB kabel (miniUSB)

Součástí balení je několik barevných kláves na výměnu a plastová klipsna pro sejmutí kláves ze spínačů (doporučuji používat (vyrobit si) spíše kovovou z kusu drátu).

Identifikace pod Linuxem

výchozí firmware

$ lsusb -v
Bus 001 Device 008: ID 2516:0004
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x2516
  idProduct          0x0004
  bcdDevice            0.01
  iManufacturer           1 CM Storm
  iProduct                2 QuickFire Rapid keyboard
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           59
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      1 Keyboard
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      62
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      2 Mouse
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength     166
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               1
Device Status:     0x0000
  (Bus Powered)

Frosty Flake s výchozím firmwarem od Bathroom Epiphanies:

$ lsusb -v
Bus 001 Device 012: ID 16c0:047d Van Ooijen Technische Informatica Teensy Keyboard+Debug
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        32
  idVendor           0x16c0 Van Ooijen Technische Informatica
  idProduct          0x047d Teensy Keyboard+Debug
  bcdDevice            1.00
  iManufacturer           1 Bathroom Epiphanies, Costar Keyboard -
  iProduct                2 CM Storm Quick Fire Rapid
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           59
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xc0
      Self Powered
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      1 Keyboard
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      63
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 No Subclass
      bInterfaceProtocol      0 None
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      21
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0020  1x 32 bytes
        bInterval               1
Device Status:     0x0000
  (Bus Powered)

Frosty Flake s Easy AVR USB Keyboard Firmware:

$ lsusb -v
Bus 003 Device 034: ID 03eb:20ff Atmel Corp. 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x03eb Atmel Corp.
  idProduct          0x20ff 
  bcdDevice            0.01
  iManufacturer           0 
  iProduct                1 EasyAVR Frosty Flake
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           84
    bNumInterfaces          3
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      1 Keyboard
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      63
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0012  1x 18 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      2 Mouse
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      58
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0003  1x 3 bytes
        bInterval               5
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      0 No Subclass
      bInterfaceProtocol      0 None
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      27
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0002  1x 2 bytes
        bInterval               8
Device Status:     0x0000
  (Bus Powered)

Postup zprovoznění pod Linuxem

Zapojit a používat. Kódy „multimediálních“ kláves jsou standardní a v X.Org korektně rozpoznávané.

Řadič je možné vyměnit za programovatelný od Bathroom Epiphanies (ATmega32U2). Nepodporuje sice PS/2, ale na druhou stranu si do něj můžete nahrát firmware s vlastním rozložením kláves a řadou dalších funkcí. Mezi populární varianty patří corecon a Easy AVR USB Firmware.

Abychom mohli vlastní firmware do Frosty Flake nahrát, je potřeba magnet (pro aktivaci bootloaderu, pokud na to nemáme vyhrazenou klávesovou zkratku na QFR) a dfu-programmer. Při přejíždění řadiče magnetem sledujeme dmesg (např. pomocí watch -n 1 "dmesg | tail -24"). Až se řadič přepne do kýženého režimu, firmware vyměníme příkazy (s adekvátními oprávněními, příp. viz sudo):

$ dfu-programmer atmega32u2 erase
$ dfu-programmer atmega32u2 flash soubor.hex
$ dfu-programmer atmega32u2 start

Poznámka

De facto standard mezi 80% klávesnicemi; takové levnější Filco MJ2 (na úkor kvality pájení/PCB). Vynikající kompatibilita rozložení se sadami kláves třetích stran (mj. díky uniformním 1.25x modifikátorům kolem mezerníku).

Varianta QFR-i má řadič (nějaký ARM) přímo na PCB, tedy nevyměnitelný.

Související dokumenty

Costar replacement controllers (externí dokument)
přehled informací o Frosty Flake apod.

Dokument vytvořil: Fluttershy, yay!, 5.9.2014 15:18 | Poslední úprava: Fluttershy, yay!, 11.7.2015 22:37 | Historie změn | Zobrazeno: 354×

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.