[HN Gopher] QMK and Keyboards
___________________________________________________________________
QMK and Keyboards
Author : akaralar
Score : 89 points
Date : 2024-01-12 10:39 UTC (2 days ago)
(HTM) web link (getreuer.info)
(TXT) w3m dump (getreuer.info)
| scoopdewoop wrote:
| I built a midi controller out of an ortholinear keyboard kit and
| QMK. It really is a fun way to dabble in C and embedded hardware!
| hammyhavoc wrote:
| No velocity though, right?
| junon wrote:
| If they are analog/hall effect switches then in theory you
| could do it.
| evanjrowley wrote:
| Electro-capacitive boards (EC) could also do this, with the
| caveat that EC switches in general are tactile rather than
| linear as most hall-effect (HE) switches are.
|
| When it comes to QMK, it seems that there is a greater
| number of EC keyboard projects out there. Some examples
| below.
|
| For a MIDI device, I imagine an ortholinear boards may be
| the best layout. Unfortunately there isn't much out there
| for EC ortholinear boards. A group buy for a 47-key EC
| ortho board ran a few years ago, but the price was an
| outrageous $500-600:
|
| https://www.ashkeebs.com/product/conundrum/
|
| More recently, a handful of QMK-compatible EC PCBs have
| popped up on AliExpress. Unfortunately, I haven't been able
| to locate the actual QMK firmware source for them. Perhaps
| in the minds of the creators, it is simply enough to
| provide VIAL compatibility for user customization. The
| drawback here is it does not expose the necessary feedback
| for velocity:
|
| https://www.aliexpress.us/item/3256806073672667.html
|
| https://www.aliexpress.us/item/3256806010654548.html
|
| https://www.aliexpress.us/item/3256806009306496.html
|
| https://www.aliexpress.us/item/3256805431878689.html
| atoav wrote:
| Probably not, but there is a lot of intersting stuff you
| could switch/trigger/activate without velocity.
| rgoulter wrote:
| The most common misconception I see about QMK keyboards
| (especially keyboards which stray far from the traditional form,
| like in OP's) is about small keyboards.
|
| The most common kind of small keyboards are just like laptop
| keyboards, and try and fit a keyboard into a smaller space (and
| the omitted keys get relegated to being behind Fn key). These
| tend to retain the impractically big spacebar of a typical
| keyboard, out of familiarity.
|
| Whereas, many non-traditional keyboards ditch the big spacebar,
| and instead give the thumbs two or three keys to use each. This
| allows bringing the full functionality of the keyboard within
| easy reach of the hands on home row (similar to how Vimmers would
| rather use hjkl than the cursor keys). It also allows reducing
| usage of the pinky fingers.
|
| I've seen OP post some neat code which works with QMK firmware.
| (The orbital mouse looks interesting). But stuff like "Caps
| Word", etc. are also neat.
| nprateem wrote:
| When I first saw a ferris I thought they were a nerdy joke. I
| ended up buying one though due to severe RSI and wanting a
| programmable keyboard so I could reduce how far I was reaching
| for symbols etc.
|
| I'm now a convert to programmables. My glove80 is more
| ergonomic, but I use equivalent keymaps on both and they're a
| game changer. It feels so clunky now if I use my laptop
| keyboard to actually have to reach for symbols, numbers, etc.
|
| Home row modifiers, number, symbol, nav layers, colemak &
| qwerty... Just awesome. They've helped my RSI no end.
| nsajko wrote:
| What's the misconception, then?
| stavros wrote:
| I made one with four thumb keys and I love it:
|
| https://www.stavros.io/posts/george-i-made-a-keyboard/finish...
|
| I should write up how I did it, it's now years I've been
| sitting on that post.
| bsnnkv wrote:
| Gotta give a shoutout to kanata[1] which I have used daily for
| years at this point after giving up on QMK-powered keyboards.
|
| QMK itself is great, but I was never able to find a non-columnar
| split ISO keyboard to use it with. Eventually I reluctantly
| settled on the Logitech K860[2] and I'm now happily using my
| favourite features from QMK with kanata at the software level.
|
| [1]: https://github.com/jtroo/kanata
|
| [2]: If I'm behind the times and there is now a QMK-compatible
| keyboard that looks like this, please let me know!
| 7839284023 wrote:
| > QMK itself is great, but I was never able to find a non-
| columnar split ISO keyboard to use it with.
|
| https://keychron.de/products/keychron-q11-qmk-custom-mechani...
| jsheard wrote:
| or https://nullbits.co/snap/ if you don't mind a more DIY
| approach
| bsnnkv wrote:
| This looks excellent! I have gone down a bit of a rabbit hole
| and I'm considering once of the Alice ISO keyboards[1],
| perhaps even waiting until the low-profile Alice variants are
| available in ISO layouts[2].
|
| [1]: https://keychron.de/products/keychron-v10-alice-layout-
| qmk-c...
|
| [2]: https://keychron.de/products/keychron-k15-pro-alice-
| layout-q...
| bostik wrote:
| Both Q10 and Q11 are good. I have one of each in their
| respective uses.
|
| Q11 may possibly be even better for someone prone to RSI,
| because you can set the halves up angled even wider apart.
| Just make sure to get a good wrist support to go with the
| keyboards, no matter which you go with: they are _thick_ ,
| and that makes them positionally elevated from the surface
| they are on.
|
| With two more things they would be pretty much perfect. An
| embedded USB port on both sides, so you could slot a YubiKey
| nano on your chosen edge. And a double-sized Esc-key. The
| latter is the single thing I miss from Kinesis Freestyle's
| form factor.
| UnserMannInK wrote:
| I have also used the K860 and I like it. I stumbled across Chad
| Austin's Microsoft Sculpt wired conversion [1] and I have been
| using it for some time now. Apart from the abysmal function
| keys it's a decent keyboard, and with QMK you can make it do
| whatever you want.
|
| [1]: https://chadaustin.me/2021/02/wired-sculpt/
| zvmaz wrote:
| I use a Keychron Q11, a split row staggered keyboard. On the
| laptop, I use Kmonad on linux with home row mods but I think I
| will switch to Kanata because it seems more compatible with
| Windows (work OS). I have been using home row mods for a few
| days now and I feel that it has greatly alleviated the pain I
| have on the left pinky finger (remapping caps lock to control
| and using Emacs keybindings for years did that I think). I am
| tempted to switch to a columnar staggered keyboard,
| specifically ZSA's voyager, but I don't know if I will adapt to
| the layout. Maybe someone with more experience can give advice
| here...
|
| I tried to change the keyboard layout to a more "ergonomic"
| layout (optimot), but after months of training, I could never
| gain the proficiency I have in AZERTY. I think it's not worth
| it to switch.
| bsnnkv wrote:
| I have both an Ergodox and a Ferris which are both now
| gathering dust. In my experience, columnar layouts are not
| worth it for me as a developer, because there is nothing that
| I can gain from a layout that changes the position of the
| {};'<>() keys that will ever offset the productivity and
| familiarity lost by those keys never being where I expect
| them to be.
| zvmaz wrote:
| So what do you use Kanata for if you don't mind the
| question?
| bsnnkv wrote:
| I have a bunch of home row mods, and I also have layers
| with dedicated app-specific utility-mappings that I have
| automatically toggle on when the relevant app window is
| focused so that I don't have to waste extra keys to
| toggle/switch between different layers.
| rrradical wrote:
| I feel like it took a month to get fully used to and then I
| haven't looked back. I did have an RSI motivation.
| zvmaz wrote:
| Are you able to switch back and forth between staggered
| and columnar?
| Sakos wrote:
| This is surprising to me
| https://getreuer.info/posts/keyboards/non-english/index.html...
|
| I wonder why a better solution hasn't been implemented in QMK. Is
| it a technical limitation?
| delusional wrote:
| My understanding is that unicode is just not part of the hid
| spec. Keyboards send scancodes that the pc interprets into
| window events. That translation is not part if the spec, and
| therefore os dependent.
| the_gipsy wrote:
| It is an OS limitation/inconsistency. QMK allows to toggle mode
| for linux/win/mac. There is nothing else QMK can do.
|
| I personally just use some layout (us-intl with no dead keys),
| which works for the integrated laptop keyboards too.
| crote wrote:
| The HID protocol used by keyboards to talk to the OS doesn't
| support Unicode.
|
| In fact, it doesn't even support letters: you're sending _key
| positions_ instead. If you press the letter "A" on an Azerty
| keyboard, your keyboard will essentially send a "Q Down" event
| - because that "A" is placed in the "Q" position.
|
| Getting Unicode out of that is really tricky due to half a
| dozen abstraction layers, most of which are unique for that OS.
| Mapping a _specific_ Unicode character to a position isn 't too
| bad (just use a custom keymap), but adding _generic_ Unicode
| support is a nightmare.
| flurdy wrote:
| I use Oryx by ZSA which is built on top of QMK, but not with all
| the features. It is great still though.
|
| I use a lot of MO keys on my keyboard. Too many accidental layer-
| locking with TT and OSL. So I would love it if/when ZSA adds the
| QMK "layer lock" feature to Oryx. Currently, I use a layer lock
| intermediate layer. But that is one extra key press and finger
| travel.
| mynegation wrote:
| I considered using something like that, but my concern that it is
| going to ruin my muscle memory for the situations when I cannot
| use it - eg locked down environments at work. So I stick to
| whatever can be done with standard OS capabilities.
| moondev wrote:
| Behold, an inline USB QMK controller. Just carry one on your
| keychain
|
| https://yaowei.dev/posts/usb-to-usb-converter/
| reactordev wrote:
| There are some places that do not allow USB connections.
| People have been fired over it.
| layer8 wrote:
| Works great on laptops and Bluetooth keyboards.
| waveBidder wrote:
| I've got a weird split thumb board like OP, and the muscle
| memory for a normal keyboard is fine. I think it helps that I
| mostly left qwerty intact, and messed with meta keys.
| Snow_Falls wrote:
| I'll throw another anecdote to the pile. I use a split,
| angled keyboard with a nonstandard keyboard layout for over a
| year now and I can use normal keyboards just fine.
| stavros wrote:
| It doesn't, I use a standard laptop keyboard and my weird-ass
| custom keyboard very interchangeably with zero trouble. Hell,
| I'm typing on a MacBook right now.
| lvl102 wrote:
| I feel the mk community died during the pandemic and all the
| commercialization that happened. People just stole stuff
| community built on goodwill. At least I was turned off by it and
| stop caring.
| nsajko wrote:
| For example?
| Scene_Cast2 wrote:
| If you're interested in QMK, you might want to give ZMK a shot as
| well. The big differences are that it's wireless-first (cognizant
| of power consumption, supports various wireless modes, etc), it's
| built around ARM (doesn't support Atmel), and is a much newer
| codebase.
|
| But I have to give it to QMK as well, they have been reworking /
| refactoring a major wart in how you config keyboards, with the
| move to info.json and away from custom C and make files.
| crotchfire wrote:
| The downside to ZMK is no copyleft protection. So when you buy
| a keyboard that advertises "ZMK", you're getting a binary blob
| you can't customize or audit.
|
| OTOH, QMK has successfully forced-open proprietary keyboards
| that were sold with QMK forks and then repeatedly,
| emmphatically refused to release the source. This includes the
| awesome _non-Bluetooth_ 1000hz-rate Nordic Semiconductor
| wireless feature of the NuPhy Air keyboards!
|
| https://github.com/qmk/qmk_firmware/pull/21949#issuecomment-...
|
| Copyleft works. In spite of all its haters.
| Scene_Cast2 wrote:
| Oh huh. This might sound silly, but your commend nudged my
| opinion on copyleft. My previous take was more cynical - I
| remember, ages ago, seeing a lack of enforcement around some
| less popular gnu / fsf software.
| crotchfire wrote:
| IMHO copyleft is mostly about the balance between _hardware
| manufacturers_ and free software.
|
| It's important to remember that. It forces the hardware
| vendors to stay on "their side of the line" -- or at least
| to give up control over any part of their product which
| extends into the software space. This is why it's much more
| important for the hardware-touching parts of the stack
| (Linux, GRUB, GCC) to be copyleft than the rest of the
| software we use.
|
| A lot of the anti-copyleft people think only in terms of
| software-company/software-company interactions.
| Snow_Falls wrote:
| See the crud around john deer tractors. Not being able to
| modify your word processor is one thing, being unable to
| repair thousands of dollars of agriculture equipment is
| much worse.
| jsheard wrote:
| Does that NuPhy QMK codebase include the wireless code, or
| are they doing the old trick of running QMK on one
| microcontroller and the wireless stack on a separate
| microcontroller? QMK has very limited wireless support so
| AFAIK wireless QMK boards usually use the dual MCU
| arrangement, and the wireless MCU firmware is probably still
| closed even if they release their QMK source.
| crotchfire wrote:
| It includes the wireless code.
|
| I think you're confusing this with WiFi. The Nordic
| Semiconductor chips don't require a firmware upload; the
| protocol they run is _vastly_ simpler than wifi -- it 's
| like UART-over-2.4ghz-GFSK-radio plus some error
| correction.
|
| https://www.sparkfun.com/datasheets/Components/nRF24L01_pre
| l...
|
| The block diagram doesn't show any kind of CPU in there.
| jsheard wrote:
| Oh of course, I'm confusing it with _Bluetooth_ boards
| which need a hefty wireless firmware stack. Boards using
| a dongle don 't necessarily need that complexity.
| crotchfire wrote:
| Yeah the NuPhy Air is the first wireless keyboard I've
| ever been willing to use, specifically because it is non-
| bluetooth (and I can recompile the firmware to guarantee
| that it isn't using bluetooth!)
|
| Bluetooth keyboards were a horrible idea.
| crote wrote:
| Separate wireless controller, see the glue code at [0]
|
| [0]: https://github.com/qmk/qmk_firmware/compare/master...n
| uphy-s...
| LanternLight83 wrote:
| > when you buy a keyboard that advertises "ZMK", you're
| getting a binary blob you can't customize or audit
|
| You've got a fine argument for preferring GPL software, but
| I'd be shocked if there was a ZMK keyboard out there you
| couldn't flash.
|
| a.) That's how you configure it
|
| b.) Upstream (including the platforn, Zepher) is moving
| quickly, with frequent performance, feature, security,
| battery life, and usability improvements-- eg. a recent
| commit touts support for bitlocker screens
|
| c.) I had to hack on it to get the behavior I wanted, which..
| oh, that means a company might want to hack on it too, i see
|
| but this all to say that it would be a remarkable tragady for
| a company to not support mainline provide you with the
| sources, if just for integrating upstream updates, and
| thankfully I can't think of a product that does so. I'd
| prefer it was copyleft too (so we didn't have to worry about
| it), but I wouldn't go so far as to proclaim that's what
| "you're getting" as if it's endemic to the platform.
| Jenk wrote:
| > I'd be shocked if there was a ZMK keyboard out there you
| couldn't flash.
|
| MoErgo Glove80 is ZMK based. Extensible and flashable, too.
| crote wrote:
| > This includes the awesome non-Bluetooth 1000hz-rate Nordic
| Semiconductor wireless feature of the NuPhy Air keyboards!
|
| It seems like the code doesn't actually contain the RF
| firmware, though - it's just the glue to talk to an external
| chip which essentially acts as a "modem".
|
| The reason ZMK uses the MIT license - and proper RF support
| cannot be added to QMK - is that Nordic's RF stack drivers
| use a license which isn't compatible with GPL. This means if
| you want to do wireless stuff inside the _actual keyboard
| firmware_ you can 't use QMK.
|
| There is of course a fork out there doing exactly this
| because nothing is technically stopping you, but you're
| legally not allowed to combine the two.
| nyanpasu64 wrote:
| Couldn't they use GPL with a linking exception, LGPL, or
| MPL to retain copyleft protection?
| nsajko wrote:
| > it's wireless-first
|
| Sounds like a security nightmare. Input devices, and especially
| keyboards, are something that absolutely needs to be wired-only
| in my book.
| layer8 wrote:
| Caps Word: Nice idea, something I might go implement with AHK.
|
| Orbital Mouse: This reminds me of Logo turtle graphics.
|
| Word selection: Using Ctrl+(Shift+)Left/Right, this doesn't work
| at the edge of a word, or only on one side. You need to be able
| to look at the characters to implement it fully. Editors that
| don't support "select word" at both word boundaries always
| frustrate me.
| kkfx wrote:
| Personally I have a Keychron V6, witch is just ok for it's price,
| but my complaint is that QMK have enough power to simply read a
| text file on a small flash memory even a raw memory flashed via
| `dd` wrapped by a simple script and made the customization much
| more comfy, without the need of recompile the fw, downloading
| ~1.5Gb of stuff simply mapping a physical key or key combination
| to a set of keycodes.
|
| Second RANT to ALL keyboards OEMs: please add a damn service to
| print easily custom keycaps, a small example, being from the EU
| writing in few languages every day I've chosen the EurKey layout,
| witch actually does not exists on sales in some pre-build keycaps
| set. I have mapped differently some keys, MOST of them I know
| from memory, but sometimes being able to see the key is a very
| nice to have thing. Ok, keycaps normally are not really printed,
| meaning it's not cheap to produce custom ones, but if you damn
| ask 300+EUR for a keyboard and someone buy it I'm pretty sure a
| custom keycap set does not change the game much.
|
| Third RANT please STOP making cherry, OSA etc profiles. Very old
| IBM keyboards have solved the height issue with a simple
| parabolic support, there is NO DAMN REASON to make flat support
| and different height keycaps making limited room to move them on
| the keyboard.
| crote wrote:
| > made the customization much more comfy, without the need of
| recompile the fw
|
| Get someone to write a profile for https://get.vial.today/
| support.
|
| > add a damn service to print easily custom keycaps
|
| https://www.wasdkeyboards.com/custom-text-cherry-mx-keycaps....
|
| > please STOP making cherry, OSA etc profiles
|
| They are making them because people keep buying them. Turns out
| most people actually _like_ typing on them.
| bluGill wrote:
| People buy them because they like a curved layout. OP is
| asking for more curved circuit boards with keys all the same
| height so that they can use whatever layout they want. It
| makes sense to me, but I'm - like most people - stuck with
| what I can get which means QWERTY keyboard layout.
| preya2k wrote:
| I have a newbie question around Keyboard firmware: I built a
| simple Macro-Pad based on the RP2040. I want to use it under
| macOS for application-specific functionality. However, I cannot
| find a firmware that allows me to change/define Macros during
| runtime. I find it very cumbersome to always compile and flash a
| new firmware, whenever I want to change a simple Macro.
|
| What am I missing?
| crote wrote:
| You might want to look into Vial[0]. It's essentially an
| addition to QMK which allows you to do exactly that.
|
| [0]: https://get.vial.today/
| preya2k wrote:
| Thanks! That looks really good!
| tehnub wrote:
| You might want to try via (https://www.caniusevia.com)
| instead, actually. I know at least Bastard Keyboards switched
| from vial to via because vial-qmk (the vial fork of
| qmk_firmware) was lagging 9+ months behind upstream qmk at
| one point.
| heads wrote:
| I am quite in love with the touchpads on my Steam Deck. Has
| anyone here seen a keyboard that incorporates such devices? (1.5"
| square haptic feedback pads, one under each thumb.)
| aurecchia wrote:
| I only know of the Dilemma keyboard by bastardkb, but it's
| round touchpads. I'm not sure how similar they are to the
| SteamDeck ones.
|
| https://bastardkb.com/dilemma/
___________________________________________________________________
(page generated 2024-01-14 23:01 UTC)