summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-02-25Update new icons to match othersailurux
2025-02-24Merge pull request 'Add icons to the file browser' (#277) from ↵cooljqln
slord/tangara-fw:file-browser-icons into main Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/277
2025-02-23Add icons to the file browserSam
2025-02-20Merge branch 'main' of codeberg.org:cool-tech-zone/tangara-fwailurux
2025-02-20Fix file iterator prev to work with hidden files presentailurux
2025-02-20Wire up the nvs pad to the display padjacqueline
2025-02-20Support a left padding value in display init datajacqueline
2025-02-20Add nvs key for left paddingailurux
2025-02-19Merge pull request 'Avoid spamming logs if there is no /.tangara-tts/' ↵cooljqln
(#275) from tursiae/tangara-fw:ttslogging into main Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/275
2025-02-18Gate playback on the existence of /.tangara-tts/.Tursiae
Also, clang-format previous changes in provider.hpp.
2025-02-18Hotfix: Update filesystem iterator to work with changes to infinite listailurux
2025-02-17Merge pull request 'Bump storage unmount timer to 2 minutes to match idle ↵cooljqln
timer' (#269) from rilight/tangara-fw:unmount-timer into main Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/269
2025-02-13Bump storage unmount timer to 2 minutes to match idle timerRiley Inman
2025-02-14Merge pull request 'Change output mode when bluetooth connects/disconnects' ↵cooljqln
(#261) from ailurux/output-mode-fix into main Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/261
2025-02-10docs: user account needs dialout to flashCaitlin McCann
2025-02-11Merge pull request 'Make the last two images smaller' (#262) from ↵cooljqln
ayumi/tangara-fw:small-pngs into main Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/262
2025-02-11Only change output mode if the new output mode is differentailurux
2025-02-11Make the last two images smallerayumi
2025-02-11TTS: Implement and wire up a TTS toggle in Display Settings (#251)Tursiae
This change introduces the ability to enable or disable the spoken interface/TTS from the on-device settings, either via the UI or the Lua console. This closes out the implementation of issue #245. The TTS setting is only visible in Display settings if voice samples are present in `/.tangara-tts/` on the SD card. Playback of new TTS voice samples is inhibited when TTS is disabled. By default, the setting is enabled, as the device will only play back TTS voices if samples are present on disk. If you need samples to test TTS on your device, feel free to grab the voice samples I have at https://codeberg.org/tursiae/tangara-tts-samples. There's about 80-85% coverage of the UI, with the remainder to be added soonish. Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/251 Co-authored-by: Tursiae <git@tursiae.org> Co-committed-by: Tursiae <git@tursiae.org>
2025-02-11Merge branch 'main' of codeberg.org:cool-tech-zone/tangara-fwailurux
2025-02-11Fix bug in infinite list causing items to be removed (#253)ailurux
2025-02-10TTS: Better document the ownership and task/control flow.Tursiae
2025-02-10TTS: Avoid exhausting the WorkerPool with concurrent TTS playback.Tursiae
Reported in issue #258. As of v1.2.0, if /.tangara-tts/ samples are present on the SD card, and >= 4 menu items with matching TTS samples are highlighted in the UI, and no audio output (headphones or BT sink) is connected, the `tts::Player`'s invocation of lambdas on the WorkerPool will result in worker task exhaustion. This is because we get stuck in state where the `drivers::PcmBuffer` is not accepting any new samples, and the inner loop in `Player::decodeToSink` that pushes to the output isn't checking to see whether playback was cancelled. So the loop never terminates, and we consume that worker slot. Repeat with another 3 menu items, and, hey, all four worker threads are consumed with TTS that will not terminate until headphones/BT are connected.
2025-02-11Revert the smaller icons that were actually biggerjacqueline
Google 'images inflation' to learn more
2025-02-10Merge pull request 'Make icons even smaller' (#250) from ↵cooljqln
ayumi/tangara-fw:small-pngs into main Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/250
2025-02-10Merge pull request 'Console: Update doco to point to `sdkconfig`, and handle ↵ailurux
no-stats cases.' (#257) from tursiae/tangara-fw:tasksconfig into main Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/257
2025-02-10s/sdkconfig.local/sdkconfig/gTursiae
2025-02-10Change output mode when bluetooth connects/disconnectsailurux
2025-02-10Also document the `idf.py menuconfig` approach.Tursiae
2025-02-10Merge pull request 'Console: Stop `tasks` from hanging in `std::sort`.' ↵ailurux
(#256) from tursiae/tangara-fw:tasks into main Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/256
2025-02-09Console: Update doco to point to `sdkconfig.local`, and handle no-stats cases.Tursiae
When `CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS` is not set, the FreeRTOS scheduler will not keep track of task runtime statistics, and the `tasks` command on the console will show `nan%` for the usage. This adds a recommendation for the user to enable the `...STATS` config in their build, and also updates the guidance for `configUSE_TRACE_FACILITY` to point at the supported `sdkconfig.local` configuration pathway, instead of pointing at the `#define` that's deeper in the configuration stack. Also, the sampling period is dropped from 2.5s to 10ms when the runtime stats are not enabled; given that we're not measuring any usage, it's not worth sleeping any longer than that. We might even be able to drop to zero?
2025-02-09Console: Stop `tasks` from hanging in `std::sort`.Tursiae
`std::sort` expects a comparator that returns `a < b`. Flipping this to `a >= b` would normally be fine to reverse the order, but floats behave weirdly with NaN. Instead of flipping the comparator, this uses the reverse-iterators to reverse the sort order of the tasks, and returns to an `a < b` comparator.
2025-02-07Make icons smallerayumi
2025-02-07version bumpjacqueline
2025-02-07Add centre button haptic feedback on touch, and setting to disable/lessen ↵ailurux
haptics (#246) This adds a way for feedback devices to respond to events from outside of LVGL's event system, being passed from input device to feedback device through a vector. This was done so that touch events and long-press triggers can now give feedback through haptics. This PR also adds haptic modes, saved in nvs similarly to input and locked input modes, to disable or change the haptic effect behaviour based on which mode is selected. Finally, this also fixes a bug in which some click events would not trigger haptics, at the expense of re-introducing the (undesired?) behaviour of clicking a button that transitions to a new screen causing a double click. Relevant issues this should close: #195, #233, and (partially?) #120 Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/246 Co-authored-by: ailurux <ailuruxx@gmail.com> Co-committed-by: ailurux <ailuruxx@gmail.com>
2025-02-07Merge pull request 'UI/TTS: Add descriptions for UI elements (toggles, ↵cooljqln
dropdowns) lacking them' (#248) from tursiae/tangara-fw:ttsdesc into main Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/248
2025-02-07Merge pull request 'TTS: Re-enable voice accessbility if /.tangara-tts/ ↵cooljqln
contains audio samples.' (#247) from tursiae/tangara-fw:tts into main Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/247 Reviewed-by: cooljqln <cooljqln@noreply.codeberg.org>
2025-02-07Merge pull request 'Reduce icon file sizes to less than 5% of their original ↵cooljqln
size' (#249) from rdsh/tangara-fw:compress-icons into main Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/249
2025-02-06Compress ce.png and weee.png using pngquantrdsh
2025-02-06Compressed iconsrdsh
2025-02-06Add missing UI element descriptions for TTS.Tursiae
2025-02-06Add widget descriptions where missing.Tursiae
2025-02-06Update the docs to eliminate the mention of the Spoken Interface setting ↵Tursiae
until re-added.
2025-02-06Make the TTS playback work by assuming the file is a .wav.Tursiae
The extension is needed to trigger format detection in the tag reader.
2025-02-06Briefly document the TTS module.Tursiae
2025-02-05Merge pull request 'main' (#1) from cool-tech-zone/tangara-fw:main into mainrdsh
Reviewed-on: https://codeberg.org/rdsh/tangara-fw/pulls/1
2025-02-05Add smaller icons for playlists and directory filesailurux
2025-02-05Merge pull request 'Playlist Browser' (#228) from ↵ailurux
slord/tangara-fw:playlist-browser into main Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/228
2025-02-05Merge branch 'main' into playlist-browserailurux
2025-02-05Merge pull request 'Update to latest version of fusion12 and build it like ↵cooljqln
10px' (#244) from r-tae/tangara-fw:font-update into main Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/244