Pasigaminau Ergodox klaviatūrą

:ergodox: :keyboards: :diy:

Prieš kelis metus įsigijau nuostabią klaviatūrą - Ultimate Hacking Keyboard. Tai buvo mano pirmoji dviejų dalių (split) klaviatūra. Esu ja labai patenkintas iki šiol, nes jos ergonominis dizainas padėjo atsikratyti riešų skausmų. O galimybė programuoti visus mygtukus didino produktyvumą. Tačiau ilgiau dirbdamas pastebėjau, kad kai kurių mygtukų negaliu fiziškai pasiekti neatkeldamas riešų. Dėl to kai kurie mygtukai yra paprasčiausiai nenaudojami. Kitas klaviatūros variantas kurį tuo metu svarsčiau buvo Ergodox. Europoje neradau kas ja prekiauja, o dėl rekomendacijų galiausiai pasirinkau UHK.

Ergodox iš galvos neišėjo dėl dviejų dalyjų:

  1. Thumb clusters vadinamų mygtukų esančių po nykščiais. UHK tokius dar tik bando pagamint ir tai bus tik kairiai rankai.
  2. Vertikaliai tiesaus mygtukų išdėstymo, kuris yra ergonomiškesnis.

Būtent dėl šių dviejų dalykų maniau kad darbas su klaviatūra teoriškai gali būti patogesnis. T.y. galėsiu patogiau pasiekti daugiau mygtukų neatkeldamas rankų. Žinoma, ne mažiau domino ir pats klaviatūros konstravimas, komponentų atrinkimas ir QMK firmware’o konfigūravimas, kuris naudojamas ir Ergodox.

Komponentai

Ergodox, kaip ir UHK yra atviro kodo įrenginiai. Tai reiškia, kad visi brėžiniai ir programinė įranga yra prienama. UHK šiuo atveju šiek tiek atsilieka, nes bendruomenė yra daug mažesnė palyginus su Ergodox. UHK atvirumas labiau duoda tai, kad bankrutavus gamintojui bus galima kažkaip pasigaminti dalis klaviatūrai sugedus. O tuo tarpu Ergodox jau yra pilna gamintojų, kurie gamina atskiras dalis. Tad niekas netrukdo susipirkti dalis ir pasigaminti klaviatūrą pačiam. Taip ir padariau.

Komponentai, kurių reikėjo:

  • 80€ PCB plokštė su visa elektronika. Čia tiesiog pasiėmiau jau sulituotą plokštę su visa elektronika ir laidais iš vieno gamintojo. Patingėjau rinktis po vieną komponentą iš AliExpress ir laukti kol kiekvieną jų atsiųs arba ne. Teoriškai galima čia apsisukti dvigubai pigiau už maždaug 40-50€. Kadangi viskas neatkeliavo taip greit, kaip tikėjausi, tai čia prašoviau.
  • 28€ Kailh Box White switch’ai. Prieš tai nusipirkau testerį su skirtingais switch’ais (~10 EUR) ir išsirinkau šiuos. Rinkausi tarp Kailh Jade ir White. Manau abiejais būčiau patenkintas.
  • 0€ Korpusas. Čia apsisukau pigiausiai - atsispausdinau su 3D spausdintuvu. Tiksliau man jį atspausdino, nes maniškis spausdintuvas per mažų gabaritų. Modelis štai šis. Korpusų kainos įvairios - nuo 20€ už akrilą iki 50 ar daugiau už medinius, su riešų atramomis ir t.t.
  • 30€ mygtukai. Čia daugiausiai teko pavargti dėl dviejų dalykų. Pirma - skirtingi mygtukų profiliai. Profilis apibrėžia ar skirtingose eilutėse esantys mygtukai skiriasi ir kaip skiriasi. UHK atkeliauja su OEM profiliu, kuris leidžia mygtukus lengviau pasiekti. Daugiausai Ergodox skirtų rinkinių teko matyti su DSA profiliu, kuriame visi mygtukai yra vienodi. Kitas dalykas
    • šioje klaviatūroje 1.5r ir 2r ilgių mygtukų yra daugiau, nei įprastose klaviatūrose. Tai reiškia, kad ir kokį ne Ergodox skirtą mygtukų rinkinį beimtum - vis tiek kažko truks. Galiausiai išsirinkau Ergodox skirtą DSA rinkinį už brangiai. Paskui Aliexpress radau mažos klaviatūros Planck rinkinį su mano mėgiamu OEM profiliu. Planck sudaro tik 60 mygtukų (Ergodox 76), bet jie visi gali būti panaudojami Ergodox (pvz. iš kitų rinkinių tokių mygtukų kaip Space ar Shift į Ergodox neįkiši). Parašiau pardavėjui ir jis sutiko pridėti trūkstamus mygtukus po 0.5$ už vienetą. Pirmiausiai atkeliavo DSA ir iškart su jais jaučiau diskomfortą - skaičių mygtukai paprasčiausiai buvo per toli. Užsidėjus OEM situacija iškart pagerėjo - klaviatūra tapo patogesnė. Galbūt čia įpratimas, taip pat patogumą įtakoja ir rankų dydis, bet DSA mygtukus grąžinau pardavėjui.
  • 20€ Plieninės plokštės switch’ų tvirtinimui. Šis dalykas nėra privalomas, nes su atspausdintu korpusu taip spausdinasi ir plokštės. Bet aš norėjau, kad klaviatūra būtų tvirtesnė ir turėtų daugiau svorio. Tai įtakoja stabilumą. Taip pat jis man leistų ateityje nusipirkti bet kokį kitą korpusą ir perkelti visus vidurius neperlituojant switch’ų.
  • Kita: Varžtai, į korpusą įterpiami brass insert’ai irgi kažkiek kainavo, bet tai jau smulkmė. Taip pat atsispausdinau riešų atramas. Na ir dar už siuntimą sumokėjau 20€.

