Scott's Build Log

You had some nice ideas with your design. I had thought about breaking out some pins to send to a microcontroller, but decided that I didn’t need to do all of the things on this design.

It does seem though that you need to have physical boards in your hand to spot the last mistakes in your design, so too much extra tweaking might not help anyway.

It’s so true and painful. There were some things on the last board that I was like “Oh I should have done this or that” after I got them. But it’s just small things.

I hadn’t thought of putting mine in a box. That would definitely look a lot more professional! And I like the heatsink fan idea.

Oh don’t worry, it doesn’t -quite- fit in the case. I’m thinking maybe I’ll cut a hole in the top of the case for the heatsink, or I’ll cut down the heatsink to fit in the case since the fan can help with that higher power dissipation. But yes, I thought it might be a fun idea to try to include a case and a fan for that little bit of extra work.

I ordered my components for the CSOS and realized I had an issue I needed to solve: how to store all of these new components. After researching some and asking my wife for her idea, I went with film strip archival sheets (the wife’s idea). I finished it, and while I don’t know exactly how I’ll store it, I really like how much space there is for multiple strips of the same value!

It’s not organized by value or anything, but at least they are in a more easily browse-able format.

Now it’s time to wait for the PCB to show up (it shipped two days ago from JLCPCB)! I’m excited and going to think about what the next project will be!

1 Like

I got my PCBs! I soldered one up and wouldn’t you know??? It doesn’t work!

At least, that’s how I was going to start this post, but actually, after a few silly mistakes (bad job soldering some SOT-23-6 parts, blowing up a TVS, soldering the wrong value resistors in, and misunderstanding what the issue even was) the board works! I still have to do some deeper testing to make sure that there aren’t any issues that I can’t see with the eye. But the output is stable (per a DMM and the current reading on my cheapo PSU) and the features I’ve added all work (fan control based on the heatsink’s temp, switched max currents based on the input voltage). I didn’t make the voltage cutoff adjustable, but I might be able to hack that in pretty easily.

I need to put thermal paste on the FET and my NTC temp gauge to make better contact with the heatsink. In addition, I need to figure out what temps the fan is turning on at and how well it can keep it under control. Initial testing shows that it reaches equalibium for a 20W load at around 11.2V on the fan. I had thought I designed it to be a latching output from the op-amp, but clearly it doesn’t. But that’s actually nice as it means the fan can slowly ramp up in speed if the wattage is lower. The fan is driven straight from the non-battery input (so 12V in my testing). I also need to get scope readings of all of the major points and make sure nothing too bad is happening.

Overall, I’m very, very pleased with myself on being able to follow along with the course materials and also make some interesting modifications to the design… mostly because I could! The other thing I need to do now is to see if I can put it into a case proper. My initial case idea is a little jank and I’ll see if I can’t make one or buy a new one that actually fits the thing inside!

1 Like

Excellent stuff! Well done. Looks pretty serious too, with the big heatsink and the fan…

I got the boards for my current sink thing and soldered one up last weekend, but I’ve not had a chance to test it yet. Maybe later today? (I’m now feeling bad that I’ve not done it, since you managed to assemble and test yours since the last time you posted!)

Anyway, great job! What’s next?

1 Like

I was aiming for a 30W load sustained with the fan with a heatsink temp of around 50-55C. Didn’t want to make it to dangerous to touch. Not sure if I’ve hit that, but I also need to test the temps in general. The heatsink is rated for like 15W or so without active cooling for a relatively cool temp.

The next project is going to be an RGB panel driver board thing that can display some animations. I have the 32x32 display already and want to put it to use. I was reviewing the library that Adafruit wrote for it and am pretty confused by what they are doing. My hope was to dissect it into the bits that I care about and program the things I needed for a custom controller board for it. Something with a higher clock speed than an Arduino typically. But reviewing the code just made my little baby programmer eyes glaze over and is making me rethink my idea. I would still like to write a library from scratch so I could better understand it, but I’m not so sure that’s viable now.

