PDA

View Full Version : Kaypro keyboard fault



tezza
January 6th, 2010, 12:46 AM
One thing about vintage computers...you are never short of a project!

So here I was feeling very pleased with myself. I'd successfully replaced the caps in my Kaypro PSU, and I'd just run the unit through a disk drive and memory diagnostic test recently grabbed from the walnut creek archive. The Kaypro passed with flying colours on both tests. The memory test was done after the disk one. It took a long while and the machine was on for about an hour or so just ticking away.

After I finished I rebooted and...eh? No keyboard input!




Here are the symptoms...

The machine boots to the A> prompt as normal
There is no response to any of the keys at all
The keyboard is getting power. The caps light comes on.
The keyboard beeps faintly as you press each key (I think it did this when it was working). If you hold a key down it beeps continuosly as if some find of buffer is full?
A check on the cord shows there is continuity of all lines.
I have the technical manual and haven't yet had a good close look at this problem but I thought I'd post, in case anyone has come across this before. Any ideas?

Could it be the hex inverter IC (I've reseated it) between the keyboard and the Z80 SIO? What signal should you see on the serial data in /data out lines when a key is pressed? I'm ignorant as to how these types of keyboards work?

..and how do you get into the keyboard? I've undone all the screws but the thing seems clamped together?

As there is no response at all, I suspect some fault in the 74LS04N Hex converter IC, a possible dry solder joint either in the keyboard or at the connector on the motherboard (wriggling the cord doesn't make a difference though) or a fault with whatever IC's lie in the keyboard itself (if there are any).

Do these sound reasonable? Do the symptoms suggest anything different? Any hints on what I should look for?

Tez

tezza
January 6th, 2010, 01:00 AM
Just some follow up info before I go to bed. Measured on the connector to the motherboard, the serial data in line (i.e. from keyboard) shows a slight drop in voltage when a key is pressed. Voltage is about halved when a key is held down. However, serial data out line (to keyboard) shows a steady 4.9v regardless of keypress.

Does this suggest anything?

Tez

MikeS
January 6th, 2010, 07:36 AM
Kinda sounds like the problem isn't in the keyboard at all, but the computer not accepting input. Maybe Andrew will read this; he has experience with Kaypro keyboards, having converted one to parallel output.

tezza
January 6th, 2010, 09:04 AM
Kinda sounds like the problem isn't in the keyboard at all, but the computer not accepting input.

This is my hunch too. However, take a look at the attached schematic which shows the keyboard I/O on the Z80 SIO. Note that the output line (J3-4) says "beep". I take this to mean the beep in the keyboard only occurs when the computer acknowledges keyboard input. Well, the keyboard certainly beeps. I'm puzzelled that there is no voltage fluctuation that I can see but maybe I need to attach the scope to it.

2934

NobodyIsHere
January 6th, 2010, 09:19 AM
Hi! The KayPro keyboard is about as simple as can be. What you are describing sounds like the keyboard is working as it is sending characters to the KayPro main unit. I recommend tracing the circuit out with your logic probe. I'd also try swapping out the U71 74S04. Any 74x04 style device should work at least temporarily. Try using the KayPro monitor and see if you can access the KayPro SIO chip registers. If you can access them at all odds are it is working. I'd also considering writing a simple Z80 program to program the SIO to send out characters as fast as possible and see if it is causing the SIO and keyboard connectors output signals to wiggle.

Thanks and good luck!

Andrew Lynch

MikeS
January 6th, 2010, 09:38 AM
This is my hunch too. However, take a look at the attached schematic which shows the keyboard I/O on the Z80 SIO. Note that the output line (J3-4) says "beep". I take this to mean the beep in the keyboard only occurs when the computer acknowledges keyboard input. Well, the keyboard certainly beeps. I'm puzzelled that there is no voltage fluctuation that I can see but maybe I need to attach the scope to it.
I'm not intimately familiar with the Kaypro, but is it possible that the keyboard can generate its own keyclicks as well as receiving beep commands from the main unit? Alternately it's possible that the main unit is not processing or displaying input but is still smart enough to beep.

If you've still got Philip's scope, have a look at the data and beep lines; it sounds like the keyboard's sending something all right, but perhaps not in the correct format.

I'm not sure how you'd implement Andrew's suggestion to use the monitor or write a simple program without a keyboard though...

cosam
January 6th, 2010, 09:55 AM
I'm puzzelled that there is no voltage fluctuation that I can see but maybe I need to attach the scope to it.

Yeah, even a relatively slow serial signal is going to be too fast for a VOM to pick up. You're talking about rapid fluctuations which average out to almost nothing over time.

Maybe take a look at the other side of the PIO while you're there. If the "beep" line is indeed responsible for the key clicks, could it be that the keystrokes are getting far enough to trigger a click, but not through to the CPU?

NobodyIsHere
January 6th, 2010, 10:04 AM
Hi Mike! What I would try is swapping the keyboard with a similar unit. I have three KayPro 10's in the basement and a little "swaptronics" will help fault isolate in a hurry. Maybe something similar would be of help in this situation.

If that is not an option, try burning a replacement EPROM with a "scream" type program. The program initializes the SIO and sends characters out serial port as fast as possible. It makes it easy to debug the serial port since you can obviously trace the signal with a logic probe. Since the KayPro uses a TTL serial line it is pretty simple to trace.

AFAIK the KayPro has an audible "key click" so I recall it sends data back to the keyboard. You should be seeing a "blip" on the KayPro keyboard output with every key press. If not, the inverter or SIO is probably dead. I am betting on the 74S04 myself although I've seen SIO/DARTs keel over and die too.

Thanks and have a nice day!

Andrew Lynch

tezza
January 6th, 2010, 11:03 AM
Thanks for those comments guys,

Andrew, yes a keyboard swap would be a quick way of isolating the fault. Unfortunately I only have one and don't know anyone here who has another. They are not that common in NZ. I don't have an EPROM burner either. Although I'm moved some way from total newbie to competent and fully equipped techie like yourself, Steve and Mike, I still have a long way to go (-:

>AFAIK the KayPro has an audible "key click" so I recall it sends data back to the keyboard.
>You should be seeing a "blip" on the KayPro keyboard output with every key press.
>If not, the inverter or SIO is probably dead. I am betting on the 74S04 myself although
>I've seen SIO/DARTs keel over and die too

Yes, this is the puzzelling thing. The circuit diagram would suggest the click (beep) is an output to the keyboard in response to input. The keyboard certainly beeps with every keypress just like it did when it was working.

I take your point about the voltage drops being hard to detect Steve. On the serial input line from the keyboard they are hard to detect with a DMM with single presses but if you hold a key down, there is a definite voltage drop. I would have expected the same on the output line (to the keyboard) when holding a key. Certainly the keyboard beeps furiously when you do this but there is no drop in voltage I can see. There is no "blip" I can see on the output line like I can on the input line. However, I'll check both lines with a scope.

>I am betting on the 74S04 myself although I've seen SIO/DARTs keel over and die too.

These are also my two suspects. Unfortunately I don't think I have a spare 74LS04..I might have to scour some of my parts machines and if I find one unsolder it. I think I have got a spare SIO Z80 somewhere. Luckily all the ICs in the Kaypro are in sockets.

Andrew, I can't find a circuit diagram showing just what's inside the keyboard. What ICs are in there if any? Also, do you know how to open one up? I've undone all the screws. Does it just need brute strength to prise the top off?

Tez

NobodyIsHere
January 6th, 2010, 11:45 AM
Hi Tezza,
As I recall, the KayPro keyboards are held together with screws and are pretty easy to take apart. Remove the screws and the top of the keyboard should pop right out. I would verify all the connections are OK in the keyboard and verify continuity to the connectors on the KayPro.

Upon power on, are you seeing characters on the KayPro display or blank screen? Does the caps lock light work on the keyboard?

The guts of the KayPro keyboard are really simple. I believe it was a very simple microcontroller (8048?) reading the 8 bit keyboard and sending the TTL 3 wire serial back to the KayPro. It is 300 bps, 8, n, 1 as I recall. I don't recall if there is a UART or not but I think it was a just single uC chip and maybe one or two inverters.

To me it sounds like the devices on the KayPro motherboard have a problem. You could substitute temporarily almost any TTL inverter like a 74LS04 or 74LS14. Most any family should work at least for a while although it would make sense to me to replace the 74S04 with another 74S04. They are faster, have more drive ability, and use a lot more power than typical 74LSxx parts.

Thanks and have a nice day!

Andrew Lynch

tezza
January 6th, 2010, 12:16 PM
Upon power on, are you seeing characters on the KayPro display or blank screen? Does the caps lock light work on the keyboard?


The screen seems fine. The A> prompt is displayed and the cursor is bliniking so it isn't frozen. No characters at all appear on a keypress though. Nothing. The cursor just sits there blinking in an infuriating way waiting to receive something. :)

Oh, the caps light goes on so it certainly is getting power.

Sounds like the top of the kaypro keyboard just needs brute force to pull it off. I'll give it a go.

Tez

tezza
January 6th, 2010, 12:37 PM
You could substitute temporarily almost any TTL inverter like a 74LS04 or 74LS14. Most any family should work at least for a while although it would make sense to me to replace the 74S04 with another 74S04. They are faster, have more drive ability, and use a lot more power than typical 74LSxx parts.


Hmm...this may be a clue. I have a feeling that the existing IC in there IS a 74LS04 not a 74S04 as listed on the circuit diagram. It must have been substituted in the past and perhaps has "worked for a while" to use your own words.

And now it's stopped working maybe.

Anyway, very quick and useful support guys, thanks for the comments. I'll have to wait until I get home tonight to further investigate this but I think finding (and substituting) that hex converter will be a priority.

Finding one might not be that easy. I seem to have plenty of 74LS02s and 74LS05s from the Apple score but I'll have to check my parts circuit boards for any 74LS02s or 74S02s.

Tez

tezza
January 7th, 2010, 01:29 AM
Well, the 74LSO2 seems to check out ok. There is actually another one elsewhere in the board. I swapped the two and got exactly the same symptom. I then checked out the various inverters in the chip with the scope. On the incoming inverters from the keyboard (pins 13 and 12, and 11 and 10) all looked normal. What's more if I held a key down, the signal certainly fluctuated between 0 and 5. You could see it on the scope. On the outgoing signal the inverters (pins 1 and 2, and 3 and 4) were also "inverting" as they should. But the signal was steady at 5V even when a key was held down (and the machine was beeping madly.). It was a steady 5v at the Z80 SIO output pin 26.

I managed to prise the top off the keyboard. There are 3 ICS there, one being a large 40 pin one. I checked the continuity from the keyboard board connections right through to the main kaypro board. Connectivity is fine.

So, where does this leave me?

I'm not sure. It could be the Z80 SIO as it doesn't seem to be returing a signal back to the keyboard. If it was I should see it, right? It just holds at 5V. Turns out I don't have a spare z80 SIO after all, so I couldn't swap it out to check.

Or is it the keyboard? I'm still very puzzelled as why the keyboard should beep so vigourously when the indication is it's not getting a signal back? The signal should be as obvious as the input one yes? On maybe no? I'd like to know if it really HAS to get a return signal from the main unit to beep. I tried to look for a circuit diagram for the keyboard but without success.

With no spare keyboard and no spare Z80 SIO chip, does anyone have any ideas on how I might definitively eliminate either one or the other? If I have to import something as a replacement, I'll want to be sure that it's the component at fault.

Tez

cosam
January 7th, 2010, 01:56 AM
On the outgoing signal the inverters (pins 1 and 2, and 3 and 4) were also "inverting" as they should. But the signal was steady at 5V even when a key was help down (and the machine was beeping madly.). It was a steady 5v at the Z80 SIO output pin 26.

That would certainly suggest that the beep is independent of that signal and generated by the keyboard itself.


It could be the Z80 SIO as it doesn't seem to be returing a signal back to the keyboard. If it was I should see it, right? It just holds at 5V.

You should be able to see it but if the above is true (i.e. that the beep is coming from the keyboard itself) there needn't necessarily be any signal to see. It's probably only used when the computer needs to send a beep to the keyboard.


With no spare keyboard and no spare Z80 SIO chip, does anyone have any ideas on how I might definitively eliminate either one or the other? If I have to import something as a replacement, I'll want to be sure that it's the component at fault.

If the SIO is working correctly, I'd expect to see something pop out the other end when you press a key. What that something is will depend on how the SIO is programmed. Is see the /INT is hooked up to something - does that change at all? If the CPU is servicing the interrupt you'd also expect /CE to go low when it accesses the SIO.

tezza
January 7th, 2010, 02:04 AM
Hi Steve,


If the SIO is working correctly, I'd expect to see something pop out the other end when you press a key. .

Yes, me too. I'll check those other pins tomorrow.

Tez

dave_m
January 7th, 2010, 07:42 AM
Or is it the keyboard? I'm still very puzzelled as why the keyboard should beep so vigourously when the indication is it's not getting a signal back? The signal should be as obvious as the input one yes? On maybe no? I'd like to know if it really HAS to get a return signal from the main unit to beep. I tried to look for a circuit diagram for the keyboard but without success.

Tez
Tez, can you find a sound element (piezoelectric device, etc) in the keyboard? If it goes to the big controller chip, the keyboard makes the sounds itself. From your analysis so far, it's starting to look like the SIO is not responding correctly to keyboard signals.

tezza
January 7th, 2010, 09:02 AM
Tez, can you find a sound element (piezoelectric device, etc) in the keyboard? If it goes to the big controller chip, the keyboard makes the sounds itself. From your analysis so far, it's starting to look like the SIO is not responding correctly to keyboard signals.

Yes, I can certainly see that piezo. I'll have to trace it to find out where it goes.

What's confusing me is the following post(s) which appeared in comp.os.cpm. They explain how the keyboard works...more so than the technical manual. They say:

Sean Tash wrote in message <3ca78ed3.111276...@news.mco.bellsouth.net (3ca78ed3.111276...@news.mco.bellsouth.net)>...
>Hi. does anyone have documentation on the keyboard interface on a
>Kaypro II computer? I'm missing the keyboard to one and want to make
>an adapter using an PIC mcu so I can use a PC keyboard. thanks.

The keyboard connects to Kaypro II via Port B of the serial chip U70 at 300
baud. Control is Port 07H, and data 05H. Rx and Tx signals are buffered
thru a 74504 chip. Four wires -- #1 appears to be power (?+5v), #2 data out
to kaypro, #3 is ground, and #4 is output from kaypro to keyboard to trigger
the beep. Unless the 74504 modifies the voltages, it looks as though the
standard 12v RS-232C signals are used. Simple polling is used to read the
data input. The serial chip has a three byte buffer, and excess input
overwrites the last byte.
Hope this helps.

Walter Rottenkolber

From: William Meyer
Date: Tues, Apr 2 2002 9:03 am
Email: William Meyer <wmhme...@earthlink.net (wmhme...@earthlink.net)>
Groups: comp.os.cpm

In article <3ca9447...@news.sierratel.com (3ca9447...@news.sierratel.com)>, wal...@sierratel.com (wal...@sierratel.com) says...

> The keyboard connects to Kaypro II via Port B of the serial chip U70 at 300
> baud. Control is Port 07H, and data 05H. Rx and Tx signals are buffered
> thru a 74504 chip. Four wires -- #1 appears to be power (?+5v), #2 data out
> to kaypro, #3 is ground, and #4 is output from kaypro to keyboard to trigger
> the beep. Unless the 74504 modifies the voltages, it looks as though the
> standard 12v RS-232C signals are used. Simple polling is used to read the
> data input. The serial chip has a three byte buffer, and excess input
> overwrites the last byte.

Call it a 74S04, and the signals are standard TTL, not RS-232.
That says a beep is caused by feedback back to the keyboard. This ties into the fact that the word "beep" is written on the schematic on the output line. I imagine the reason for transmitting a beep back is to verify keyboard input has been received. If the keyboard creates the beep itself, does not that somewnat defeat the purpose of having that feedback mechanism?

Another theory. A beep is heard with just a single keypress on the machine in its present state. This was the case even when the machine is working properly (and explained above) so it's not just an overflow signal like it is in some computers. However the text above says the serial chip has a three byte buffer. Perhaps when fhe buffer is full it ALSO causes a beep through a different circuit. From a design point of view it would be sensible to include this, although that wasn't mentioned above? Now if the keyboard THINKS the buffer is full even if it's not (because of damage to the serial chip in the keyboard say) it may also use this circuity to beep even with a single key press?

But that dioesn't explain the fact that no change in signal appears on the output line from the Z80 SIO...unless both ICS are damaged which is highly unlikely. Or I'm just not seeing the output signal.... but the input signal on holding a key down is so clear it's hard to believe I could not see it if it was there.

Tez

tezza
January 7th, 2010, 10:08 PM
If the SIO is working correctly, I'd expect to see something pop out the other end when you press a key. What that something is will depend on how the SIO is programmed. Is see the /INT is hooked up to something - does that change at all? If the CPU is servicing the interrupt you'd also expect /CE to go low when it accesses the SIO.

Steve,

There is no change on the /INT. It remains high (low is active I believe). /CE shows a small narrow square wave on the scope, but is mainly high. The signal does not change one little bit when holding a key down.

The Z80 SIO/0 has voltage and the reset pin works as it should. However, all the signs point towards this as being the problem don't they. They next challenge is to find a replacement somewhere to swap in. Were there Z80 SIO ICs common in old, old ISA modems? I see someone has a bunch of old modem cards going for $1 on out auction site. I can see a few 40 pin ICs there and some seem to be socketed. Hard to tell though. Anyway, I've put the question to the seller.

Tez

cosam
January 8th, 2010, 12:59 AM
There is no change on the /INT. It remains high (low is active I believe). /CE shows a small narrow square wave on the scope, but is mainly high. The signal does not change one little bit when holding a key down.
Yes, /INT is indeed active low, as indicated by the bar above the name. Seeing as the bar can be tricky to type, it's often easier to prefix the name with a slash ;-)

The dips in /CE make me wonder if the CPU isn't just polling the SIO for keys. If that's the case, the SIO may not be programmed to generate interrupts and /INT would remain high. Looking the available outputs, there's not a lot else to go on. You could check the data bus, but most of the time that's going to be driven by something else and wiggling all over the place. You'd probably need a logic analyser to diagnose a faulty SIO in this case.

It sounds like your keyboard is working alright though, so I'd be tempted to just replace the SIO and see what happens. I don't suppose there's one lurking in any of your other machines you could test with?

tezza
January 8th, 2010, 01:07 AM
It sounds like your keyboard is working alright though, so I'd be tempted to just replace the SIO and see what happens. I don't suppose there's one lurking in any of your other machines you could test with?

Steve,

Yes, I wish there was. I've checked the old iron and there are plenty of Z80 CPUs but no Z80 SIO/0s . I'll have to track one down.

Tez

dave_m
January 8th, 2010, 08:03 AM
Tez, Is the part you are looking for a Z8440 SIO 40 pin DIP?

There is one for sale at Advance Computer Products Surplus on ebay in Southern California for $8.00 USD. I have dealt them them and their parts always work. Keep searching using the part number and you should find some parts New Zealand.

http://cgi.ebay.com/Z8440PS-ZILOG-40-Pin-DIP-Vintage-Z8440-Z80-SIO-0_W0QQitemZ390133129408QQcmdZViewItemQQptZLH_Defau ltDomain_0?hash=item5ad5bf20c0

dave_m
January 8th, 2010, 08:06 AM
Here is a link to the spec sheet on the Z8440 if this is the part you are looking for. -Dave

http://www.zilog.com/docs/z80/ps0183.pdf

tezza
January 8th, 2010, 08:20 AM
Here is a link to the spec sheet on the Z8440 if this is the part you are looking for. -Dave

http://www.zilog.com/docs/z80/ps0183.pdf

Thanks Dave,

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%2f0). Can I use these?

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

Tez

dave_m
January 8th, 2010, 10:19 AM
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%2f0). 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

