Zerocat Chipflasher  v0.4.10-182-333b622f
Flash free firmware to BIOS chips, kick the Management Engine.
Board Version History

This history gives you a version overview of the chipflasher hardware in contrast to its firmware or host utility software. The chipflasher hardware is represented by files under the hardware folder, most prominently to mention the hardware/gschem/board.sch circuit schematic file. To see the history of firmware, software and documentation, please check Version History instead.

Board Version Scheme

Tags are using the first three numbers only, i.e. board-v0.1.0.
There may be exceptions, which do not follow the Board Version Scheme.
  • board-v

    This prefix indicates a version tag which is related to the hardware.

  • <major>

    Hardware has changed. The resulting product is a major change or upgrade. You will need to upgrade your firmware and/or equipment and/or PCB due to incompatibilities with the previous version.

  • <minor>

    Onboard hardware has changed. Additional functionality or new features are introduced. You are allowed to re-use the PCB, though.

  • <revision>

    No changes of hardware. Bug fixes, minor changes, graphical stuff.

  • -<number-of-new-commits>-<commit-hash>

    Commit description as retrieved with git describe, but git specific ‘g’ marker stripped off.

Changes, not yet Tagged

  • ...


  • Add handy synchronization target to: hardware/Makefile
  • Synchronize PCB file with schematic: hardware/pcb/board.pcb
  • Rotate non-polar capacitors C6 and C7 in: hardware/gschem/board.sch


  • Add more descriptions, refine comments to ensure nice output: hardware/gschem/board.sch
  • Process schematics’ description attributes to BoM Files.
  • Connect MAX3232’s pin 10 to GND: hardware/gschem/board.sch, hardware/pcb/board.pcb
  • Set C1 capacitor value to same as noted in schematic: hardware/pcb/board.pcb
  • Stamp generated files with current version, using different name space for pcb and cover label: hardware/Makefile
  • Remove obsolete scheme script. Instead, use gaf export and ImageMagick’s convert for image generation: hardware/Makefile
  • Fix fuse value: board.pcb
  • Remove polarity from capacitor footprints around MAX3232, set correct values: hardware/pcb/board.pcb
  • Strip white space from comments and text elements, otherwise gschem’s output is screwed up: hardware/gschem/board.sch
  • Remove obsolete layout attribute: hardware/pcb/board.pcb
  • Update source files to new file versions: hardware/gschem/board.sch, hardware/pcb/board.pcb


We continue to use the unmodified PCB of version 'board-v1.1.0'.

  • New file hardware/Makefile
    • This file replaces its origin (hardware/doc/makefile) and now comes with a set of rules that deal with hardware source files by means of utilities like gschem, gnetlist, pcb, inkscape and gerbv. Initial settings are clearly set up, now, and SHELL is set to /bin/sh.
    • The default goal all covers all targets, except gerbv: $ make
    • With $ make gerbv instead, layers of the pcb source file will be exported and the gerbv utility is started with these layers already loaded. Checks are to be performed within the GUI, as CLI flags are missing.
    • Goal label creates labels with the device’s correct hardware source file version noted, i.e. “board-v1.2.2”. These labels come as PDF and PNG files. (The resulting PCB still is that of “board-v1.1.0”, as its pcb source file has not been touched. This unfortunate version numbering scheme with “board-” as a prefix is likely to be mistaken as a pcb-version. It should be changed into something like “hardware-v1.2.2” or “device-v1.2.2”, probably. Terms “hardware” and “device” are welcome to cover all aspects of the hardware, not just that of a board or pcb.)
    • Further goals are auxiliaries, images, markdown, gerber and check.
    • Goal clean gives you a clean environment. It is used rather than cleanall. Where applicable, goal mostlyclean gives you an option to keep some output.
  • Manually created files (PNG, PDF) in hardware/artwork/ have been removed. They are now generated via hardware/Makefile.


We continue to use the unmodified PCB of version 'board-v1.1.0'.

  • Changes in file hardware/doc/makefile :
    • This file has been renamed using lower case letters. This avoids ambiguities within the generated documentation.
    • Rules have been reviewed, dependencies in respect to hardware/gschem/attribs have been added.
    • Clean rules do not use rm -f, but errors are ignored.
    • The file now carries a documentation header with copyright and license notes.