As for your board, I’m surprised that you could solder it up and NOT want to test it right away and get it all working and fancy. But don’t feel bad that you haven’t been able to! It’s there waiting for you, whenever you are ready!

Really great looking build! I love the mods and I’m glad you stuck with it and got it all working. Nothing like that feeling of accomplishment once you have the thing up and running.

Would love any feedback you might have (here or on DM) about how the course material helped or hindered making mods like you did.

1 Like

Not getting to testing was more an issue of time and other obligations than anything else. But testing will happen today!

“Mad my little baby programmer eyes glaze over”… As a not-so-baby programmer, that made me laugh! What is it about this Adafruit library that’s giving you trouble? Which library is it?

1 Like

OK, now I’m totally jealous, because mine doesn’t work! I need to do some more investigation tomorrow, but the current limiting bit… uh… doesn’t limit the current! Not very useful. I have a suspicion that it’s down to trying to be clever clever (rarely a good idea). I used a really small sense resistor to avoid power dissipation there, but that means that the op amp driving the FET ends up comparing really tiny signals (a few mV, and it’s running from a single 3.3V supply). Now I have the thing assembled in front of me, that seems just a little bit silly! There might be something else going on as well, but that seems like the most likely cause of trouble. I’ll work out what’s going on and write it up in my own build log. In any case, I think I’ll have the “opportunity” to do a rev 2 of this one.

So, extra kudos to you for having it work first time!

1 Like

@ChrisGammell Thanks! I worked hard on all of the simulation and thought really deeply about the voltage levels for the Op-Amps and how I wanted to handle the power input.
I’ll have to have a think about feedback for the course more though. For sure what I remember was the math for the power input and how the feedback for the load needs to be relative to that. There wasn’t much that I watched of the layout or testing. Although I should have watched more of Layout since I could certainly learn more there. Last thing off of the top of my head is that the version of KiCAD used was quite old and while most of the core UI/features haven’t changed, it was a bit jarring.

@ian Ooooo How did the testing go? If it’s testing time! I took so long getting around to finishing writing this that I see that yours is having issues! A few mV seems a little dangerous. For reference I designed mine to go up to 100mV at 2A load when being powered from 12V. But shouldn’t you be able to swap out your resistor values though to get the signal levels a bit higher without a re-spin of the board? See my picture below for how I did it / with values to have it make a bit more sense. The issue that I had to debug was wrong resistor values for R302 and R303. I used 51R opposed to 51k (Who needs to read, lol). This meant that I was saturating the Op-Amp’s input extremely quickly. Maybe you have something similar going on!

As for the library, which is here, I was looking for the core functions in terms of what bits are sent for what commands. I wanted to write my own library for what “write a pixel” or “start display” so I could learn more about the hardware requirements before I design the hardware for the overall display driver that I want to make. I probably just need to find the raw datasheet for the display and see if I can make heads of tails of that, but I haven’t gotten that far just yet.

My idea for the hardware was some form of micro or FPGA (if I’m feeling particularly spicy) with some external flash or EEPROM to store the animation images. But since I wanted to know how the data is sent, I wanted to be able to structure the data for the images nicely for myself and write the whole stack from converting the image, storing it on the boards, then display it myself. But yeah, since I can’t quite figure out how the library works, I’m a little stuck.

One of the changes I made to the design was the 12V changeover for the current range that the device will draw. It’s quite the simple modification (parallel resistor values with a FET control), but it was nice to be able to come to that idea and have it work out really well. I know I went lower on the current shunt than Chris did to reduce the power on the little guy, but I’m not sure why I settled on 100mV = 2A. Maybe the math was just easy at that point.

I don’t even know what it is supposed to be doing, but seems like Q301 is just turned on fully and feeds a current into the devider setting the current source level

Normally driving a FET current source like that is difficult to stabilize, needing a cap from the output of the opamp to the invirting input to introduce a zero in the transfer function