pavery
January 8th, 2010, 06:58 PM
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).

dave_m
January 8th, 2010, 11:10 PM
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

tezza
January 9th, 2010, 01:25 AM
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 (http://www.trademe.co.nz/Computers/Vintage/auction-264588757.htm) has just appeared on our Trade Me site. First one I’ve seen in my three years of looking.

Tez

GADFRAN
January 9th, 2010, 03:36 PM
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.

GADFRAN
January 9th, 2010, 05:31 PM
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

tezza
January 9th, 2010, 08:12 PM
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

MikeS
January 9th, 2010, 08:25 PM
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?

tezza
January 9th, 2010, 11:43 PM
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

cosam
January 10th, 2010, 05:04 AM
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).

MikeS
January 10th, 2010, 08:35 AM
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 ?

dave_m
January 10th, 2010, 08:36 AM
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

tezza
January 10th, 2010, 09:44 AM
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

tezza
January 10th, 2010, 09:54 AM
...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

dave_m
January 10th, 2010, 10:18 AM
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

Dwight Elvey
January 10th, 2010, 10:47 AM
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

tezza
January 10th, 2010, 10:49 AM
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

tezza
January 10th, 2010, 10:57 AM
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. ....

Dwight

Ok,. thanks Dwight. This answered my question just posed above.

