Sub-zero temperature arduino and capacitors

Hi. I am running an arduino in a freezing environment (<32F, <0C) (a freezer to be specific) and I have discovered that elecrolytic capacitors don't seem to like that much. One on the arduino has bulged and needs replacing.

Can I replace the two elecrolytic capacitors on the arduino with ceramic capacitors?

Is there something else I should be doing?

Thanks!

Here is a picture.

Yes in theory, You can replace the Electrolytics with ceramic MLM capacitors But the capacitance/voltage relationship of a ceramic capacitor is anything but good. You Might fit a tantalum capacitor... But a better idea would be to remote the sensor you are using so that the board isn't exposed to both the cold and condensing water in the cold place. When fresh air is introduced to a cold environment it first condenses and then freezes. This wouldn't be bad IF the circuit board was clean but no clean fluxes leave a residue that is conductive in solution and is highly water soluble. I would recommend using capacitors that are characterized for sub zero temperature conditions rather than the ordinary temperature range of common electrolytics. Finally remember that an electrolytic isn't a constant value. Electrolytics generally reduce in value and the ESR goes to a high value at reduced temperatures.
Most important is to use the device in the suggested temperature range 10 to 40 deg C.

Doc

You won't find a ceramic with enough capacitance to replace the aluminum. Plus you'll need to take into account both the voltage AND temperature coefficient of whatever ceramic you would end up using. Make sure you use X7R or X5R. Y5V and Z5U style will most of their capacitance at 0degrees.

You either need to go to a film, tantalum, or solid (organic polymer) aluminum. None of those have a wet electrolyte which is sensitive to cold temperatures.

For a drop in replacement I would look for a SMT Solid Organic Polymer Aluminum. You'll easily find one in the 16V 47uF-ish range with the same footprint of the original parts.

Edit: added info on ceramic coefficient/dielectric types

clearchris:
Hi. I am running an arduino in a freezing environment (<32F, <0C) (a freezer to be specific) and I have discovered that elecrolytic capacitors don't seem to like that much. One on the arduino has bulged and needs replacing.

Can I replace the two elecrolytic capacitors on the arduino with ceramic capacitors?

Is there something else I should be doing?

Thanks!

Yes the cap froze, but was the Arduino still working? I suspect it was as those big caps
mainly reduce noise on the supply rails (matters for sensitive analog stuff mostly). The
high frequency decoupling is already done with ceramic caps.

Replacing with ceramics is probably fine (small change the regulator won't like them
though), 10uF will be enough I suspect, but you may have another issue
which is condensation - at that temperature you risk ice/water forming over the circuit
board which leads to other problems...

Markt: The arduino was mostly working, but acting flaky. Sometimes it would just stop. I usually couldnt program it at subzero temp. The max31855 refused to work, so you are right about sensitive analog stuff.

I hadnt noticed a problem with condensation because its a commercial piece of equipment that circulates the air continually, and captures new moisture on the evaporator quickly. Plus, its in the insulated compartment, but i found a place that doesnt see much air circulation. On the plus side, the SSR that Im driving loves the cold, I can run it at 100% with no heat sink.

James: Wow, thanks for the info!

Docedison: Interesting. I might take the arduino with the caps off and wash it then. Unfortunately, the outside of the unit presents its own challenges. The unit gets power washed periodically, and the only feasible place to mount it is near the compressor and condensor, and both generate a lot of heat. Temps over 40C wouldnt surprise me at all.

There are conformal coatings that are designed to be sprayed (or applied how you see fit) that will seal the board and electronics from the moisture... not doing so can only lead to additional issues.

An example: Probably not the best choice... http://www.amazon.com/CRC-Urethane-Viscous-Coating-Temperature/dp/B000IC7ZQ2/ref=pd_sim_sbs_indust_1

Is your power source limited?

Buying some nichrome wire wrapping it around the capacitors and then keep the current flowing 24/7 enough to warm up the caps to thier operational point, it wont take much power either probably less than 100ma to keep them from freezing.

