Color temperature

The problem is general.
I am working with tunable light. Imagine having a duty cycle of 200 ww and 45 cw. When I dim this to 9 ww, cw, will be 2. When ww is 8, cw will be 1. So at low levels you loose the right ratio.
In my case the pwm outputs are connected to an optocoupler (fed with 10Vdc) and then two meanwell LCM-40 (additive 10V pwm 100hz-3kHz).

OK, I see the problem. The solution is simple - step up to a higher PWM resolution. PCA9685 offers 12 bit resolution. ESP32 and many other microcontrollers also offer more than 8 bit.

Unfortunately, the datasheet for this LED driver doesn't provide data on the shortest acceptable PWM pulse width. However, I trust that as long as you keep frequency low enough (let's say 500Hz - 1kHz) you should probably be able to go up to at least 12 bit and still be able to go down to reasonably low duty cycles. Yes, that's a lot of vague adjectives - but that's all we have lacking solid data.

ESP32 can be programmed in arduino IDE? Are there libraries available?
If necessary, The LCM-40 can be replaced.

Yes, the ESP32 can be programmed using the Arduino IDE. Libraries are available for all the hardware and usual software features.

As I'm sure you know, visual perception of light intensity is logarithmic, but the PWM scale is linear in steps, which makes low PWM values particularly problematic.

Yeah, plenty. Espressif maintains a core for the ESP32.

Probably not necessary.

Correct; the relevance of this is in particular that resolution requirements tend to escalate if you need to go down to low levels and maintain color balance.