Problem with my DYI mechanical keyboard

nexaddo@gmail.com

10 Nov 2015, 15:24

Hey guys,

I'm having a little problem with my keyboard project specifically it no longer works.
It worked just fine thus I started putting it togheter (finishing the case, arranging the wires inside so it would fit, etc).
Once all was done I decided to see if all checks out, and it did minus 2 and W, my assumption was that that was the faulty wiring for those specific keys. I opened it up and all seemed alright, so I put everything back together (the case that is) and surprise surprise....everything went haywire:
-majority of the keys didn't fire
-I only get input for 9 b and z
-multiple keys give output to "9" "B" "Z" and "W"
- the windows key works as it should

What have I tried:
I've checked the wiring 3 times now.
resoldered some of them that seemed off.
I've reflashed the firmware 3 times now.(because at some point windows gave me the unrecognized device plugged)
checked each diode
checked for shorts on the circuit

My question would be if anyone encountered this problem and if they know how to fix it, or what's the root of the problem?

User avatar
gogusrl

10 Nov 2015, 18:38

post pics of your work first (as in the wiring and stuff), we'll go from there.

nexaddo@gmail.com

11 Nov 2015, 14:37

I not sure how would that help...the wiring didn't changed from the last time I used it and it worked then. I'm more curios about the behavior of the Teensy 2.0...what exactly does it do when it's broken.

I've rewired everything and it does the same thing, furthermore I only wired one column in an attempt to root out the bad ones and it does the same thing.

User avatar
Ray

11 Nov 2015, 17:37

nexaddo@gmail.com wrote: I'm more curios about the behavior of the Teensy 2.0...what exactly does it do when it's broken.
If it is broken, it behaves broken. Rarely happens and behaviour is inconsistent obviously. If it is a broken MCU, there is little we can do for you.
If it isn't, then show us your beautifull wireing, because it is always the wireing. The only way to make us think it isn't is show us pics of good work.
On a side note: you don't have a conductive case that shorted out stuff, do you?

nexaddo@gmail.com

11 Nov 2015, 18:13

I've attached a picture (it's missing the wiring for the rows)
It doesn't have any metal in the encasement (it's made out of wood)
Attachments
WP_20151108_15_38_31_Pro.jpg
WP_20151108_15_38_31_Pro.jpg (597.07 KiB) Viewed 3623 times

User avatar
tlt

11 Nov 2015, 20:27

What firmware are you using? It could be a bug in it. I had a problem once with a broken pull-up resistor in a atmega32u4 that gave a very random behavior but I guess that is a pretty uncommon problem.

nexaddo@gmail.com

11 Nov 2015, 20:30

I'm using this one...
http://deskthority.net/workshop-f7/how- ... t7177.html

It's actually par in par with the tutorial presented here (i have the same layout 15/5)
I'm not familiar to other firmwares or how to program or if they work on teensy 2.0.

I'm open to any suggestions, I want to eliminate all possible options before I go and order another Teensy board.

User avatar
tlt

11 Nov 2015, 20:57

That guide has been used a lot so if you are following it your probably fine when it comes to firmware. Hook up the teensy to USB without the matrix connected and try to shot a row pin and a column pin manually with a wire and see if you get a char.

User avatar
Ray

11 Nov 2015, 21:25

Well, your solderjob looks good enough. If it did work once, that shouldn't be the problem. Except I cannot see wires connected to your rows.

What did you do between the working condition and the broken one? You described it was working and the only thing you did was putting it into a case and arranging wires.
If there was no reflashing of the firmware involved in between, I would rule that out. The problem sounds to me a bit like you could have messed up the rows and columns, but if it worked fine before, that's probably not the case.
When arraning the wires, did you change the physical connection of the wires to the teensy? Again, I don't think that's the problem - you would have mixed up connections quite a lot to get only 5 switches working correctly.
-majority of the keys didn't fire
-I only get input for 9 b and z
-multiple keys give output to "9" "B" "Z" and "W"
- the windows key works as it should
so 9, b, z and winkey work like they should and a minority of the rest also register as them or W? If so, is there any correlation to your matrix?

