Arduino GPRS shield caught fire

[quote author=James C4S link=topic=187912.msg1405881#msg1405881 date=1380178925] I'm not sure what you are searching for... [/quote] I got the part code from the schematic of the shield. But I just checked only one of the part codes of C13, PCG0J222MCL1GS. This is an aluminum organic polymer capacitor. The other code, 592D228X96R3X2T20H, effectively seems to bring the search to a tantalum capacitor. You're right. Sorry. :sweat_smile:

Hello,

this is mostly for ddewaele, but also for everybody interested in this thread.

From the moment we got reports about this problem, we went into checking:

a) whether we could replicate the situation

b) whether we could fix alternative designs based on the feedback we are getting from all of you guys

This is what happened.

Gianluca, Arduino’s HW mastermind, went into checking with 30 GSM shields in parallel for hours to see if any of them caught fire. The result was negative.

Then he started trying out different scenarios of possible misconnections and the one in the attached picture is the only one that made the capacitor blow.

Gianluca did as well try to rise the voltage on the shield up to 12V and that didn’t get the capacitors to catch fire.

That said …

  1. the fact that we didn’t manage to replicate the event it doesn’t mean it didn’t happen. Therefore, we are really sorry for the incident and we invite ddewaele to send me an email to try to compensate him/her for the incident: d DOT cuartielles at arduino.cc

  2. we take your feedback really seriously, however, there is no capacitors of the size we need and a higher voltage in the right format. Since we might have to change the design of the shield all together, this is what we are thinking as possibilities:

2.1) putting two smaller caps in parallel, but with a higher voltage rate

2.2) putting the capacitor after the regulator, it is 4,85 Volts we need to take care of, so the restrictions are different, it is also good because the input will then take up to 20 Volts

2.3) adding a current protection (polyfuse or similar), Gianluca is looking into this

Summarizing, we will look at this and make sure we make it good.

Thanks for the feedback and sorry it took us a couple of days to answer. It is crazy with all the Maker Faires and conferences at this time of the year (besides it is school time and some of us teach/study).

/d

Update: after posting this, Gianluca sent me an email with these two extra comments:

  1. another option to let it explode is short circuiting Vin with 5V but it explodes only if Vin is>12V

  2. For the next release […] will add an extra zener for protection and also a polyfuse

http://www.mouser.com/ds/2/427/592d-222973.pdf It seems that James centered the problem. At page 8, you can see that the reccomended voltage derating guidelines set the operating voltage at 3V6 (output filter). So this component seems to be inadequate. At least a 10V component should be used for an operating voltage of 5V (if we follow the datasheet reccomendetions).

Thanks for the response David, and great to see you're looking into the problem.

To make it clear, the shield wasn't hooked up as displayed in your picture :)

As stated in my earlier post, the following wires could have touched (although not with the VIN)

2 wires (TX and RX) on the OBD2 Shield 1 GSM TX wire on the GPRS shield 2 wires (SCL and SDA) on the GPRS shield

I also don't see how something else could have short circuited the VIN.

Power was supplied by the cars battery through an OBD-II cable (12V using pin 16). It won't have been a clean 12V, as it depends on the state of the car (driving / stationary) and the battery (fully charged or not). When it blew the car was stationary. AFAIK it will have fallen in the supported input range. The OBD-II shield that was connected with the OBD-II cable delivered that12V input directly to the VIN of the Arduino board (thus also powering the grps shield).

Again thanks for taking the time to have read my post and following up on it. Really appreciate it !

Hi! So far two GSM Arduino Shields get on fire in my house.

The first one, on september. The system has worked since June a lot of time always with usb power. I connected it to a wall power adaptor (12V-0,5A) and the system doesn't work properly and it smell just a bit like something was burning. As I was doing a demostration and I was sure the system is working, I plug it to another power adaptor (12-2A) and it it came on fire at the same moment of connecting. In despite of designers of GSM shield, this time I must say I'm not sure to have connected a circuit well enough because I've connected the circuit without verifying twice or three times before connecting.

The second Arduino shield burned last week. This time I'm completey sure that everything of my part was ok. The system was working properly attached on a computer for usb power supply. I decided to test it with a battery and I simply disconnected the usb and, with the barrel connector (power on center, ground surrounding), I gave power from a Yuasa SW280 12 V battery and it was on fire and the same moment of connecting. I know that's unbelievable but these two arduinos burned when I was showing my system at the same person. What I said to him? "I don't understand, I don't know what could happen, I'm very disappointed.."

In both cases, maybe a information important for those pretending to reproduce the situation: the fire comes at the same moment of connecting.

This week I've received new Arduino GSM shield (I've spend money on them) but I confess I'm very afraid to connect it and I've not done so far. This time I see there is a diode in paralel to the capacitor that always explodes. The worse is to think if the system remains alone with nobody in the surroundings and we can have a big fire.

My wife said not to try to let this devices connected if I'm not with them.

