jacqueline
a7ac34eaa9
hack around deadlock during bt disable
1 year ago
jacqueline
c1b03c151e
put opus' allocations into internal ram
...
it's a pretty chonky codec, but this seems like the best way to tame its
performance.
1 year ago
jacqueline
18345a1c2c
Silence chatty touchwheel log
1 year ago
jacqueline
c0be3f863f
Deliver AVRC events on a background thread
...
We don't currently do anything with them, so need to wait for the lock
on the bt thread
1 year ago
jacqueline
1b7821a474
improve the locking strategy of the bluetooth fsm
1 year ago
jacqueline
d23435fab7
Retry bt device connections
...
i hate this janky-ass protocol
1 year ago
jacqueline
aff28342d9
let the bluetooth stack handle its own discovery state
1 year ago
jacqueline
0bb12912bc
Implement basic volume control for bt outputs
1 year ago
jacqueline
99c56641e9
fix various of bluetooth issues
...
connecting and disconnecting is a bit more consistent now!
1 year ago
jacqueline
7fbb2162ee
Start keeping lock switch polarity in nvs
...
i will use this to do a sneaky trick; in-place upgrading brendan,
hailey, and erin's devices
1 year ago
Hailey Somerville
d78bbccdab
convert kCurrentDbVersion to a type of integer that gets stringified
1 year ago
jacqueline
2184b6c5f7
send a time=0 progress update after opening each file
...
this helps populate things like the now playing screen when a file is
opened without unpausing (e.g. when restoring a saved queue after boot)
1 year ago
Hailey Somerville
bf761e034c
add version console command
1 year ago
Hailey Somerville
44d848ac66
define database::kCurrentDbVersion publicly
1 year ago
Hailey Somerville
c29b5521ed
add luarun command
1 year ago
jacqueline
f2df12836f
tweak pipeline buffers rather than i2s dma buffer
...
this maintains the bluetooth changes to buffer sizes, but keeps the most
important i2s buffer the same size
1 year ago
jacqueline
f4d8b2b04a
hey i found 40KiB SRAM behind the couch!
1 year ago
jacqueline
e073309907
Properly persist bluetooth mode changes
1 year ago
jacqueline
0f03efe868
Make db updates more robust again the sd card disappearing
...
Accidentally found a bug while live on youtube :)
1 year ago
jacqueline
299f3cc48f
Preserve the queue when going into standby
1 year ago
jacqueline
32cee65809
Accept opus files that don't fully parse, remove opus-specific tag parser
...
The libtags change is a bit of a hack... I think we're running into
tracks that have long lyrics tags, which pushes the other tags out onto
the next ogg page?
1 year ago
jacqueline
ee867f2dbc
add an indicator for database updates
1 year ago
jacqueline
2626c0cffc
Do a db update after every mount
1 year ago
jacqueline
c8bbd4d52c
Reduce leveldb cache sizes and worker stacks, increase number of workers
1 year ago
jacqueline
dad159dc3c
Use a single pool of bg workers instead of separate tasks per use case
...
Also: bump the number of workers tasks up to 3 from 2!
This makes bg db updates + playback work :)
1 year ago
jacqueline
587c585ba6
Don't unmount the sd card as aggressively
1 year ago
jacqueline
1494e08ea2
Handle read errors properly
1 year ago
jacqueline
968d545d67
hand off the sd card to the samd properly, and remount when it's finished
1 year ago
jacqueline
eacea59e8a
Do more to avoid and recover from partial db updates
...
- do not power off in an update is in progress
- explicitly store last update time, rather than deriving it from
unchanged tracks.
1 year ago
jacqueline
c399199bfc
Improve handling of sd card changes during runtime
...
- mount if an sd card is inserted
- unmount if it's removed
1 year ago
jacqueline
04ff8bf492
Extract album artist from libtags-processed files
1 year ago
Robin Howard
429abd1237
Fix bug where calling TrackQueue's next() repeatedly would increase the position despite running off the end of the queue.
1 year ago
Robin Howard
3f1fadbeef
Plumb queue next+previous through to Lua, incl. with stubs and docs.
1 year ago
jacqueline
cd650b30bd
fix some lua stack leaks + add a console func to help debug
1 year ago
jacqueline
1525afe8aa
fix issue with unclipped dither
1 year ago
jacqueline
d1ae1a4230
on second thought, let's not violate patents. 'tis a silly system.
1 year ago
jacqueline
2d7f9fc775
calculate length for CBR mp3 files
1 year ago
jacqueline
200a43fad3
fix issues with some song info not appearing
1 year ago
jacqueline
c1b7a0c9f2
move lua ui-related data to spi ram
1 year ago
jacqueline
ea8a7b0f93
allocate lua properties in spi ram
1 year ago
jacqueline
c0ec19c496
fix some properties that got copied wrong
1 year ago
jacqueline
a81c7a8a86
split out track pushing
1 year ago
jacqueline
1f5249de6f
shift some long-lived allocs into spi ram
1 year ago
jacqueline
08d16e8580
whoops
1 year ago
jacqueline
a4d03fc704
Make reindex button work; no feedback yet
1 year ago
jacqueline
71b4673039
all screens basically working, but bluetooth is rough
1 year ago
jacqueline
7cdcd44e0c
Begin migration of remaining screens to Lua
1 year ago
ailurux
0e04eb918e
wav-codec ( #13 )
...
here is a wav decoder, enjoy!
Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/13
Reviewed-by: cooljqln <cooljqln@noreply.codeberg.org>
Co-authored-by: ailurux <ailuruxx@gmail.com>
Co-committed-by: ailurux <ailuruxx@gmail.com>
1 year ago
jacqueline
55bde70b96
add accurate esp and samd versions + expose this info to lua
1 year ago
jacqueline
1b2d791a05
Use doubles instead of floats for lua numbers (this unpins the ui task)
1 year ago