The Keithley 197 / 197A is an old 5.5 digits bench multimeter. You can read about the multimeter here:
https://www.eevblog.com/forum/testgear/keithley-197a-owners_-corner/The meter is quite good but often the LCD display starts to fade, due to the zebra strip contacts failing, as documented in the previous thread. My own meter started to suffer from this problem. It can be mitigated temporarily, but eventually it reappears. I like this meter so I am looking to design & build a replacement display board.
Luckily rastro reversed engineered the display protocol (see
https://www.eevblog.com/forum/projects/keithley-197-led-display-hack/msg493365/#msg493365), which makes the job a lot easier. Another forum user, Technogeeky, implemeted a decoder running on an Arduino
https://github.com/technogeeky/keithley-197this work inspuired me to build my own replacement board and I intend to document the design here. So lets start with my main requirements:
- Must fit inside the case of the instrument without too invasive/ugly alterations
- Given the effort, I want to add some new functionality. At a minimum data logging via external interface, serial or usb and a continuity test mode
- I want to be able to update the SW without opening the instrument. This means it must have an external interface for programming
- Another common problem for this meter is that the cluster of buttons at the left of the display require quite a lot of pressure, and it is getting worse. I wan tto improve that as well.
-It should not cost more than a new instrument of the same class/capabilities... so obviously no fancy custom displays
- And last but not least, it must be safe! among other things, this means galvanic isolation of the programming/datalogging interface and due consideration for isolating the new display.
Ok, so what is the first step? Well, my experience with other projects is that developing on the instrument itself is not ideal. A mistake can damage the multimeter. Not to mention the hazard posed by the exposed mains and the fact the ground of the board under development is shared with the device under test.
I usually prefer to use a simulator, and verify on target occasionally until the design is mature (and hopefully safer to work on). In adition, a simulator can improve the stress testing (e.g. I can change the timing to make sure I have a good margin).
The good work done by Rastro, Technogeeky and the information on the forum allowed me to design a simulator pretty quickly. I have used an Arduino nano on a breadboard. The original display board connect via a ribbon cable with a 16 pin IDC connector with 3x row spacing, like they have made it to fit on a breadboard - or more likely on the DIL 16 socket used in the multimeter
The picture below shows the simulator connected to the original display board:
Via serial monitor you can turn on and off any segment in the display. The image shows all segments turned on (which is unlikely to happen in practice, but I may want to test nonetheless).
I also connected another Arduino running the Technogeeky code (with some modifications suggested in the forum posts above) and it works (forgot to take any image, sorry)
I have published the complete simulator sketch, schematic and fritzing breadboard view on my gitHub:
https://github.com/alx2009/displayBoardTesterQuestions, comments and wishes for next posts are welcomed :-)
Otherwise in the next posts I intend to discuss the choice of the key components (display, microcontroller) and the overall design of the replacement board (actually boards as we will find out).