开云体育

ctrl + shift + ? for shortcuts
© 2025 开云体育

Strange behavior of #8 button


 

I have the Z80MC with all 3 cards. Built this back in 2022.
It gets power from the USB cable when I connect it to my computer.
Never tried to power it with a bench supply.

When I press the #8 button, sometimes I get an 8 and sometimes a 9.
Spent a bunch of hours troubleshooting. Never figured it out.
I've been over every connection with a microscope.
It seems to have a pattern but I don't know how to troubleshoot this.
Examples:
If I do E 2888, I get 2899.
If I do E 7888, I get 7899.

Now today, I powered it up and it's working perfectly. But I'm sure that's only because I'm writing this message.
I've seen this behavior as well. It will work fine for a while. That tells me it's likely not a problem with the button itself. It would also tell me it's not a short somewhere.


It functions perfectly when I connect with TeraTerm so it's not a huge deal and I just live with it.


 

I thought that there was a pattern to the failure I'm experiencing but now I'm not so sure.
One thing I did notice, when the chips are cold, it seems to work.
Once it warms up, the problems occur again.

When I get home next week, I may try adding a parallel resistor as suggested.

Mitch


 

Ah; that may be a hint. The Z80MC runs *cold". Everything is CMOS, nothing gets hot.

What are you using for a power supply? Could its voltage be insufficient? USB supplies are often weak, and the cables so thin that they have lots of voltage drop. I haven't seen this problem with the Z80MC (which draws less than 100mA), but it often happens with the Altaid 8800 (which draws close to 500mA).

Lee
--
Excellence does not require perfection. -- Henry James
But it *does* require attention to detail! -- Lee Hart
--
Lee A. Hart


 

I cannot get S8 work no matter what. While running FFF1 sequence it is using 92mA current at 5V supply.?
While testing with the logic probe, 74LS145 inputs to A(15), B(14) and C(13) are fine but D(12) is always LOW. I am using the (b) TTL configuration both on the Z80 card as well as the Front panel.

On Fri, Mar 28, 2025 at 4:04?PM Lee Hart via <leeahart=[email protected]> wrote:
Ah; that may be a hint. The Z80MC runs *cold". Everything is CMOS, nothing gets hot.

What are you using for a power supply? Could its voltage be insufficient? USB supplies are often weak, and the cables so thin that they have lots of voltage drop. I haven't seen this problem with the Z80MC (which draws less than 100mA), but it often happens with the Altaid 8800 (which draws close to 500mA).

Lee
--
Excellence does not require perfection. -- Henry James
But it *does* require attention to detail! -- Lee Hart
--
Lee A. Hart







 

> I cannot get S8 work no matter what. While running FFF1 sequence it is using 92mA current at 5V supply.

?

OK, that's correct. You have enough 5v power.

?

> While testing with the logic probe, 74LS145 inputs to A(15), B(14) and C(13) are fine but D(12) is always LOW.

?

That's also correct. 74LS145 input D (pin 12) is always low when the interrupt handler is working. The inputs to it count from 0-7 and repeat. If the Z80 interrupt handler fails to respond to the keyboard/display interrupt, then input D (pin 12) goes high to disable the LED display and keypad.

?

As I described earlier, you can test the Front Panel by itself, without the CPU board. You should be able to set the A B C inputs of the 74LS145 (with the 74HC393 counter) to each of the 8 states, then operate each keypad key in turn, and see the IN bits identify which key you pressed.

?

Lee

?

I am using the (b) TTL configuration both on the Z80 card as well as the Front panel.

--

Excellence does not require perfection. -- Henry James

But it *does* require attention to detail! -- Lee Hart

--

Lee A. Hart


 
Edited

Nothing is actually getting hot on mine. Barely perceptible warmth would be a better way to put it.
I'm powering it directly from the USB port on my laptop.
Actually I just got a new laptop and it's doing the same thing as it was with my old one.
Just tried connecting it to a USB charging port that supplies 2.5A.
The USB cable is fairly substantial. It's not the kind with thin crappy wires. I know what you mean about those.
That had no effect on the problem.

