SonalPinto / purple-owl

Purple Owl 60% Keyboard
MIT License
31 stars 3 forks source link

Using 74HC165 with QMK #1

Open max3-2 opened 1 year ago

max3-2 commented 1 year ago

Hi,

great project, thanks for the nice ideas. Thinking about building and maybe changing / adapting to QMK. Did you look into solutions if QMK supports the shift register based 1 x N matrix? I think this is a great solution, however did not find an existing QMK application.

Thanks!

AndersonTorres commented 1 year ago

I remember this two references:

https://github.com/zmkfirmware/zmk/issues/927

https://mehmedbasic.dk/post/74hc595-keyboard/

SonalPinto commented 1 year ago

Thanks! I didn't really dig too much into QMK when I was looking around for a FW solution because I simply enamored by the sheer simplicity of KMK/CircuitPython. The KMK (and CircuitPython) source was very approachable, imo (though, I did not look at QMK source at all - so I don't have a comparison point.)

Sure, KMK is missing a few things (save preferences like backlight settings into non-volatile space if allocated, which may need a dead simple "filesystem"), but it took unimaginable low effort to get a working keyboard without having to even thing about things like USB HID.

Plus, I really wanted to use the rp2040 (which is now supported by QMK, but was in the works when I started out) - and KMK/CircuitPython support for rp2040 was clean straight off the bat.

At this point, I don't plan on adding any support for QMK.

max3-2 commented 1 year ago

Thanks for the references. That should be adaptable to QMK however I wonder if there is interest in finding a good and off the shelve implementation for the future - I might open an issue over there if I have a prototype. I really like the SR solution since I think its way more elegant than the matrix scanning (and easier to route!)

There are fairly tiny QFP ATMega packages which might be a nice solution in between switches. I'm currently trying to come up with an inspired layout with the same staggering but with some keys i really like, e.g. a solid enter with +2u and a larger space bar. I will see how much space will be left for controllers and circuitry.