Hey thanks for bumping this – so the long story short of this is that there is an issue with the canopy firmware.
Here’s the analysis from the man, myth and legend @JasonL_Inovelli:
Bulb Flicker issue Cause Analysis:
Because the fan module needs to periodically obtain the current power and save it to the internal flash, when saving to the end of the storage space, it will be erased first and then saved again. The erase operation will forcibly stop all interrupts, causing the MCU to fail to enter the PWM control interrupt. , The zero-crossing detection is interrupted, which will cause the loss of the zero-crossing interruption and the abnormal PWM waveform, which will eventually lead to the problem of occasional bulbs flashing.
Adjust the flash read and write time dynamically according to the brightness level of the device, so that the flash erase time does not cover the zero-crossing interruption time, increase the PWM running time compensation after flash erase occurs, and reduce the impact of flash erase on the PWM waveform; When the zero-crossing interrupt is lost, the software delay is used to generate the zero-crossing point to ensure that the PWM operating waveform will not be lost after the zero-crossing interrupt is lost, and the device can still run according to the predetermined PWM timing.
Jason and I have no clue what that means as it came from the engineer, but the long and the short of it is: When the fan module erases the flash or the power supply is not stable, the PWM output will be unstable which cause the bulb flicker. So they revised the firmware to dynamically adjust the time of flash erase and used the software compensation when the power supply is unstable, to make sure the PWM output is stable
The GIF I used to respond to that was:
So, what we’re going to do is for anyone that is experiencing this issue, we’ll replace the canopy module with the new firmware for you. The manufacturer is working on creating a jig which we can attache to the PCB board to upgrade the firmware.
In other words, we need to procure x amount of units from the manufacturer with the updated firmware and when we receive the old modules from everyone, we can update the firmware via the jig so we can have some extras in stock to replace any further issues.
What does that mean to you? We are working on obtaining the replacements. The manufacturer is working on producing these for us in an emergency use. More to come on when they are available and when we can obtain the jig.