How about placing the Arduino in a closed die-cast box with a PTC heater or power resistor strapped to the case. This way you won't have any problems with cold temperatures/condensation. Usually that's how it's done in the industry.

// Per.

I'd not wrap nichrome wire directly around a capacitor. That is just heat shrink tubing around the cap, what if it melts through?

I like Zapro's idea better but using a plastic thermally insulated case, with the resistors inside the case near the capacitors with a control to limit temperature. It doesn't have to get really warm, and you don't want to overload the freezer.

Best of all, as suggested already put the electronics outside the freezer, with only the sensor inside. How hot, exactly, do the condensor and pump get? That may be less of an issue than freezing cold. As for the powerwashing, it should be in a sealed box no matter where it is. A nice sealed die cast aluminum box, with the connections sealed properly.

Put it in a polystyrene box with a heater and a temperature sensor...get it to keep itself at a nice temperature.

Come to think of it, AVR chips have a built-in temperature sensor that's probably accurate enough. All you need is a big resistor and a MOSFET to switch it on/off.

(Assuming your power supply has a bit of juice to spare...)

Ok, I obtained some tantalum capacitors, same specs, 47uf and 25v. The arduino performs much better, I can program the arduino at <32F temperatures now, but I'm still getting bad readings from the max31855 chip. I don't think it's a condensation issue as I put the arduino in a plastic bag as a temporary test. It's not sealed up perfectly, but I think it's good enough.

Are there any other elecrolytic capacitors on the arduino? Are these small smt capacitors ceramic or something else?

I'm getting ready to concede defeat and externally mount this, because this is driving me nuts. I wonder if the arduino will fit in a watertight americal electrical junction box...

Arduino with tantalum caps, tilted to fit.

What exactly do you mean by "bad readings from the max31855 chip"? Does the chip give you correct readings at room temperature?

btw sealing the Arduino in a plastic bag won't necessarily prevent condensation, unless the air was very dry air when the bag was sealed.

Sometimes the chip reports "short to ground" sometimes it just reports an error while not reporting any of it's three error states. I get a good reading every 4 or 5 reads or so.

True about dry air in the bag, but would that amount of condensation really affect anything?

clearchris:
True about dry air in the bag, but would that amount of condensation really affect anything?

It might.

If you ever seal it in a box be sure to stuff a few packets of silica gel in there (drying agent)

clearchris:
Sometimes the chip reports "short to ground" sometimes it just reports an error while not reporting any of it's three error states. I get a good reading every 4 or 5 reads or so.

True about dry air in the bag, but would that amount of condensation really affect anything?

I think the first part of this provides a potential answer to that question.

If you ignore the error bits, are the other bits in the data word correct?

Ok, I changed my methodology in testing and made some progress. Instead of testing in place, waiting for the cooler to reach temp, etc, I relocated to a walk-in freezer. I left the arduino in there with my shield, and let them get good and cold.

I learned:

  1. cheap ebay power supplies work fine for a room temp arduino, but they don't work well for -15C, even if the power supply is kept warm.
  2. At cold temps, the max31855 likes a clock speed of 25ms. Not lower, and not 50ms. Further testing is required, but I'm frozen and need to thaw out.

Progress is being made... woohoo!

clearchris:
True about dry air in the bag, but would that amount of condensation really affect anything?

Any amount of condensation would create seemingly random shorts.

clearchris:
Are there any other elecrolytic capacitors on the arduino? Are these small smt capacitors ceramic or something else?

No other lytics. Remember that most ceramics are Class 2 and 3 which have a temperature coefficient. So at 0degrees they lose capacitance.

You can't tell by looking at them, but if the parts are rated for Z5U or Y5V, then they are useless at <0C. Many times designers will (in a misguided fashion) use Z5U or Y5V for decoupling.

The max31855's input amplifier is very sensitive. If you don't have a high quality C0G 10nF ceramic there, you'll get bad readings. Wrong value of capacitor on its output gives me bad readings at room temperature. Are you using the adafruit breakout board or your own custom layout? If custom, what kind of ceramic do you have there?