-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rev6. Keyboard Ghosting - center key replicating full row #22
Comments
This can happen when rev.5 firmware gets in to hardware of rev.6 and vice versa. Can you make sure if the firmware revision corresponds to the hardware, please? |
I did try a firmware upgrade earlier, and that did not solve it. I did just do it again - this file: firmware_rev_6.bin correct? it did upgrade and when I enter the menu I see: EDIT: The problem does persist with no keyboard.json and with a default keyboard.json |
Well.. I tried to use VScode and PlatformIO from a mac to see if I could flash the firmware directly. I also got a new sd card... and I've made the problem worse 😄 First, there was an error when I selected upload, here are the last few lines of that message:
However, even with that error now the first row seems to be doing the same thing. So the first row and the 6th row are acting like macro keys. and printing out the full line or fully executing that line. So if the line has SHIFT at the beginning it prints all the shift characters, if it has ALT, same thing - the menu line goes to the menu but then enters a sub menu based on the characters on that line. Sounds confusing. I can take a video, but perhaps you know what it is. I did try putting the firmware_rev_6.bin on the new sd card after, and allowed it to upgrade again, but the issue still persists - line 1 and line 6. My next thought was to try this from a windows machine perhaps? Let me know if you have any ideas. Thanks for all the help! |
Hmm.. sounds like it is a hardware issues. I think keyboard connector needs to be inspected. When you remove the keycaps you can see 8 screws. Unscrew all of them. Then you should be able to pull the keyboard plate out from the device. Peel off the keyboard plate from the PCB and you should see the 16 wire holes solders. Is there any shorts or wandering wires touching each other? |
I was able to check, nothing seems wrong with the keyboard solders. No wandering wires, or shorts. I did try vscode on my windows machine, to try and reflash - that actually did work. |
I am able to monitor the port, and I'm seeing this in a loop:
|
So, I started looking through the other bug reports and came across this message:
Source: #16 (comment) and this message:
I then checked my platform.ini and that config change was not there. My source is old - it is from the releases page: 1.0.16.zip So I deleted all that, I've cloned the repository and I can see that platform.ini has that update. It is compiling and uploading right now. Takes about 10 minutes. Ideally this at least brings be back to the firmware working - and maybe the keyboard fixed, but even if the keyboard is not fixed, at least I'm back to troubleshooting the original problem. |
Ok. I was able to flash the firmware successfully using the latest source from git. I can write a draft if you like. Basically it's probably just formatting that section a bit differently, maybe as bullets? and perhaps adding some screenshots for PlatformIO in VSCode. I'm back to troubleshooting the keyboard. The first key and sixth key of each row are still printing out the full row. |
After a bunch of research, I realized that the issue i described is called ghosting. I renamed this issue accordingly. I have been able to successfully reload the firmware via the UART port from a windows machine consistently, no issues. I did find that I had to specify the port in VSCode, and not let PlatformIO auto pick. I was also able to rule out software as a culprit. I changed some code in keypad.cpp to log the key presses, and do a few different things, and the issue definitely persisted. I then looked at the build guide and identified which pins might be the ones causing issues - I used my multimeter first on the esp board itself, with a plan to do the same on the keypad pins. I was able to detect two pins shorting (39/40). Poking around with my multimeter was enough to separate them and clear the issue. If this happens again, I will probably just resolder those connections. Maybe even change them to quick disconnects. |
The 5,T,G,SPACE keys are replicating the full row they are on. In sequence.
So if I tap the 5, I get all the keys in that row in order, and so on.
This includes modifiers. So if I tap the t, which has menu, it acts like a macro key.
I have tried a few things, and it still seems to be happening:
EDIT:
I opened up the device to see I could notice anything perhaps shorting, or some issue. But nothing is immediately apparent.
The text was updated successfully, but these errors were encountered: