Ergodox column problem

User avatar
alinh

25 Mar 2014, 21:23

Hello,


So I used this ErgoDox for 1 week and it worked great. All of a sudden a single key press would trigger the whole row.

It turns out that for the the whole column a single key press would trigger the key's respective row.

Example (qwerty) : h would trigger the hjkl; keys.

The affected keys are : 6,y,h,n and the 1u thumb key closest to the main keys (above the 2u key) so basically sw0:5, sw2:5, sw3:5, sw4:5, sw5:5 on the right side.

sw0:5 triggers the whole thumb cluster (sw0:1, sw0:4, sw0:5,sw0:6 and sw1:5,sw1:6)
sw2:5 triggers row 2
sw3:5 triggers row 3
sw4:5 triggers row 4
sw5:5 triggers row 5

This doesn't happen *all* the time; it seems to be triggered if I hold down one of the culprit keys. It still doesn this after unplugging and replugging the USB cable. It does this with the righthand only connected. It seems that after 0.5-1min it clears only to appear again. I checked all the diodes and they seem OK.

This behavior was also observed while building the ErgoDox : I soldered the diodes and "wire-jumped" the switch contacts on the PCB. After soldering the switches all keys would only generate their own presses.

I closely checked the PCB and I found that close to the teensy slot the Row 5 trace was a bit weird (like the paint on the PCB was coming off). I seem to have cut the row5 trace just by *slightly* touching that area; row 5 stopped working. I ran a wire from the closest contact of row 5 to the teensy pin so now Row 5 works again. Not sure if something similar would affect a whole column, but I'm not that great at electronics. I have a crappy multimeter, just don't know what to test.

a pic that may help :

http://imgur.com/vlSvG6V

syncon303

26 Mar 2014, 13:42

The only scenario I can see this happening in is if the column trace in question would have an (intermittent) short to ground somewhere in the circuit.

Check for any blobs of solder anywhere on the PCB, at Teensy pin header connector, and on Teensy board itself.

User avatar
alinh

26 Mar 2014, 14:40

Thanks, will check.

Would it be possible to be temperature triggered? This morning it worked great for ~2h, until it got a bit hotter in the room. Hasn't stopped being weird since then :cry:
syncon303 wrote:The only scenario I can see this happening in is if the column trace in question would have an (intermittent) short to ground somewhere in the circuit.

Check for any blobs of solder anywhere on the PCB, at Teensy pin header connector, and on Teensy board itself.

User avatar
Muirium
µ

26 Mar 2014, 15:00

Perhaps. It could be a minuscule little short in that case: very annoying to track down!

I had shorts with my 60% which only happened with the metal case screwed up tight. Just as annoying! The insides were insulated with sticky plastic, but the hand soldered matrix itself was getting squeezed.

User avatar
alinh

26 Mar 2014, 15:36

Any idea how to check? Was thinking of desoldering all the diodes/switches from the offending column and resoldering one at a time; maybe it will be that easy.

I recently changed the case from czarek with a MD like one (acrylic layers) and moved the diodes on the back side of the PCB (throughole ones, didn't find SMDs). I tried to place them as close to the PCB as possible, and with the naked eye I see that they don't touch the bottom plate. Initially I thought I cracked a diode or something.

So guess will have to wait till the weekend to desolder stuff :)

(just as a test I tried tmk firmware instead of massdrop one, didn't help)
Muirium wrote:Perhaps. It could be a minuscule little short in that case: very annoying to track down!

I had shorts with my 60% which only happened with the metal case screwed up tight. Just as annoying! The insides were insulated with sticky plastic, but the hand soldered matrix itself was getting squeezed.

syncon303

26 Mar 2014, 17:52

Go from easy steps to harder ones - desoldering components should be one of the last.

First check the resistance from column trace to ground on unplugged board and compare it to other columns. The resistance figures should normally be very high (in MOhm range), however if initial theory is correct you should see resistance lower than 1kOhm on offending column. You can try flexing PCB a bit and see if there is change in resistance. If you don't see much difference between columns also check resistance from column trace (Teensy pin3) to trace LED_C (pin6), and from column trace to trace SDAM (pin8).
If all these resistances are high, connect voltmeter between offending column and ground, power-up the keyboard and observe the voltage there. Normally it should probably be above 4V (again, you can compare it to other columns), but if there is something wrong it should probably drop below 2V.

Check for any flux residue on the board and clean it with some isopropyl alcohol (or acetone, but be careful around switches). Recheck the resistance.

Then check for solder blobs as I initially suggested. Pay special attention to large amounts of solder on any pads which might rest against ground plane next to the pad. Inspect both sides if you have done some desoldering there. Also inspect the Teensy header - I've seen people create sneaky solder bridges when they squished solder between plastic part of header and PCB. As the least probable issue inspect Teensy board for any small drops of solder that might be sputtered there during soldering.

Note that this is definitely a hardware issue and firmware reflashing won't help.

User avatar
alinh

26 Mar 2014, 18:07

Wow, that's what I call detailed instructions.

What really throws me off it that it worked for ~8 hours a day for ~10 days... but with it working OK for a couple of hours and then going crazy I'm puzzeled :?:
syncon303 wrote:Go from easy steps to harder ones - desoldering components should be one of the last.

First check the resistance from column trace to ground on unplugged board and compare it to other columns. The resistance figures should normally be very high (in MOhm range), however if initial theory is correct you should see resistance lower than 1kOhm on offending column. You can try flexing PCB a bit and see if there is change in resistance. If you don't see much difference between columns also check resistance from column trace (Teensy pin3) to trace LED_C (pin6), and from column trace to trace SDAM (pin8).
If all these resistances are high, connect voltmeter between offending column and ground, power-up the keyboard and observe the voltage there. Normally it should probably be above 4V (again, you can compare it to other columns), but if there is something wrong it should probably drop below 2V.

Check for any flux residue on the board and clean it with some isopropyl alcohol (or acetone, but be careful around switches). Recheck the resistance.

Then check for solder blobs as I initially suggested. Pay special attention to large amounts of solder on any pads which might rest against ground plane next to the pad. Inspect both sides if you have done some desoldering there. Also inspect the Teensy header - I've seen people create sneaky solder bridges when they squished solder between plastic part of header and PCB. As the least probable issue inspect Teensy board for any small drops of solder that might be sputtered there during soldering.

Note that this is definitely a hardware issue and firmware reflashing won't help.

User avatar
alinh

29 Mar 2014, 07:28

So I measured every switch and they all seem to be the same.

I plug in the ErgoDox and it works ok for a while; easiest way to trigger the problem is to keep one of the offending keys pressed down so it generates ~100 characters. If it were a short I think it would trigger from the first key press.

I desoldered all switches so I get to the PCB without the plate and inspected the traces as best I could. There seems to be some pin-head size paint missing on the column 8 trace, but I don't think it's the cause. At this point my only idea is that the teensy is somehow "overloaded" on pin 3 (the one on which cloumn 8 connects) and gets confused. Seems that if I keep pressed on of the "non-bad" columns for ~100 characters then it's back to normal...

Now I don't really need to have keep a key pressed for 20-30 seconds, but in real world use it means that after 1-2h of normal use the problem gets triggered which s annoying as hell. The fact that it doesn't clear after unplugging the keyboar tells me that the teensy has nothing to do with it so it's an electrical problem

I'll try to debug more today, but if I don't find a solution I'll try to get a new PCB and teensy and replace the whole thing.

peonpeon

14 Apr 2014, 20:12

I noticed you posted this on GH as well. but hopefully you or someone else here might have experience with this issue.

I'm having an issue with the 3edc<backspace> column. The first time it happened, I cleaned it up the solder points and reflashed the keyboard and somehow it got fixed.

Then after using it for a few hours, the problem came up again. did you find out any more information about how this can happen?

User avatar
alinh

14 Apr 2014, 22:28

peonpeon wrote:I noticed you posted this on GH as well. but hopefully you or someone else here might have experience with this issue.

I'm having an issue with the 3edc<backspace> column. The first time it happened, I cleaned it up the solder points and reflashed the keyboard and somehow it got fixed.

Then after using it for a few hours, the problem came up again. did you find out any more information about how this can happen?
Hey. I couldn't figure it out and since the PCB is ugly now after all the soldering/desoldering , and it might be the teensy, I just ordered a new half on which I'll transplant the switches.

peonpeon

14 Apr 2014, 22:37

Ugh that really sucks.

I really think it's either the teensy or firmware issue.

I started noticing that sometimes, I can unplug everything to "cool" it off, and it'll start working fine. But once I keep one of affected columns pressed, the "mash row" function will activate and i'll have to unplug everything again.

Just curious, were you a part of the recent Massdrop #1040?

User avatar
alinh

14 Apr 2014, 23:48

peonpeon wrote:Ugh that really sucks.

I really think it's either the teensy or firmware issue.

I started noticing that sometimes, I can unplug everything to "cool" it off, and it'll start working fine. But once I keep one of affected columns pressed, the "mash row" function will activate and i'll have to unplug everything again.

Just curious, were you a part of the recent Massdrop #1040?
I don't think it's a firmware problem as I tried a different firmware ( as in different souce code ). It seems to be the teensy, but it's weird that it doesn't clear off when unplugged, so...

I was part of the august 2013 group buy, but but the 1040 one. The kit I'm having problems with is not from MD, and this kit worked great for a couple of months.

peonpeon

24 Apr 2014, 06:14

FYI if anyone else encounters the same issue. I replaced the MCP chip and it started to work correctly.

To recap, my left hand board's 3edc<backspace> keys would start to hit the entire corresponding row after awhile. I couldn't find any shorts anywhere. I found the column trace to the pin on the MCP and connected it directly to the individual row pins and it exhibited the same exact behavior - initial presses would register correctly as 1 key press, shortly after, it registers the entire row as a hit.

It's a relatively cheap fix costing about 5 bucks (shipping incl) but desoldering the IC was a PITA for sure.

User avatar
alinh

24 Apr 2014, 10:52

peonpeon wrote:FYI if anyone else encounters the same issue. I replaced the MCP chip and it started to work correctly.

To recap, my left hand board's 3edc<backspace> keys would start to hit the entire corresponding row after awhile. I couldn't find any shorts anywhere. I found the column trace to the pin on the MCP and connected it directly to the individual row pins and it exhibited the same exact behavior - initial presses would register correctly as 1 key press, shortly after, it registers the entire row as a hit.

It's a relatively cheap fix costing about 5 bucks (shipping incl) but desoldering the IC was a PITA for sure.
Glad to hear you fixed your ED.
My problem is on the right side so it's a bit more expensive (17e for the teensy I think).

peonpeon

30 Apr 2014, 22:52

!!!! 1 week in and the problem returns! :-x :-x :-x
but this time it is happening to me 2wsx\<del> trace!

I did purchase another MCP so i'll i'll try replacing one last time before i try replacing the PCB altogether

User avatar
alinh

14 May 2014, 10:08

Now my left hand half is acting up out of the blue...
top (number row) gets all activated on any of the number key press :(

WTF?!!!??

peonpeon

05 Jun 2014, 00:43

Update:
I replaced the MCP, soldered in an IC slot for the chip, tested each individual diode on the affected column, replaced one or two diodes that i thought were acting funny, and it started working fine again.
(though i stripped the trace to hole in on the right handed board but that was a separate issue i fixed)

Everything was working fine! even brought it overseas for work.
About 1+ months in, the problem jumped from the left hand to the Right hand! and this time it is the -]'<r-shift> column!

WTF!

could it be a fried diode or something?

Post Reply

Return to “Keyboards”