This repository contains the KiCAD PCB project files for a Keithley Model 2000-SCAN replacement card. It uses solid-state relays instead of mechanical relays. See below for a list of compatible devices. The design files can be found on the releases page.
The design is the successor of the SCAN2000 STM32 board previously released as v1.x. Instead of an STM32 microcontroller it uses an iCE40 FPGA to emulate the shift registers found on the 10 channel Model 2000-SCAN card and is also capable of decoding the protcol used by the 20-channel Model 2000-SCAN-20. The advantage of the FPGA is that the shift registers are implemented in hardware. The protocol spoken by the 10 channnel card requires freezing 24 bits clocked in before the strobe bin is triggered, similar to the positive lookahead assertion of a regular expression. This is in stark contrast to typical protocols used by microcontrollers like, for example, SPI that uses a chip select control line to announce incoming data arriving after the CS signal. A more detailed analysis of the problem can be found in the doc/serial_protocol folder.
The card was tested in a Keithley DMM6500 and a Keithley Model 2002. The Keithley DMM6500 supports both the 10 channel Model 2000-SCAN and the newer Model 2000-SCAN-20. The same goes for the Model 2000 and Model 2000-20. The Model 2002 only supports the older 10 channel cards.
DMM | Tested | Note |
---|---|---|
DMM6500 | ✔️ | Works. |
2000 | ❌ | Not tested, but should work. The latest firmware seems to support 20 channels. |
2000-20 | ❌ | Not tested, but should work. |
2010 | ✔️ | Works, but only 10 channels cards are supported by the firmware. |
2001 | ❌ | Not tested, but should work. |
2002 | ✔️ | Works. Only 10 channels supported. |
The root folder contains the KiCAD files. The bill of materials can be found on the releases page along with Gerber files for production.
The source code for the FPGA and the installation instructions for the firmware can be found here. The FPGA source code must be written to an SPI flash chip. One way to do so is to use an USB to SPI converter with an FT232H chip.
The SCAN2000 SSR board has two solder jumpers, JP1
and JP2
. To enable only 10 channels close JP2
and connect the two left pads of JP1
together using a soldering iron. To enable 20 channel operation, leave JP2
open and connect the two rightmost pads of JP1
.
See the following repositories for more information as these are part of the design files.
I use SemVer for versioning. For the versions available, see the tags available for this repository.
- MAJOR versions in this context mean a breaking change to the external interface of the hardware like different connectors or functions.
- MINOR versions contain changes to the hardware that only affect the inner workings of the circuit, but otherwise the performance is unaffected.
- PATCH versions do not affect the schematics or invalidate older bill of materials. These changes may include updated components (to replace obsolete parts for example), an updated silkscreen, or fixed typos.
This work is released under the CERN-OHL-W See https://ohwr.org/cern_ohl_w_v2.pdf or the included LICENSE file for more information.