I have a Keithley 2400 C10 with the following issue:
- The unit powers up, the display works, and it can make measurements when commanded over RS-232, so the ROM self-test passes and the analogue section works.
- After pressing some buttons on the front-panel, it becomes unresponsive – buttons do nothing, the display does not change, and it no longer responds to commands over RS-232.
- Some buttons cause it to crash instantly (e.g. on/off and front/back), while others take a few presses (e.g. edit crashes on the third press), and some don’t crash at all (e.g. digits, menu). The behaviour is always the same.
I’ve been working on this for a few days and haven’t really got anywhere.
Here’s what i’ve tested so far:
- Power supplies seem fine. I’ve checked the incoming 12V and 5V supplies, and all analogue supplies.
- Reset for the display and CPU seems fine – held low for ~250ms after 5V is stable.
- It behaves exactly the same with the analogue board removed.
- Communication between the display and main board seems OK. I can see communication in both directions, and when it’s crashed I can see that the display board still sends key-presses. I can’t see the “Pulse train every 1 ms.” from the main board to the display board listed in the service manual, but this seems unlikely on a 9600 baud serial line? I’ve attached a trace of the display rx, tx and reset lines during startup with two button presses before it crashes. Does this look right?
- Looking at the activity on the CPU external bus, it is definitely still running while crashed, but is probably in a tight loop (repeating patterns on address lines).
- Exactly the same issue occurs when simulating key-presses by sending SYST:KEY commands over RS-232.
Anyone got any bright ideas, or things to test? I’d like to avoid having to disassemble the code and work out where it’s crashed with a logic analyser, but that feels like where this is heading…
If I get it working, I’d be interested in a source for a new button pad – this one has always needed a lot of force and cleaning didn’t seem to help.
Cheers!