Let’s create trustworthy hardware on our own, the free-design Propeller microchip empowers us to do so! When it comes to flash a coreboot or libreboot laptop, we are now using Zerocat’s free-design chipflasher as part of a quite clean & free toolchain. Commonly used flashers like the Beagle Bone Black or Raspberry Pi with chips of a proprietary design can now be avoided.
Easy to use
The Zerocat Chipflasher is meant as a Do-It-Yourself project (DIY). It is easy to build and easy to use. For SMD packed chips, you may use a test clip.
Flashing a Gigabyte GA-G41M-ES2L Desktop Board
Some advanced practice in soldering will be necessary when you want to access a WSON packed BIOS chip as this requires careful soldering with a thin tipped iron.
Accessing a BIOS Chip in WSON Package
Once everything is setup, the firmware’s menu offers you essential tools
to alter your chip. Here an invocation example of
make -f Startfile.mk startram with immediate quit:
Software Invocation Example with immediate Quit
The chipflasher’s USB port is used for power only, thus the typical setup is with a host that has an RS232 serial port available for data communication. We recommend a ThinkPad X60 with Libreboot-BIOS and docking station for that.
+------------+ +-------------+ +·············+ | Host, i.e. | | Zerocat | +---------+ : | ZC-X60 + |<--RS232 data-->| Chipflasher |---+3.3V-->| SPI | : | Docking | | |<---SPI--->| Chip | : | |----+-+5V-USB-->| firmware: | +---------+ : | software: | / | 'kick' | : : | 'connect' |--+ +-------------+ : Systemboard : | | : without : +----------- + : Battery : : nor Power : +·············+
The chipflasher’s git repository with sources and documentation is publically available for download. We invite you to clone it onto your local drive like so:
$ git clone git://zerocat.org/zerocat/projects/chipflasher
Please checkout the proper branch that corresponds with our first chipflasher edition, version "board-edition-1":
$ cd chipflasher $ git checkout go-for-board-edition-1
In general, we use a free license like this:
- GNU GPLv3 (or any later version) for code
- GNU FDL 1.3 (or any later version) for documentation
- CC BY-SA 4.0 international license for graphics and photos
- Zerocat Logo License for logo files and modified versions
If you need another free license, please get in touch.
Easy to build from Scratch
The chipflasher's circuit intends to be as simple as possible and it should be easy to set up. However, some practice in soldering may be necessary. Don't forget to use a socket for the P8X32A, you may want to use it for your homebrew projects as well.
For your convenience, cable wirings are listed in an extra file, as well as pin layouts of typical target BIOS chips. These are important, for you absolutely must not get confused with power and ground lines!
Cables and typical SPI Chip Pinouts
Printed Circuit Board Layout
There is a PCB layout file available as well, which has been created with PCB, the Printed Circuit Board Layout Editor. See this graphical snapshot to get the idea of the current status:
Chipflasher PCB Layout "board-v1.1.0" (Still in Use)
We recommend to fix a non-critical bug manually: The unused input of the RS232 driver should be tied to GND.
Manual Bug Fix: Unused Pin should be tied to GND
First Chipflasher Edition
Some first PCBs have been sponsored by Oliver Thamm from Elektronikladen for the Zerocat Booth at the Maker Faire Berlin 2017. Right after, we used these boards to manufacture the first chipflasher edition, labelled as board-edition-1. These chipflashers — along with some SMD Test Clips — are available from the Zerocat Shop.
Note that the corresponding tag board-edition-1 has not been placed within the git repository, yet. Please refer to the tip of branch go-for-board-edition-1 for the time being.
Chipflasher “board-edition-1” and Standard Accessories
Chipflashers in Stock