I'm trying to dim a 10w LED via Arduino PWM.

This is the LED that I have: http://www.banggood.com/10W-Warm-Pure-White-High-Brightest-Save-Power-LED-Light-Lamp-p-88169.html

Without knowing much about this stuff, I bought this (namely because it had LED, DIM, and PWM in its name): http://www.ebay.com.au/itm/121437119430?_trksid=p2057872.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT

I can't get the eBay dimmer to work for love or money. When I connect it to ground directly on the battery terminal, it goes off, which means the dimmer circuit is working. I don't even know where to start with MOSFET dimming solution, but I think that the IRFZ44N MOSFETs are the wrong ones because they won't turn on with 5v power (they need 10v or something, but those are the ones I have on hand).

I can't seem to find any good guides on how to do this after stacks of googling, and to be honest, I don't even know if those LED's can be dimmed in the first place.

What do I need to make this happen?

2 Answers 2


Well, it appears that your driver should do that for you. Since you already have the MBI6651 driver, read its datasheet and so you can get a guess on how it should work:

  1. attach a 9-35V supply to the Vin-GND terminals. I suggest to use at least 12V
  2. attach the LED to the terminals LED+ and LED- (remember the polarity!)
  3. attach a transistor to pull down the pin DIM
  4. send a PWM signal (frequency between 100Hz and 1000Hz) to the transistor and you should see the LED light up and then dim

If it works then you can try to send to DIM directly th PWM signal, but personally I don't recommend so (unless the board already have the transistor)


How to attach an nMOS to the DIM pin. Since the pin is internally pulled up, you don't need any pullup. So you just need an nMOS. I suggest you to use a SOT-23 logic level nMOS connected this way:

nMOS connection

no external components (as long as the nMOS supports 5V on the gate, but every discrete mosfet should). As for the nMOS, I prefer the SMD case because it is easy to solder also on perfboards (just use three pads forming an L shape and you'll see that you can easily solder it). Just choose any n-channel mosfet with a maximum threshold voltage of 2V or less and you are done

  • That sounds great :) A couple of questions though, what transistor should I attach to pull down the pin DIM, and how would I know what frequency the PWM is pulsing at? Jan 22, 2016 at 23:58
  • Any n transistor is fine. Attach an NPN with a base resistor, or attach an nMOS and you don't need any resistor (i prefer the second solution). Any transistor is fine: I usually choose nMOS in a sot23 smd case, but you can choose anyone - the required power is really low - and possibly logic level - i.e. Gate Threshold Voltage lower than 2V. If you don't know how to attach it, just ask. As for the frequency, according to this arduino page frequency is s approximately 490 Hz or, on pins 5 and 6, approximately 980 Hz. You can measure it though
    – frarugi87
    Jan 23, 2016 at 14:06
  • I don't know how to attach it :( Can I take you up on that option of asking you how to attach it? :D Jan 31, 2016 at 6:00
  • @LewisCianci I added the (very complicated) wiring scheme. You just need... A MOS. no external components, no difficult wiring, just an nMOS.
    – frarugi87
    Feb 1, 2016 at 10:07
  • So, just so I have this clear, you're saying I can use the existing LED Driver I have, as long as I have an nMOS sitting in between the Arduino and the light? The only MOSFETs I have on hand are these: banggood.com/…. Will they work? I heard that these MOSFETs aren't "logic level" so Arduino can't even turn them on. You're amazing by the way. Tell people in your vicinity that, and tell them that I am witness to this fact. Feb 1, 2016 at 11:00

I would suggest the CAT4101 PWM controllable constant current sink LED driver. You might want 2 in parallel for the higher current.

They can deal with up to 1A each (theoretically) though they may get a bit hot at that current level - so it would be better to parallel them so they deal with roughly 500mA each.

  • Is there a board with this chip on it with io pins? Or would I have to just buy the chip and wire it manually? Jan 22, 2016 at 14:43
  • Have you asked Google? There's some pictures of boards on there, so chances are there are boards available (I used to sell one but haven't made any for a while).
    – Majenko
    Jan 22, 2016 at 14:44
  • 1
    What is the advantage of using the CAT4101 over the MBI6651 the user already has?
    – Gerben
    Jan 22, 2016 at 15:33
  • I know for a fact the CAT4101 works well (and easily) with the Arduino. I have never heard of an MBI6651.
    – Majenko
    Jan 22, 2016 at 15:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.