Terry

tezza
January 10th, 2010, 11:07 AM
This is now getting very tricky and I'm not sure where to go next. The clock is working and the data lines seem to be working (although I would not know if they are working correctly or not).

I think I'll try the desparate measure of reseating all ICs.

Mike, I'm getting that deja vu feeling. Mike will know that I had had the scope out and active trying to fix a problem in my NEC 8201a a few weeks ago when it suddenly refused to boot. The problem was discussed on the M100 mailing list, not here. I spend a lot of time looking at the basics there (CE, Data Lines, RAM access etc...etc..). In the end, I couldn't solve the problem but someone else who took a look at the board did. It was a blown 245 buffer on the address bus. I didn't feel too bad though because it was also a major challenge for the person who fixed it. He was a hardware guru who had lots of experience with the type of machine and had all the gear. He said it was a very difficult problem to track down.

Hopefully this is not going to be the same, but it's shaping up to be!

Tez

Terry

dave_m
January 10th, 2010, 11:16 AM
Tez,
Dwight's explaination clearly shows why a logic analyzer is the exact right tool for this type of computer problem, but a dual channel scope will do the trick if you are patient. Can you borrow another probe from Philip? I like Tektronix scope probes, but a probe from China is not too expensive and seem to work fine. (you see how I'm always spending your money ).

