ergodox-firmware
qmk_firmware
ergodox-firmware | qmk_firmware | |
---|---|---|
3 | 1,590 | |
594 | 17,227 | |
- | 1.9% | |
0.0 | 9.9 | |
8 months ago | 5 days ago | |
C | C | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ergodox-firmware
-
ErgoDox DIY - But how?
I've used github.com/benblazak/ergodox-firmware to customize my firmware, but you're probably better of with qmk, zmk or whatever the cool kids use these days.
-
Keyboard Latency
> Is ZSA's build known to have latency issues compared to QMK?
ZSA is using a patched QMK - they even let you download the exact source for each firmware build they make for you. At the time when I switched to vanilla QMK (that was already some years ago), ZSA were veeery far behind master; running the latest QMK release fixed a couple of issues for me (like hotplugging the halves), so I guess there could be other improvements? No idea really.
> Would a faster microprocessor help
In the MCU world, latency and clock speed can have a very linear relationship - until they suddenly don't. The microcontroller's job is very simple really: scan the key matrix at a certain frequency, perform key debouncing, compare the current state with the previous, and craft a USB HID packet with key press/release events.
So having twice the clock speed could theoretically let you scan twice as often, so it might let you cut the latency in half. Except we have those pesky physics getting in our way! For simplicity let's assume we don't have split halves (where there's an extra serial connection slowing things down); I'm no EE so I only grasp these concepts at the surface level, but signals take time to propagate, and long traces on the PCB (and cables too) have a tiny bit of their own capacitance. (Capacitors are like really fast, really tiny batteries - but they still take a tiny amount of time to charge and discharge, which does all sorts of interesting things to high-frequency signals.)
On top of that, the electrical connection that the pieces of metal are making inside the switch, are never perfect at the exact instant the switch is supposed to (de)register: a couple electrons might start jumping over the air even before contact is made, and the physical connection is subject to normal wear, amplifying the "edge case" effect over its lifetime - which all together means we have to actually spend a certain amount of time "looking" at the state of the switch, to let it settle and make sure we got it right.
We end up spending so much time letting physics do its job that in a trivial firmware, the MCU is actually spending a significant amount of time... just sleeping. Which means we were later able to cram all sorts of madness like individual RGB lightning or status displays, and never decreased the poll rate.
Where would these 40ms come from then? Well I wouldn't get near the problem without an oscilloscope, and unfortunately I don't have one.
> I'm just starting to get into custom keyboards.
Then I recommend studying the original ErgoDox firmware & build instructions! It's extremely straightforward compared to a beast like QMK, which actually uses a whole RTOS.
https://www.ergodox.io/; https://github.com/benblazak/ergodox-firmware
-
What is the simplest .hex file I can use to test my Teensy 2 with?
I'm currently trying to flash a Teensy 2 with the QMK Ergodox build, and I'm running into trouble after flashing the firmware. Everything runs smoothly, and I have had success with the slow blink hex with both the CLI and GUI, but the ergodox firmware doesn't seem to register as a keyboard.
qmk_firmware
-
00Key a 75% Keyboard
I only use keyboards running QMK or ZMK, so:
My Caps Lock key is a Control/Escape key (when tapped it behave like a Escape, when hold it's Control), and my left Control is a one shot layer switch key [1], which means I tap LCtrl once, and then press Caps Lock + 5 to get Ctrl+F5. Doable with single hand and more ergonomic as I have an unusually small hand.
[1] https://github.com/qmk/qmk_firmware/blob/master/docs/one_sho...
-
Principles for Keyboard Layouts (2022)
I agree that reduced finger movement is a crucial step in achieving typing efficiency. This is nicely solved by mod tap modifiers in QMK/ZMK[1] where key acts as a char when tapped and as a layer while pressed.
[1]: https://github.com/qmk/qmk_firmware/blob/master/docs/mod_tap...
- Lkbm: LED-Key BitMasks to Control the Ploopy Nano Trackball
-
QMK and Keyboards
Separate wireless controller, see the glue code at [0]
[0]: https://github.com/qmk/qmk_firmware/compare/master...nuphy-s...
-
Debugging a Failing Hotkey
If you have a keyboard that runs QMK firmware[0] with the VIA[1] feature enabled[2], then there is a convenient testing app available from the same place you customize your keys [3].
[0] https://qmk.fm/
- How to make 2 or more layers become default ON with key
-
Just setting up my first corne layout. It will take a while for me to get used to this wow... It's taking so long to type. Attached is my layout, and I mainly use c# on visual studio. Any concerns/advice/suggestions are welcome. It will take a while for me to reply on this thing though.. haha..
I made a layout that I'm happy with. Spanish is my native language, so it has characters like the accents and 'ñ', but it's meant to be used for programming as well. Visual Studio uses a lot of Ctrl and Ctrl + Shift shortcuts, so I left them in the same place as the default Corne layout so I can press them both with my pinkie finger. Perhaps some of the ideas are useful to you.
-
Adafruit Feather RP2040 with USB Type A Host as a QMK converter board?
Also, it would be possible to do this for the RP2040. However, it needs some work to get working. but for example: https://github.com/qmk/qmk_firmware/pull/20999
-
If anyone knows of a good tutorial on how to make this tft display useful on a board controlled by an rp2040 and flashed with qmk configurator, I would be most grateful if you could point me in that direction. Gracias!
Ok, it's an ST7735, not too different from the ST7789. You should be able to get running by looking at their files in the QMK repo and going from there. You should also check their resources page.
- Keyboard missing from QMK MSYS.
What are some alternatives?
ErgoDox - ErgoDox Mechanical Keyboard pcb & acrylic case
zmk - ZMK Firmware Repository
qmk_firmware - My fork of qmk_firmware; with a custom layout for my Ergodox EZ
kmk_firmware - Clackety Keyboards Powered by Python
vial-qmk - QMK fork with Vial-specific features.
kmonad - An advanced keyboard manager
pico-examples
zmk-config - ZMK Configuration
Kaleidoscope - Firmware for Keyboardio keyboards and other keyboards with AVR or ARM MCUs.
miryoku - Miryoku is an ergonomic, minimal, orthogonal, and universal keyboard layout.
redox-keyboard - Ergonomic split mechanical keyboard
ferris - A low profile split keyboard designed to satisfy one single use case elegantly