You’re absolutely right about trying replacing resistors. I’ll definitely try something like that before doing a respin. I was just being slightly melodramatic “My board doesn’t work! O woe is me! Electronics is too hard!”, etc., etc.

That graphics library has quite a bit going on, and it’s not written in a way that’s particularly accessible. It looks good, and it seems to have been written for the convenience of users rather than being simple to understand. If I was you, I would just get the datasheet for the display and do some minimalist noodling with it connected to an Arduino or something, driving it without any library or anything to see how to make things happen.

Also, the LM358 device is known to have cross over distortion due to the class B output stage and very slow slew rate, so for linear operation it is a poor choice. It even shares the current source for the long tailed pair between opamps, so one opamp operation can propagate noise into another opamp

Interesting… I’ll have to spend some time thinking about what that all really means, haha. Thanks though!

As for Q301, you are right, it’s just switching on a voltage divider to change the current source level. The idea was that if 12V was present, then a fan is available to help cool the FET and therefore can have a higher wattage on the FET and still stay within a human safe temperature.

On a side note, I just blew up the FET and possibly the LM358 last night while trying to run some temperature tests on it. I was running it at 20W (10V, 2A load) and saw that the heatsink was at a stable 58C (I’m assuming it was a little higher than that based on how I was making a connection from HS to thermocouple). So I thought I would see what 30W (15V, 2A) would look like when something shorted. I had gotten to around 14.7/14.8V when it failed. My power supply also ranges at around that voltage and I’m wondering if the ranging induced a spike which killed the FET. There was no black smoke or any visible signs of failure on the board, which makes it even more suspicious to me. Measuring the FET, I’m seeing 0R between it’s pins, so I’m assuming it was that, but I’m not quite sure what would have been the cause. Interestingly, I did just put some silicon grease (which was clear and runny and a surprise to me) onto the FET/heatsink just before it failed.

I’ll have to replace it tonight if I get the chance and see if I can track down any other failures on the board. I’m hopeful it’s just the FET as pulling off an SOIC-8 with just a single iron will be painful for sure!

Had some time to replace the FET and run some more testing, and it’s back alive! It was just the FET that went boom, although I have to say that it didn’t really do much when it went the first time.

