Experiments using LEDs as a flash gun for high speed photography

I recently read on the Dreamingrobots Forum (http://www.dreamingrobots.com/forums/viewtopic.php?f=8&t=2237) about a very fast LED-based flash gun called the Vela 1 (http://www.vela.io/). This flash gun is amazingly speedy, delivering significant amounts of light within 500ns. That’s incredibly quick even by comparison to xenon flash guns that when run at low power, can generate pulses with durations in the region of 5 – 30us. Even spark-based flash guns can’t reach the speeds of the Vela 1. Also, the flash from an LED follows the pulse used to drive it with very low lag, and none of the afterglow associated with a xenon flash tube. Essentially, the light output is the same shape as the pulse used to generate it. It is clear that the Vela 1 is set to transform very high-speed photography.

The basic idea of an LED-based flash gun appears fairly simple; high power LEDs are driven for very short periods at much greater powers than they can tolerate when driven continuously. Using very short pulses means that the chip doesn’t over-heat and the wires leading to it do not fuse. Naturally, being of a curious nature, I wondered what I could achieve using some spares bin components. I thought I would blog my experiments in the hope that others would try and improve upon them, and that we might thus develop a DIY LED flash. In particular, I want to make something that is fast enough for the sort of macro photography I do, and that, by means of having some ancillary optics, puts the light in a small area. Here I describe the beginnings of the development of a flash using small 3W (3.5V) white LEDs. The circuit is designed to be readily modified to experiment with 10W COB LEDs that are normally driven at 10-35V. My reasoning was to start small with cheap parts, and if it worked, then order the more expensive larger LEDs and if necessary, higher voltage, lower ESR, capacitors.

My feeling was that rather like with the high-speed electromagnetic shutter described in an earlier post, the best way to “overdrive” an LED would be to use a MOSFET switch and a capacitor bank. Research revealed a paper written in 2010 that described the pulsed operation of high power LEDs for imaging flow velocimetry (Willert, C., Stasicki, B., Klinner, J. and Moessner, S. In Measurement Science Technology 21, 075402 (11pp)). These authors had succeeded in driving a variety of 3 to 77W LEDs at between 30 and 220A, many times their continuous current ratings of between 1.5 and 36A, without destroying them, by using current pulses in the 1 to 20us range. The circuit they used to do this looked rather like I had imagined, a MOSFET switch triggered by a TTL pulse that allows the current from a low ESR capacitor bank to flow through the LED thus producing a brief, bright, flash. They describe some interesting effects using coloured LEDs where with very high current pulses the LED’s normal emission spectrum is shifted towards the blue end of the spectrum.

Clearly, here was the starting point for some experiments. I wrote a very simple programme to generate microsecond pulses using an Arduino and constructed a circuit very like that shown by the authors of the paper cited above. I found that an Arduino isn’t capable of generating pulses much less than a few us without coding in assembler. Assembler scares me so I have stuck for now to investigating pulses in the range 5 to 500us. I had to modify the circuit to work with the components I had – I used a nice MOSFET that I had in the spares box, an IRF1407. This will carry the same huge currents that the IRFB3206G used by Willert et al., it is very robust, fast, and has a very low on resistance. Also, Willert used a MOSFET driver, the UCC3722P, that I couldn’t get hold of, so instead I used a TC4420. This will take a 5V pulse from the Arduino and turn it into a pulse of up to its supply voltage – I used a 12V supply for the MOSFET driver, plenty enough to gate the MOSFET. I had a pack of 3W white star LEDs and it was these that I decided to begin to systematically destroy!

Here is my slightly modified version of the circuit from Willert et al., 2010. In my case the capacitor bank consists of 3 x 1000uF 35V low ESR capacitors in parallel with a 1uF polypropylene capacitor. The extra resistors are necessary to prevent the gate of the MOSFET and the driver from floating. My first version of this circuit was built up on a bread board – probably not a good starting point had I wanted to start with high speed pulses, but good enough to get the circuit up and running with millisecond pulses and modest overdrive currents. Note that the Willert et alia’s circuit has provision for monitoring the overdrive current by virtue of placing 20 milliohm resistor between the MOSFET  source and ground. While it is possible to buy very low resistance resistors, the simplest and cheapest thing to do is to make one. I did this by looking up the resistance of the 27AWG enamelled copper wire (0.169  ohms per metre) I happened to have and then cutting the right length for 0.02 ohms, folding it in the middle, twisting the two lengths together, and then spiral wrapping them around the body of a resistor, scraping the enamel off the ends of the wire, and soldering them to the resistors leads. You can find a description of this process and its whys and wherefores here: http://www.cappels.org/dproj/DIY_Copper_Wire_Resitors/DIY_Copper_Wire_Resitors.html.


The bread-boarded circuit worked but it was clear that a PCB would be required to take things further. I produced a PCB and this too worked but now I could push the pulse duration down into the low us range. Below is a picture of the PCB hooked up for measuring the drive current and light flash as measured using a photdiode. Below that are details of the PCB – this is absolutely not a final design – the traces will need to be thickened and shortened for a higher voltage version which will probably use a single low ESR 100 or 200V capacitor. Capacitors described as ‘photo flash’ may turn out to be the best to use in the higher voltage versions – they are available on eBAY.

First version of experimental set up. The board shown below is way better!

First version of experimental set up. The board shown below is better! The funny looking component below the MOSFET is the handmade 0.02Ohm resistor used to measure the current through the LED.



The board is 4″ x 4″. As you can see, it certainly isn’t optimized for short trace lengths etc. To keep things simple, I made it single-sided. A double-sided board with a ground plane would be much better…but it works at least with currents up to 10A.

I started to investigate how far I could push the 3W daylight white LEDs in terms of the drive current. I noted that Willert et al. had been able to push LXHL-PD09 3W red LEDs to 20A using 1KHz 1us pulses. I opted for a lower frequency and a higher duration because I couldn’t get less than 5us out of my Arduino program. I was able to get to 10A without damaging the LEDs (see IV diagram). The light output  is pretty damned bright but I doubt that a single 3W LED has much application. However, I do think that in principle, since it is possible with a 3W LED, it should be fairly straight forward to build a more powerful flash with 1/200,000th second duration. How easy it is to get down to say 0.5us remains to be seen.

I will add to this post when I have taken things a bit further. I am in the process of working out how to measure the light output in some kind of meaningful unit………

Update…the 3W white LEDs g0 west just north of 19.6A…the voltage across the 0.02 Ohm resistor started to have a peak at the front end and then the light output ceased.



About petermobbs

A tinkerer and maker of 'things' who loves macrophotography and the natural world. Retired scientist and former Chair of Physiology, Dean of Preclinical Medicine and Dean of Life Sciences at UCL, now enjoying the beauty of the Gresigne in South West France
This entry was posted in Photography and electronics and tagged , , , , , , , , , , , , , , , , , , , . Bookmark the permalink.

43 Responses to Experiments using LEDs as a flash gun for high speed photography

  1. John Simons says:

    Great article we`ve been playing with high Speed flash photography for a while and reached the limit we could achive with std.flash guns you have now given us a new idea to try. Many Thanks

  2. petermobbs says:

    John, I wish you every success. All the best, P.

  3. Peter Mann says:

    Thanks for a very interesting article – it’s just what I want to build!
    Any further work on it yet ?

    • petermobbs says:

      Hi Peter, I haven’t done a great deal more work on this but I have been able to drive 10W chips and get flashes bright enough for close macro work. The light output for brief flashes is too low for anything else. The Vela led flash uses a lot of high power chips but still isn’t all that bright. No reason why you can’t build several led flashes or modify the circuit I show to drive more chips. Good luck with this. P.

  4. Charles says:

    Hi Peter,
    Just what I’ve been looking for !!
    Unfortunately, I’m no electronics expert so when you say “modify the circuit I show to drive more chips” I’m left wondering how exactly? I’d very much appreciate your insights into how to build an array of chips to give much greater output – if you could at least outline how this could be done I will find someone locally with the electronics background to specify the components.



    • petermobbs says:

      Hi Charles, The circuit I show can be pushed quite a bit further by using higher voltage capacitors and a more capable power supply. Also, I imagine it would be possible to create several copies of the circuit each driving a 10W LED. Best wishes, Peter.

  5. VasilakisM says:

    I think that a circuit like on the link, will solve the problem for a short pulse:

    • petermobbs says:

      Yes, that circuit will provide the sort of pulse required but it has the disadvantage that you would have to work in the analogue domain and vary R and C to vary the length of the pulse. All the best, P.

  6. Dave says:

    Hi Peter,
    Interesting article, this is almost the only article on this subject around.
    I need to build something similar to this for a real life application, in which I am lighting a fast moving conveyor belt and automatically take photos by a camera (shutter speed will be around 1/2000 second I think). The (industrial) camera has a trigger pulse output so its very convenient to interface with the driver PCB.

    Just a question, do you think this circuit will be reliable/fit for such a real life application?


    • petermobbs says:

      No reason why the circuit shown should not be completely reliable as long as you work well within the envelope of all the components. 0.5 milliseconds 1/2000th S) is actually a very long light pulse in the context of a circuit like this. You just need to run the LED at a voltage large enough to give you the light output you need but low enough to give a reasonable lifetime for the LED. I’d knock up the circuit and experiment to find how much light you need. All the best, P.

  7. Dave says:

    I presume this circuit doesn’t have any way to control/manage the current flowing though the LED, is that right Peter?
    So the current (and LED brightness) is decided by the duty cycle and frequency of the pulse only right?

    • petermobbs says:

      The current is controlled by the applied voltage. The higher the voltage, the greater the current and the greater the light output until of course, the LED fails! All the best, P

    • petermobbs says:

      No, the current is a factor of the applied voltage. The IV plot in my article is roughly linear showing the behaviour is Ohmic – at least for short pulses. The frequency and pulse length will be important in determining whether the LED blows up though because more and longer pulse will cause the LED junction to heat up more and it’s largely heat that kills the diode. All the best, P

      • Dave says:

        Thanks, I will try with a 10W COB led and let you know how it goes. Good thing is that my frequency will just be about 5Hz-10Hz so I hope that will allow for longer pulses.

        Will try to power the COB by 12V and 24V. Do you have any recommendations on the flash bank capacitors (can’t seem to fully understand from the schematic) in these cases? Thanks Peter!

  8. petermobbs says:

    Ideally, you want capacitors with a low effective series resistance (low ESR) and a voltage rating about 33% higher than the maximum voltage you intend to use to drive the LEDs. You will need to be careful to work up from a short to a longer pulse – you will blow up some COBs so buy several! It’s heat that kills the LEDs so it’s a combination of current flow and time that determines at what point the junction dies. All the best, P.

  9. CaptainObvious says:

    This looks like just the kind of thing I need for a photography project I’m working on, one question though, how do you control the voltage to the LED?
    My intention is to drive either a 20 or 50W LED chip at normal current levels, there’s no need to overdrive them, the issue I have is with synchronization rather than power output.

    • petermobbs says:

      Hi, In the circuit I show in my blog, the voltage is simply that of the batteries/PSU used to power it. If you simply want to switch the LEDs but drive them at their normal voltage, you can use the same/similar circuit to switch them with a suitable FET. However, if you don’t overdrive the LEDs with a high voltage, you will get little or no light at short flash durations. Hope this helps. All the best, P.

  10. greg says:

    Hi Peter,
    I’m grateful for your informative article. I’ve made a career of animating 3 dimensional objects with synchronized strobe lights. I’m presently trying to replace my xenon system with leds. The arduino based circuit you have is very instructive. I’m presently trying to fine the ultimate cob chip for my application. Duty cycle is small (100 microsecond pulses, 10-15 per second) I’ve tested some cree x series chips in the 80watt range. I need more light and, in some applications, I will need to collimate the light. I have not been able to overdrive them more that double. Any information on possible candidates would be helpful….manufacturers and models.

    • petermobbs says:

      Hi Greg,

      Apologies for the late reply – I have been involved in other things. I am afraid I do not have any recomendations since all I have done is to use either the 3W LEDs described in my blog, or 10W COBs bought from Future Eden. 100 microsecond pulses are easily achievable and the chips can be driven at a significant over-voltage but I am not surprised that you are looking for more light. Perhaps you could creat a 60W panel and collimate the light with a small Fresnel lens? Cheaper that way than using glass and lighter. Good luck with the project. All the best, Peter

  11. greg says:

    Thank you Peter,
    I like the idea of a small fresnel. I know the industry is ripe with optics for chips. Meanwhile,
    I’ve tested a few chips. I’m getting the light. But manufacturers like cree are not willing to say you can overdrive . Companies that do, (overdrive chips) do extensive destructive testing to find the right ones. They keep this information close to their chests. A chip might work fine, but have half the life etc. I’m having some luck with Chanzon 100watt chips at normal power levels. I hope to find something before I go blind. The quest continues…..

    • petermobbs says:

      Greg, I think you will need to overdrive to get enough light. There are no hard and fast rules as to how far you can push the chips. All you can do is drive them until they break and then step the voltage/time back somewhat. However, for a 100 microsecond pulse I would be surprised if you couldn’t drive them at 2 or 3 times the rated voltage at 1Hz for many, many cycles. Overdriving at even twice the rated voltage will give you lots more light. Good luck but expect to burn a few chips out. PS look out for built in over-voltage protection….you can see the extra components through the plastic that is used to embed the LEDs.

  12. Jacob says:

    Thanks for the excellent article.
    I am wondering why the small C4 1uF capacitor is needed. Is that capacitor used to filter noise in the power supply?

    • petermobbs says:

      Hi Jacob, The main reason that it is there is because it was part of the circuit in the paper on which I based my experiments i.e. I blindly copied it! However, I suspect the idea is that the ESR of a small capacitor is low so that when the capacitor bank is discharged through the LED the voltage pulse has a faster onset than it would if the current was simply drawn from the larger capacitors. You could try removing it and use an oscilloscope to see if it has any effect on the shape of the pulse. The same trick is often used in audio circuit power supplies though I am doubtful that it has much effect on how an amplifier sounds. All the best, P.

  13. Volker says:

    Hi Peter!

    Very nice and instructive article. Seeing what Matt Kane does with the Vela One, it seems that I had given up on high speed white LED flashes too early. The ones I tested showed quite a considerable afterglow, probably due to the yellow Phosphor/fluorescent that was used on early “white” LEDs essentially being blue ones with a part of the emission being converted to yellow. Or my druver circuit sucked.

    Recently I grabbed the article “Pulsed operation of high-power light emitting diodes for imaging flow velocimetry” by C. Willert, B. Stasicki, J. Klinner and S. Moessner again and did some more research. A paper called “LED based powerful nanosecond light sources for calibration systems of
    deep underwater neutrino telescopes” came up (B.K. Lubsandorzhiev VLVnT08), this guy is using ultra bright blue LEDs from Nichia – NSPB500S – at below one nanosecond with a rather common transistor driver for a matrix of LEDs, similar to the one discussed here: http://jensign.com/PulsedLED/index.html.

    Additionally, Cree has some information regarding pulsed over-current driving their XLamp LEDs: “Pulsed Over‑Current Driving of Cree ® XLamp ® LEDs: Information and Cautions” (http://www.cree.com/led-components/media/documents/XLampPulsedCurrent.pdf). Management summary: “The main factor limiting an LED’s ability to withstand an eoS event is the current-carrying capability of the LED chip and internal interconnections.”. Two main mechanisms apply: Electro(=metal)migration in the contacts and the current-carrying carrying capacity of the bond wires who – at some point – just behave like an ordinary fuse.

    With rising forward current unfortunately luminous efficience will degrade, so from about 80% at maximum allowed continuous forward current, you’ll end up with around 40% at three times overrating an XLamp XP-C LED in pulsed mode.

    Electro Optical Components, Inc. also has a few charts covering pulse operation mode (http://www.eoc-inc.com/IBSG/pulse_mode.pdf).

    Whatever your individual choice may be, I strongly suggest adding some more safety circuits than just the 100 Ohm resistor which would only prevent frying the COB-LEDs in a power-up condition where the trigger signal is already present. For example some logic device limiting the maximal pulse duration and duty cycle that is applied to CN4 (“Pulse in from Arduino”) which can be achieved with a (not retriggerable) monoflop set to the max. duration, a logical AND gate etc. Use the 74HC-range for that You might also want to add a device that limits the maximum duration of a sequence of pulses, so you’re not exceeding heat dissipation in the LED cluster.

    Reason: Microcontroller can (and will) misbehave, software can (and will) be buggy.

    I care about that when experimenting with a frequency qenerator, an automotive ignition coil, spark gap and a circuit similar to https://www.elv.de/High-Speed-Transistorzuendung-mit-automatischer-Z%C3%BCndstromunterbrechung/x.aspx/cid_726/detail_33020 (TCI with BUY50 which is certified for periodic avalanche operation). Eyeballing that a typical car engine would rev around 6000RPM, times four cylinders hence 24kHz for the genrator (notice the error?) ended up in a very brief but intense tuft discharge, some ozone generation and a quite spectacular failure with one of the results being the cap of the transistor penetrating the ceiling.

    Have fun and stay safe!


  14. Ian says:

    Thank you Peter and othersl for a very interesting article and responses. Lots of food for thought.
    Rather than using the low-ESR capacitors has anyone thought of using a couple of 12V lead-acid car batteries or similar? There is plenty of current available and I can’t see any reason why it shouldn’t be instantaneous. The LEDs voltages mentioned are easily within reach and the excess volts can be ‘dropped’ through a home-made resistor as described above.
    Any comments?

    • petermobbs says:

      Hi Ian, Good idea. It will all come down to the effective series resistance (ESR) of the capacitor versus that of the internal resistance (IR) of the battery. It is a bit hard to compare ESR and IR because ESR is usually quoted at a particular frequency (ie the manufacturers of Duracap flash capacitors use 120Hz) whereas, I imagine but do not know, that battery IR figures are for the DC case? My feeling is that were batteries as good as capacitors then you wouldn’t see so many cases where capacitor discharge is used in time critical supply of brief large currents but……. I guess the way to find out is to give it a go! All the best, Peter.

  15. David says:

    Your investigation of the potential for LED use in a high speed strobe light is interesting.
    Could you comment on this LED here:
    It claims 147,000 lumens output for the pair of ‘globes’. That seems a bit ambitious to me. What do you think? If it’s output is as claimed, it would be a good candidate to overdrive and get high intensity micro-second burst of light … ?

    • petermobbs says:

      Hi, These could work. But look out for built-in over voltage protection – I am told some COB devices have these. I don’t know whether headlight LED bulbs do. All the best, P.

      • David says:

        Hello Peter, Thanks for your reply, I’ll try to ask the manufacturer if the device has built-in over voltage protection – if I can find out who they are ,,,
        Meantime I am going to try and set up my high output LED from Bridgelux:
        Claimed output without overdrive at 1.71 A is 18,863 lm …
        Also according to the data-sheet can be driven at 3.42 A (however they do not specify the duty cycle) where they say output should be about 37,173 lm
        This should certainly ramp up my microscopy work … I hope !
        Thanks for sharing all your experience, I’ll try and decipher the circuits (or get some fundi to help).
        Good work. Keep it up!

    • Ian says:

      The line that would give me cause for concern is:
      Operating Voltage: DC 9-32V(fit 12V,24V vehicles)
      This suggests that there is a regulator circuit somewhere inside the assembly that may, or may not, be easy to get round. It’s never impossible but some of these things are mass-assembled by robots and you risk smashing it all to get wiring to the COB chip alone.


      • David says:

        Ian … Thanks for your input on this, I would be exaggerating If I claimed even ‘sub-hacker’ electronics savvy, so appreciate help from more knowledgeable folks!
        Maybe one could just just use a couple of these together without overdriving them … I am mainly interested in high intensity pulse for microscopy work, so could have the LED fairly close to the subject … But might need to use special mirror setup to ‘catch’ most of the light and direct it to my subject.
        Thanks again.

    • Volker Bartheld says:

      The ebay offer seems a bit overhyped to me. You don’t need the heatsink, you don’t need the lame 12V boost converter that is necessary to drive the COB from car electrics, inconvenient form factor (to mount and tile modules which will be necessary due to poor beam characteristics and luminous output) and… 980W of power consumption? You must be kidding me.

      Forget about this chinese crap.

      Buy the naked COB modules from a renowned manufacturer (I mentioned CREE for a reason in my post above, Nichia is a candidate as well, e.g. the NFEWH306B-V2 with 13’000lm of luminous flux) and keep in mind that nominal operating voltages of such a COB module are already at around 50V which will draw 1.5A. If your intention is to overdrive the COB to 10-15A, you’ll easily end up at 60V or more, just look at http://www.nichia.co.jp/en/product/led_product_data.html?type=%27NFEWH306B-V2%27 and extend the graph showing forward current over voltage.

      Handling 10A bursts of several or even sub microsecond durations at such voltages is not piece of cake. Inductances and capacitances will emerge all over the place, even in a trivial length of wire.

      Good luck!

  16. ribblem says:

    I’m planning to work on a high speed LED photography flash. This blog post seems to be the best resource I’ve seen online as a starting point. Basically I’m adding this comment so I can track future comments.

    Having read through this post I think the approach Peter proposed looks good. I plan to take it and beef up the capacitor, mosfet, upgrade to a good cree LED, and do a reasonable PCB layout to see what that gets me. If I like the results I’ll work on optics since that is an important part of this type of flash and something Vela didn’t do so well.

    Note I’m the guy who did the Camera Axe trigger. I’m hoping I can come up with a reasonably priced fast (1-10 us range) LED flash that can be controlled with the CA trigger system. My goal is to make an open source flash and then start manufacturing it (just like I do with the CA). If anyone wants to work with me on this feel free to contact me on the new CA forums: https://groups.google.com/forum/#!forum/camera-axe

    • Hi Maurice!

      Long time, no see. Good to read you here. I thought, you had killed yourself already playing with your fierce air gap flash… 😉

      Every other guy I would have recommended to do his homework first and learn about ultrashort high current pulses, but you obviously know what you are doing… Here in Germany, I’m unfortunately still stuck with my homebrew Photoduino clone (see http://photoduino.com and https://github.com/kalanda/photoduino), which is essentially a dead project by now. The Photoduino lacks versatility, I would have ditched the flash thyristors in favour of an optocoupler array if I were to do the design again and the separation of cameras vs. flashes is obsolete. In fact, timing wise, you can handle a camera with it’s AF and shutter release function identically to two flashes and decide yourself whether you want to control 2 cams and 2 flashes, one cam and 4 flashes and so forth, probably even with a demultiplexer (such as the SN74LS138) in front, so I can drive 8 optocoupler outputs from just 3 data lines of the Arduino.

      Regarding the Velo One (https://shop.vela.io/products/vela-one-high-speed-photo-camera-flash): At USD1’244, it’s ridiculously expensive for a hobbyist like me even though I know what a bunch of nine badass white COB LEDs will set you back if you buy from a reliable manufacturer, which I highly recommend. There’s B-stock from dubious chinese origins, but there’s a downside to them: They might work. Or rather not: https://hackaday.com/2015/09/14/why-100-watt-ebay-leds-are-not-your-friends/. And you have no means knowing what exactly you get.

      Without having seen the Vela One’s PCB, I already hate the analog knobs and that there seems to be no way of activating some kind of “modelling light” which is essential if you want to get an impression of light characteristics _before_ you’re blowing things apart. In times of I2C and other buses, I don’t see a reason why flash duration should not be preset electronically/digitally – at least as an option.

      The elliptical reflector is probably not the very best solution. Could be that a fresnel lens helps evening out the spread. And, yeah, a CRI of 95Ra would be nice.

      Don’t know if I can help you with the development, drop me an email just in case.


      • ribblem says:

        On the CA6, I switched to a sam3x micro which has more IO than I knew what do do with. So I added 8 camera ports which can also trigger 8 flashes (or 16 if you use splitter cables). Oddly, I switched from the optoisolators to mosfets to trigger the cameras/flashes. The optoisolators were kind of slow (20 us latency – though it was consistent so not too bad), and the optoisolators had a voltage drop which the mosfets don’t. The only disadvantage of the mosfets would be if someone put a high voltage flash into it, but those are pretty rare these days and even with the CA5 that would damage the optoisolator chip.

        Yes, the Vela one price has gone way up. I got mine way back at the lower Kickstarter price.

        Yes, the modeling light mode is is important. That’s pretty much my top bonus feature. I wasn’t sure how short a lot of pluses might damage the LEDs, but after talking with someone more knowledgeable about this I’m hopeful that’s an easy add. There are pretty easy workarounds of doing a test trigger of the object before blowing it up (even if I have model light mode I’d probably do that to make sure the exposure is correct), but having a model light mode would speed up setup.

        I can probably

        I was just emailing with Peter about the possibility of using sw serial communications on the CA6 to program the flash just like you were describing. However, that might be overkill. With the CA6 you can program a bunch of rapid fire flashes so if the LED flash just watched the trigger line and copied it exactly the CA6 could trigger the flash in whatever pattern you wanted. I’m totally open to consider options here, but first we need to get the basics working and verify the flashes are practical.

        I am not even considering CRI at this point, I expect it will be pretty bad 🙂

        I sent you an email. If you didn’t get it reach out to me via this page: https://www.dreamingrobots.com/pages/contact-us

  17. Ian says:

    Very interesting Ribblem. I’m working slowly on this but here’s an update.
    1) Control. I had a BBC micro:bit controller lying around (16MHz ARM Cortex) and wanted to see if that could drive a flash. I think the answer is yes and I have a small (low power) LED next to me flashing at 4MHz by programming in C. The micro:bit has 5 output pins that are completely available as outputs like this, plus others that can be diverted from other unnecessary tasks if needed. I want to make all stages of the process as fast as possible ‘cos the thing will only be as fast as the slowest stage. A 250uS pulse is therefore a little slow to my mind so I’m looking at another ARM Cortex device called Pokitto that runs 3 times faster.

    Next, I have bought mosfet drivers and mosfets but chosen them for speed and for low capacitance on the gate of the mosfet. My reasoning being that, again, speed should be kept high and also the low capacitance mosfets are faster and cheaper with the downside being lower voltage and lower current. I also chose them because many that looked interesting were only available in vast numbers. The ones I chose were 6A Single MOSFET Driver,MCP1407-E/P, 5 for 3.92GBP and Power MOSFET N-channel 80V 22A TO220AB, 5 for 2.38GBP

    Frankly, I don’t see this as an issue because I think that LEDs are cheap enough that it would serve better to have one controller triggering1 or more boards in parallel, each board consisting of one mosfet driver + 1 mosfet driving an array of, for example 9 LEDS, 3 in series by 3 parallel.

    My next plan is to hook this all up with whatever LEDs I can find, culminating in a full-blown test at whatever speed I can get to and using a LiPO battery, probably 3S or 4S initially and driving a resistor instead of LED.

    Wish me luck.


  18. ribblem says:

    Hi Ian,

    I haven’t tested anything for this flash, but I think running native c code on an attiny running at 16 mhz should allow pulse durations well under 1 us. So I’ll probably just use one of those since they are cheap and I’m familiar with programming them. I’ve also shipped nearly 1000 ATtinies for a different project and thus have a pretty good feeling for their reliability in volume. That said, initially, I’m not going to include a micro in my test boards. I can just generate the pulse from the CA6 which I know can easily generate sub 1 us pulses today. I’ll worry about the micro stuff after I prove the flash is going to work for my needs.

    I would point out you have a typo above that kind of confused me for a little while. You said you have a it blinking at 4 Mhz and that the duration is 250 us. I’m pretty sure you means 250 ns. For me that’s more than fast enough. I just don’t expect to be using this flash at under 1 us since I want a usable amount of light for photography.

    You are using the same mosfet driver as Peter (MCP1407). I was also planning to just use that one initially. If I ever needed to reduce cost using a totem pole transistor configuration would probably be the way to go, but for now I’ll just use the simpler controller.

    For mosfet I’m looking at IRFS4227. I suspect going to a higher voltage than the mosfet you or peter chose is going to be important. After doing some initial testing I might go with a less overkill mosfet to save costs. If testing shows the mosfet is still failing (though I doubt this will be the case) it’s easy to find lots of even bigger mosfets using the same package.

    Your plan of using many smaller LEDs is different from mine. I was planning to use a really big one like CMA3090 and see how that works. It’s certainly more expensive per LED than your approach (these cree leds are in the $20-30 range), but it should be easier to do the optics for a big single LED. That said, I’m not sure which approach is better so it’s cool that we are taking different approaches.

    Are you planning to drive the LEDs from the Lipo instead of a capacitor? I’ve calculated my peak wattage from my single LED approach to be around 1000W. I don’t know what lipo batteries can do, but I wouldn’t have thought they could respond quickly to peak power usages like that. My plan was to go with a low EDR cap like Peter said, and slowly charge it via a usb port.

    With all that said, I expect to proceed slowly on this. There are a lot of little things I need to test, and right now this is a lower priority project for me. I’m just working on it when I have extra time between my other projects.

  19. Manuel Bayer says:


    first of all thanks for the interesting post..
    i have also built a circuit to drive a LED with short high current pulses. To trigger the LED i use an Atmega328. The uC is programmed to create a 250 ns single shot pulse. I tried 3W china LEDs but it seems that they are not fast enough to create a bright flash in this short time. When I stretch my single shots duration (about 100 – 500 us) the light flash is bright enough, comparable to an iphone camera flash. What type of LEDs can you recommend? Did you improve your circuit over the time?

    Regards, Manuel

    • petermobbs says:

      Hi Manuel, Most COB and single LEDs should be capable of pulse operation in the microsecond range. When you get down to nanoseconds, it gets much more difficult with the LED, the mosfet and its drive circuitry all affecting how short you can make the pulse. Currently, Maurice Ribble of CameraAxe fame is working on a circuit which will be put in the public domain (you will also be able to buy the flash from him). I have reason to believe it will be good! All the best, P.

    • ribblem says:

      To expand on what Peter said, the electronics are quite far along. I made a very simple single LED pcb to test things. Then I made a bigger test board with 25 3W leds that I overdrive by about 20x. Now I’ve just ordered my third version which has 36 LEDs and I expect that will be the final number. I’ve also started working on the optics which is a really important part of designing a useful high speed led flash. I made a video about some early experiments in this area (I’ve made lots of progress since then) https://www.youtube.com/watch?v=8hdAv_MRyY4

      So, you might have a reasonable LED and just need more of them. My 36 LED is actually a lot more light than the biggest $50 COB LED I could find on the market and by going with a large array of smaller 3W LEDs it was a lot easier to test over-driving them and I have flexibility in how much light and how the optics are done. The main disadvantages are it’s a pain to hand solder these large arrays of LEDs if you aren’t using a pick and place, and that theoretically the larger COBs should be better balanced for current/voltage. Overall I think going with arrays of the cheap 3W leds is probably a better solution for my use case. I’m using some cree 3W leds because I was willing to pay a little more for something that should be better tested and more consistent.

    • Volker Bartheld says:

      Hi Manuel!

      250ns? That’s impressive. At least, when it’s not just the uC generating a pulse of that length but actually the LED intensity curve following that pulse. Single/simple LEDs and staying below a radical overdrive scenario simplifies things but to get decent lighting (in terms of both intensity and color rendition), you would probably be looking for a COB LED (or even arrays of COB LEDs).

      Such an arrangement introduces challenging problems to solve, such as: resistance of the array, inductance of leads, gate capacity of the MOSFET, deciding about driver circuits, ringing, the current-to-brightness curve (lumious efficiency) flattening out at very high currents, nasty high voltages to achieve them and charge capacitor ESRs to store the energy for a flash and so forth. For starters, have a look at http://www.onsemi.com/pub/Collateral/TND6242.PDF.

      And in case of a catastrophic failure in software, etc. there’s a nice table firework. 😉

      I second Peter in saying, that Maurice has done a pretty good job prototyping something which can compete easily with the Vela One, at a much lower price and in a considerably smaller package. However, the CameraAxe Flash won’t be a self contained device, to adjust parameters you need a microcontroller or the CA6.


  20. bigjosh2 says:

    >I couldn’t get less than 5us out of my Arduino program.

    It is possible to get reliable pulses as short as 63ns out of the Arduino hardware using the hardware timer…


    I am also experimenting with generating short and bright flashes from LEDs. I’ve been using cheap strips because you can get a lot of brightness from a lot of LEDs in parallel.

    • petermobbs says:

      Thanks! Some useful advice on getting yet shorter pulses. The shortest I could get using the PORT commands to toggle the digital pins and the ‘no operation’ assembler command, nop, to give me the duration I wanted was about 200ns. The light output at these very short pulse periods was so low as to render them not very useful. Interested to hear about the strips. I have experimented with COBs which are in effect series/parallel arrangements of LEDs. Let me know if you come up with a simple viable design for a small flash gun. All best wishes, Peter.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s