1a9ef41962
Merge pull request 'feat/filesystem_viewer' ( #70 ) from feat/filesystem_viewer into main
...
Build RPi Pico firmware image / Build-Firmware (push) Successful in 4m51s
Check code formatting / Check-C-Format (push) Successful in 7s
Check code formatting / Check-Python-Flake8 (push) Successful in 10s
Check code formatting / Check-Bash-Shellcheck (push) Successful in 5s
Run unit tests on host / Run-Unit-Tests (push) Successful in 8s
Run pytests / Check-Pytest (push) Successful in 11s
Reviewed-on: #70
Reviewed-by: Matthias Blankertz <matthias@blankertz.org >
2026-01-27 19:26:59 +00:00
69fbb15bca
feat: unify bottom margin between scroll container and buttons
Build RPi Pico firmware image / Build-Firmware (push) Successful in 4m56s
Check code formatting / Check-C-Format (push) Successful in 8s
Check code formatting / Check-Python-Flake8 (push) Successful in 10s
Check code formatting / Check-Bash-Shellcheck (push) Successful in 5s
Run unit tests on host / Run-Unit-Tests (push) Successful in 8s
Run pytests / Check-Pytest (push) Successful in 10s
2026-01-27 20:20:22 +01:00
f9a82c121e
feat: make intents explicit and rename screen accordingly
2026-01-27 20:19:07 +01:00
bd15a45090
feat: filesystem browser button in nav bar
...
Previously, the playlist_filebrowser always contained a 'cancel' and
'add tracks' button, because it was used in context of the playlist
editor only.
The playlist_filebrowser now differentiates between the intents it is
being used with. In context of the new filesystem browser button, the
'cancel' and 'add tracks' buttons are actively hidden.
2026-01-27 18:29:33 +01:00
0a20b70478
fix: frontend: Correctly escape filenames in URL parameters
...
Build RPi Pico firmware image / Build-Firmware (push) Successful in 4m56s
Check code formatting / Check-C-Format (push) Successful in 8s
Check code formatting / Check-Python-Flake8 (push) Successful in 10s
Check code formatting / Check-Bash-Shellcheck (push) Successful in 5s
Run unit tests on host / Run-Unit-Tests (push) Successful in 9s
Run pytests / Check-Pytest (push) Successful in 11s
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2026-01-27 18:15:15 +01:00
6dee7fff7e
feat: Allow configuring WiFi security
...
Build RPi Pico firmware image / Build-Firmware (push) Successful in 4m44s
Check code formatting / Check-C-Format (push) Successful in 7s
Check code formatting / Check-Python-Flake8 (push) Successful in 10s
Check code formatting / Check-Bash-Shellcheck (push) Successful in 4s
Run unit tests on host / Run-Unit-Tests (push) Successful in 9s
Run pytests / Check-Pytest (push) Successful in 11s
Allow choosing between the three security modes exposed by the
micropython cyw43 wifi driver. Also allow setting up security in AP
mode.
Improve the WiFi section of the configuration UI.
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2026-01-06 14:59:12 +01:00
763305c659
fix[frontend]: Reset upload UI elements, don't expand tree view
...
- Make sure the upload progess bar and file choser are reset when
loading the file browser screen.
- Don't expand the directories in the tree view by default.
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2026-01-06 14:59:12 +01:00
5c8a61eb27
feat: Allow configuring volume set at startup
...
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-27 15:23:48 +01:00
4c85683fcb
feat: Allow limiting LED brightness
...
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-27 15:23:48 +01:00
355a8bd345
fix: allow 'reboot' to application when on on battery
...
Having to press the power button again to wake up the device is less
annoying to the user than not being able to apply settings when the
device is on battery.
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-27 15:23:48 +01:00
f46c045589
feat: Allow limiting max. volume
...
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-27 15:23:48 +01:00
fe1c1eadf7
feat: Add names to playlists
...
Fixes #63 .
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-27 15:23:48 +01:00
743188e1a4
fix: frontend: Replace generic 'Device admin' title
...
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-27 15:23:48 +01:00
58f8526d7e
feat: Join an existing WiFi network
...
Add ssid and passphrase to config to configure the network to join. If
empty SSID is configured, it will create the "TonberryPicoAP..." network
in AP mode as before.
Holding the button 1 during startup will revert to AP mode regardless of
the current configuration.
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-27 15:23:48 +01:00
d3aef1be32
fix: frontend: don't convert text that looks like an integer to integers
...
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-23 12:00:05 +01:00
43fd68779c
feat: store git version in fw and show in web ui
...
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-23 12:00:05 +01:00
9320a3cff2
fix: Show reboot request response in UI
...
Build RPi Pico firmware image / Build-Firmware (push) Successful in 4m40s
Check code formatting / Check-C-Format (push) Successful in 7s
Check code formatting / Check-Python-Flake8 (push) Successful in 9s
Check code formatting / Check-Bash-Shellcheck (push) Successful in 4s
Run unit tests on host / Run-Unit-Tests (push) Successful in 8s
Run pytests / Check-Pytest (push) Successful in 11s
Also make response from api more understandable for non-technical users.
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-21 18:30:45 +01:00
9cf044bc80
feat: frontend: Add reboot to bootloader button (for updates)
...
Build RPi Pico firmware image / Build-Firmware (push) Successful in 4m47s
Check code formatting / Check-C-Format (push) Successful in 6s
Check code formatting / Check-Python-Flake8 (push) Failing after 9s
Check code formatting / Check-Bash-Shellcheck (push) Successful in 5s
Run unit tests on host / Run-Unit-Tests (push) Successful in 8s
Run pytests / Check-Pytest (push) Successful in 10s
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-21 17:07:09 +01:00
02150aec42
fix: frontend: Improve navigation on playlist edit screen
...
Build RPi Pico firmware image / Build-Firmware (push) Successful in 4m43s
Check code formatting / Check-C-Format (push) Successful in 7s
Check code formatting / Check-Python-Flake8 (push) Successful in 9s
Check code formatting / Check-Bash-Shellcheck (push) Successful in 5s
Run unit tests on host / Run-Unit-Tests (push) Successful in 7s
Run pytests / Check-Pytest (push) Successful in 10s
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-21 15:36:53 +01:00
7be038d0d1
feat: Allow deleting files and directories
...
Build RPi Pico firmware image / Build-Firmware (push) Successful in 4m40s
Check code formatting / Check-C-Format (push) Successful in 7s
Check code formatting / Check-Python-Flake8 (push) Successful in 10s
Check code formatting / Check-Bash-Shellcheck (push) Successful in 4s
Run unit tests on host / Run-Unit-Tests (push) Successful in 8s
Run pytests / Check-Pytest (push) Successful in 10s
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-21 15:12:31 +01:00
d96350c1a7
feat: frontend: Allow creating directories
...
Build RPi Pico firmware image / Build-Firmware (push) Successful in 4m38s
Check code formatting / Check-C-Format (push) Successful in 7s
Check code formatting / Check-Python-Flake8 (push) Successful in 9s
Check code formatting / Check-Bash-Shellcheck (push) Successful in 4s
Run unit tests on host / Run-Unit-Tests (push) Successful in 8s
Run pytests / Check-Pytest (push) Successful in 10s
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-21 14:23:34 +01:00
eec3703b7e
feat: Extend audiofiles API
...
Extend the audiofiles GET API to return both directories and audio
files. Also change the JSON format to include the name and type of all
entries.
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-21 14:22:38 +01:00
25ac3f0687
feat: Add API and frontend to upload files
...
Build RPi Pico firmware image / Build-Firmware (push) Successful in 4m40s
Check code formatting / Check-C-Format (push) Successful in 7s
Check code formatting / Check-Python-Flake8 (push) Successful in 9s
Check code formatting / Check-Bash-Shellcheck (push) Successful in 4s
Run unit tests on host / Run-Unit-Tests (push) Successful in 8s
Run pytests / Check-Pytest (push) Successful in 11s
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-21 13:29:47 +01:00
8070c0e113
feat: frontend: list of playlists screen, playlist screen, add tracks screen
...
Build RPi Pico firmware image / Build-Firmware (push) Successful in 4m38s
Check code formatting / Check-C-Format (push) Successful in 7s
Check code formatting / Check-Python-Flake8 (push) Failing after 9s
Check code formatting / Check-Bash-Shellcheck (push) Successful in 4s
Run unit tests on host / Run-Unit-Tests (push) Successful in 8s
Run pytests / Check-Pytest (push) Successful in 11s
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-20 20:17:06 +01:00
93ea5036dc
feat: config frontend
...
Implement nicer configuration UI:
- Show human-readable names for config settings
- Show error message received from server if storing settings fails
- Show appropriate input elements for enum choice and numerical inputs
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-16 20:41:40 +01:00
936020df58
feat: Add and deploy frontend
...
Signed-off-by: Matthias Blankertz <matthias@blankertz.org >
2025-12-16 20:41:40 +01:00