I did a little more troubleshooting. The only test equipment I have available here is a multimeter.
VCC measures 4.7v.
Looking at the 74LS145, I went from Gnd to pin 1 which is C0(SW8) on the schematic. When I press the 8 button, it only pulls up to 2.2V. All the other buttons pull up to about 4v.

Mitch


 

Here is the recommended setup for standalone testing of the front panel, just to make sure it is the correct start.
-J2 Pin 9 [/out] is connected to 3 components. 0.1uF cap other end ground, momentary switch other end ground, 100K resistor other end Vcc(5V). Original recommendation was to use J2 Pin 8, however (b)TTL option that pin is not connected to anything but P1 TX 5.
-J2 Pin 24 -CLOCK- high (Vcc) or low (Ground)
-P1 1 ground to (-) power supply
-J2 P19 Vcc to +5V power supply

On Fri, Mar 28, 2025 at 5:01?PM Lee Hart via <leeahart=[email protected]> wrote:

> I cannot get S8 work no matter what. While running FFF1 sequence it is using 92mA current at 5V supply.

?

OK, that's correct. You have enough 5v power.

?

> While testing with the logic probe, 74LS145 inputs to A(15), B(14) and C(13) are fine but D(12) is always LOW.

?

That's also correct. 74LS145 input D (pin 12) is always low when the interrupt handler is working. The inputs to it count from 0-7 and repeat. If the Z80 interrupt handler fails to respond to the keyboard/display interrupt, then input D (pin 12) goes high to disable the LED display and keypad.

?

As I described earlier, you can test the Front Panel by itself, without the CPU board. You should be able to set the A B C inputs of the 74LS145 (with the 74HC393 counter) to each of the 8 states, then operate each keypad key in turn, and see the IN bits identify which key you pressed.

?

Lee

?

I am using the (b) TTL configuration both on the Z80 card as well as the Front panel.

--

Excellence does not require perfection. -- Henry James

But it *does* require attention to detail! -- Lee Hart

--

Lee A. Hart


 

Kerem Kapkin wrote:

> Here is the recommended setup for standalone testing of the front panel...

> J2 Pin 9 [/out] connected to 3 components. 0.1uF cap other end ground,

> momentary switch other end ground,

> 100K resistor other end Vcc(5V).

?

Correct. This provides a debounced pushbutton to clock counter U2A.

?

> J2 Pin 24 -CLOCK- high (Vcc) or low (Ground)

?

Either is fine; you just don't want to leave a CMOS input floating.

?

> P1 pin 1 ground to (-) power supply

?

Or J2 pin 10 also works.

?

> J2 Pin 19 Vcc to +5V power supply

?

With this setup, you can step counter U2A through its states 0-7. Each state is output on J2 pins 11, 12, and 13. Each state should set the corresponding output of U3 low so you can test each button.

?

I think I see the problem with the "8" key! When U3 output C0 is low, IN4 (J2 pin 15) should be high. But transistor Q3 is also connected to C0. It is a "pre-biased" FJN3305, which has internal 10k and 4.7k resistors between its base and emitter. Its emitter ties to C0, and its base to R1D, a 1.5K to ground.These three resistors (10K + 4.7K + 1.5K = 16.2K) are pulling C0 low despite 18K R4A trying to pull it high! Thus the "halfway between" logic level, on IN4.

?

I'm busy preparing for VCF-East right now, but will confirm this when I return. In the meantime, I'll bet putting a lower value resistor (like 1.5K) in parallel between R4A pins 1-2 will fix the problem.

Lee

--

Excellence does not require perfection. -- Henry James

But it *does* require attention to detail! -- Lee Hart

--

Lee A. Hart


 

Thanks Lee, a 22K resistor in parallel with R4 A between pins 1 and 2 solved the problem with S8.

On Sat, Mar 29, 2025 at 11:52?AM Lee Hart via <leeahart=[email protected]> wrote:

Kerem Kapkin wrote:

> Here is the recommended setup for standalone testing of the front panel...

> J2 Pin 9 [/out] connected to 3 components. 0.1uF cap other end ground,

> momentary switch other end ground,

> 100K resistor other end Vcc(5V).

?

