Releases: tobigun/EavesDrum
v1.1.1
v1.1.0
Adds support for the new board revision 1.2, Pico 2W and new Midi Output modes.
IMPORTANT NOTES:
- board 1.1 is still fully supported but both boards need different config files.
- The only difference between Board 1.2 and 1.1 is the added USB-Host and DIN 5-pin connectors as well as the change of the multiplexer addressing (which required a config change).
- The config for Board 1.2 is now the default. For Board 1.1 you have to drag&drop the config for board 1.1 after flashing. See Config section for more info.
- although the configs are from now on stored in a separate partition to keep them between firmware updates, this was not the case with the old FW. By flashing this firmware 1.1 you will loose all of your configuration. See Config section for info on how to backup and restore your config.
Firmware and Configs:
Firmware
- Pico 2W: use
eavesdrum-pico2w.uf2 - Pico 2: use
eavesdrum-pico2.uf2 - Pico 1: unsupported and untested. Only use it at your own risk
Configs
The configuration files can be found in the config folder of the code repository. They are also copied to the Assets section of this release for convenience.
- config-1.2.yaml: for the new Board revision 1.2 (with USB-Host and Midi DIN 5-pin connector)
- this config is now the default that is packaged with the FW and just named
config.yamlin the code repository
- this config is now the default that is packaged with the FW and just named
- config-1.1.yaml: for the previous Board revision 1.1
If you are using Board 1.2 you just have to flash the firmware as it already contains the correct config.
For Board 1.1 you have to upload config-1.1.yaml after flashing the firmware. As user configs are now kept between firmware updates this should hopefully be necessary only once.
Config backup and restore
Note that although EavesDrum now tries to keep your user configs when flashing a new firmware there is no guarantee that this will always work or that all of the settings could be preserved. Always make a backup befure you (re-)flash a firmware. If the migration of the config to the new version did not work, then you can try to restore the config again or at least use merge the new and old configs manually to get a working one with your old settings.
Config backup
For a backup, open the EavesDrum Web UI and click on the Download Icon in the top menu bar that shows description "Download current configuration" when hovering over it.
Config restore
Drag the backup-ed config (or one of the default configs) into the upper part of the UI. A drop-area should appear where you can drop the config to. After dropping the config you should get a "config applied" message if the config change was successful.
If you want to restore your old config from FW v1.0, you have to add this section with the correct board revision on the top of your old config:
general:
board: v1.1
Otherwise the config might not work properly as there is no possibility to detect the board version automatically.
Changes:
- Support for new Board revision 1.2
- Support for more Midi Output modes:
- USB Device (Default): Connect EavesDrum to a PC and use a Drum Software like EZdrummer or Superior Drummer to convert the trigger signals to high quality drum sounds.
- USB Host: Connect a USB device to EavesDrum, e.g. a Drum Module and trigger sounds on that device. Device must be compatible with USB Full-Speed device. This does not apply to EFNOTE's 3/5/7 devices as they require a USB High-Speed device.
- DIN 5-Pin: Connect legacy drum modules or devices that still have a DIN 5-pin connector and trigger sounds on them.
- Bluetooth LE Client (Pico2W only): This can be used to connect to a device that can act as a Bluetooth LE MIDI Server, e.g. EFNOTE's 3/5/7 drum modules.
- Bluetooth LE Server (Pico2W only): Activate the BLE Server mode and connect a smartphone or tablet to EavesDrum and trigger sounds in an app. This can also be used to connect a computer wireless.
- Android (smartphone): works, but most MIDI apps will require the "MIDI+BTLE" app to use BLE as they do not support it directly.
- Windows (PC): does not support BLE MIDI out-of-the-box. You will need a BLE connector app like BLE-MIDI Bridge or MIDIberry together with a virtual loopback MIDI cable software like loopMIDI.
- iOS (iPad): works with Garage Band out of the box
- Guitar Hero Drum-Kit (SPI): If you have an old Guitar Hero Drum-Kit (e.g. for the Wii), attach EavesDrum to the controllers internal SPI connector and play Guitar Hero on your retro console with your modern drum kit.
- Support for Pico 2W
- Bluetooth Low Energy (BLE) Client/Server (see section about Midi Output Modes above).
- Wifi Access Point (AP) to configure EavesDrum.
- Use
eavesdrum-pico2w.uf2
- Touch Support for cymbal choke
- Keep config after flashing new fw
- Config Files are now stored in a separate partition. This way the config can be kept when a new firmware is installed.
Bug-Fixes:
- Issue #5: "Problem saving parameters in the *.yaml file"
Full Changelog: v1.0.0...v1.1.0
PCB Trigger Module 1.2
PCB Connector 1.0
This is a connector box that can be directly plugged into the EavesDrum module (version 1.2).
It provides 22 sockets for 6.35mm TRS jacks.
The layout and functions are as described in the Connector Harness section of the documentation:
| Jack | Pad | Assignment | Comment |
|---|---|---|---|
| J1 Top | Snare (Main, Rim) | Tip: Main (in1_0) Ring: Rim (in1_1) |
|
| J1 Bottom | Snare (Side-Rim) | Tip: Side-Rim (in1_2) | |
| J2 Top | Tom 1 | Tip: Main (in1_3) Ring: Rim (in1_4) |
|
| J2 Bottom | Tom 2 | Tip: Main (in1_5) Ring: Rim (in1_6)) |
|
| J3 Top | Tom 3 | Tip: Main (in1_7) Ring: Rim (in1_8) |
|
| J3 Bottom | Kick Drum | Tip: Kick (in1_9) | |
| J4 Top | Ride (Bow, Edge) | Tip: Bow (in1_10) Ring: Edge (in1_11) |
|
| J4 Bottom | Ride (Cup) | Ring: Cup (in1_12) | |
| J5 Top | Cymbal 1 (Bow, Edge) | Tip: Bow (in1_13) Ring: Edge (in1_14) |
|
| J5 Bottom | Cymbal 1 (Cup) | Ring: Cup (in1_15) | |
| J6 Top | Cymbal 2 (Bow, Edge) | Tip: Bow (in2_0) Ring: Edge (in2_1) |
|
| J6 Bottom | Cymbal 2 (Cup) | Ring: Cup (in2_2) | |
| J7 Top | Cymbal 3 (Bow, Edge) | Tip: Bow (in2_3) Ring: Edge (in2_4) |
|
| J7 Bottom | Cymbal 3 (Cup) | Ring: Cup (in2_5) | |
| J8 Top | Hi-Hat (Bow, Edge) | Tip: Bow (in2_6) Ring: Edge (in2_7) |
|
| J8 Bottom | Hi-Hat (Cup) | Ring: Cup (in2_8) | |
| J9 Top | Tom 4 | Tip: Main (in2_9) Ring: Rim (in2_10) |
|
| J9 Bottom | Tom 5 | Tip: Main (in2_11) Ring: Rim (in2_12) |
|
| J10 Top | Cymbal 4 (Bow, Edge) | Tip: Bow (in2_13) Ring: Edge (in2_14) |
|
| J10 Bottom | Cymbal 4 (Cup) | Ring: Cup (in2_15) | |
| J11 Top | Hi-Hat Pedal (resistive or optical) | Tip: Pedal (ADC2) Ring: +3.3V/+5V (optional via JP7) |
- For resistive controllers: adjust the ADC2 DC offset potentiometer to the (+) direction (~4kOhm)- For optical (TCRT5000) controllers: adjust the ADC2 DC offset potentiometer to the middle (~69kOhm)This will adjust the sensitivity of the ADC2 channel. You can fine-tune this setting in the UI later. |
| J11 Bottom | Pedal 2 (for future use) | Tip: Pedal (ADC1) Ring: +3.3V/+5V (optional via JP8) |
Pedal 2 is just for future use and cannot be used in EavesDrum at the moment |
PCB Trigger Module 1.1.1
Changelog (to v1.1):
Since JLCPCB no longer offers the original Raspberry Pi Pico2 for assembly, the PCB assembly files now default to two 20‑pin female headers instead of the Pico board. This allows an original Pico 2H board to be manually connected to the trigger module.
An additional benefit of this approach is that the Pico board can easily be replaced — whether to upgrade to a newer version or to swap out a defective unit.
Note: You can still use the old v1.1 if you want to try JLCPCB’s ColorEasyPico2 clone board instead of the original. I have no experience with this board so far.
v1.0.0
This is the initial release of EavesDrum.
- For Pico2 use eavesdrum-pico2.uf2
- For Pico1 (not recommended) use eavesdrum-pico1.uf2
To flash the image:
- power-off your PIco
- press and hold the BOOTSEL button
- connect the Pico to your computer via USB while holding the BOOTSEL button
- now the the Pico should show up as a removable drive
- Drag&Drop the UF2 file for your PICO model to this drive
Important
Save your configuration (with the Download Button in the top bar) after you have set-up your drums in the UI. At the moment the configuration is stored in the filesystem which will be overwritten whenever you flash the EavesDrum UF2.
There is also no migration in place if you update to a newer version. After an update you will have to upload the config again that you stored on your computer before the update.
PCB Hi-Hat Sensor 1.0.2
PCB Trigger Module 1.1
Initial reference design for the EavesDrum Trigger Module PCB.
Edit 13.11.2025: JLCPCB currently does not offer the original Rasperry Pi Pico 2 board. Instead you might want to use the LCSC ColorEasyPico2-RP2350 board. It uses the original RP2350 microcontroller but has some chips (like the voltage regulator) replaced by Chinese variants. It will probably work but the signal might not be as clean as with the original due to the different voltage regulator.
If you can solder I would recommend to solder 2x 20-pin headers and use an original Raspberry Pi Pico 2. Using a pin header will also allow you to replace the pico 2 board in case of error or if you want to replace it with a different variant.