I’m thinking that it was the power supply re-ranging that caused the failure now. I have since bodged on one of my 15V TVSs to help take care of any of those spikes in the future should they occur. My plan was to limit it to 15V anyways since I can’t see myself needing over 15V unless I’m doing something very special, which… I have more boards and could always change up how I do my voltage limiting (or even just pull off the voltage limiting in general.

I ran some more testing at 15V, 2A and from what I could tell, the tab was getting up to around 95C. Adding 25 degrees for junction temp and I’m just at the border of what I’m comfortable with. But, that’s at max voltage and current, which I don’t expect to need. The fan is a lovely little addition and I think it’s great.

So I’ll have to do more testing of the various bits still to see, but honestly, it seems really stable! So time to get cracking on testing my power board testing and starting on my next project! Also, need to work on a case for it. But that will come a little later. Still very stoked for sure!

1 Like

Did some more testing, and I’m pretty happy with it. Mostly I think I’m having issues with my AD2 and it’s calibration more than anything else really. I don’t have an amazing DMM (Extech EX330) so I can’t take great measurements of it’s outputs to calibrate the scope probes. As can be seen in the first image, there is a -13.67 mV offset. At the minimum load current (around 2-3 mA), it’s at -12.99 mV, then at 1A it’s at 41.1mV. There is some offset/scaling issue present in the AD2 for sure.

I can finally start trying to debug my USB power board and how it behaves. These screenshots are taken using it as the load source. The ~200 mV output voltage drop at 1A isn’t great, but it’s also not so bad. Maybe I’ll be able to figure out where that drop is coming from and swap it out. As it is now, the inductor is getting quite hot! I can’t touch it for more than a couple of seconds without it getting uncomfortable.

But! The output is clean and stable and that’s mostly what I care about! If I was to change something, I think I would put a negative rail in the allow the output to go to 0 mA and put some form of display on the board so I don’t -need- another device to measure the current.

Power on, No Load voltage or current:

Power On, 5V, Minimum Load current (~2-3 mA):

1A load current, 4.79V:

1 Like

Hello again everyone!

It’s been awhile since I’ve posted anything on my build log. I’ve been working on a project that I’m not quite ready to talk about yet, but I do have a question for it. I’m looking for a high power LED that is the same or similar to the one that is used by the Adafruit 3W RGB LED. I wanted to mount the LED to the board directly and I don’t have access to a hot air station or a reflow oven. I will only be building between 10-20 of these boards too, but I’m also trying to design it for larger volumes as an exercise for myself.

I’m wondering if at this volume it’s just makes more sense to use the Adafruit part and solder some wires down from it to the base PCB, or if there’s another good option that’s similar in price.

I see this part from Osram Duris E RGBW that’s in a 5050 package, but looking at it’s footprint, I’m not sure that its solder-able without hot air/reflow. It’s also less bright, but I could use two of them for the price.

In terms of specs, I’m mostly using the LED as a red and a false white at the moment, at around 50% brightness on the red and 30% on all three (haven’t tweaked that code yet to account for the different lumens). But I would like to keep the option to go a little brighter if possible.

With that said, what are your go to high power LEDs? Both discrete red/white or RGB/RGBW options that are solder-able with an iron?

Side note, should there be a general “Crowd sourced parts search” mega topic that people can use?

Probably reflow is your best bet. I have hand soldered similar and it is a bit tricky but with practice you can do it. This could well be a candidate for hot-plate (or frying pan) reflow.

But, more importantly is the thermal profile. I had to dig for the datasheet. (why do lighting LED makers always seem to make it hard to find?) After crunching a few numbers, it looks like at 100 mA, the chip will see a max temp rise of 45C above ambient. Not terrible but the DS doesn’t give you any hints about best (or any) thermal practices. The OSRAM site may have more info, worth looking for. I’d worry about good ventilation and a generous copper area. Even an open area that has no ventilation upward (as in the PCB facing downward) will cause runaway heat buildup. My kitchen LEDs fail once a year or so because of that kind of design (no upward venting).

Yeah that’s what I thought for that Duris part. Makes me want to strike that off.

I’m not super concerned with the thermals, it will only be on for short bursts of time. No more than 15 minutes max, but likely much shorter than that. But I certainly was thinking about how I could make sure to keep the LED(s) cool and was planning on dedicating as much board space as I can to heatsinking them. There is room in the enclosure for heat to radiate away too.

Since my volumes are so low, I’ve been avoiding anything that might need reflow. Although maybe I could look into getting a hotplate for it…

LED is often mounted on aluminum substrates:

https://www.google.com/search?q=led+aluminum+substrate&tbm=isch&ved=2ahUKEwjYobmR9c7vAhULxLsIHcAwDDAQ2-cCegQIABAA&oq=led+aluminum+substrate&gs_lcp=CgNpbWcQA1Ct1AFYrdQBYKnfAWgAcAB4AIABNogBNpIBATGYAQCgAQGqAQtnd3Mtd2l6LWltZ8ABAQ&sclient=img&ei=zFNeYNiLK4uI7_UPwOGwgAM&bih=943&biw=1920

Even the cheap prototype houses (PCBWay etc) has that capability

At this point, I would recommending SDG electronics’ (is he on this forum and I haven’t noticed?) video on the thermal comparison of FR4 + thermal design features vs aluminium PCBs - https://youtu.be/K_kke_tENYo

He looks at a paper by Lumileds and does his own tests. Alu does not always have a significant thermal advantage, although as @phil_from_seattle says, housing and ventilation will be significant factors to consider outside the PCB design.