Correct. This provides a debounced pushbutton to clock counter U2A.

?

> J2 Pin 24 -CLOCK- high (Vcc) or low (Ground)

?

Either is fine; you just don't want to leave a CMOS input floating.

?

> P1 pin 1 ground to (-) power supply

?

Or J2 pin 10 also works.

?

> J2 Pin 19 Vcc to +5V power supply

?

With this setup, you can step counter U2A through its states 0-7. Each state is output on J2 pins 11, 12, and 13. Each state should set the corresponding output of U3 low so you can test each button.

?

I think I see the problem with the "8" key! When U3 output C0 is low, IN4 (J2 pin 15) should be high. But transistor Q3 is also connected to C0. It is a "pre-biased" FJN3305, which has internal 10k and 4.7k resistors between its base and emitter. Its emitter ties to C0, and its base to R1D, a 1.5K to ground.These three resistors (10K + 4.7K + 1.5K = 16.2K) are pulling C0 low despite 18K R4A trying to pull it high! Thus the "halfway between" logic level, on IN4.

?

I'm busy preparing for VCF-East right now, but will confirm this when I return. In the meantime, I'll bet putting a lower value resistor (like 1.5K) in parallel between R4A pins 1-2 will fix the problem.

Lee

--

Excellence does not require perfection. -- Henry James

But it *does* require attention to detail! -- Lee Hart

--

Lee A. Hart


 
Edited

Hi all!
?
To add another data point to the problem, I'm using DTC114ES for Q2/Q3, and DTA114ES for Q5 (all with 10k + 10k resistors) and R4 is 22k.?
?
Edit:? R4 is of course 10k.? I confused it with R4 on the processor board.? Sorry for any confusion!
?
I've never had any problems with button 8, or anything else for that matter.
?
Good luck,
Mike
?


 

I originally used FJN3303 transistors, which have internal 22k+22k resistors. When Mouser stopped stocking the thru-hole versions, I had to switch to FJN3305 with internal 4.7k+10k resistors. I *thought* they worked OK. Obviously I was wrong!

?

Since then, I bought some FJN3304 transistors with 47k+47k for my 1802MC. I'm going to try them in the Z80MC Front Panel to see if they are a better choice. If so, it's an easy change. :-)

?

(An aside: Lots of manufacturers still make these pre-biased transistors. But a) they don't provide thru-hole versions any more, and b) instead of assigning 2Nxxxx numbers to facilitate 2nd sources, they hide them under house numbers.)

?

Lee

--

Excellence does not require perfection. -- Henry James

But it *does* require attention to detail! -- Lee Hart

--

Lee A. Hart


 
Edited

Now that the Front Panel is working, I need to fix the SIO card which I think accidentally destroyed during the troubleshooting of the Front Panel. SIO card received 9V instead of 5V now all LEDs are on and no response from the board. So I am guessingthat I fried the 74LS259 bit latch which has a max Vcc 5.5 unlike the 74HC, and directly connected to the LEDs. Next would be to replace 74LS01, however I only have a 74LS03 that won’t work.?


 

Any TTL (74LS259) will react very badly with overvoltage.
Most of the CMOS may tolerate it.
?
?
Allison


 

Thanks Allison. I have replaced the 74SL259 with a new one, but didn’t make any difference.

On Mon, Mar 31, 2025 at 8:39?AM ajparent1/kb1gmx via <kb1gmx=[email protected]> wrote:
Any TTL (74LS259) will react very badly with overvoltage.
Most of the CMOS may tolerate it.
?
?
Allison


 

The comment on TTL was a generalization.
?
Also likely any Nmos chips and others will be dead.
That will include most of the parts like the Ram chip, uSD is
plugged in, and as mentioned already most likely all of the ttl.
?
There is nothing more than a few diodes and prebiased
transistors that are designed to survive more than 6V on
that board.
?
I know this as I had a system I'd built (about 30 years ago)
die when a linear power supply failed (shorted pass transistor)
and went to 9-10V.? Killed all 95 pieces of TTL, ram, four 2901
bit slice, and even eprom.? The replaced supply had crowbar
over voltage protection.
?
?
Allison