logo

Wavedrum

I wrote a series of blog posts in which I document my efforts to understand and possibly manipulate the firmware of Korg’s Wavedrum. The PCB is easily accessible and exposes big connector pads as well as a microSD card—an invitation to play with the hardware.

Although I’m perfectly content just playing with the hardware, I do hope that my work will eventually allow me and others to modify the data on the Wavedrum such that custom sounds and loops (and possibly algorithms) can be used.

Current status

It is possible to load firmware from the microSD card by pressing Write and 1 while powering on the Wavedrum, followed by pressing Write again (another undocumented mode can be entered by pressing Write and Mode while powering on).

The Wavedrum unfortunately rejects any modified firmware. The Oriental edition will not load the firmware of the Original/Black edition, nor will it load the firmware of the Global edition. It also won’t load any modified firmware (e.g. where the only difference is that two bytes are swapped). I intend to figure out how the Wavedrum validates the data on the SD card before deciding to reject them.

Blog posts

Software

wavedrum-lib
Haskell library for parsing, editing, and writing Wavedrum programmes (presets).
sharc-disassembler
Very rudimentary, partial disassembler for SHARC ADSP binaries helping me to understand the Wavedrum’s bootloader.