summaryrefslogtreecommitdiff
path: root/src/drivers/bluetooth.cpp
AgeCommit message (Collapse)Author
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-03u didnt see shitjacqueline
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-29Minor formatting fixailurux
2024-05-29Fix issue where failing to connect bt device initially won't retryailurux
2024-05-28Lowercase BT device name for better auto-readingjacqueline
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-04-19squash a bunch of warningsjacqueline
2024-04-12switch to software volume scaling (it's bad tho i need daniel to do maths ↵jacqueline
for me please)
2024-03-28HACK: auto-accept CFM pairing, and increase the connection timeoutjacqueline
This gets Tangara connecting to most non-trivial devices, including car headunits and my laptop. We can add a real UI / better timeout handling for this later (likely via a new BluetoothState?)
2024-02-12Remember per-device bluetooth volumejacqueline
2024-02-07hack around deadlock during bt disablejacqueline
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-01-17all screens basically working, but bluetooth is roughjacqueline
2023-11-06Improve bt scanning responsivenessjacqueline
2023-10-28Annotates the kTag with maybe_unused; they're only used for logging.Robin Howard
2023-09-26Make NVS access synchronous againjacqueline
Everything relevant is back in internal ram, and likely to stay there.
2023-09-26Place a2dp stream callback into IRAMjacqueline
2023-09-26std::string -> std::pmr::string in psramjacqueline
2023-09-22make bluetooth pairing ui functionaljacqueline
2023-08-29store the screen brightness in nvsjacqueline
2023-08-15persist preferred bluetooth device in nvsjacqueline
2023-08-15Flesh out basic bluetooth supportjacqueline
No ui yet, and performance isn't great. It kinda works though!!
2023-08-08Add skeleton of bluetooth FSMjacqueline
2023-08-03Add very limited resampling (it's slow as shit)jacqueline
2023-08-01Basic nvs init + bluetooth in the buildjacqueline