Thanks for the circuit diagram, that makes things a bit more clear :) You are feeding individual LEDs current drawn from a 12V 'bus' rail. Without using switching techniques this will cause you to burn the excess heat (12V - Vled) * LEDcurrent. It does not matter whether you feed the individual LEDs from the 12V or the 5V, the heat is burned somewehere. When total heat is a problem, you will have to use a different conecpt. When the locality of the heat is a problem feeding the LEDs from the 12V might be a solution, but I assume you use local 7805's to compensate voltage drop on the bus, so that voltage drop could cause variations in LED current. But you have 12V and you want to feed 4 LEDs with the same PWM signal. So why not put the LEDs in series? That would reduce the current by a factor 4. Choose a bus voltage that is sufficiently high to compenstate the drop and still feed 4 LEDs, and switch each 4 LEDs with a constant current supply. The 7805 can be replaced by an 78L05 or even a R+zener. I think this will burn much less heat. If heat is still a problem you can either use a switcher like you did (but that still burns the heat ( 5V - Vled ) * current. If that is still too much I would consider a current loop, with all LEDs in the loop, and FETs over the LEDs to bypass them. This is a bit more complex, but burns only the Vled * Iled heat. I don't think you can get rid of that. Wouter van Ooijen -- ------------------------------------------- Van Ooijen Technische Informatica: www.voti.nl consultancy, development, PICmicro products docent Hogeschool van Utrecht: www.voti.nl/hvu -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist