Author Topic: [HELP] Switch registers random key press on Leeku TX87KIN L3 PCB  (Read 4401 times)

0 Members and 1 Guest are viewing this topic.

Offline ctrlX

  • Thread Starter
  • Posts: 302
Hi everyone!

I have a strange problem with my Leeku TX87KIN L3 PCB. I am turning towards the community in hope of some help and assistants. Any suggestions and/or help would be greatly appreciated. Prior to writing this thread I have spent about 2-3 days searching the forum and Google for any answers to my particular problem. Unfortunately without success, hence I am writing this.

Before describing the problem I would like to share some background information about this specific PCB. I bough this new and un-assembled TX-87+TX-Pad directly from kin25. Great guy by the way  :thumb: Since this would be my 2nd TKL I wanted to try out a different bottom row with a 7u space bar (1.5 x 1 x 1.5 x 7 x 1.5 x 1 x 1.5). After finishing the build the firmware was a bit wonky. My PCs had a hard time recognising the keyboard. It would constantly show up in Device Manager as "Unknown USB Device (Device Descriptor Request Failed)". JigOn was not able to connect to the board and I was not able to flash it using l3cmd.exe. I tested this on several different PCs and after changing several USB ports, PCs and USB cables I managed to flash it using an old laptop with Windows 7 installed on it. I had no luck at all with Windows 10 and 8.1. After a few weeks the board stopped working completely. No key presses were registered and no RGB LEDs were lit. After a lot of searching the GH forum, Reddit and Google I started to suspect that the firmware and/or bootloader was corrupt. So I decided to try to flash it using an USB programmer by connecting it directly to the PCB. I went and bought an USBASP USBISP AVR Programmer (https://www.google.se/search?q=USBASP+USBISP+AVR+Programmer&oq=USBASP+USBISP+AVR+Programmer&aqs=chrome..69i57j0l5.273j0j7&sourceid=chrome&ie=UTF-8) and successfully managed to re-flash the entire thing with the help of the following URLs:


After this the board was fully functional. Oh the joy! I had no problems with it and tested both JigOn and l3cmd.exe on multiple different PCs at both work and home. Everything was working perfectly.

After using it every day at work for about 1-2 months I still could not get used to the large space bar. I am an ISO user located in Sweden and use the Alt Gr key extensively. Having Alt Gr re-located so far to the right because of the larger space bar was too much for me. So I decided to change the bottom row to a standard one with 6.25u space bar that I am more used to. This would not be my first de-soldering experience with a Korean custom PCB and as always I was extremely careful when pulling out the switches. Before inserting the switches on the bottom row I tested for damaged and/or lifted pads by shorting the switch pads and observing the result in EliteKeyboards Switch Hitter (https://elitekeyboards.com/switchhitter.php). Everything looked good so I went ahead and installed my new bottom row and soldered the switches. Once again I tested them using the Switch Hitter software from EliteKeyboards to detect chatter. During this test I quickly observed that my left Alt switch was registering key presses without me even touching that particular switch. I figured this was caused by a faulty switch so I de-soldered it. Before installing a new switch I tested the board once again in Switch Hitter and everything looked good. To my big surprise the exact same phenomenon was observed after soldering in (once again) a brand new Zealio switch.... The TX-87 plate supports switch-top removal so I popped up the left Alt switch and removed the stem and spring while the board was still connected to my computer. During that time I observed multiple random key presses in Switch Hitter. I performed the same procedure for the entire bottom row and could still see that left Alt switch registered key presses without me even touching the board. So I figured the firmware and/or bootloader was corrupt again since that was the case previously. Once again I re-flashed the entire thing using my USBASP USBISP AVR Programmer but this time it did not solve the problem...

So here I am completely confused as to what is going on with this board. I doubt this is caused by damaged traces or pads. I also doubt I managed to install a faulty switch twice. Especially when I used brand new switches (not harvested or similar). So I humbly ask for help with this. Thank you in advance.

Offline raxander

  • Posts: 36
  • Location: Wilmington, DE
Re: [HELP] Switch registers random key press on Leeku TX87KIN L3 PCB
« Reply #1 on: Tue, 11 July 2017, 15:23:25 »
Hopefully someone who knows what they're doing will take interest in your problem, but until then I'll suggest something dumb:  Use a circuit tester on the switch to isolate whether the switch is making a circuit even when not activated.  If it doesn't the problem is the board, controller or firmware.  If it does, then you may have just melted and deformed the bottom housing on both switches.  Those zealios with the transparent bottom housing are said to be more sensitive to heat than the opaque housings and if you apply too much heat it can make them chatter.  If that turns out to be the case, who knows why it only happened with two switches in that location and no others, but maybe there's something about that location on the board that required you to apply heat for longer to the joint?  At least it's a quick test and you can rule out the switches as being the problem.  If it is the case that you burned both switches, you could try another but make sure to go light on the heat, or swap in a switch with opaque housing which will be less heat-sensitive perhaps.

Apologies if I haven't understood the problem correctly!  Interesting one, curious to see how it turns out!

Offline ctrlX

  • Thread Starter
  • Posts: 302
Re: [HELP] Switch registers random key press on Leeku TX87KIN L3 PCB
« Reply #2 on: Tue, 11 July 2017, 16:13:47 »
Hopefully someone who knows what they're doing will take interest in your problem, but until then I'll suggest something dumb:  Use a circuit tester on the switch to isolate whether the switch is making a circuit even when not activated.  If it doesn't the problem is the board, controller or firmware.  If it does, then you may have just melted and deformed the bottom housing on both switches.  Those zealios with the transparent bottom housing are said to be more sensitive to heat than the opaque housings and if you apply too much heat it can make them chatter.  If that turns out to be the case, who knows why it only happened with two switches in that location and no others, but maybe there's something about that location on the board that required you to apply heat for longer to the joint?  At least it's a quick test and you can rule out the switches as being the problem.  If it is the case that you burned both switches, you could try another but make sure to go light on the heat, or swap in a switch with opaque housing which will be less heat-sensitive perhaps.

Apologies if I haven't understood the problem correctly!  Interesting one, curious to see how it turns out!

Thank you very much for the reply and suggestion. Yes Zealios are known to melt easily. I learned that the hard way during my first custom build. Since then I have always been very careful to just heat up the pad with my soldering iron and apply solder quickly (hit and run).

Your suggestion regarding circuit tester is a good one. I guess using a multimeter will also work  :D Unfortunately I have already done this. While the board is connected to a PC the multimeter does not detect that the switch is making a circuit, meaning it does not beep. At the time of writing I have once again de-soldered the left Alt switch. When connecting the board to a PC I can observe in Switch Hitter that the same key is registering random key presses, even though it does not have a switch installed!  :eek:

So I started de-soldering other switches on the bottom row. Right now the following keys have no switch: left Alt, Space and Menu/Fn. Switch Hitter is still registering the same phenomenon... sigh

Having done this, do believe it is even more probable that it is a busted controller or firmware?

EDIT: I've re-flashed the board about 5 times now. Using both USBISP AVR Programmer and normal USB cable with l3cmd.exe. Still the same problem...

Offline tp4tissue

  • * Destiny Supporter
  • Posts: 13565
  • Location: Official Geekhack Public Defender..
  • OmniExpert of: Rice, Top-Ramen, Ergodox, n Females
Re: [HELP] Switch registers random key press on Leeku TX87KIN L3 PCB
« Reply #3 on: Tue, 11 July 2017, 16:14:50 »
check the soldering specification,  it should say things like 3 second maximum or 2 second , something like that.

Offline merlin64

  • Posts: 1273
  • Location: Seattle, WA
    • MechMerlin
Re: [HELP] Switch registers random key press on Leeku TX87KIN L3 PCB
« Reply #4 on: Tue, 11 July 2017, 16:26:03 »
That is some thorough testing already, great job.

I would consider

1. Testing the diode connected to that switch or those that are in the same path. Broken diodes can do some crazy things.
2. I would probe the pin on the micro-controller that the switch is connected to. I'd be curious to see if it's something related to the switch PCB connections or something on the microcontroller.

Offline raxander

  • Posts: 36
  • Location: Wilmington, DE
Re: [HELP] Switch registers random key press on Leeku TX87KIN L3 PCB
« Reply #5 on: Tue, 11 July 2017, 17:04:57 »
Quote
That is some thorough testing already, great job.

Yes! I love the description of the problem and meticulous approach by OP. 

Are you able to visually inspect the front of the PCB to see that the pads are not bridged?  I'm guessing you have the other switches still soldered on, but maybe you can see it since it's right at the edge?  I'm picturing some nasty ball of solder or stray wire bridging them.


Offline ctrlX

  • Thread Starter
  • Posts: 302
Re: [HELP] Switch registers random key press on Leeku TX87KIN L3 PCB
« Reply #6 on: Tue, 11 July 2017, 17:20:50 »
Thank you for the reply merlin.

That is some thorough testing already, great job.

I would consider

1. Testing the diode connected to that switch or those that are in the same path. Broken diodes can do some crazy things.

I am far from electronics savvy or an engineer, but testing a diode I can do with a bit of help from Google.  :) Diodes seem fine on the entire bottom row. I also tested all the diodes on the row above. They all seem fine. Each is giving me a reading of ~0.575V

2. I would probe the pin on the micro-controller that the switch is connected to. I'd be curious to see if it's something related to the switch PCB connections or something on the microcontroller.

Here I am at a complete loss. Do you mean I should check continuity between one of the switch pads and the pin on the micro-controller? How do I go about finding out which pin on the micro-controller is connected to the switch pad/joint?

Offline ctrlX

  • Thread Starter
  • Posts: 302
Re: [HELP] Switch registers random key press on Leeku TX87KIN L3 PCB
« Reply #7 on: Tue, 11 July 2017, 17:26:45 »
Quote
That is some thorough testing already, great job.

Yes! I love the description of the problem and meticulous approach by OP. 

Are you able to visually inspect the front of the PCB to see that the pads are not bridged?  I'm guessing you have the other switches still soldered on, but maybe you can see it since it's right at the edge?  I'm picturing some nasty ball of solder or stray wire bridging them.

Thank you for taking interest in my issue here  :thumb:

Yes, bridged pads could be it. Unfortunately I would have to de-solder the entire bottom row. As it is practically impossible to see from the front if that would be the case. So far I've removed left Alt, Space and Menu/Fn switches.

Offline ctrlX

  • Thread Starter
  • Posts: 302
Re: [HELP] Switch registers random key press on Leeku TX87KIN L3 PCB
« Reply #8 on: Tue, 11 July 2017, 17:56:53 »
So I just de-soldered two more switches; right Alt and right Win-key. I then connected the board to my test PC and immediately observed this in Switch Hitter.

173036-0
173038-1

This is without me even touching the keyboard. What the fudge is going on with this thing...?

(I fear this PCB is FUBAR)
« Last Edit: Tue, 11 July 2017, 18:01:01 by ctrlX »

Offline hkf

  • Posts: 206
  • Location: Sydney, Australia
  • your #1 fan
Re: [HELP] Switch registers random key press on Leeku TX87KIN L3 PCB
« Reply #9 on: Tue, 11 July 2017, 17:59:04 »
So I just de-soldered two more switches; right Alt and right Win-key. I then connected the board to my test PC and immediately observed this in Switch Hitter.

(Attachment Link)

This is without me even touching the keyboard. What the fudge is going on with this thing...?

(I fear this PCB is FUBAR)

looks like a shorted trace on the row or a bridged mcu pin

Offline ctrlX

  • Thread Starter
  • Posts: 302
Re: [HELP] Switch registers random key press on Leeku TX87KIN L3 PCB
« Reply #10 on: Tue, 11 July 2017, 18:07:07 »
looks like a shorted trace on the row or a bridged mcu pin

Pardon my lack of knowledge regarding electronics, but how can a trace be shorted?

I have inspected the micro-controller very closely using a looking glass and I cannot see any of the pins being bridged. Do you think it might be bridged somewhere else on the PCB, i.e. away of the actual location of the micro-controller?

Offline hkf

  • Posts: 206
  • Location: Sydney, Australia
  • your #1 fan
Re: [HELP] Switch registers random key press on Leeku TX87KIN L3 PCB
« Reply #11 on: Tue, 11 July 2017, 19:50:32 »
looks like a shorted trace on the row or a bridged mcu pin

Pardon my lack of knowledge regarding electronics, but how can a trace be shorted?

I have inspected the micro-controller very closely using a looking glass and I cannot see any of the pins being bridged. Do you think it might be bridged somewhere else on the PCB, i.e. away of the actual location of the micro-controller?

http://www.eetimes.com/author.asp?section_id=30&doc_id=1284424

it can possibly be bridged elsewhere but its rare. my course of action would be just to get a new pcb