• Please review our updated Terms and Rules here

Kaypro keyboard fault

I've found a local supplier. Thing is they only have CMOS Z80 SIO/0s (http://www.mouser.co.nz/search.aspx?searchTerms=z80+sio/0). Can I use these?

From looking at the DC characteristics in the spec sheet I found, it is a little confusing as there seems to be some typos, but they look equivalent in current sourcing and sinking parameters. The CMOS device should be OK.

Also they come in 6, 8 and 10Mhz. Is 6Mz ok for the Kaypro? Does it matter?

Tez
Since the prices are so close, go with the highest speed device.
-Dave
 
Coming to the rescue...

Hey Tez - I've got a Z80 SIO in captivity - what's also nice is I'm only 1 hours drive away...

Shall I post it over, or do you want to swing on by?

Philip

Edit: Made further contact by telephone. Tez is going to swing on by tomorrow (Sunday).
 
Last edited:
Philip,
That's good news. You've bailed out our boy so many times that I hope he buys you a pint! He shows great promise of becoming a really good computer hardware nerd. :)
-Dave
 
Hey at least I keep his scope exercised! :)

Yes, I can feel myself turning to the dark side. Even Chuck’s, Steve's, Dwight's, Andrew’s and Mike’s posts are starting to make sense to me (well…ok…occasionally they make sense). :D

On a coincidental note, a nice looking Kaypro II has just appeared on our Trade Me site. First one I’ve seen in my three years of looking.

Tez
 
Last edited:
Saturday, January 09, 2010

Tezza,

About your keyboard – it was working earlier and then suddenly stopped – that is odd for sure, as you know !

I found the Kaypro Hardware Bulletin for SMK keyboards (All), dated Feb 9, 1983
Part No : 81-130 Keyboard Assy

Purpose : To provide ground to frame of keyboard when using SMK keyboard.

You basically just solder a ground wire between 2 specific points they mention.

So if you have this particular keyboard, this may help.

It is 2 pink pages and is very simple.

I can FAX you this brief document or scan it and attach it as a file to a response on this web site.

Just let me know. I can PM with you also.

You have a very different Kaypro so you may have a very different keyboard.

They keyboard as somebody else mentioned just comes apart when you take the screws out. I have done it many times. But you said you are having some difficulty taking it apart.

Maybe there is some corrosion holding it together and preventing the proper grounding. This corrosion could have been suddenly disturbed to change the previous grounding areas on the keyboard case and components. Just a thought.

You are certainly approaching the issue correctly, as you always do in your vintage computer projects.

Frank

As always for all those reading this response – no liability in any way for me – please see my many disclaimers in other posts. Sorry we have to be so careful, but it can be necessary under certain circumstances.


P.S.

One quick thing it says to do is to just remove the paint under the screw to the right of the keyboard connector on the back of the keyboard, with the keyboard connector facing to the left.

This can improve the continuity and is essential.
 
Saturday, January 09, 2010


Tezza.

One other point.

All you experienced Kaypro collectors already know this, but for those who are not and who read this thread in the future on Kaypro keyboards, they should be aware that the coiled cable that connects the keyboard to the computer may look like a phone line cable, but “it is not.”

The connectors appear to be the same, which is an ingenious idea Kaypro had in many ways, besides deciding on the very then popular IBM Selectric typewriter keyboard style [www.selectric.org for museum, etc.].

But the coiled Kaypro cable is not the same as a phone cable.

According to the Kaypro Technical Manual [available for free online], the issue is the impedance of the wire in the coiled cable. It is 28 gauge copper [no smaller] and the cable length is 6 feet. It can be extended to 12 feet, but no further.

The phone cord wire is too small, so impedance can be too high for reliable operation.

Replacement of the standard Kaypro cable with a phone cord can create malfunctions in signal transmission to the computer.

It also appears that the connectors on both ends are reversed in how they are connected to the cable for the Kaypro.

Hope this is of some interest and help to future visitors to this site.

Frank
 
Not the Z80 SIO/0

Not the Z80 SIO/0

Just an update.

Seems I'm not out of the woods yet. I tried two Z80 SIO/0s Phillip gave me and the symptom remains with both. So I don't think the SIO is the problem.

It may be this large serial controller IC in the keyboard itself. I've looked and looked for a spec sheet for this IC without success. Anyone know of any? Or a circuit diagram of the keyboard? The IC is labelled M5L8049-109P-6. The 8049 seems to be a "class" of chip but I can't find pinouts.

Phillips ICs were Z80As not Z80s but I don't suppose that would matter.

Anyway... That's the situation. I don't think I can do much more until I know what the pinouts on the serial controller do and/or how the keyboard circuitry works.

Frank. yes, please send that document to me as an attachment. That would be great. Thanks. I'm not sure if the keyboard is of the type you mentioned. The only thing on it is a serial number: 048302020

Tez
 
I still suspect that you might be looking in the wrong place altogether; it sure sounds like the keyboard's working, and assuming that the keyboard generates the beeps locally, there are lots of problems that would keep the computer from accepting and processing input.

If it is indeed standard 300bd serial at TTL levels I wonder what Andrew and Philip would think of connecting the keyboard to something like a Tandy M100 to see if it's outputting data?
 
I still suspect that you might be looking in the wrong place altogether; it sure sounds like the keyboard's working, and assuming that the keyboard generates the beeps locally, there are lots of problems that would keep the computer from accepting and processing input.?

Perhaps. Regarding the Z80 SIO though, it seems odd to me that I can see an input signal on the SIO RxDB input pin but NOTHING on the TxDB output, the CE pin or any of the data lines coming off the SIO. They don't change at all. I assumed these pins would at least show SOMETHING in response to an input into the IC, yes? What would prevent them from responding? Or are any responses (on the data lines) so subtle I might not see them. They are certainly visible on the input line.

