I’m currently working on adding the Texas Instruments DAC3100 to esphome. Its fairly similar to the aic3204 that is already in esphome and so far I’ve been able to copy a lot of code from that (just changing register locations for the i2c transactions) in this process however I noticed that some of the setup options sent over i2c to the dac depend on what i2s audio settings are also present. For example one of the first things setup is what clock is used for the audio processing. in the aic3204 code it assumes that mclk is connected on the i2s interface and programs the registers accordingly. for my specific application its the opposite where the mclk is not connected and the bclk is used instead. Since those are configurable options within the chips but are based on the i2s configuration which isn’t exposed to the i2c audio dac the only way I can think of making it a configurable option in the dac3100 component would be to have a parameter just for what pin is used for the clock. However that would be duplicating a setting in two different components which gives opportunity for a mismatch and I feel like it would be easier to just somehow let the dac3100 component check if the i2s interface has a mclk defined or not and program the registers based on that. Is there an easy way of doing this or should it just be hard coded like it is for the aic3204 component?