pavery
January 10th, 2010, 11:39 AM
Tez,
Can you borrow another probe from Philip?

Yes, he can - I have another probe here. Geez - I didn't realise you didn't have both probes, Tez, otherwise you could have collected that yesterday too. Shall I post it over?

Philip

tezza
January 10th, 2010, 11:45 AM
Yes, he can - I have another probe here. Geez - I didn't realise you didn't have both probes, Tez, otherwise you could have collected that yesterday too. Shall I post it over?

Philip

Hi Philip.

Yea, why not. I'm in so deep into the problem already....:)

I may need some help in interpretation once it's all wired up but if folks think it might reveal something, why not go the whole hog!

Thanks!

Tez

dave_m
January 10th, 2010, 04:36 PM
Tez,
It would help to have a 40 pin DIP clip which is spring loaded and fits over a 40 pin chip and allows access to all pins of the SIO. However if you have a 16 pin clip like the attached photo, you can clip it to the source of the /CE signal which is hopefully a 16 pin address decoder chip. Make sure you clip it on when power is off to avoid inadvertent shorts, and make sure it is seated properly with no bottom contacts of the clip touching two adjacent pins on the chip.

Is there a schematic of the Kaypro available on the web so we can all look over your shoulder and join in on the fun?

2950

dave_m
January 10th, 2010, 04:52 PM
I think I'll try the desparate measure of reseating all ICs.



This should only take a few minutes. You do not have to remove the chips. In fact it is best not too, as you might bend a lead. Just rock them in their sockets by pushing down on alternate ends of the DIP.

tezza
January 10th, 2010, 05:51 PM
Tez,
It would help to have a 40 pin DIP clip which is spring loaded and fits over a 40 pin chip and allows access to all pins of the SIO. However if you have a 16 pin clip like the attached photo, you can clip it to the source of the /CE signal which is hopefully a 16 pin address decoder chip. Make sure you clip it on when power is off to avoid inadvertent shorts, and make sure it is seated properly with no bottom contacts of the clip touching two adjacent pins on the chip.


I don't have any of these devices but they sure look useful. I'm not sure if my electronics shop has any of these....I was going to enlist the aid of my daughter as a second pair of hands if needs be..



Is there a schematic of the Kaypro available on the web so we can all look over your shoulder and join in on the fun?



Sure thing. There are a couple of Kaypro tech manuals on the web with schematics. They deal with all models. I've put together a subset PDF containing the Kaypro II info and schematics out of the best of these. I've uploaded it at
http://www.classic-computers.org.nz/temp/kaypro-II-schematics.pdf

The more looking over my shoulder the merrier. Just don't laugh :)

I only wish I could find a schematic for the keyboard. The most detailed info I've found on the web regarding the keyboard is in this document here.
http://www.slor.net/kaypro/res/Dists/kayinfo/keybrd.doc

Tonight I'll try reseating all ICs and in the event that that doesn't work, I'll summarize what's known so far. I appreciate the time and input from everyone so far.

Tez

dave_m
January 10th, 2010, 07:46 PM
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.

cosam,
You may be right as replacing the SIO did not help. And yet most everything else must be working to have a nice display with blinking cursor and active bus data, and he sees serial input data at the SIO (although not yet proven to be valid 300 baud data).

One thing that would explain everything is a missing or incorrect baud rate clock to the SIO. That would not allow the SIO to process the serial data.

Tez: please probe the RxTxCB pin (27) on the SIO (U70). I guessing it should probably be about a 4800 Hz square wave. That is 16X the 300 baud clock. It would have a period of about 0.2 milliseconds so set the time base of the scope to around 2 milliseconds and you should see about 10 clocks on the screen. If it is OK then we may have to take a closer look at the incoming serial data from the keyboard. If it is not OK, then check pins 1 and 18 (crystal inputs) for a 5 MHz sine wave of probably small amplitude.

tezza
January 10th, 2010, 11:34 PM
cosam,
You may be right as replacing the SIO did not help. And yet most everything else must be working to have a nice display with blinking cursor and active bus data, and he sees serial input data at the SIO (although not yet proven to be valid 300 baud data).

One thing that would explain everything is a missing or incorrect baud rate clock to the SIO. That would not allow the SIO to process the serial data.

Tez: please probe the RxTxCB pin (27) on the SIO (U70). I guessing it should probably be about a 4800 Hz square wave. That is 16X the 300 baud clock. It would have a period of about 0.2 milliseconds so set the time base of the scope to around 2 milliseconds and you should see about 10 clocks on the screen. If it is OK then we may have to take a closer look at the incoming serial data from the keyboard. If it is not OK, then check pins 1 and 18 (crystal inputs) for a 5 MHz sine wave of probably small amplitude.

I think we are getting somewhere. Before I logged in tonight and read your post Dave, Philip Avery rang me with a hypothesis. Today he'd been thinking on the problem and came to a similar conclusion to you...i.e. that baud generation might be the issue in particular the 8116 baud generator IC (or something upstream from that) that feeds onto pin 27 of the SIO.

This pin shows abosolutely nothing. Zero volts. Steve (Cosam) did hint about looking at this area earlier and in fact I mentioned earlier today that this pin was showing nothing (Quote: "There are some lines callled RxCA, TxCA and RxCxTB ...these show 0v whether a key is held down or not.")

With Philip on the phone I tested pin 17 of the 8116 (pin 27 of the SIO) and sure enough...nothing. 0v. no wave of any description. TxCA (pin 3 of the 8116 and pin 14 of the SIO) is the same. zero volts.

As we discussed (and you mentioned Dave) this would explain all the symptoms. I booted the machine with the 8116 removed and nothing changed. Boot was ok, blinking cursor but no keyboard input.

Is it the 8116 though or something upstream? I tested the 74LS14 inverters at U73 and they seem to be inverting as they should. Tomorrow I'm going to buy a logic probe from the electronics store here, to test if there is a pulse into the 8116 through this inverter IC on boot up. As I understand it, that is needed to start the 8116.

I don't have a 8116 lying around so I can't swap it out.

Also. I tried the Xtal SIO pins as you suggested. Pin 1 gives an usual (messey) display I can't really make sense of. There are strange irregular variable square waves the largest about 1us in width. Pin 17 is a steady 5 volts.

Tez

MikeS
January 11th, 2010, 12:16 AM
This pin shows abosolutely nothing. Zero volts. Steve (Cosam) did hint about looking at this area earlier and in fact I mentioned earlier today that this pin was showing nothing (Quote: "There are some lines callled RxCA, TxCA and RxCxTB ...these show 0v whether a key is held down or not.")

Also. I tried the Xtal SIO pins as you suggested. Pin 1 gives an usual (messey) display I can't really make sense of. There are strange irregular variable square waves the largest about 1us in width. Pin 17 is a steady 5 volts.

Tez
Oops; how did I miss that... Somehow I thought you were talking about RxDA and TxDA...

Yeah, that's not good; you need some pulses there.

Check pin 10; if the oscillator's running then I think you should have pulses there regardless of what U73 is doing, as long as pins 8 and 12 are both low. If no pulses try gently wiggling or tapping the crystal.

Sounds like we are indeed finally getting somewhere.

cosam
January 11th, 2010, 01:53 AM
Is it the 8116 though or something upstream? I tested the 74LS14 inverters at U73 and they seem to be inverting as they should. Tomorrow I'm going to buy a logic probe from the electronics store here, to test if there is a pulse into the 8116 through this inverter IC on boot up. As I understand it, that is needed to start the 8116.
Yep, the pulse is what sets the baud rate. You may be able to use a trigger on the scope to detect that pulse too, but a logic probe is definitely worth having anyway. If there's no pulse, check U57 (or replace it - they're common parts and can be tricky to test properly in-circuit). Other than that there's only U62 and U80 between there and the CPU.


Also. I tried the Xtal SIO pins as you suggested. Pin 1 gives an usual (messey) display I can't really make sense of. There are strange irregular variable square waves the largest about 1us in width. Pin 17 is a steady 5 volts.
I take it you mean pin 18 as opposed to 17, i.e. the other leg of the crystal. I'd have thought you'd have gotten a clean sine wave somewhere around there, but I could be wrong. I can see where Mike's coming from with wiggling the crystal - a bad connection here would really mess things up.


Check pin 10; if the oscillator's running then I think you should have pulses there regardless of what U73 is doing, as long as pins 8 and 12 are both low.
Definitely worth doing but I wouldn't dismiss the chip if there's nothing there. On some 8116s pin 10 is N/C, so you'd need the datasheet of your specific chip to be sure.

dave_m
January 11th, 2010, 09:05 AM
Tez,
In case it turns out to be the 5.068 MHz crystal, can you take note of any markings on it and measure the length, width and height. Also if possible try to determine the spacing between pins (pitch).

Baud rate crystals should be common and therefore normally affordable, however this part is an obsolete through-hole package so it may be getting rare.

All of us may be going through our inventory of old modem boards to see if we can come up with a match.
-Dave

tezza
January 11th, 2010, 11:28 AM
Hi Guys,

Yes, one of the first things I did was to replace U57 as it was easy to do. No effect so I assume the one there is ok. I checked the pins just in case and they seem to be giving sensible readings.

Just clarification on the crystal. I've identified the component. Is this crystal just for setting the baud rate, or is it also THE crystal that used to maintain the CPU clock? I'm assuming it's the former but I just want to make sure I'm not mistaken in that belief. Sorry if that seems a real newbie question. The clock certainly seems to be working ok.

Parts may be a problem. The baud rate generator IC has the following markings...

WD8116M-00
WD1943M-00
8250

I googled this part and it seems to be listed on some sites but there is not a lot of info on it. Much more common is AY-5-8116 or COM8116? I'd assume these are swappable but from what Steve says ("On some 8116s pin 10 is N/C, so you'd need the datasheet of your specific chip to be sure".) this might not be the case?

Yes, I decided if my vintage machines were going to break down everytime I used them(!!), I would need to bite the bullet and fork out for a logic probe. :)

Tez

pavery
January 11th, 2010, 11:37 AM
Tomorrow I'm going to buy a logic probe from the electronics store here, to test if there is a pulse into the 8116 through this inverter IC on boot up. As I understand it, that is needed to start the 8116.

I don't have a 8116 lying around so I can't swap it out. Tez

Yes Tez. I believe the probe placed on Pin 12 of 8116 with MEM function should record the rising of the single pulse I'd expect on boot up.

How's this for a method to verify the 8116 - assuming the xtal is fine and all connections to the 8116 are fine - plus the fact that another 8116 isn't around for a swap. Try manually pulsing STBT on the 8116. Do this by grounding momentarily pin 3 of U73 to simulate /BAUDB pulse. Alternatively pulse pin 12 of 8116 from somewhere on the board thru a pull-up resistor to 5V. A working 8116 should start showing waveform of *some* frequency at output Pin 17 (probably won't be the correct frequency as it depends on what was on the data bus at the time which determines frequency.)

Do others concur with those two thoughts?

Philip

MikeS
January 11th, 2010, 11:59 AM
If there really is no activity on pins 10, 3 and/or 17 then that's an excellent idea. Also, what is the normal state of pin 12 (and 8 just for fun) - are they in fact both low?

But I'd think that even if the baud rate is never strobed you'd still have activity on the frequency outputs; it's starting to look more and more like a bad crystal or 8116 or a connection.

pavery
January 11th, 2010, 12:00 PM
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?

While at this point Tezza's keyboard appears fine, this does raise the possibility of easily verifying the keyboard, now or some time in the future.

MikeS: I direct this to you, because I know you've connected more things to the Tandy Model 100's RS-232 than I can shake a stick at! Should the following work?: Leave the keyboard connected to the Kaypro, so the keyboard retains its power supply (assumed to be 5V). Connect Pin 2 of the Kaypro's keyboard socket (output signal from keyboard) and connect to Pin 3 (RxD) of the M100. Plus connect grounds. Enter TELCOM on M100 & adjust settings. With a bit of luck, keys depressed should appear on M100.

Philip

MikeS
January 11th, 2010, 12:12 PM
While at this point Tezza's keyboard appears fine, this does raise the possibility of easily verifying the keyboard, now or some time in the future.

MikeS: I direct this to you, because I know you've connected more things to the Tandy Model 100's RS-232 than I can shake a stick at! Should the following work?: Leave the keyboard connected to the Kaypro, so the keyboard retains its power supply (assumed to be 5V). Connect Pin 2 of the Kaypro's keyboard socket (output signal from keyboard) and connect to Pin 3 (RxD) of the M100. Plus connect grounds. Enter TELCOM on M100 & adjust settings. With a bit of luck, keys depressed should appear on M100.

PhilipHeh. See my post # 31 ;-)

pavery
January 11th, 2010, 12:54 PM
Heh. See my post # 31 ;-)

I did - that's why I quoted it in my Post #57. What I want to know now is: do you think the method I explained in Post #57, will work? (Tez has a Model 100, you see).

Philip

dave_m
January 11th, 2010, 01:49 PM
Just clarification on the crystal. I've identified the component. Is this crystal just for setting the baud rate, or is it also THE crystal that used to maintain the CPU clock? I'm assuming it's the former
You are correct. The crystal Y3 is only for the SIO baud rates.

MikeS
January 11th, 2010, 01:58 PM
I did - that's why I quoted it in my Post #57. What I want to know now is: do you think the method I explained in Post #57, will work? (Tez has a Model 100, you see).

PhilipD'oh! I really must read more carefully; that's twice...
Gee, I was asking *you!*
If it's really standard 300bd serial then I don't see why not, unless the polarity is reversed. The M100 uses +/- 5V, but the -5 pulldown resistor is ~25K so I don't think that'd be a problem, and if the keyboard output is normally low and goes high then it oughta work.

But the usual disclaimer: use at your own risk - I ain't responsible! (Actually, "irresponsible" is the word my girlfriend uses...)

dave_m
January 11th, 2010, 02:55 PM
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? The IC is labelled M5L8049-109P-6. The 8049 seems to be a "class" of chip but I can't find pinouts.

Tez, you asked this question when you thought you had a keyboard problem. The 8049 is part of the wonderful old Intel MCS-48 single chip microcomputer family. I think this family was the first of its kind to contain a CPU, a little RAM (8049 had 128 bytes), 1K or more ROM (the 8049 had 2K of mask ROM), an 8 bit counter/timer, and about 20 lines of programmable I/O all in one chip. I used the 8748 (EPROM version of 8048 ) in avionics applications way back in 1980. It was easily powerful enough to be programmed to control a keyboard and perform the function of a serial UART at 300 baud.

When you get some spare time, look at the spec sheet. It successors such as the 8051 and follow-on are still used today.

http://home.mnet-online.de/al/mcs-48/mcs-48.pdf

tezza
January 11th, 2010, 03:47 PM
You are correct. The crystal Y3 is only for the SIO baud rates.

Thanks for verifying that. I now know why this crystal is as much a suspect as the 8116.

Tez

I now own a logic probe. It will be utilised tonight.

tezza
January 11th, 2010, 03:49 PM
Tez, you asked this question when you thought you had a keyboard problem. The 8049 is part of the wonderful old Intel MCS-48 single chip microcomputer family. I think this family was the first of its kind to contain a CPU, a little RAM (8049 had 128 bytes), 1K or more ROM (the 8049 had 2K of mask ROM), an 8 bit counter/timer, and about 20 lines of programmable I/O all in one chip. I used the 8748 (EPROM version of 8048 ) in avionics applications way back in 1980. It was easily powerful enough to be programmed to control a keyboard and perform the function of a serial UART at 300 baud.

When you get some spare time, look at the spec sheet. It successors such as the 8051 and follow-on are still used today.

http://home.mnet-online.de/al/mcs-48/mcs-48.pdf

Thanks Dave,

No wonder some documentation on the Kaypro keyboard I found on the web called this IC a "microcomputer". For it's time, it would have been amazing.

Tez

tezza
January 11th, 2010, 11:10 PM
Right. I wriggled the Xtal but this didn't make a difference. Using the new logic probe I probed and found there IS indeed a pulse sent to line 12 on reset. So it would seem the 8116 does get a wakeup call (it just doesn't wake up). Other 8116 readings verified what I'd found before namely:

1 - (Xtal) - L
2 - (+ve) - H
3 - (to SIO TxCA/RxCA) - L
4 to 7 (data bus) - Pulsing
8 - (from U73 - BAUDA) - L
9 - (not connected?) - L
10 - (not connected?) - L
11 - (ground)
12 - (from U73 - BAUDB) - L
13 to 16 (data bus) - Pulsing
17 - (to SIO RxTxDB) - L
18 - (Xtal) - L



How's this for a method to verify the 8116 - assuming the xtal is fine and all connections to the 8116 are fine - plus the fact that another 8116 isn't around for a swap. Try manually pulsing STBT on the 8116. Do this by grounding momentarily pin 3 of U73 to simulate /BAUDB pulse. ..... A working 8116 should start showing waveform of *some* frequency at output Pin 17 (probably won't be the correct frequency as it depends on what was on the data bus at the time which determines frequency.)


I tried this suggestion of Philips. I certainly got a pulse on 8116 pin 12 from the U73...I saw it on the logic probe...pin 17 though stayed stubbornly quiet at L.

So....I gather this means a failed Xtal or 8116 (or both!). Do you guys agree?

If so, is there any way I can determine which one before I order components in?

Oh Dave, the Xtal is a small silver rectangle about the length of a 5 pin TTL chip and about as wide as its socket.

Tez

cosam
January 12th, 2010, 12:28 AM
So....I gather this means a failed Xtal or 8116 (or both!). Do you guys agree?

If so, is there any way I can determine which one before I order components in?

My hunch would be the crystal, seeing as you didn't get anything resembling a clear signal at its pins. That said, just poking it with the scope probe may have been enough to mess with it. If the probe has a 10X setting, maybe try with that and see if it makes any difference. I can't say I've ever actually had to test one, but maybe someone can help you out with that. At the end of the day, though, a new crystal isn't going to be pricey, so it's probably worth a punt.

Now that I've said that, it'll probably be the 8116... I'm not sure where you'd get a replacement for that, other than salvaging one from something else. If you happen to have an Apple I lying around, it apparently has one in it too :->

MikeS
January 12th, 2010, 05:14 AM
...
So....I gather this means a failed Xtal or 8116 (or both!). Do you guys agree?

If so, is there any way I can determine which one before I order components in?

Oh Dave, the Xtal is a small silver rectangle about the length of a 5 pin TTL chip and about as wide as its socket.

TezA 5 pin TTL chip?? ;-)

You could try replacing the crystal if you've got one that's similar; if you then get a signal out of the 8116 (even though it's the wrong frequency) then it's a good bet that it's the crystal. There are different crystal types though, so if you *don't* get a signal it could still be either.

dave_m
January 12th, 2010, 09:05 AM
Tez,
You are in a dilemma here. I think its the crystal but it's probably soldered in. So it may be easier to try the 8116 first. But will it take a long time to get, is it costly, etc, etc.

If you go with Mike's good idea, the parameters of xtal I think you want from reading a 8116 spec sheet are fundamental mode (not 3rd overtone) and series resonant. But for the experiment, probably anything should do. Hopefully you will get a clock output and then replace with the proper frequency crystal.

Look at the link for the MP050 under "Additional parts". The package size may be wrong, but this may be the electrical parameters you want. Let's see what the others find. You should have no problem finding a crystal locally.

However before you start all this, make sure it is not just something like a bad connection between the crystal and 8116.
-Dave

http://www.ctscorp.com/components/Datasheets/008-0308_C.pdf

tezza
January 12th, 2010, 11:08 AM
Tez,
You are in a dilemma here. I think its the crystal but it's probably soldered in. So it may be easier to try the 8116 first. But will it take a long time to get, is it costly, etc, etc.

If you go with Mike's good idea, the parameters of xtal I think you want from reading a 8116 spec sheet are fundamental mode (not 3rd overtone) and series resonant. But for the experiment, probably anything should do. Hopefully you will get a clock output and then replace with the proper frequency crystal.

Look at the link for the MP050 under "Additional parts". The package size may be wrong, but this may be the electrical parameters you want. Let's see what the others find. You should have no problem finding a crystal locally.

However before you start all this, make sure it is not just something like a bad connection between the crystal and 8116.
-Dave

http://www.ctscorp.com/components/Datasheets/008-0308_C.pdf

Yes, I checked those 8116 <--> Xtal lines for continuity last night. They are fine.

Well, the next step is up to me. I'll try Mike's idea of just soldering any old Xtal in and seeing if I get anything. There may be one on some of my junk boards.

I'm going to have to leave this for a few days now. I've got a few family committments which need attending to and tomorrow (weather premitting) I'll be climbing over volcanoes (the Tongoriro crossing (http://www.tongarirocrossing.org.nz/index.php?Itemid=27&id=13&option=com_content&task=view)) with a friend and my oldest daughter. It's about 2.5 hours from where I live. I've done the walk several times but for those with me it will be their first.

Anyway, thanks for helping me get to the nub of this issue. Virtual beers all round! (and real beers if you ever find yourself in my neck of the woods). I'll let you know what happens when I get the replacement part (or parts), or what shows up with a shoe-in crystal.

Tez

pavery
January 12th, 2010, 12:05 PM
A beep is heard with just a single keypress on the machine in its present state. This was the case even when the machine is working properly (and explained above) so it's not just an overflow signal like it is in some computers.

I have a theory on why the keyboard Beeps, even thou the CPU hasn't received any signal from the SIO/keyboard. The SIO has an output to the keyboard - pin 26 (TxDB which is labelled BEEP), and I am presuming the keyboard microcontroller monitors this line after a keystroke. I also presume this line is normally Low, but when the CPU receives a keystroke, it instructs the SIO to go Hi on TxDB for a time - at which time the keyboard microcontroller detects this and Beeps.

Now, the smoking gun... Tezza says
It was a steady 5v at the Z80 SIO output pin 26.

Arh! We now know the SIO is probably in an invalid state (it has no clock input) & a result of this is TxDB is Hi all the time! Therefore the keyboard is going to Beep after every keypress, regardless that the signal hasn't originated from the CPU - but just an inconvenient side effect of the SIO in limbo.

Philip

tezza
January 12th, 2010, 12:30 PM
This sounds plausible to me Philip. Good thinking.

Tez

dave_m
January 12th, 2010, 04:38 PM
I have a theory on why the keyboard Beeps...(TxDB which is labelled BEEP), and I am presuming the keyboard microcontroller monitors this line after a keystroke. I also presume this line is normally Low
Philip,
I think the TxD line is normally high when inactive as it usually interfaces with a RS-232 line driver like the MC 1488.

My hypothesis is that that Beep signal is only used for a few things like power up test or system errors or maybe as part of the beep command in BASIC. I'm guessing the key 'clicks' are probably generated by the keyboard controller. I'm not sure but how many computers of the era were so unreliable as to need "feedback" on key entries? wouldn't the fact that the character showed up on the screen be enough?
-Dave

dave_m
January 12th, 2010, 04:56 PM
I'll be climbing over volcanoes (the Tongoriro crossing (http://www.tongarirocrossing.org.nz/index.php?Itemid=27&id=13&option=com_content&task=view))

Two hours from a volcano! I think I'll stay in California where I only have to worry about a little shaking. Thanks for the link. It looks like a very interesting place.

Take care on the hike, lad, we need you back on the computer. :)
-Dave