Same as “board-edition-1”, but we resume the Board Version Scheme as described above. This helps us to avoid ambiguities from now on as the version “board-edition-1” is RYF-Certified and must not be linked to any changed content. Note the front panel sticker has been updated accordingly.

We continue to use the unmodified PCB of version 'board-v1.1.0'.


General info:

  • We continue to use the unmodified PCB of version 'board-v1.1.0'.
  • This board version works best in conjunction with software 'v0.4.3', please compare to Version History.
  • The file hardware/doc/Makefile has been improved:
    • .PHONY has been updated
    • long comments with line breaks in gschem files are now supported
    • targets have been simplified by using automatic variables

Upgraded comments in hardware/gschem/board.sch:

  • Add a comment about upgraded Polyfuse in file hardware/gschem/board.sch.
  • An unused pin of the RS232 driver should be tied to GND. The documentation now suggests a manual bug fix.
  • Add a comment about missing pcb heatsink copper area.

Device upgrades as drop-in replacements in hardware/gschem/board.sch allow us to access the sysboard of a ThinkPad T60 while access to a ThinkPad X60/X60s sysboard now works more reliable as well:

  • Upgrade the capacitor that supports the SPI Power Line to 1000µF.
  • Upgrade the Polyfuse to RXEF075, I_hold = 750mA, I-trip = 1500mA.


  • We merge in all improvements of the branch go-for-board-edition-1 while not using the tag board-edition-1 within the git repository itself, yet. This gives us room to fix and complete the documentation until that tag is finally placed. Note chipflashers shown on photos are already labelled with a board-edition-1 sticker, however.
  • We add the file front-panel.dxf to the list of source files.
  • We continue to use the pcb of version board-v1.1.0.
  • We continue to use the software version v0.3.0.


The file hardware/pcb/board.pcb has been reverted to version 'board-v1.1.0' which allows us to use already manufactured PCBs in conjunction with updated files and front-label version tags.


  • We used to use a MAX232 chip which is not explicitly rated for a 3V Power Supply, therefore hardware/gschem/board.sch and hardware/gschem/board-dev.sch have been updated with a 3V compatible device like the MAX3232CPE+. This chip allows a smaller blocking capacitor and smaller charge pump capacitors as well.
  • Clearance of some forgotten vias has been adjusted to 15mil.
  • A spike shaped route has been improved.
  • Board’s version number in the pcb layout file has been set to board-v1.1.1.


A second linear power regulator has been added, which separates the Propeller’s supply from that of the SPI bus. That way, the chipflasher is independend from power failure due to high inrush currents when the target sysboard is powered.

That allows as well to enable the Propeller’s built-in Brown-Out-Detection: Pins keep a well defined level even if the supply voltage is not certain, a very usual situation during power-off.

Furthermore, a simple overcurrent and overvoltage protection has been added right behind the USB power entry. A Polyfuse is used, which limits the maximal USB current to about 1000mA. Currents of up to 500mA are well in range, which is enough for all tested boards except the ThinkPad-X60s sysboard. However, the latter still can be flashed although current consumption is throttled to around 700mA by the Polyfuse. (Note that the related developer board (board-dev.sch) is equipped with a 0.025Ohms PowerShunt which facilitates overall current measurement.)

This version ships with a first elaborated pcb layout file, which is untested by the time of writing.
To ease pcb layout, two pins have been twisted, thus requiring the updated firmware version v0.3.0 (See Version History for details.)


The pnp transistor has been replaced by a pnp MOSFET, because when flashing the X220 the transistor gets too hot.


Add standard SPI chip layout examples, which are handy to have available when connecting the SPI-Cable.


Small bug fix: A junction had been misplaced.


Generate new devices numbers, they will be used in the bill of materials (


Update SPI cable to new SPI connector layout.

This should be regarded as a major hardware change! Upgrading your firmware is required!


This board supports more sysboards.

  • two port pins for sinking CE#
  • different propeller pin function layout
  • adjustable CE# pull-up
  • SPI connector is 9x1 again, but layout has changed
  • different base network of pnp transistor
  • big cap for SPI power (in conjunction with protection diodes from board-v0.4.0)

This board requires a firmware update.


Board with protection diodes across power regulator, in preparation for next board version.


First Tandem-Workshop. Board with different SPI connector, uses 5x2 pinheader.


Starts from RAM as well.


Reset line is DTR or RTS (optional).


First board that has been shipped for testing.


  • starts from ROM only
  • uses 9x2 pinheader SPI connector


Initial board.