I have been working for sometime on my LED drivers to enable me to have independent control of the 30 x 3W LEDs required to create various lighting effects for my aquarium lighting fixture.
Credit where its due, the design of this board is thanks to Magpie, my electronics knowledge is no where good enough to pull something this complicated off. I have spent a fair bit of time playing with the layout, learning how to use KiCad, understanding the circuit and selecting the correct parts for the board.
The board design has to address certain issues inherent with using PWM and the attributed noise it creates. To help combat this the board is laid out in a way that minimises track length between certain components and the use of what is known as Kelvin connections. The Kelvin connections are used to accurately measure current against the ground to get accurate readings.
The problem that can occur from poor design and layout (which I am yet to have any proof of until I test a board) are EM interference with other devises, flicker and inefficient power usage.
This board uses a micro with c code to very quickly take current readings and adjust the output value in order to maintain a stable and reliable output.
My first attempt is currently in production with Seeed so I expect to get my boards in the next few weeks. I have just ordered an Atten 858D+ rework station and am in the processes of ordering my components with digikey.
Here is a 3d view of the board design, the boards have 3 channels, each capable of supporting 1 3W Led and I will be using 10 of these boards.