Viso man klaviatūra kainavo 180€. Kainą įmanoma sumažint iki kokių 130€.

Programinė įranga

Ergodox naudoja QMK programinę įrangą, kuri leidžia programuoti kiekvieną mygtuką. UHK veikia taip pat, tik jų programinė įranga skirta tik UHK. O QMK naudoja krūva kitų klaviatūrų ir be Ergodox. Pirmas pliusas UHK pusėj - pakeitimus išdėstyme galima sukelti iškart, kai QMK reikia sukompiliuoti ir flash’inti. Pats QMK neturi vartotojo sąsajos (skirtingai, nei UHK), bet yra bent keli internetiniai puslapiai, kuriuose galima vizualiai sudėlioti išdėstymą. Jei rimtai, tai daug problemų šitai nesukelia, nes kartą sukonfigūravus, dažnai tie pakeitimai nėra daromi.

Kitas dalykas su kuriuo susidūriau - ne visos kombinacijos, kurios palaikomos UHK yra palaikomos tuose vizualiuose QMK konfigūravimo puslapiuose. Bet QMK yra atviro kodo ir turi numatytas vietas, kur vartotojas pats gali perrašyti veikimą tam tikais atvejais. Pvz. čia nurodžiau, kad paspaudus Layer1+D suveiktų kaip Alt+Tab, bet Alt būtų atleistas tik tada, kai atleidžiamas Layer1.

bool process_record_user(uint16_t keycode, keyrecord_t *record) {
  switch (keycode) {
    case LT(1,KC_NO):
      if (!record->event.pressed) {
          unregister_code(KC_LALT);
      }
      break;
    case KC_D:
      if (IS_LAYER_ON(1)) {
        if (record->event.pressed) {
          register_code(KC_LALT);
          tap_code(KC_TAB);
          return false;
        }
      }
      break;
  }
  return true;
}

Tad, jei kas nors ir nėra palaikoma, galima padaryti, kad būtų palaikoma. Kai rašiau šį kodo gabalą iš vienos pusės jaučiausi smagiai, iš kitos - galvojau “Ką aš čia veikiu? Programuoju, kad šitas mygtukas veiktų būtent taip, kaip noriu? Ne per daug čia? :-D”. Bet visgi labiau jaučiausi kietai :-)

Patogumas

Kad galėčiau nesunkiai naudoti abi klaviatūras susikonfigūravau Ergodox, kad palaikytų tokį patį išdėstymą kaip ir UHK. Jį galit pamatyti čia. Pirmas įspūdis - per daug mygtukų. Ir jų yra net 11 daugiau, nei UHK. Turint omeny, kad UHK juos ne visus naudojau, tai jų čia gerokai per daug! (bent jau kol kas). Dalį jų sunku pasiekti ir nemanau, kad naudosiu kažkam kitam, nei spec. funkcijom, kaip pvz. keisti garso nustatymus. Prie mygtukų esančių po nykščiais reikia laiko priprasti, bet labai patogus dalykas. Iškart keletą funkcijų nukopijavau ir į UHK nustatymus. Vertikaliai-tiesus išdėstymas irgi atrodo visai patogus, tačiau dar reikia laiko priprasti. Manau, kad Ergodox yra brangus dizainas, dėl mygtukų kiekio. Turint omeny, kad jų visų nenaudosiu. Ateity pasigaminsiu kokią mažesnę klaviatūrą, kuri būtinai bus split, bet turės tik tuos mygtukus, kurių man reikia. Apibendrinus, smagus rezultatas ir mielai panaudosiu kurį laiką. Nežinau, kuri klaviatūra bus mano pagrindinė. Net jei kada nors teks grįžti į ofisą, tai viena keliaus ten, o kita liks namie :-)