Tez
 
You mean there's no activity on D0 - D7? These are connected directly to the data bus, so I'd expect them to be wiggling all the time. Is the CPU even running at this time?

Another thing to look at would be the input from U78 (8116 baud rate generator) to pin 27 of the SIO. If I'm reading the schematic right, you should have a regular signal there. If not you could trace back through the inverters/triggers feeding into it (U73) and the 3-8 decoder before them (U57).
 
Well, the data lines should definitely be toggling merrily but at a much faster rate than the RxDB line, so you'd have to crank up your 'scope sweep speed to see them. The TxDB and CE signals both come from the computer side, so that would tend to confirm my suspicion that it has nothing to do with the keyboard but the computer itself is locked up or stuck in a wrong loop.

Have you tried the usual "reseat all socketed chips and connectors" ritual?
Is there a cursor ?
 
Tez,
This is a new twist in the story. The chip enable (CE) is a signal to the SIO when the Z80 executes an I/O instruction to the SIO address. Something is very wrong there. Since the display is running, the Z80 is working but maybe it got halted or reset or is waiting for a direct memory access (DMA) to complete. This is getting curiouser and curiouser. this one may be worthy of Sherlock Holmes. Steve is right, start with the basics. Make sure all the system clocks are running. You are going to get a lot of use out of Philip's scope.
-Dave
 
Guys,

I think you misunderstood me. There certainly is activity on all the Z80 SIO data lines (D0-D7) when the machine is at rest. I can see waveforms of various types. CE has a very small inverted waveform of about 1us. When I say inverted I mean the pin is essentially high, but there is a small square 0v dip. This is normal, yes?

So there is activity allright Steve. But there is no CHANGE in activity at all when a key is held down. The output signals on CE, and the data lines stay exactly the same whether a key is being held down or not. I would have expected to see some change in the waveform in the Data lines?

The reset pin works as it should when there is a reset. There is certainly a cllock signal. The machine boots as normal and the cursor is sitting there blinking. Just to make sure, I checked the clock pin. There is a bit fat square wave there.

Any suggestions of what other SIO output pins I should look at? Through what lines (apart from the data lines) should a signal travel out to the rest of the machine from the SIO? As I said, the D0-7 lines don't seem to change in response to keyboard input. There are some lines callled RxCA, TxCA and RxCxTB ...these show 0v whether a key is held down or not.

Tez
 
...stuck in a wrong loop.

Have you tried the usual "reseat all socketed chips and connectors" ritual?
Is there a cursor ?

"Stuck in a wrong loop" is a possibility but there is a blinking cursor and the boot is completely normal. The screen doesn't appear frozen.

I've reseated some ICs but not all. Every IC is socketed so it's a big job. One I might have to do though. Yes, connections etc. have been checked.

Tez
 
So there is activity allright Steve. But there is no CHANGE in activity at all when a key is held down. The output signals on CE, and the data lines stay exactly the same whether a key is being held down or not. I would have expected to see some change in the waveform in the Data lines?

Tez, it depends on how the Kaypro is programmed to react to key strokes. If it is interupt-driven, then yes you would see a small change in /CE activity. But if the Kaypro is simply polling for key stroke infromation then there would be no change in timing activity, only a change in data content from "no key character" during the /CE to "ASCII of key".

An advanced techique that requires two probes would be to fix one probe to the /CE and use it also to trigger the scope on its negative edge, and then use the other probe to check what the data lines are doing at that 1 uS /CE time. This of course will require that you use a 'chip clip' or to somehow tack (solder) a wire temporarily to the /CE signal so you will have your hands free to use the other probe. If you pull this off you will be an official hardware troubleshooter of high order.
-Dave
 
Hi Tez
I'm not familiar with the KayPro keyboard structure but I'll try to describe
what the general serial keyboard does.
First, I'm not too surprised that you don't see any data bus changes
while holding a key. Let me describe.
When a key is pressed, there should be a short burst of data
going from the keyboard to the computer. It is not a continuous
signal. The serial chip in the computer would sample this burst
and either create an interupt or wait to be sampled by the
code. This all happens very quickly. One key press, one
read to the data bus.
The fact that you see CE's being pulsed lead me to think it
mightbe using a poled rather than an interupt driven
read. It would be addressing the status register looking
to see if a serial burst had been recieved. If it was
recieved, it would change the address and do one
read of the data regster and then go back to looking
at the status register.
This would be one of the CE pulses not a lot of these
pulses. A simple scope would have a hard time capturing
this single access.
One would need to combine the CE with the address
lines to create the trigger and then monitor the data
lines at the 1 uS time. You'd need to create a conditional
trigger with something like a 74LS688 and some switches.
You might also like to have a single sweep and display
holds( some scopes do this ).
This is typically what a logic analyzer might do for you
but like I said, it is difficult to do since everything happens
in just a short time after you enter a key.
Dwight
 
An advanced techique that requires two probes would be to fix one probe to the /CE and use it also to trigger the scope on its negative edge, and then use the other probe to check what the data lines are doing at that 1 uS /CE time. This of course will require that you use a 'chip clip' or to somehow tack (solder) a wire temporarily to the /CE signal so you will have your hands free to use the other probe. If you pull this off you will be an official hardware troubleshooter of high order.
-Dave

Hehehe. Well the scope could certainly manage it (it has two input lines and a chip clip) but I have my suspicions about the operator.:)

Actually I only have one probe so although I can understand what you're saying, I'm not going to be able to do it. Shouldn't I see a small change in the data lines anyway just with one probe when a key is held down? The waveforms there seem to remain rock steady?

Tez
 
Back
Top