summaryrefslogtreecommitdiff
path: root/src/drivers/include
AgeCommit message (Collapse)Author
2024-09-12Pause and unpause the current audio output in response to TTSjacqueline
2024-09-09Merge branch 'main' into jqln/ttsjacqueline
2024-08-28Timeout when writing output samples throughout the audio pipelinejacqueline
This allows the audio pipeline to remain responsive even when the drain buffer has completely filled. This in turn means that you now see the track info in the 'now playing' screen change if the current track changes whilst you are paused. Since I was fucking around a lot in the audio processor anyway, I also added mono->stereo expansion so that playing mono tracks on Bluetooth no longer destroys your ears.
2024-08-12daniel/theme-setting (#87)ailurux
- Themes can be loaded from disk and built-in - Themes can be selected in a new themes menu of the settings screen - Some touch-ups to existing themes - The saved theme is persisted in nvs Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/87 Reviewed-by: cooljqln <cooljqln@noreply.codeberg.org> Co-authored-by: ailurux <ailuruxx@gmail.com> Co-committed-by: ailurux <ailuruxx@gmail.com>
2024-08-07Recalibrate the touchwheel after unlockingjacqueline
Also power it down whilst we're locked. This saves about half a milliamp.
2024-07-24Add a settings screen with power+battery infojacqueline
Mostly for debugging, but also u can toggle fast charging off and on now
2024-07-12Give Bluetooth settings a bit of a refreshjacqueline
It's now a bit more responsive to stuff happening, gives you more information, and remembers your previously paired devices for faster switching between them.
2024-07-11WIP improve bluetooth api and settings screenjacqueline
2024-07-09Give PcmBuffer pairs a name, and wire them up in the audio stackjacqueline
2024-07-05WIP start on accepting two streams in out audio outputjacqueline
2024-06-25Add a basic overview of writing and running testsjacqueline
2024-06-14Improve DAC power+mute management to reduce clicks and popsjacqueline
2024-06-12WIP fix issues introduced by lvgl version bumpjacqueline
2024-06-06daniel/bluetooth-avrc (#80)ailurux
Have a squizzy and lemme know if any issues @cooljqln 🐝 Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/80 Co-authored-by: ailurux <ailuruxx@gmail.com> Co-committed-by: ailurux <ailuruxx@gmail.com>
2024-06-04no more acquire_spi :)jacqueline
2024-06-03Remove spi locking hack + increase max sd frequencyjacqueline
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-03move a bunch of bt callbacks to background tasksjacqueline
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-05-31Introduce a PcmBuffer abstraction for handling source drainingjacqueline
2024-05-15Support setting the samd charge ratejacqueline
We default to the fast one, and do not try setting the charge rate bit on older samd versions
2024-05-14save lra calibration data to nvsjacqueline
2024-05-14Use LRA motors in an auto-calibrated closed-loop modejacqueline
2024-05-08Count samples going in and out of the drain bufferjacqueline
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-02move driver includes into a subdir as welljacqueline
2024-05-02WIP merge cyclically dependent components into one big componentjacqueline
2024-05-02Replace cpp::span shim with std::spanjacqueline
2024-04-22Improve handling of the displayjacqueline
- 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-19Adds LRA haptic support (open-loop only for now).Robin Howard
2024-04-19Fix DRV2065L register usage: we were accidentally setting control2 when we ↵Robin Howard
meant control3.
2024-04-12switch to software volume scaling (it's bad tho i need daniel to do maths ↵jacqueline
for me please)
2024-04-11Migrate all existing control schemes to the cool new worldjacqueline
2024-04-10WIP decompose our giant LVGL driver into smaller classesjacqueline
2024-04-08Warn and block MSC disable if the sd card is busyjacqueline
2024-04-02Support disabling automatic database updatesjacqueline
2024-03-28bump esp-idf to 5.2.1jacqueline
2024-03-20Start using the lock switch polarity bit in nvsjacqueline
2024-03-20Add exact display size to nvs, since it can varyjacqueline
2024-02-13Updated sensitivity nvs storeailurux
2024-02-13Merge branch 'main' into scroll-sensitivityailurux
2024-02-13Sensitivity value now between 0 and 255ailurux
2024-02-13Cache pending nvs writes in memoryjacqueline
Includes refactoring nvs settings to be a bit less duplicated
2024-02-12Scroll sensitivity configurable, but invertedailurux
2024-02-12Remember per-device bluetooth volumejacqueline
2024-02-07Deliver AVRC events on a background threadjacqueline
We don't currently do anything with them, so need to wait for the lock on the bt thread
2024-02-06improve the locking strategy of the bluetooth fsmjacqueline
2024-02-06Retry bt device connectionsjacqueline
i hate this janky-ass protocol
2024-02-06let the bluetooth stack handle its own discovery statejacqueline
2024-02-06Implement basic volume control for bt outputsjacqueline
2024-02-06fix various of bluetooth issuesjacqueline
connecting and disconnecting is a bit more consistent now!
2024-02-06Start keeping lock switch polarity in nvsjacqueline
i will use this to do a sneaky trick; in-place upgrading brendan, hailey, and erin's devices
2024-02-05tweak pipeline buffers rather than i2s dma bufferjacqueline
this maintains the bluetooth changes to buffer sizes, but keeps the most important i2s buffer the same size