My Apple II+ hates me, or I got a bad one off E-Bay. :/
Currently, the keyboard is not working correctly. The 1 - 2 - A - S - CR - Space - won't type. And you can't do anything without a carriage return.
Does this behavior sound like an encoder chip? I pulled the keyboard, tested the cable between the encoder and the motherboard, which checked out well, and tried to seat the encoder chip. But it still fails with the same six keys. I tried testing the carriage return with an ohm meter and got something back, but the layout is hard for me to read. But since I got something back with the carriage return, I think it might be the encoder that went bad. Any ideas?
If the ESC key also doesn't work it's either the encoder or just a bad connection on Pin 36 of the encoder (if you are really lucky). All those keys are on the same column of the matrix.
If you need a new encoder, then this is you solution, as I have never seen an encoder for Apple II+ for sale:
https://jcm-1.com/product/jcm-universal-keyboard-encoder/
Encoder Pin 36.png
Yeah. That's what I'm looking for. I couldn't think of a way to test Escape, but it's probably gone too.
If you boot in ProDOS 2.4.2 and use the arrow keys to change the selected item, hitting ESC causes the selection to go back to the first item.
Ctrl-M for RETURN?
If it isn't the encoder or a wiring/PCB problem it is probably bad key switches. It seems like a big coincidence if all the bad keys were on the same column but bad/dirty/corroded key switches area a common problem on these old machines. Also if the actual key tests with a meter as you indicate, then could be the encoders. Unfortunately those chips aren't really easy to find. If it is bad keyswitches sometimes some contact cleaner will help but usually if they're badly enough corroded they will need to be replaced. Unfortnately the ][+ used several different types of key switches over the years and none of them are easily available. Some are super hard to find. Also some types of keyboards used in ][+ are easier to work with than others. Availability of encoders depends on which chip you've got. For some there may be a modern PLD based replacement.
According to ChatGPT if picked randomly, the probability of all 6 bad keys belonging to the same column is 0.15%: click!
Not sure if the calculation is correct though. I haven't done this type of finite math since high school.
Calculating the chances of key failures "from the same column" is extra complicated because not all columns are fully populated.
Given an equal likelihood of any 1 of 52 keys failing, the probability of an entire column failing (with no failures elsewhere) is
4*(10/52 * 9/51 * 8/50 * 7/49 * 6/48 * 5/47 * 4/46 * 3/45 * 2/44 * 1/43) + (7/52 * 6/51 * 5/50 * 4/49 * 3/48 * 2/47 * 1/46)
or 489/63280096880, or approx. 7.7 times in a billion.
The probability of just 6 keys failing and all being in the same column is
4*(10/52 * 9/51 * 8/50 * 7/49 * 6/48 * 5/47) + (7/52 * 6/51 * 5/50 * 4/49 * 3/48 * 2/47)
or 121/2908360, or approx. 0.004%.
Seems safe to say it probably isn't key switches that are the root cause... However it is still possible that it may be the encoder AND a keyswtich among those 6 is also bad. That would be a believable coincidence.
Anyway... What chip does that particular ][+ keyboard use? There were more than one over the years. Some of which may be easier to find or may have a modern replacement available.
Have the key contacts been tested for a closed circuit when one of these keys have been pressed? It seems like the best place to start.
Remove the case with keyboard, unplug keyboard ribbon from mother board and Ohm out the affected key switches...assuming the bottom of the keyboard circuit board looks somewhat similar to this, test the switch. If it doesn't work, unsolder and fix it if the switch is a Datanetix style switch that can be "surgically opened".
20230708_153157c.jpg
It was absolutely the keyboard encoder chip. Once I got the new one in, everything works fine.
- Thanks for the help
Which encoder chip was it and where did you find the replacement? Just asking for curiosity's sake and completeness for the thread...
I give it 99.85% probability that it was the JCM Universal Keyboard Encoder and I didn't need ChatGPT to calculate the odds this time! :)
I used: ReActiveMicro's SuperEncoder
Because I didn't want to pull any chips.
It worked for what seemed like 12 hours. Then the computer started acting weird again with the keyboard. At first, it was the original problem, so I popped in a PS-2 keyboard. The PS-2 keyboard I had worked, but not perfectly. Not all brands work with this encoder. I tried out the original keyboard, which was working at this time. So I closed her up and tried her out. The PS-2 keyboard seemed to work at this point, but when I tried it later that night, I got some strange stuff out of the original keyboard. It would accept CR, but then almost nothing else. I gave up at this point.
When looking at it a little further today, I wanted to try a different PS-2 keyboard. I found that having the case open allows the keyboard to work properly.
Now, I'm perplexed as to what to do. If the case is hitting the encoder and causing extra trouble now, I feel I need to mod the case. I'm sure the pin went bad with the encoder, but that could have been because the case was pushing on it and causing it to fail. Do you have any ideas about what to do with the case or how to get the keyboard in the perfect spot?
Sadly enough, this is what the cover looks like inside:
Apple Case
Yep, I had this exact issue myself on a couple of occasions and it causes the keyboard to start malfunctioning. The top cover is hitting the board-to-board connector (the thing that looks like a grill). This temporarily causes a bad connection between the two boards. Nothing can get damaged seriously because of this though. It's just annoying. In the worst case scenario it can break some solder joints, so you might have to resolder them.
Connector.JPG
How did you fix it? And if it happened on more than one machine, it must be kind of common. The only fix I can think of is take a Dremel tool to it. o.O
I didn't. I just make sure the lid doesn't sit too far forward. Also when I close the lid, I don’t slide it in at a very high angle and push it down. Instead I just slide it in at a very low angle.
But the main reason behind this problem is the unglued black "Velcro-like" lid tabs. The proper fix is to reglue them, so that the lid doesn’t move back and forth when it is closed. But I am yet to find a good way to permanently attach them to the cover, so they don't keep getting unglued.
Another idea is to attach some kind of stoppers near this board-to-board connector in order to prevent the lid from bumping it.
I'm fortunate that those velcro-like tabs are rock solid on my case. But I had no idea you need to seat the cover back a bit, or you might hit the encoder chip. There are two positions the cover will fit. So now I'm using the one that gives it more space between the two. Knock on wood, she's sealed up and working now. :)
I recently got done fixing up my II+ keyboard for a similar non-working key problem. These were also in the few I needed for things like witing up the memory test and other things I wanted to verify before moving forward. Hopefully others may find my work helpful.
Long story short it was a slow process and came down to carbon buildup/corosion on the key landing pads. The problem is the contact is a single point and if there's a pin point side buildup at the landing, that will prevent contact. The bad news is isn't not just hitting it with deoxit, for the keyboard I have DO NOT DO THIS! This is not a design where that would work, it acutally is counterproductive!
The fix was simple, but very detailed work under a microscope but now everything everything works great.
This is the board design:
IMG-2615.jpg
These are the switches notice the very small nubs which actually are the contact points, these are aluminum and as such are susceptible to a white minearal buildup, so these nubs need to be carefully cleaned to remove any buildup:
clean switch contacts.PNG
This is an example of the dirty contact, notice just how small the problem is!! The switch is designed with redundant contact points, but when either half has a double failure the switch does not work. In this case the righthand side has a very small build up and that's all it takes. This was not something which could be removed with wiping, that would get much of the materal, but did not provide a clean surface for that dental cleaning tools were needed.
corrosion.PNG
Same switch landing pads after cleaning, everything worked properly. You may notice, I also removed the soldermask which had covered some of the contact pade when built:
cleaned pads.PNG
When one sprays deoxit into the switches on this keyboard the fluid lands on the opening of the pad and then just gets wicked under the plastic shield. A lot of cleaner can be collected under that shield, and it took a whlie to clean that up! I won't do that again!
I agree, it's not wise to spray cleaners into things without knowing where they will go.
For brightening up contacts like you showed I would use a glass fiber brush or pen (such as Excelta 267). When used carefully this is an excellent way to improve contacts.
That's a great I idea I did not consider. I even had a set of those brushes right a the bench! At least worth exploring the next time.