That's life, (very disappointing with scenes like these)

Santi

sromeu: I gave power from a Yuasa SW280 12 V battery and it was on fire and the same moment of connecting.

Hey Santi, I bolded the likely source of your problem, at least on the second time. Most fully charged 12V batteries will actually be closer to 12.6V! This might have been high enough to blow the capacitor if what I read was correct.

ok, but in my case this is an old battery (I've got it from an ups that had the batteries renewed) and with my needle voltimeter shows 12 V or a bit less (I don't know if there could be a transient initial peak that I can't mesure). In any case, 12,6 I found there's not very much high in order to cause fire. There's a lot of batteries working at 12 V (or a bit more), even those in cars. I can understand if I exceed 12 V there will be a mismatch or malfunction, but I think threre's no acceptable and not enough reason to have fire.

After burning my first shield I looked for information about this in internet and I didn't find it. For that reason I thought in my possible mistake and since then I take special attention to making the connections. Just today, as I'm afraid to connect the new GSM shield, I've looked again for burning these devices in internet and I've found this discussion.

The purpose of my message is just to let everyboy know and, if possible, avoid other people to have the situation I had and also to improve the design of the shield. If the things must be as they are, I think this fact must be explained in the information of the product as important information.

For the moment, I will power the Arduino only at 5V, but even with this decision I'm afraid, because after my experience I feel these device as potentially dangerous.

Thanks for the attention. Santi

PedroDaGr8: Hey Santi, I bolded the likely source of your problem, at least on the second time. Most fully charged 12V batteries will actually be closer to 12.6V! This might have been high enough to blow the capacitor if what I read was correct.

How about reading up on what role the capacitor has, before coming with suggestions ?

The capacitor in question sits on the 5V-rail, and therefore the input voltage to the 5V-reg is not important.

// Per.

I have no idea, but I supposed a possible malfunction of the regulator for voltage higher than 12 V

sromeu: I have no idea, but I supposed a possible malfunction of the regulator for voltage higher than 12 V

The guy that designed the shield put a 6,3V part on a 5V-rail, which is not adequate. He should have put a 10V-rated part on the board instead.

// Per.

Ok, I've just bought a GSM shield and some Googling brought me here. Not what I wanted to find out.

I'm wondering if anyone can offer an explicit solution to those of us who have the shield already. As James points out in his blog post:

There’s really only two options for the board: Replace the 6.3V Rated Part with a 10V Rated part. This may not be possible given the capacitance value. Replace the part with a Polymer. Again, limited by the cap value (the largest 6.3V Polymer I know of is 1500µF).

So the two options are neither one apparently very practical given the limitations stated. Is the bottom line that we should simply return our GSM shields and try to get a refund?

Soldering/desoldering is not a problem for me. Is there some reasonable combination of capacitors that could perhaps be installed in parallel somehow? I say reasonable because I don't see much on DigiKey that looks very practical from a size/cost point of view.

There are reams of discussion on this issue in the comments to some of these blog posts but after having pored through it all I don't actually see any specific instructions for correcting the problem that refer to literal part numbers or actual experience with a fix.

LukeZ: Is there some reasonable combination of capacitors that could perhaps be installed in parallel somehow?

The problem is that for the size available and the capacitance needed, there aren't many options. For the near future, Tantalum capacitors (MnO2 or Polymer) are the most volumetrically efficient options, which is why they stick around.

This is the closest Polymer Part (6.3V is very safe to use on a 5V rail). It's 1500uF instead of 2200uF, but half the ESR and almost half the width: http://www.mouser.com/ProductDetail/Kemet/T545H158M006ATE035/?qs=sGAEpiMZZMtZ1n0r9vR22RYs%2fy2doQ8GJhbEtTBN0hg%3d

The downside is that it's a relatively expensive part.

Thanks James, that's exactly what I needed. I was looking for polymer caps on DigiKey but wasn't sure I'd found them; with that part number I was able to find where they were hidden, and actually I see now that "polymer" is an option in their parametric search for tantalum caps.

Well ten bucks is a lot for an SMD cap but the shield cost more than a hundred to begin with, and my truck cost many thousands (that's where this is going), so I'd be losing a lot more that ten bucks if a fire broke out.

Pardon my noob-ness, I don't know much about different capacitor types, just generally what a capacitor does. Is there any reason, other than form factor, that we couldn't use an aluminum electrolytic for this purpose? Certainly you can get very high capacitances at high voltage ratings for very cheap, but maybe there is something about that type that is unsuitable to this purpose.

However we use electrolytics as backups in RC planes for exactly the same sort of situation - current spikes on the main power source (battery) that would cause the receiver to brown out, if not for the capacitor to power the device. This sounds very similar to the description given on the Arduino GSM page for why the orange cap is on the board.

LukeZ: Pardon my noob-ness, I don't know much about different capacitor types

My job is to educate about capacitors and I meet people who have been engineers for decades who learn something new. So everyone is a noob. Capacitors are the most misunderstood "simple" device.

LukeZ: Is there any reason, other than form factor, that we couldn't use an aluminum electrolytic for this purpose?

My guess is that for this application, form factor is why an aluminum electrolytic wasn't used. Wet-Lytics generally have a pretty tall height associated with them, so that would mean a non-stackable shield.

The reason for this particular cap is probably because when the GSM radio goes active, it needs a sudden surge of current, which the dry-lytic (tantalum) provides.

Thanks again for that explanation. In my case, room is not an issue so I am tempted to solder an electrolytic in the place of the tantalum. The solder pads are huge and I can bend over the cap so it lies flush with the top of the shield. Will look strange, but that doesn't bother me.

Actually I am using this with the Mega and because of the design of the GSM shield as well as the design of some of my other shields, it won't be possible to have the GSM shield on the stack anyway. Thankfully the GSM shield doesn't require many pins itself so I will just mount it off to the side.

Since it's going to be detached anyway, I am tempted to power the GSM shield with a dedicated 5v supply distinct from the Arduino, but with a common ground. The Arduino regulator is limited in the current it can provide but I can easily make a 5v, 2A supply just for the GSM. This should also make the capacitor in question somewhat less critical in terms of total capacitance.

I can't think of any negatives to this approach but if I am missing something I hope someone will tell me.

I really have a hard time figuring out why such a big capacitor is used on the board, I have been working with the SIM900-module, and the requirements for the power supply isn't as crazy as that: http://zapro.dk/public/PDF/AN_SIM900%20Reference%20Design%20Guide_V102.pdf Look at Page6 in the PDF.

I've made a simple Breakout-board for the module during hardware development, and i've found absolutely no problem with the stability of the VBAT-suppply.

In the end i'm going to power the module off a protected Lithium-cell (Nokia cellphone battery) with a suitable Lithium-charger IC. Such a protected pack is foolproof - any abuse will make the electronics in the pack shutdown and prevent anything nasty. It wouldn't be any worse than leaving a Cellphone or iPod in the car, plugged in.

// Per.

LukeZ:
Since it’s going to be detached anyway, I am tempted to power the GSM shield with a dedicated 5v supply distinct from the Arduino, but with a common ground.

Actually, looking at the shield schematic, it appears I can drive the GSM shield through the VIN connection with up to 20 volts (this is what the onboard LMZ12002 regulator can accept). Since my shield won’t be connected directly to the Arduino power, I think I can power it straight from the car battery (~12v). In that case I don’t believe the capacitor in question will ever even come in to play. So far as I can tell it is only to buffer the +5v input.

Out of curiosity I’m trying to make out what the whole arrangement of transistors / mosfets is for on the shield schematic, that leads into the shield’s regulator. I’m assuming it restricts the shield to either +5V or VIN but not both, and chooses one over the other somehow.

LukeZ: Actually, looking at the shield schematic, it appears I can drive the GSM shield through the VIN connection with up to 20 volts (this is what the onboard LMZ12002 regulator can accept). Since my shield won't be connected directly to the Arduino power, I think I can power it straight from the car battery (~12v). In that case I don't believe the capacitor in question will ever even come in to play. So far as I can tell it is only to buffer the +5v input.

Hey LukeZ, does your solution work? I've recently bought a GSM shield from RS and I've just read this discussion, I've got the orange guy on my board and I'd like to minimize the risk. Somewhere I also read about cycling power some times to make it more robust, if doesn't go flambé in the meantime.

BTW, there isn't any note on the GSM shield page about this issue I'd appreciate a refound for my board while looking for another GSM shield.

Thanks for sharing.

I can't think of any negatives to this approach but if I am missing something I hope someone will tell me.

One thing to be careful about when two or more sub-systems use separate DC voltage sources is what can happen if some of the voltage sources are turned on and some are turned off. Current can flow to/from input pins in unpowered parts and even pretty small amounts of current can damage clamping diodes and such.

alekseevic: Hey LukeZ, does your solution work? I've recently bought a GSM shield from RS and I've just read this discussion, I've got the orange guy on my board and I'd like to minimize the risk.

Yeah, running power through VIN seems to work though I've only tested the shield by itself on the bench and not with the Arduino in the final application.

retrolefty: One thing to be careful about when two or more sub-systems use separate DC voltage sources is what can happen if some of the voltage sources are turned on and some are turned off. Current can flow to/from input pins in unpowered parts and even pretty small amounts of current can damage clamping diodes and such.

I have not heard of this before, and would be somewhat skeptical but you have 16k posts! In my case the two boards should power on and off and roughly the same moment, but for the sake of understanding this better: let's say I have an Arduino with a digital input pin that reads 0 or 5v. The Arduino is off but there happens to be 5V on the input pin (common ground). This will damage my Arduino??

Or another situation is where you have a powered serial device hooked up to a non-powered Arduino, this would damage the serial pins on the Arduino?