jacqueline
a3eb2dd9dc
WIP improve bluetooth api and settings screen
2024-07-11 15:11:28 +10:00
jacqueline
a9d2335e1d
Break FatfsStreamFactory's dep on ServiceLocator
2024-07-11 12:12:42 +10:00
jacqueline
7d33f99216
i will continue to tweak a2dp constants until my great foe "audio stutter" is defeated for all time
2024-07-10 17:56:25 +10:00
jacqueline
ad6a81f3d6
Update the SBC target bitrate
...
Not sure what this actually controls? Probably good to make it match our encoding configuration tho
2024-07-10 17:30:14 +10:00
jacqueline
b63e897268
Move the SPI interrupt alloc to the second core
...
We're a bit close to the line on core0 allocs, so this helps balance things out a bit.
2024-07-10 15:18:55 +10:00
jacqueline
11bddb1b1d
add a console command for dumping intr allocations
2024-07-10 15:18:33 +10:00
jacqueline
53798f4a61
Move audio decoder priorities below bluetooth
...
The previous priority was leading to a nasty consistent stutter, as reading samples from the drain suffer would lead to the decoder immediately unblocking and preempting the SBC encoding.
2024-07-10 15:17:19 +10:00
jacqueline
686e14794d
version bump
2024-07-05 10:14:00 +10:00
jacqueline
1b7fb84220
Tweak app console setup to improve companion connections
...
- disable regular log output when entering the console
- disable colour changes for the prompt character
2024-07-03 16:32:08 +10:00
jacqueline
88ac96242f
Load fonts asynchronously on a bg task
...
This saves a second or two from bootup; AFAICT this *mostly* reclaims
the dynamic fonts boot time regression.
2024-07-03 10:43:54 +10:00
jacqueline
cbcf1bea61
enable LV_OS_FREERTOS
...
This mostly just adds a mutex around lv_malloc, which is useful for
upcoming work to make font loading async.
2024-07-02 15:41:13 +10:00
jacqueline
984b874d7e
Fix some issues with the splash screen
...
- fix a use-after-free involving the alerts container that was
happening when showing the first screen
- fix some issues where the splash screen wouldn't come up as early as
it needs to when another bootup task was making heavy use of the spi
bus
2024-06-28 15:34:11 +10:00
jacqueline
9204b585ae
show a message if the sd card is unmounted
2024-06-28 13:50:40 +10:00
jacqueline
624e4555ad
tweak file browser icon
2024-06-28 10:57:26 +10:00
jacqueline
6fe08ba73d
reapply bindings when showing screens
2024-06-28 10:57:10 +10:00
jacqueline
8695b04a83
Try to print userdata name when dumping lua stack
2024-06-28 10:56:51 +10:00
jacqueline
0db9ffc905
use cuter images on the main menu
2024-06-28 10:56:31 +10:00
jacqueline
9db964ce74
WIP start on an updated main menu ui
2024-06-28 09:57:46 +10:00
jacqueline
95072d865c
remove chatty log
2024-06-27 16:13:05 +10:00
jacqueline
688fe79471
require a key press before entering the dev console
...
this improves our ability to detect terminals that support line editing
2024-06-27 16:12:43 +10:00
jacqueline
1036f1b00e
fork esp-idf's dev console, in order to add some hooks
2024-06-27 16:12:18 +10:00
jacqueline
1daa1e9b0f
update catch2 to v3.6.0
2024-06-27 14:47:51 +10:00
jacqueline
ed44606162
fix catch2 build options not being applied + enable benchmarking
2024-06-27 14:38:25 +10:00
jacqueline
0bbf279e5e
Add a button to shuffle+play the current view
2024-06-27 12:22:53 +10:00
jacqueline
bfee3742d3
skip the storage test if there's no sd card
2024-06-25 16:51:03 +10:00
jacqueline
525ed2ae1b
Add a basic overview of writing and running tests
2024-06-25 16:09:36 +10:00
jacqueline
8db57d6dc5
Unbreak the tests build
2024-06-25 15:23:51 +10:00
jacqueline
2d04e13cc6
Merge branch 'main' of codeberg.org:cool-tech-zone/tangara-fw
2024-06-25 12:46:44 +10:00
jacqueline
d75927ff92
Use a curve to estimate battery %
...
This is a bit more accurate than our previous linear relationship,
particularly at lower voltages.
2024-06-25 12:45:39 +10:00
jacqueline
5e2945f246
version bump
2024-06-14 16:59:46 +10:00
jacqueline
00b1ba58f0
Improve DAC power+mute management to reduce clicks and pops
2024-06-14 14:27:56 +10:00
jacqueline
bcaa133a4c
fix unused var warning
2024-06-14 13:37:30 +10:00
jacqueline
ba808916a8
Add fusion fonts to lua partition
2024-06-14 13:37:06 +10:00
jacqueline
2d6c70d5f6
Fix missing duration when no track is playing
2024-06-14 13:36:29 +10:00
jacqueline
7f2d56e29a
Load fonts dynamically from /lua
...
This unfortunately slows boot time by a bit, but I think we should be able to reclaim that time eventually.
2024-06-14 13:35:42 +10:00
jacqueline
5086ab96ea
Merge branch 'jqln/lvgl-bump'
2024-06-14 13:34:41 +10:00
jacqueline
37ed399601
fix uninitialised use
2024-06-13 18:51:06 +10:00
jacqueline
194f0e6b59
Scroll to 'top/bottom' by only 10 at a time
...
Prevents a nasty device lockup when scrolling infinite lists
2024-06-13 16:10:49 +10:00
jacqueline
14416dc358
Reimplement our patch to lv_list button long modes
2024-06-13 12:46:02 +10:00
jacqueline
82ec765d2d
Fix splash screen background
2024-06-13 08:15:11 +10:00
jacqueline
e58dcf6dc5
WIP fix issues introduced by lvgl version bump
2024-06-12 18:46:07 +10:00
jacqueline
64bd9053a2
Update LVGL to v9.1.0
2024-06-12 17:54:40 +10:00
jacqueline
611176ed66
Port and fix our luavgl additions
2024-06-12 17:54:10 +10:00
jacqueline
bd01bf3845
WIP bump luavgl to latest
2024-06-12 16:29:31 +10:00
jacqueline
b02d13f5a5
Removed some old, unused assets
2024-06-12 12:38:06 +10:00
jacqueline
a76255ad58
Revert "Removed some old, unused assets"
...
This reverts commit f1992fc856 .
2024-06-12 11:39:56 +10:00
jacqueline
f1992fc856
Removed some old, unused assets
2024-06-12 10:45:39 +10:00
jacqueline
1242a199e3
log db update time-per-track
2024-06-04 09:00:08 +10:00
jacqueline
72344b5777
no more acquire_spi :)
2024-06-04 08:09:40 +10:00
jacqueline
39460931d8
Remove spi locking hack + increase max sd frequency
...
These two changes (mostly the former) dramatically increase
responsiveness when doing database updates; previously we were suffering
from some nasty priority inversion.
afaict the underlying need to acquire_spi seems to be fixed? i.e. spi
bus acquisition is working properly. fingers heavily heavily crossed.
2024-06-03 21:02:24 +10:00
jacqueline
9457f9021a
u didnt see shit
2024-06-03 20:12:03 +10:00
jacqueline
4afe9d9b5c
move a bunch of bt callbacks to background tasks
...
we should avoid doing bt state machine stuff from these callbacks, since
espressif calls us whilst holding a lock. ideally we should move all of
them to background threads, but we need to do a deep copy to safely move
a few of them
2024-06-03 19:59:18 +10:00
jacqueline
41d15a831b
version bump
2024-05-31 13:02:28 +10:00
jacqueline
661cc976a1
Remove now redudantant 'Iterator.next()' care in TrackIterator
...
With Daniel's fix, this is no longer needed! Hooray!
2024-05-31 12:03:01 +10:00
jacqueline
23a5d26e8a
Merge branch 'main' of codeberg.org:cool-tech-zone/tangara-fw
2024-05-31 11:52:45 +10:00
jacqueline
f84474d94d
Introduce a PcmBuffer abstraction for handling source draining
2024-05-31 11:52:19 +10:00
jacqueline
2ff8eac022
Start on TTS support by logging the data that will become TTS lines
...
Includes some misc cleanup of haptic double-triggering (or
non-triggering), since those cases all end up being TTS event
double-reporting, which to me crosses the threshold from "annoying" to
"usability issue"
2024-05-29 14:45:49 +10:00
jacqueline
c846146c2f
Lowercase BT device name for better auto-reading
2024-05-28 12:53:02 +10:00
jacqueline
0da7ead0a8
Simply some I2SDac management to avoid null pointer accesses
...
Fixes #72 ; we were destroying the I2SDac instance, but weren't actually
recording that the output was now in the 'off' state.
2024-05-24 15:12:41 +10:00
jacqueline
fb6b0ed49c
Fix counting empty stream cues as the current stream
2024-05-24 14:31:32 +10:00
jacqueline
d948585b00
add a lua binding for playing a sine wave
2024-05-17 11:40:43 +10:00
jacqueline
51bbb6a495
Add a stream source that generates a sine wave
2024-05-16 12:21:05 +10:00
jacqueline
c1f7adf227
Add a 'decoder' for streams already in our native format
2024-05-16 12:20:50 +10:00
jacqueline
e8f5e73b1a
Handle tracks with no duration in the playback screen
2024-05-16 12:20:15 +10:00
jacqueline
ddc03204e1
Merge branch 'main' of codeberg.org:cool-tech-zone/tangara-fw
2024-05-15 15:58:03 +10:00
jacqueline
4c9b77ea13
Support setting the samd charge rate
...
We default to the fast one, and do not try setting the charge rate bit
on older samd versions
2024-05-15 15:57:16 +10:00
jacqueline
00d6c2eca2
save lra calibration data to nvs
2024-05-14 15:21:21 +10:00
jacqueline
defe838ab0
Use LRA motors in an auto-calibrated closed-loop mode
2024-05-14 13:14:10 +10:00
jacqueline
f991ac9866
version bump
2024-05-10 14:28:44 +10:00
jacqueline
41426151a1
Merge branch 'main' of codeberg.org:cool-tech-zone/tangara-fw
2024-05-10 14:28:03 +10:00
jacqueline
1d0ad4cbf9
stop writing the erm bit
2024-05-10 14:27:42 +10:00
jacqueline
2afeb2989b
use long-press shortcuts again, but make them a bit harder to trigger accidentally
2024-05-09 17:05:54 +10:00
jacqueline
690c64c151
Fix playback after restoring queue on boot
2024-05-09 10:59:49 +10:00
jacqueline
265049c519
Count samples going in and out of the drain buffer
...
This is a more accurate way of knowing which track is playing when, and
also simplifies a lot of fragile logic in audio_fsm
2024-05-08 16:03:03 +10:00
jacqueline
b242ba9986
Improve decoder's interface to accept streams
2024-05-07 14:19:19 +10:00
jacqueline
344a46d066
Respond to sd card mounts and unmounts within lua
...
Includes no longer blocking the main menu on an sd card being inserted!!
2024-05-03 16:40:39 +10:00
jacqueline
964da15a0b
Add the collation partition to the build
...
Includes a small linux-only bash script to generate locale partitions
2024-05-03 12:37:23 +10:00
jacqueline
9fafd797a5
split c blobs of graphics data into their own component
...
silences some compiler warnings from using c++ flags with c
2024-05-03 10:38:54 +10:00
jacqueline
26eb580043
move driver includes into a subdir as well
2024-05-02 21:52:59 +10:00
jacqueline
7d7f7755d1
start moving include files into subdirs
2024-05-02 21:41:56 +10:00
jacqueline
1573a8c4cd
WIP merge cyclically dependent components into one big component
2024-05-02 19:12:26 +10:00
jacqueline
a231fd1c8a
Replace cpp::span shim with std::span
2024-05-02 17:06:25 +10:00
jacqueline
f852e44715
version bump
2024-04-29 13:54:32 +10:00
jacqueline
1736f7874b
Use double-clicks instead of long-presses for wheel shortcuts
2024-04-29 13:53:11 +10:00
jacqueline
b255ea799e
Add lua bindings for override input hooks
2024-04-29 12:42:16 +10:00
jacqueline
920345b940
Support getting a tree of controls + hooks via lua
2024-04-24 16:06:10 +10:00
jacqueline
531475e351
Enable bluetooth after boot, not during boot
...
This avoids some bluetooth-related devices being delivered before
BootComplete
2024-04-23 10:19:25 +10:00
jacqueline
84dbe074c5
Merge branch 'main' of codeberg.org:cool-tech-zone/tangara-fw
2024-04-22 16:06:51 +10:00
jacqueline
db9e5cce1f
Improve handling of the display
...
- Blank the display when locking to prevent burn-in
- Delay turning the display on until *exactly* after the first lvgl flush
- Init the display in the ui task to avoid blocking the rest of boot
2024-04-22 16:00:53 +10:00
jacqueline
5b99267cb9
Merge branch 'main' of codeberg.org:cool-tech-zone/tangara-fw
2024-04-19 16:52:33 +10:00
jacqueline
8e113ea9ae
squash a bunch of warnings
2024-04-19 16:51:53 +10:00
jacqueline
354ba0325a
version bump
2024-04-19 12:45:02 +10:00
jacqueline
727847017d
Add a button to update the samd's firmware
2024-04-19 12:44:44 +10:00
jacqueline
b17f8a3dcc
Merge the StatusBar bindings table with each screen's bindings table
2024-04-18 11:38:53 +10:00
jacqueline
cc255f6d77
Suspend property bindings when their screens aren't visible
2024-04-18 10:06:45 +10:00
jacqueline
874218e3ff
Fix some bt device issues
...
- Don't allow adjusting volume if there's no device
- Cap bt nvs values correctly
- Persist bt volumes correctly even when the encoded for has a null
byte (facepalm 4 me)
2024-04-15 14:53:41 +10:00
jacqueline
1baaa6dadc
Use more generic 'hooks' for each input device's actions
2024-04-15 14:18:20 +10:00
jacqueline
c24dfa6846
make boot go fast
2024-04-12 15:49:41 +10:00
jacqueline
166e8feb3c
copy audacious' math it looks good
2024-04-12 15:11:56 +10:00
jacqueline
ade0094595
switch to software volume scaling (it's bad tho i need daniel to do maths for me please)
2024-04-12 14:36:03 +10:00