Flash the Greaseweazle

This page puts Tapewyrm firmware on a Greaseweazle v4.1, and takes it off again. Stock Greaseweazle firmware has no QIC-117 commands, so tw won't drive a tape with it. The board is described in Greaseweazle v4.1.

Tapewyrm firmware does not support gw

Tapewyrm is a hard fork of the Greaseweazle firmware. Use tw with a board that runs it; gw is only for putting stock firmware back.

Board Support

Tapewyrm specifically supports the Greaseweazle 4.1 built from the Artery AT32. If you are unsure what version of the Greaseweazle you have, give your board a peek. While the 4.1 hardware is almost universally built from the Artery AT32, it is technically pin compatible with the STM32 of similar part numbering.

Get the firmware

Use a release package if you have one. Otherwise build it from the repository root (PlatformIO Core required):

just fw-dist

This writes dist/tapewyrm-VERSION/firmware/:

File Contents
tapewyrm-VERSION.upd update file for tw update
tapewyrm-at32f4-VERSION.hex bootloader and application merged, for Artery ISP
tapewyrm-at32f4-VERSION.bin application only, for DFU

Which command

The board has Run
stock Greaseweazle firmware tw update tapewyrm-VERSION.upd
Tapewyrm firmware (update or go back to stock) tw update FILE.upd with a Tapewyrm or stock Greaseweazle .upd, or gw update --force
nothing (empty or broken chip) tw update --dfu IMAGE or just dfu, with the DFU header strapped

tw update reboots the board into its bootloader, writes and CRC-checks the image, and reboots into it. If it fails partway, the board stays in its bootloader: run it again. See tw update.

For DFU, unplug the board, strap the DFU header, plug it in, flash, then unplug and remove the strap. dfu-util must be on your PATH. If it doesn't see the board, flash the .hex with Artery ISP instead; the ROM bootloader can't be damaged, so you can always retry.

During development, just fw followed by just update rebuilds and flashes the application .bin from your tree. Commit first, so tw info can name the exact source.

Verify

tw info

A protocol version and capability list on the firmware line mean Tapewyrm is running; stock Greaseweazle (no Tapewyrm verbs) means it isn't. See tw info.

Next steps