@@ -5,7 +5,7 @@ Product Vamp is a two-device sheet-music appliance.
|
||||
- Raspberry Pi Zero 2 W hosts the control Wi-Fi AP, runs the display/control service in Docker, and drives a Waveshare Zero-DISP-7A 1024x600 touch display.
|
||||
- Raspberry Pi Pico 2 W runs UF2 firmware for a Waveshare 2-inch capacitive touch LCD and sends menu/page commands over the Zero-hosted AP.
|
||||
|
||||
The Zero ensures the current SQLite schema through Noto, then imports generated score assets at startup. Runtime navigation and rendering use Ligo for the HTTP API, Luma for touch UI rendering, and Modulus for shared build/runtime utilities.
|
||||
Python builds the complete SQLite catalogue with the score assets. The Zero opens that packaged catalogue read-only through Noto, without creating a database, migrating schemas, or importing JSON at startup. Runtime navigation and rendering use Ligo for the HTTP API, Luma for touch UI rendering, and Modulus for shared build/runtime utilities.
|
||||
|
||||
The catalogue stores shared, immutable menu metadata. Complete score bundles stay in SQLite and are loaded individually when selected; snapshots and Pico heartbeats do not copy the catalogue's musical JSON.
|
||||
|
||||
@@ -31,7 +31,7 @@ python3 modulus.py configure --target x86_64_gcc12_release
|
||||
python3 modulus.py build --target x86_64_gcc12_release
|
||||
```
|
||||
|
||||
`python3 modulus.py run` uses `package/config/vamp.development.json` for a headless readiness check against native build assets. `vamp-zero --once` initializes/imports the database, validates page assets, checks runtime writes and the server bind, then exits without opening audio or display hardware. `--check-config` only validates configuration; `--health-check` probes the running service's `/api/health` endpoint without modifying files.
|
||||
`python3 modulus.py run` uses `package/config/vamp.development.json` for a headless readiness check against native build assets. `vamp-zero --once` checks the packaged database and referenced page/audio assets, checks runtime writes and the server bind, then exits without opening audio or display hardware. Missing or incompatible catalogues require rebuilding or reinstalling; they are never repaired at runtime. `--check-config` only validates configuration; `--health-check` probes the running service's `/api/health` endpoint without modifying files.
|
||||
|
||||
Configure/build can read public packages anonymously from the khodo Conan registry.
|
||||
|
||||
@@ -64,7 +64,11 @@ build/packages/product-vamp-latest-arm_64_gcc12_release.tar.gz
|
||||
build/packages/product-vamp-latest-arm_64_gcc12_release.tar.gz.sha256
|
||||
```
|
||||
|
||||
The tarball contains the Zero Docker archive, Pi install scripts, generated score assets, and Pico UF2 firmware.
|
||||
The tarball contains the Zero Docker archive, Pi install scripts, generated catalogue database, pages, audio, fonts, and Pico UF2 firmware. Complete score JSON is stored inside `catalogue.db`; individual JSON files remain build intermediates and are not deployed.
|
||||
|
||||
Run `sudo zero/install-zero.sh` from an extracted bundle on the Zero. Every installation resets all Product Vamp data and settings, including the control Wi-Fi profile, to the new bundle defaults. No previous database rows or configuration are migrated. Unrelated OS data and networks are untouched. Installing through the control Wi-Fi can disconnect your session; use a local console or an independent connection.
|
||||
|
||||
The installer probes the incoming image before removing existing application data. A failed replacement leaves Product Vamp stopped and reports an error; rerun the installer after fixing the cause. Normal service restarts do not perform installation cleanup. No automatic backup of the previous installation is retained.
|
||||
|
||||
Publishing the rolling generic package requires credentials only for upload:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user