Better dimming and flicker reduction using a 12-bit timer and look-up table
You’ll learn to use a precomputed look-up table and changing a microcontroller’s timer, here an Arduino compatible, for larger range and higher-speed pulse width modulation (PWM) to correct for non-linear human brightness perception, and to reduce flicker by raising the PWM frequency to 4kHz or higher.
While the electronic circuit is usually very straightforward, the “magic” in physical computing projects happens always in the code. So, please see the GitHub link to the BOM, the schematic, and extensively commented code that you can easily adapt and recycle in your own projects. Often, there’s a useful code concept or code snippet that you can use for an entirely different design, because it’s a fundamental principle.
If you want to learn about good soldering, this seven minute vintage video is still the best of them all.