Comments (7)
Hmm... the diff didn't give me any clues, so I compiled and tested your branch on my board - but everything worked as expected - which leads me to suspect that it's your system... When you use the numPush keys, does the "num lock" indicator LED come on? And then go off, when you use numPop?
Also, not all commits will compile, though I do try my best to keep HEAD in a usable state. Sorry if one of the bad ones slipped through as the latest commit. I just pushed a new commit that does compile, just in case :)
from ergodox-firmware.
With the numPush function the light does nothing. I went ahead and hacked together my own version of numPush (frioux@b779950#L0L119) and that works just fine for me now. I know it is possible that it could get out of sync, but as far as I can tell your version could too. Anyway, no rush since I have a workaround for now :)
Yeah, I understand that some commits may be broken, I only mentioned it because HEAD wouldn't build.
from ergodox-firmware.
Hmm.. that's weird. When I use "KEYPAD__NumLock_Clear" instead of "KEYBOARD__LockingNumLock", the indicator light doesn't come on for me. But my system (OS X 10.8) seems to interpret the keypad keys as if numlock were engaged, whether or not it actually is. Ubuntu must treat things differently... My VirtualBox load of Linux Mint doesn't seem to be any help, since it's probably receiving key input from the host OS, and I don't see any way to change that - so I won't bother trying my virtualized Windows. Some day I need to get Linux legitimately dual booted on here. In the meantime, perhaps you could test my latest commit? I changed it press and release both numlock key codes - which I suppose isn't the best (since we only have 6KRO for now), but if it makes things work on both OS X and Linux, then good :)
from ergodox-firmware.
That fixed it! thanks :)
from ergodox-firmware.
Hi!
I've been testing this original ergodox firmware, which I successfully packaged for GNU Guix, and I'm also hitting this same issue with the keypad not inputting digits but special movements keys such as KP_Begin, KP_Left, KP_Right, etc.
If I enable Num Lock using a dedicated key from a second keyboard, it then does what I expect and input digits.
Is there a num lock key using this ergodox firmware? In any case, the LED of the right hand, top-left button (which enables layer 3 - they numpad) doesn't lit at any time for me.
I know the LED are correctly wired because they all lit up briefly when powering the keyboard.
Thanks!
from ergodox-firmware.
hey :)
all the keycodes are from the USB HID spec, so there should be a numlock key in there somewhere (and i would expect that one to work, though i can't be sure; not all the codes in the spec seem to be implemented on the hosts i've tested, and some don't behave as one would expect).
the LED indicators for numlock (and scroll lock and insert) never did work on all systems perfectly. they worked on my system (macos) when i wrote it, but i wasn't able to test properly for windows or linux -- and i think macos has changed how they send that status over the years, so i couldn't guarantee it works now.
if you're up for fixing this, i'd try looking at the codes that a commercial keyboard sends (or maybe look at the QMK firmware, since it's more widely used and tested) -- and i'm not sure but it might also be possible to see what's getting sent back as far as LED status too. be sure to note your OS (with version).
i don't have much time to spend on this since i'm working now -- (and actually, i'm currently using the QMK firmware, since my switches are old and need real debouncing now) -- but i'll try to look at your other comments and PRs too, as i have time :)
from ergodox-firmware.
Hello, thanks for the response!
I've read a bit more on the topic and now understand that these LED states are kept on the host (computer) side and sent via the USB HID protocol as 'reports'. That's handled by the pjrc library used by this project, apparently correctly.
So I think the only thing which is problematic is that the numpad_toggle_numlock
procedure uses the KEY_LockingNumLock
key code which is legacy [0] and only available on Windows/MacOS [1]. We should use the non-locking version, "Keypad Num Lock and Clear", 0x53 instead.
[0] https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf
[1] https://github.com/qmk/qmk_firmware/blob/master/docs/keycodes.md
edit: I just tried the fix, and it works! I'll send a PR.
from ergodox-firmware.
Related Issues (20)
- Will a non-soldered teensy be recognized as a keyboard? HOT 2
- Any way to give Ergodox the full control over layout? HOT 8
- PROBLEMS FOR UK KEYBOARD USERS HOT 1
- Is 80 key version of ergodox supported in your code ? HOT 9
- Compose key not registered HOT 1
- Latch Keys Not Working HOT 3
- changing key from `1` to `_grave` causes unexpected behavior
- "Simple macros" don't work on Mac OS Sierra HOT 4
- How to release the 'RightAlt' upon leaving a layer. HOT 4
- Updating the USB stack HOT 1
- How to use layers? HOT 1
- Readme still links to the defunct .org site in the title HOT 1
- Set what is sent on shift HOT 1
- Random sticky/unresponsive HOT 11
- Always switched to layer 2 on the first system startup HOT 3
- Hold letter key for another key entirely HOT 1
- About the drop page cannot download .HEX files HOT 1
- Keyboard doesnt boots after tried to flashing with another firmware HOT 4
- Using ancient frozen customized fork of your firmware (didn't set it up, kinda inherited it, don't really understand it). If I get a new ergodox, could I just flash my current firmware on to it? (Paranoid the old microcontroller in my current one *might* be starting to fail...) HOT 11
- default Make target (dist) fails running gen-ui-info.py with KeyError: '_kb_layout' HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ergodox-firmware.