pavery
January 12th, 2010, 06:31 PM
Philip,
I think the TxD line is normally high when inactive as it usually interfaces with a RS-232 line driver like the MC 1488.
Arh, ok.

My hypothesis is that that Beep signal is only used for a few things like power up test or system errors or maybe as part of the beep command in BASIC. I'm guessing the key 'clicks' are probably generated by the keyboard controller. I'm not sure but how many computers of the era were so unreliable as to need "feedback" on key entries? wouldn't the fact that the character showed up on the screen be enough?
-Dave
I guess we'll know for sure when Tezza fixes this Kaypro. I'm sure he'll be happy to make the extra measurments to solve this puzzle. Thanks Dave.

Philip

dave_m
January 12th, 2010, 07:03 PM
Philip,
You're right, when everything is working again, he can get to the bottom of our mystery beeps. :)

This Kaypro problem has really been fun. Leave it to our lad to come up with interesting problems. He is lucky to have you near to help out with equipment and expertise.
-Dave

tezza
January 13th, 2010, 01:23 PM
Hi Guys,

Well, we are not on our mountain walk today as the weather forcast was for cloud around the peaks. The last thing you want if you are going to expend that effort going up there is no view, so it's postponed until next week. Things are flexible at work at the moment so I can take a day off at a day's notice so to speak. Next week I'll be watching the forcast every day.

Anyway...back to the Kaypro.

I found an old 3.something crystal in a junk apple clone keyboard and soldered it in. No change in pin 12 and no sign of crystal activity on pins 18 and 1. But as Mike said...that doesn't necessarily means anything as the replacement Xstal could be too incompatible. It still could either be the crystal OR the 8116.

I've been looking around on the web and it seems I can get both a replacement Xtal and 8116 from various places. However with shipping etc. cost does mount up. The 8116 is in the U.S...shipping costs unknown at this stage but it's never cheap from the U.S. The Xstal can be imported through a local supplier BUT you have to order at least $15 worth of stuff.

As all the ICs seem to be socketed in the Kaypro II, I wonder if it would be worth putting a request out for a whole Kaypro II mainboard, someone might be prepared to sell. Assuming the Xstal and 8116 were ok I could swap them out of this board, and also have one for parts in case something else happens, or even for a supply of ICs.

My point is, it might be no more expensive getting a suplus board from someone with a broken kaypro (drives stuffed, screen stuffed etc.) than importing two separate components.

Of course it depends on what people want for the board AND there is the risk that those very components might be damaged on replacement board too. There are one or two Kaypro boards on eBay but they are way (way!) too expensive.

I haven't been following prices of the likes of Kaypro mainboards (or even Kaypros) so I'm not sure of the going rate. I know Kaypro IIs were relatively common in North America so I imagine there are a few junk units around. Do boards for sale come up now and again? Does something like $25 US (excluding shipping) seem reasonable or unrealistic? If the latter, I'm probably better off ordering the separate pieces.

Otherwise I might put a request on the "Wanted to Buy" section. Any thoughts?

Tez

pavery
January 13th, 2010, 03:30 PM
No change in pin 12 and no sign of crystal activity on pins 18 and 1.

Tez, just making sure you know what a good crystal looks like on the scope. A very fast & low power waveform. Suggest you measure the master timing crystal - Y2 which is 20MHz. This will show you, and give the scope settings, of a good crystal.

Philip

dave_m
January 13th, 2010, 04:47 PM
No change in pin 12 and no sign of crystal activity on pins 18 and 1.



Tez,
The signal on 18 & 1 may just look like a little noise as Philip said, and you should be looking for any pulse activity on output pins 3 and 17 of the 8116 chip. Pin 12 is not important right now.

Since the outputs of the 8116 (pin 3 & 17) are mostly independent and both were inactive, I thought the probability was that the crystal was bad. However if the amplifier for the crystal in the 8116 is bad, it would have the same symptoms as a bad crystal.

tezza
January 13th, 2010, 04:56 PM
Philip, Dave,

Ah. Ok, points noted. I'll do what you suggest (I'll have to solder out the old one and solder in the test one again..damm!)

Tez

tezza
January 14th, 2010, 09:04 PM
Tez, just making sure you know what a good crystal looks like on the scope. A very fast & low power waveform. Suggest you measure the master timing crystal - Y2 which is 20MHz. This will show you, and give the scope settings, of a good crystal.

Philip

Right, I tried this Philip and I see what you mean. A VERY OBVIOUS sin-type waveform.

No, there is nothing at all coming out of the 5.0588 Mhz crystal like this. It's completely dead at 0v

>Since the outputs of the 8116 (pin 3 & 17) are mostly independent and both were
>inactive, I thought the probability was that the crystal was bad. However if the amplifier
>for the crystal in the 8116 is bad, it would have the same symptoms as a bad crystal.

Does this still hold Dave? Now I know what I'm looking for it seems to me this Crystal is COMPLETELY dead. I guess if the 8116 isn't feeding it any power is could seem completely dead though? Is there anyway to tell if it's dead or not, out of circuit somehow? Put a few volts through it perhaps? Or is special circuitry needed for oscillation.

Sorry, I'm not sure how these things work?

Tez

dave_m
January 14th, 2010, 09:23 PM
Tez,
I'm afraid it's still a toss up between the crystal and the baud rate generator, but as you tried another type crystal and nothing changed at all, the scale may tip toward the 8116 a little as being the curprit.

