As mentioned in my last post, Rallylog is a new open Hardware project it also uses Kicad as the EDA. Well late last week my prototype boards arrived from Gold Phoenix and very happy with the results, well sort of…..
When I receive a new design, one of the first things I do before any components or power is applied to my boards is to check all the physical connections with my trusty multi-meter on continuity settings then with schematics in hand I proceed to check every connection and check it off on my schematic.
From the schematics below you can see how I was progressing. the green highlights are errors I’ve picked up, only a couple of minor ones that are easy fixed, until I got to my LCD board. This PCB design is across two boards to account for a LCD, buttons and LEDS for the UI so that I can fit it all in the sparkfun project case. I had created a new component for the LCD module I’m using, a low cost SPI based backlit LCD module, and I had placed the top row of pins on the module the wrong way around. Still can’t work out why I hadn’t picked it up, but these are the problems when you’re a 1 man development team and there is no one else around for a design review…sigh, anyway changes have been incorporated into REV B.
Voltage Regulator sizing
Other significant change is to the 3.3V Regulator circuit, when I initially did my power budget I calculated that my 3.3V rail power requirements would be around:
Atmega328 – 5mA
LCD – 250uA
LCD Backlight – 80mA (20% Duty cycle)
SD Card – 80mA (200mA Spec)
RTC – 300uA
In total ~ 165mA . The 3.3V regulator I had chosen had a max load of 200mA so plenty of headroom right? Wrong!!!
After revisiting my original design I realised I had made a mistake, I had not taken into account the input voltage and the de-rating effect of the volt drop across it. In my case a 9v battery is being regulated by an LDO regulator down to 3.3V so in the process heat is generated, the larger the difference between Vin and Vout the warmer it will get, and the warmer it gets means my Max current output of the regulator drops, so how do I find if my regulator will still cut the mustard in this design?
After a bit of research I found that I need to calculate the maximum power that can be dissipated by the regulator and use this along with the max power of my circuit. In this case my LDO is a SOT23-5 device.
so for my circuit:
Power(dissipated) = (Vin – Vout) * Imax
VIn = 9V (from battery)
Vout = 3.3V
Imax = 165mA
Power(dissipated) = (9 – 3.3) * 0.165 = 0.94W
This is close enough to 1W of power to dissipate in my SOT23-5 device. Next thing is to see if the device can dissipate this amount of power.
From my technical datasheet the device has a max operating temperature of 125DegC and the thermal Resistance from Junction to Air is 220 DegC/W. I also need to allow for Maximum ambient temperature, in this case 40DegC. The thermal Resistance determines how efficient heat is transferred away from the junction i.e. the lower the number the better, meaning it’s more efficient at transferring away the heat from where it’s generated. If the temperature reaches it’s operating max then the device will thermal limit, i.e. shutdown the output, which is not good.
Power(dissipatedMAX) = (TempMax – AmbientMax) / 220 DegC/W (for SOT23 Device)
= (125 – 40) / 220 = 0.386W
So my device has a max power dissipation @ ambient (40DegC) of 0.386mW , however the power being dissipated by my circuit is ~1W which is > 0.386W, so is not good 🙁 I need to go to a larger device, or lower the input voltage, in this case it will be a larger device as I’m not changing the battery type.
Calculating again for a SOT89 LDO Regulator with some better thermal parameters.
Max Junction Temperature = 125DegC
Thermal Resistance (Junction To Case) = 35DegC/W
= (125-40)/35 = 2.42W
So compared with my original regulator this one can handle the power dissipation as 1W < 2.42W with plenty of overhead.
Now the 5V Regulator
Doing the same for my 5V rail @ 85mA using the same SOT23-5 regulator (but 5V fixed output) gives me:
Power(dissipated) = (9 – 5) * 0.085 = 0.34W
This is less than the Max power able to be dissipated by the regulator, i.e. 0.34w<0.386w so will be ok….just….although will run a little warm.
So if I add a PCB heat sink of 25mm square around (and underneath) the regulator using vias to transfer the heat how will that go?
So re-calculating with the PCB heat sink of 25mm square copper trace that has a thermal resistance of ~ 35DegC/W
Thermal resistance from Junction to Case = 81DegC/W
(125-40)/(81 +35) = 0.732W
So by adding a heat sink integrated into the PCB has increased the efficiency of the regulator to get rid of the heat by 89%.
What I’ve done is to add a couple of vias directly beneath the regulator and opened up the solder mask so that bare copper is directly beneath the regulator.