Petal Hero game running on the flow3r badge:
Hardware
Dedicated hardware for Petal Hero is still a work-in-progress - the first prototype has been assembled and required changes identified.
It's a 2 layer PCB that hosts off-the-shelf development boards - either YD-ESP32-S3 or ESP32-S3-DevkitC on the back side, and GC9A01 1.28" round screen with microSD card slot on the front side. Optionally extensible with QWIIC and D1 Mini-compatible extension boards, such as Battery Shield.
Aside of the removable and reusable daughter boards, it also contains a headphone jack, five large capacitive touch pads for gameplay and six smaller touch buttons for navigation, one push button, a few caps and resistors working as poor man's DAC, one WS2812B-5050 RGB LED, five SK6812-4020 side RGB LEDs, and a power switch.
The design is made to be very cheap to produce and super easy to assemble even with barely any soldering experience, with optional LEDs being the only trickier parts to handle. A 3D-printable case is also planned.
Software
Software side is already finished - if you have a flow3r badge, make sure your firmware version is at least 1.3.0 and install it from the gr33nhouse.
Petal Hero is compatible with songs for Frets on Fire, FoFiX, Performous, Phase Shift and Clone Hero (MIDI) that contain a guitar track, but with one caveat: you need to mix audio tracks together and save them as MP3.
This should do:
sox *.ogg -m -G -c 1 -C 128 -r 48k --norm=-3 song.mp3
Some rips may need to be resampled first:
for i in *.ogg; do sox $i -G -r 48k $i.flac; done
sox *.flac -m -G -c 1 -C 128 -r 4/8k --norm=-3 song.mp3
You need song.ini, song.mp3 and notes.mid in the song directory.
Songs in .chart format (and some others) can be converted using EOF.
The “Starter Pack” of songs can be downloaded over Wi-Fi from the game, or manually from the song repository.
License
Petal Hero is licensed under the GNU General Public License version 3 or later.
Sound assets and parts of the code come from Frets on Fire by Sami Kyöstilä, Tommi Inkilä, Joonas Kerttula and Max M., originally licensed under the GNU General Public License version 2 or later.
The st3m framework from the flow3r badge project is licensed under the GNU Lesser General Public License version 3.