tezza
January 14th, 2010, 09:31 PM
Tez,
I'm afraid it's still a toss up between the crystal and the baud rate generator, but as you tried another type crystal and nothing changed at all, the scale may tip toward the 8116 a little as being the curprit.

Yup. I guess I'll just have to bite the bullet on this and get another one from somewhere.

I've been looking for 8116 ICs and the most common around seem to be AY-5-8116 ICs followed by COM8116 ICs.

The one in the Kaypro is (a lot less common) WD8116M-00. I can't find the datasheet for this one. Do you think it would be compatible with those commoner ones?

Tez

cosam
January 15th, 2010, 01:21 AM
I've been looking for 8116 ICs and the most common around seem to be AY-5-8116 ICs followed by COM8116 ICs.

The one in the Kaypro is (a lot less common) WD8116M-00. I can't find the datasheet for this one. Do you think it would be compatible with those commoner ones?

I couldn't find anything specific on the WD8116 either but I'm pretty sure they're all close enough to equivalent - all 5V TTL parts with the same pinout. The GI (AY-5-8116) datasheet even specifically states it's pin-compatible with the COM8116.

You may even be able to use a 8136 (there are data sheets on the WD version out there) as it would appear the only difference is an extra output on pin 10, which doesn't seem to go anywhere on the Kaypro anyway.

tezza
January 15th, 2010, 01:49 AM
You may even be able to use a 8136 (there are data sheets on the WD version out there) as it would appear the only difference is an extra output on pin 10, which doesn't seem to go anywhere on the Kaypro anyway.

Thanks Steve, I'll bear that in mind.

Tez

channelmaniac
January 15th, 2010, 05:39 AM
Hi Tez,

I have them.

http://www.arcadecomponents.com/catalog/item/2251652/1708942.htm

But... you already found them based on the PM you sent me. ;)

Sorry, but I haven't been following the thread or I would've chimed in awhile ago. You can take any crystal and hook it up to the 8116 to see if it's a dead crystal. If you put a 4MHz crystal in and it doesn't work then it's the chip. A 4MHz crystall will work in the circuit, but all the baud rates will be screwed up so it won't sync up and communciate over the ports. At least it will help you troubleshoot.

Raymond

dave_m
January 15th, 2010, 06:38 AM
Ray,
You have all the old parts!

Did you get a new supply of the 2532 EPROMs? I need some more.
-Dave

tezza
January 15th, 2010, 08:07 AM
Hi Tez,

I have them.

http://www.arcadecomponents.com/catalog/item/2251652/1708942.htm

But... you already found them based on the PM you sent me. ;)

Sorry, but I haven't been following the thread or I would've chimed in awhile ago. You can take any crystal and hook it up to the 8116 to see if it's a dead crystal. If you put a 4MHz crystal in and it doesn't work then it's the chip. A 4MHz crystall will work in the circuit, but all the baud rates will be screwed up so it won't sync up and communciate over the ports. At least it will help you troubleshoot.

Raymond

Yes, thanks Ray,

As you are aware (through the PM I sent) I was looking for a 8116 on the web...saw there was 8136 on arcadecomponents.com and suddenly remembered you ran that site. I then noticed you had a 8116 also.

I'm pretty sure it's the 8116 at fault. A replacement Xtal was as dead as a doornail.

Just have to rush off to another part of the country right now, but I'll order one when I get home...and another few bits and pieces for other machines I have. Might as well make the most of the postage :|

Thank goodness someone keeps these old components!

Tez

channelmaniac
January 15th, 2010, 09:29 AM
Thanks Tez,

Yeah, the USPS folks keep raising rates so I had to up the postage costs recently to keep up with them. Luckily it's flat rate international shipping so it's all I can stuff into the envelope up to 4 pounds of weight. All chips are shipped in chip tubes to keep them from getting damaged in shipping.

Dave - I have 400 in stock, but have yet to update the website. I'm going insane iwth the day job with the most visible project of my career. I've been fairly quiet on a lot of forums lately because of it.

I still have to update my site with the new company logo (see: avatar), but that's been something needed for months now. Repairs and parts sales have come first while website updates and inventory updates are on the back burner. I have a HUGE amount of chips I picked up the past few trips to the left coast that have yet to be added to the site - some pretty rare.

RJ

GADFRAN
January 15th, 2010, 04:19 PM
Tezza -

Sent you a private message, but it will not let me add the attachment of the Kaypro Hardware Bulletin on the grounding fix for keyboards you requested.

I gave you my main email address in my PM to you for us to correspond further.

Frank

tezza
January 23rd, 2010, 09:52 PM
Hiya Guys,

Just an update on this. The 8116 from Channelmanic hasn't arrived yet (things always take a while to get to NZ) but I can tell you that IC is certainly the fault. Philip Avery (pavery) recently scored himself a Kaypro II and he bought this machine over today. We swapped his 8116 over to mine and everything suddenly worked just fine.

Diagnosis confirmed!

Tez

dave_m
January 24th, 2010, 08:28 AM
Tez, that is wonderful. You did some good troubleshooting. You also discovered the usefulness of a logic probe. It was a nice project that gave all of us a chance to review stuff like the 8049, baud rate generators, SIO chips, crystals, etc. I think the big breakthrough was when you discovered normal bus activity on the system and no extra bus activity or interrupts when keys were depressed which indicated an isolated failure in the UART subsystem.

My favorite part was when we thought you reported a dead bus and we all got quite excited and came up with some facinating hypotheses on what could cause that to happen.

Please report back when you install the replacement chip and get to the bottom of the BEEP signal.
-Dave

MikeS
January 24th, 2010, 10:46 AM
Excellent!

I know I had fun and learned one or two things; thanks.

So Philip is broadening his collecting horizons beyond Radio Shack computers (and bulldozers)?

mike

tezza
February 25th, 2010, 05:41 PM
The 8116 arrived in the post yesterday. Since I'd already confirmed the diagnosis using Philip Avery's 8116 I knew it would work.

And it did. So...My Kaypro is back to fully operational status.

As usual, I've written the episode up as a blog article (http://www.classic-computers.org.nz/blog/2010-01-26-keyboard-problem-on-kaypro.htm). Thanks to everyone!

Tez signing off (until the next time something blows up!)

MikeS
February 25th, 2010, 06:16 PM
...
Tez signing off (until the next time something blows up!)We're all looking forward to that ;-)

tezza
February 25th, 2010, 06:59 PM
We're all looking forward to that ;-)

The signing off, or the blowing up? ;)

Hehehe...there could be more of the latter. Talking with Philip Avery, I've decided my machines need a "burn-in" test where I leave them going for 8 hours or so, just to make sure there are no weaknesses there.

Of course there are practical difficulties with this. You have to be around to switch off the power when a capacitor goes up in flames otherwise you might lose more than the cap. Who wants to babysit 36+ computers for 8 hours at a stretch though? Even I'M not that fanatical.

Bringing each one into work one at a time is an option. I'm sure they will be conversation pieces!

Anyway...we'll see. Leaving the machines on for 8 hours is a scary prospect. I think I'll have to steel myself to do it first....and budget for many hours at the repair desk (and on the forums) afterwards! :)

Tez

MikeS
February 25th, 2010, 07:07 PM
The signing off, or the blowing up? ;)
Tez
Your next 'adventure', of course; I think it's safe to say that we all enjoy them, probably more than you ;-)