Skip to content

tas58xx on the fly bq coefficients calculataion#227

Closed
anabolyc wants to merge 19 commits into
CarlosDerSeher:masterfrom
anabolyc:features/tas58xx-on-the-fly-bq-calculataion
Closed

tas58xx on the fly bq coefficients calculataion#227
anabolyc wants to merge 19 commits into
CarlosDerSeher:masterfrom
anabolyc:features/tas58xx-on-the-fly-bq-calculataion

Conversation

@anabolyc

Copy link
Copy Markdown
Contributor

The purpose of this PR is to introduce live BQ coefficients calculation instead of lookup tables. This would help

  • allow changing default EQ settings: each band frequency, q-factor, and gain range
  • allow implementing more filter types in the future: high and low shelf, peaking eq, notch, etc.
  • reduce space for eq coefficients mistakes, since those original LUTs came out of lots of manual work
  • allow correct calculations for 48K sampling rate, since original LUTs were done for 44.1K. The difference is within 10%, but the new approach is more correct still
  • reduce codebase, since huge lookup tables are no longer needed

But most importantly, I'm planning to use these BQ calculations to add the EQ feature to the PCM51XX driver.

This is currently based on another feature branch for my own convenience. I will rebase on develop as soon as #222 is reviewed and merged

The formulas are ported from the TI PPC3 app, and based on my testing, they are matching the app-provided values down to 0.01% accuracy.

Sturi2011 and others added 19 commits April 7, 2026 19:35
…lt_monitor_task (CarlosDerSeher#218)

* Convert to pdMS_TO_TICKS

* Extend task tas5805m_fault_monitor_task from 2048 to 2560

* add  #define TAS5805M_ADDRESS CONFIG_DAC_I2C_ADDR to respect menuconfig settings
…uired for this DAC). (CarlosDerSeher#220)

Co-authored-by: andriy.malyshenko <andriy@sonocotta.com>
Co-authored-by: Copilot <copilot@github.com>
…rlosDerSeher#219)

* Add support for TAS5825M DAC (detection based on the I2C address)

* Renamed tas5805m types (naming convention). Added  return code check in tas5805m_init

* increased tas58* fault task stack size
---------

Co-authored-by: andriy.malyshenko <andriy@sonocotta.com>
…her#203)

* Add snapcast state and player state
* refactor inter task communication
* add commands to control the snapclient
* Set CONFIG_FREERTOS_TASK_NOTIFICATION_ARRAY_ENTRIES=2
* Add i2s lock
* Apply volume/mute only while playing
* Refactor handling of scSettings object
* Use sc callback in ota, stop player task early on sc_stop
@anabolyc

Copy link
Copy Markdown
Contributor Author

wrong branch, sorry

@anabolyc anabolyc closed this May 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants