some time ago i have wrote a bit about keyboards
https://hubzilla.dark-alexandr.net/display/b64.aHR0cHM6Ly9odWJ6aWxsYS5kYXJrLWFsZXhhbmRyLm5ldC9pdGVtL2EwNzFmMDFiLTNmYTEtNGUzMS1hNTRkLTc0NGU4NmZhMjBiOQso, i have near perfect #
wasd v3 keyboard with cherry mx green switches and nice pleasant pbt keycaps, only thing it lacks is opensource firmware and ability to program it from pc (it does have integrated method to program layouts and macrosses, but it is limited to keycodes available on keyboard itself, i have talked a bit with their tech support, and most probably they will not implement advanced programming in near future) also, i am using it already for some time, and erase plastic case a bit with my fingers, it started to wearing, you can see glossy shining under space button, it also does not feel nice to put finger where, and as we all know, humans are shitty greedy creatures which always want more ....
this time i decided to make myself present for new year, buy best available keyboard for my needs which currently exists in the world. I am dropped idea of buying shit from large vendors like shittech and company immediately, as they all currently have no quality at all in their so called "products" and funniest thing - more expensive and "top" items have lowest possible quality, so, nah this shit, shittech (лохитеч/лохотех on russian) can burn in hell using their shit as fuel, and i do not want to risk another ~$300-$500 just to learn what things get worsen, so i decided to buy from chinese friends, one more reason to not buy from "big" vendors - they do not have anything what suffice my needs and also does not support opensource software/firmware for sure.
what i want:
1. durable, high weight metal case
2. preferable default layout or as close as possible to it
3. ability to program non-default keycodes into layouts/macrosses
4. preferable opensource firmware (i am targeted at qmk, but at a time of investigating i have near zero knowledge what is qmk really is)
unfortunately very few keyboards in metal case is available, and very few metal cases for keyboards available also, most of it is ... let's call it special purpose devices, so, no default layout of course (
i am able to find 3 acceptable keyboards.
1. x-bows ranger k6 - ansi tkl (tkl - ten key less - no numpad).![Image/photo]()
![Image/photo]()
![Image/photo]()
layout: - default ansi layout without numpad keyboard.
case: - aluminum one piece tube
pcb: - cherry switches hotswap, soldered rgb diodes for each key, Weltrend WT59F164 controller (i did not know this during review, unfortunately)
![Image/photo]()
![Image/photo]()
![Image/photo]()
![Image/photo]()
firmware - proprietary, closed source (currently have no support from open source firmwares, see:
https://github.com/qmk/qmk_firmware/issues/11325)
software: - many keyboard features implemented in software (available only for shitos (windows playstation)), software quality is far from usable, it constantly eating a lot of cpu, to recognize keyboard it must be repluged after software gui is launched, e.t.c., e.t.c.
price: ~$160 (
https://aliexpress.ru/item/4000874401110.html?spm=a2g0o.productlist.0.0.75a532ef84yiqD&algo_pvid=6430b693-2dc0-42bb-900c-9f96f9d6fb1b&algo_expid=6430b693-2dc0-42bb-900c-9f96f9d6fb1b-3&btsid=0b8b036d16135466096442838ef4da&ws_ab_test=searchweb0_0,searchweb201602_,searchweb201603_&sku_id=10000010059490671 )
package: keyboard selling with small bag, without switches and keycaps
features: keyboard have 4 programmable layouts, one of which only works with shitos driver, without driver this layout hardcoded to default ansi, 3 additional layouts store persistent state into controller memory, so they available without driver.
doing any programming only possible via software in shitos.
note on rgb diodes for each key: on pcb like this with soldered diodes special switches is normally used, but it is prossible to modify regular cherry switches for this type of pcb
![Image/photo]()
![Image/photo]()
![Image/photo]()
![Image/photo]()
i am used 2mm drill for this
![Image/photo]()
after this simple modification, rgb backlit looks much better and brighter
![Image/photo]()
![Image/photo]()
![Image/photo]()
![Image/photo]()
![Image/photo]()
conclusion: despite what i am very disappointed with software and inability to use opensource firmware, it's overall very good keyboard, i will probably use it on shitos playstation gaming console, maybe in future i will port qmk to it...
2. ymdk melody96 - ansi/iso non-default layoutlayout: - in this keyboard designers attempt to place fullsize (including numpad) layout into smaller case ( a bit larger than tkl size case), it's result in slightly non-default layout, but usable
![Image/photo]()
![Image/photo]()
case: - it does support few cases, but since i am interested in durable metal case, my choice is - 3 parts aluminum case with separate backplate, switches plate and upper case part
![Image/photo]()
![Image/photo]()
pcb: - cherry switches hotswap, soldered rgb diodes at pcb bottom (it's usable only in case with half-transparent acrylic backplate, which is not my thing), reset button which switching controller into boot (flashing) mode, atmega32u4 compatible controller
![Image/photo]()
![Image/photo]()
![Image/photo]()
![Image/photo]()
firmware: - qmk as native firmware:
https://qmk.fm/software: - no, not required
price: ~$200 (
https://aliexpress.ru/item/1005001831581291.html?spm=a2g0o.productlist.0.0.6c881464PUSbsR&algo_pvid=f87c96ec-5871-452b-87fa-1799548d4954&algo_expid=f87c96ec-5871-452b-87fa-1799548d4954-6&btsid=0b8b035616135468257053744eb315&ws_ab_test=searchweb0_0,searchweb201602_,searchweb201603_&sku_id=12000017796486980)
package: keyboard selling without switches and keycaps
features: it will take some time to get used to compressed layout, also this make it inconvenient to work on default layout if i need to, so take layout as negative feature.
to be honest i am also little disappointed in case design, fittings look unreliable, i am also used layer of thin sealant to make sure pcb will not fall on backplate when fittings get loose
![Image/photo]()
![Image/photo]()
one more negative thing is what they decided to use same plate for both ansi/and iso layouts which lead to not very tight fitting for few switches near enter key.
i am used silicone grease to make provided stabilizers work better, as without it keys does not work properly if pressed at corners.
![Image/photo]()
![Image/photo]()
![Image/photo]()
it's probably suboptimal grease for this case, but it works fine (at least for now).
keyboard does support most of qmk features available for keyboards and it is a lot, qmk have web frontend for inexperienced users to generate firmware (but of-course this keyboard is not for inexperienced users, so i will not explain it more), for programmers it's very nice, it allow to write software for keyboard in C directly, look at my test code for example:
#include QMK_KEYBOARD_H
#define default_layer 0
#define fn_layer 15
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[default_layer] = LAYOUT(
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_DEL,
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_ENT, KC_P7, KC_P8, KC_P9, KC_PMNS,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_P4, KC_P5, KC_P6, KC_PPLS,
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(fn_layer), KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT),
[fn_layer] = LAYOUT(
TO(default_layer), TO(1), TO(2), TO(3), TO(3), TO(4), TO(5), TO(6), TO(7), TO(8), TO(9), TO(10), TO(11), TO(12), TO(13), TO(14), KC_NO, KC_NO, KC_MUTE,
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_MPLY, KC_MSTP, KC_VOLD,
KC_NO, KC_NO, KC_WH_U, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_MPRV, KC_MNXT, KC_VOLU,
KC_NO, KC_WH_L, KC_WH_D, KC_WH_R, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_VOLU,
KC_NO, KC_NO, KC_NO, KC_CUT, KC_COPY, KC_PASTE, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_VAI, RGB_MOD, KC_NO, KC_NO, KC_NO,
RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, RGB_VAD, RGB_TOG, KC_NO, KC_NO, KC_NO ),
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch(keycode)
{
default:
break;
}
return true;
}
for more advanced things qmk have api to do most stuff, program macrosses e.t.c., i dropped additional layers in example above, as qmk programming is not main topic of this post, you can learn more on official website
https://qmk.fm/conclusion: most probably i will use melody96 as my main working keyboard, for now i am sometime missing at some keys on this compressed layout, but i hope i will get used to it soon, qmk does allow me to do everything i need from keyboard.
3. id75 (idobo75) - ortholinear 5x15 layout![Image/photo]()
![Image/photo]()
layout - ortholinear 5x15 layout
case: aluminum two parts with acrylic plate attached to backplate
![Image/photo]()
pcb - cherry switches hotswap, soldered rgb diodes at pcb bottom, reset button which switching controller into boot (flashing) mode, atmega32u4 compatible controller
![Image/photo]()
firmware - qmk as native firmware:
https://qmk.fm/software - no, not required
price: ~$100 (
https://aliexpress.ru/item/4000311498726.html?spm=a2g0o.productlist.0.0.762c2beehcJA5P&algo_pvid=c0f35677-3230-4fba-9aed-948254eccabc&algo_expid=c0f35677-3230-4fba-9aed-948254eccabc-0&btsid=0b8b036316135483975447747ecfd2&ws_ab_test=searchweb0_0,searchweb201602_,searchweb201603_&sku_id=10000001290207378 )
package: keyboard selling without switches and keycaps
feature: i am very unfamiliar with this layout, or more precisely with layout absence, it's just 5x15 key rows, surprisingly i am able to use blind typing on this keyboard immediately, of course with some misses and relatively slow speed, but still, i feared what i will not able to do anything at all....
as for other features, it is also qmk so we have most qmk features for keyboards.
one thing i liked very much about this keyboard - it have tight, very ease to assemble case in which acrylic plate for backpate doing same thing as sealant which i added into melody96 case:
![Image/photo]()
, but additionally it's half transparent, so backside diodes on pcb actually can be seen, this acrylic plate shut tight pcb from the back, also front part of case used as switch fitting plate, have massive stabs as part of it so pcb can be screwed with long reliable screws, so assembled it looks and feel very reliable (which i can't say about melody96)
conclusion: i am not sure if i will use this keyboard as main working board (most probably no), but as it do not take much space on desktop it will be used at least for additional hotkeys, also most probably i will take it with me in travels, and will use it for accessing "terminals" which require physical keyboard connection without disconnecting my main working keyboard
general notes:i am using cherry mx green switches and their clones from gateron, gateron clones feels a bit softer, but still acceptable and clicky, also looks like gateron switches is durable enough, their price is x5 cheaper than original cherry switches, but for most often used keys like space, fn, delete, ctrl, alt, enter i am using original cherry switches.
![Image/photo]()
![Image/photo]()
it's very easy to broke switch during insertion into hot-plug socket on pcb so you must be extra careful during this step, few times i ended up with screwed legs like this:
![Image/photo]()
![Image/photo]()
![Image/photo]()
![Image/photo]()
, but it can be fixed with something like pliers, of course you must be extra careful during aligning the legs step., fortunately i have not broke completely single switch (yet...).
few words about keycaps, as abs keycaps does not live long enough for me (more info:
https://hubzilla.dark-alexandr.net/display/b64.aHR0cHM6Ly9odWJ6aWxsYS5kYXJrLWFsZXhhbmRyLm5ldC9pdGVtL2EwNzFmMDFiLTNmYTEtNGUzMS1hNTRkLTc0NGU4NmZhMjBiOQ ), i prefer pbt or double-shot pbt keycaps, keycaps made whole from pbt plastic are very expensive (price is comparable to keyboard price: $80-$300) i had only two sets of whole pbt keycaps one of which i gifted with keyboard to my friend, second is here:
![Image/photo]()
![Image/photo]()
used for melody96 keyboard, most of my keycaps are double shot pbt keycaps, price for double-shot pbt keycaps are vary from $10 to infinity, most of my sets costs from $10 to $30 - this is lowest price level.
#
hardware #
kink #
keyboard #
keyboards #
mechanical_keyboards #
cherry_mx #
programming #
c_language