nexaddo@gmail.com

11 Nov 2015, 22:10

@Ray:

The columns aren't wired because the picture was taken before soldering those...I didn't got the chance of making one with all the wires present; also at the moment I'me re-doing some of the wiring inside it to eliminate any hardware problems (errors in my work) thus I cannot put a newer picture.

How it ended up not working- after I've completed the matrix and soldered everything on the board I've baked the firmware on the Teensy and fired it up and everything worked (all the keys) as it should.
But I still had to find a goof place for the teensy board to sit, and to place the backplate, add the small legs on the back, some finishing touches, I've placed the keycaps....all these operation were done at various times during the week and I checked the keyboard every time to make sure that all is good (also because I was happy it works and I just wanted to see it working little by little).
But just when I thought I've finished all and I was ready to say 'now I can use it on a daily basis" I've plugged it on the pc and 2 key didn't work 'i' and'8' (which are on the same column) so I opened it up again and check on those keys; all set and done I plugged it again and then multiple keys didn't work (60%) most of them didn't register anything, the 40% just fired random characters x instead of g, etc.

I haven't changed the wiring or anything just arranged the wires inside to sit all together and make sure that nothing touches something that it shouldn't.

I've reflashed the firmware afterwards like 4 time and nothing(the same behavior)

I don't think there's a correlation to my matrix all- the keys that actually fire up something on the screen is either 9 b z or w, for 9 and b I think is just coincidence. Also it doesn't have any sense what so ever...those keys are not on the same row/column (physically or software)

@tlt:
Not sure what you mean by "Hook up the teensy to USB without the matrix connected and try to shot a row pin and a column pin manually with a wire and see if you get a char."

I had all the rows connected and only the firs column connected, and the result was the same (a random b or a d and definitely not the key I was pressing.

User avatar
tlt

13 Nov 2015, 20:33

Check the pull-up resistors, you should have 5V between ground and each of the column pins.

nexaddo@gmail.com

14 Nov 2015, 04:04

I presume that this value should happen while the controller is plugged.

User avatar
Ray

14 Nov 2015, 10:18

Yes, there won't be any voltage if not plugged in.

I think tlt's advice is not bad; since you are sure it isn't the matrix, check the teensy.
Hook up the teensy to USB without the matrix connected and try to shot a row pin and a column pin manually with a wire and see if you get a char.
what he means is: disconnect the matrix from the teensy and bridge/short a row pin with a column pin (like the matrix would do on a keypress). This rules out mistakes in the wireing and tests the programme more directly.

nexaddo@gmail.com

15 Nov 2015, 13:05

I get 4.79V between GND and column pins. I get nothing with the row pins.

Also I tried to sot a row pin and a column pin manually (actually all of them) and the result is "b99bb95b95bbbbbbbbbb rrrrrrr8cec8888888888ce8cccceeeeeeeeeeeeeeeeeeeeeeeeeevffssfshhhhs;99hs;999ms.;9999mm..m.biiiiiiiiibzzzwzzzwzzzwwwwwwwww99999sssssssssss"

User avatar
Ray

15 Nov 2015, 13:17

all of them together? That wouldn't be too conclusive. Just short a single row to a single column, then you should get the equivalent to the corresponding keypress.

If the output you posted is from a single "keypress", get a new teensy.

nexaddo@gmail.com

15 Nov 2015, 20:07

I took each individual pin one at a time (mostly trying to check if one is broken) some didn't register and others registered keys that weren't on that row....so yeah the teensy is broken. :( which is a shame because now I'm not sure if I should buy another one if it breaks so fast. Not to mention we are approaching holiday season tush shipping will be a problem......

Thank you all for your help/

Post Reply

Return to “Workshop”