Verve Design Charlie flashed with esphome exploding capacitor

I purchased three verve design Charlies and flashed them with ESPHome without issues. My YAML config worked initially, and then after a few days, the colour temperature stopped changing. I thought my config randomly stopped working and thought nothing else for a few days. I decided to take action on this as I thought it was strange, so I took one of the lights down to find that it had almost caught fire :fire:. The capacitor had swollen to nearly twice its size.

How I flashed the lights:
I desoldered the TYWE3S module and soldered my flashing wires to it, and it flashed without any issues, and everything worked. As I did not have a 3.3v power supply at the time, I put the module back in and hooked it up to mains to flash it… (i know this is dangerous, but it worked). So here lies the issue, the exploded capacitor. WHY HAS THIS HAPPENED TO ALL 3 OF THE LIGHTS? I did not touch ANYTHING ELSE apart from flashing the esp8265

Tasmota template I used for reference

here is the bottom side where the module slots into the board

My YAML

# settings
esphome:
  name: alexs-bathroom-light
esp8266:
  board: esp_wroom_02

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  use_address: 192.168.2.144
  domain: .iot

logger:

api:
  encryption:
    key: !secret api_key

ota:
  password: !secret ota_password

# configuration
output:
  - platform: esp8266_pwm
    id: dimmer
    pin: GPIO5
  - platform: esp8266_pwm
    id: color_temp
    pin: GPIO13
    inverted: True

light:
  - platform: color_temperature
    id: alexs_bathroom_light
    name: "Alex's Bathroom Light"
    color_temperature: color_temp
    brightness: dimmer
    cold_white_color_temperature: 6500 K
    warm_white_color_temperature: 2700 K
    restore_mode: ALWAYS_ON

I would ask for refund where you bought these devices as it looks they are faulty (bad component supplier by manufacturer…)

I was thinking of doing this but thought as it was such as serious issue, they would investigate what caused it. If they found out the device was tampered with they would put the blame on me. although I can’t see how reprogramming the chip would cause this as the only pins from the esp that connect to the board are the 2 gpios for brightness and colour temperature and 3.3v power and ground.
I also really like these lights and there aren’t really any alternatives I can find with a programmable chip so I want to know what caused this, if there’s something I’m missing or… its just a faulty batch.

Is it possible that the PWM signal might be too fast/slow for the colour temperature IC to handle? the IC has serious scorch marks around it. (I have no idea whether the frequency of the PWM signal can cause this type of heat)

Return them. This tells me that the capacitors were installed backwards. Tantalum capacitors installed backwards will work initially, passing QC checks, then over a few hours swell and the pop like a firecracker.

There is no way you can do this in code.

All the capacitors appear to be installed in the same direction

(the cooked one)


(one that is showing signs that the color ic is cooked, the brightness works but the color changing doesn’t change the color of the LEDS)

(one that works perfectly without any issues/heat, all components are under 70c)

When I was programming for a set of LEDs that could vary white-color (it was the CWWW platform), there is a parameter called constant_brightness that prevents the firmware from ever fully powering both LED channels at the same time.
This is because the LEDs are intended to be powering one, the other, or a sum<=100% mix of both, but never both@100%. So using that parameter ESPHome automatically prevents that ever happening, because it overloads the power supply and can overheat the LEDs.
(I saw it happen, before I included the constant_brightness parameter, it was alarming.)

Could your config need a similar limiter that prevents it from fully-powering all channels simultaneously - something the factory driver firmware might have been doing but that ESPhome doesn’t do for that platform?

I looked into this before as I assumed that the old firmware on the ESP would have limited the light output. constant_brightness is not available in the color_temperature component. I see no way of limiting light output in the light component or the color_temperature component. any suggestions would be appreciated!

It is not present in the current version of ESPHome, but I pointed it out to ask whether perhaps it (or some alternative code to the same effect) might have been needed to prevent blowing your power supply caps.
(Maybe that feature needs to be added to the platform you used - that’s for someone else to decide)

Of course, those caps could have failed for any of the quite-valid other possible reasons that others have already pointed out.

I mentioned the constant_brightness item just in case the burnout had been caused by an inadvertent overload (because constant_brightness wasn’t available to you).

and another photo of carnage from another verve light :face_with_raised_eyebrow:

from this, I think you are correct in saying it’s overloading. looks like this chip controls the brightness and color temperature by PWM from the ESP. if anyone could contribute a way to use constant_brightness (or a way of achieving this by other means) in the color_temperature platform I will love you forever. I had the 2 broken lights replaced for new ones which I have flashed with an empty esphome config ready to be used in my dark bedroom and bathroom. I do find it strange that my third light that is the same model, flashed with the same config, and has been on since I got the 3 verve oyster lights, still works and doesn’t appear to have overloaded.

Scratch that, with the 2 replacement lights, i set one up with esphome and the other stock with the tuya firmware and the one with the tuya firmware appears to be brighter! so I’m lost here, i guess ill just install the lights and use them normally, keeping a close eye on them. what is interesting is that the light on the right flashed with esphome has light bleed from the cool leds while set to 100% warm. if anyone has any suggestions on how to fix this… I’m all ears