This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MSP430F5519 unexpected WDT reset

I have a customer using a 5519 that is getting an unexpected reset when they turn off an output with a large contactor attached.  They have investigated and it is a WDT reset.  The contactor is being driven by a small relay on the board that is controlled by the MSP430 through a transistor.  That circuit has worked fine for some time, the issue has only arisen with the contactor.  They can make the problem go away with a snubber on the contactor but would much rather not have to do that.  We understand this is being caused by inductive kick in the contactor but how is that getting back to the MSP430 through the smaller relay?  The contactor is off of the board and the coil is being powered by a seperate supply.

  • John,

    Are the grounds connected?  That sounds like the only way it could get through there to me - maybe it's dumping or pulling a lot of current into/from ground when switched off?

  • Hello John,

     Poor grounding is certainly a possibility, but we would not be able to make an accurate assessment without seeing both the schematic and pcb layout, as well as how the interconnect is implemented.   We will also need some 'scope captures, and not yet seeing the schematic, I can't say for sure what, but one thing to look at now is Vdd to the uC, on the same capture with the ON signal to the contactor and the contactor supply. 

    How far away is the contactor, and how is it connected?  You said the circuit has worked fine for some time, does that mean the contactor is just recently added?  If so, what was there previously?

    -Leonard

     

  • Is it possible for you to explain how you guys got to know that it's WDT reset?

    and please post part of the schematic which shows the interconnection of your MCU and relay.

  • John Hudrlik said:
    I have a customer using a 5519 that is getting an unexpected reset when they turn off an output with a large contactor attached.  They have investigated and it is a WDT reset.

    Well, WDT resets are always unexpected. That why the WDT is there: generate a reset when something unexpected happens.

    In this case, I guess that some irregular transients cause the CPU to crash - which is then revived by the WDT. That's the main reason for the existence of a WDT (even though some people abuse it to fix their software bugs by resetting the device when the buggy code locks itself)

    John Hudrlik said:
    They can make the problem go away with a snubber on the contactor but would much rather not have to do that.

    But that's the way how to solve this. You cannot run an MCU if the hardware aound it produces transients that are bigger that the internal transistor switching signals. Some things simply cannot be corrected in software.

  • You are correct, some issues cannot be  handled by software, and until we know what is causing this condition, we can't make a recommendation as to how to solve it.  Two possibilities.  One is that the contactor is pulling down the main power supply so that the Vcc to the uC falls below the MIN, and when it returns, restarts the uC, just as if you turned the power OFF an ON.   The other is that the transient produced when the relay turns ON is sufficient to be coupled into the uC to cause a RESET or the code to go awry. 

    Adding the snubber or a transient suppressor to the contactor is indeed the recommended way to correct this, and in fact, it is just good design practice to include transient protection when driving a relay.  Most relay driver ICs have this built-in to the device, but in this case, since the driver is discrete, the transient protection must be added to the circuit. 

    -Leonard  

     

  • LeonardEllis said:
    until we know what is causing this condition, we can't make a recommendation as to how to solve it.

    on 5x family, it is simple to tell a power-on reset (BOR) form a WDT reset: you can read teh SYSRSTIV register. It returns all reset events since last BOR in priorized order. If you read it at program start, you'll eithe rgetting a BOR when it was a BOR, or something else if the reset was no BOR.
    You can read the register multiple times to get multiple resets reported (the last one is BOR and then 0) in case there was maybe more than one in succession since reading the register last time.

  • With some more experimentation the customer has discovered that the reset problem was coming in through the crystal.  They have been able to fix the problem by grounding the crystal case (SM HC-49 package).  This is not their preferred solution, any other way to protect the processor from dissruptions through the crystal?

  • To clarify, the MSP430 is driving an on-board relay using a relay driver (this circuit has worked well for some time).  The on-board relay is driving an off-board relay that is creating this problem.  They is also overvoltage protection on the board at the relay output.  Aside from the newly found crystal fix, the only way to make the problem go away was overvoltage protection at the external relay.

  • John Hudrlik said:
    the only way to make the problem go away was overvoltage protection at the external relay.

    Hi John - yes, this is good design practice.  It is essential to eliminate spikes caused by swithcing a relay coil, standard design practice dictates a TVS or MOV or snubber network at the coil.

  • We understand, unfortunately they do not control that relay, it is provided/connected by the customer.  Is there an easier way to protect the clock other than grounding the crystal.

  • Sounds to me like you have some sort of EMI issue. Any time you create a spark or arc, you send out lots of EMI. Mechanical contactor breaks are notorious for this.  If grounding the crystal seems to block the EMI, you could just put the whole board in a grounded metal case.  The only other option you might have would be to use a crystal oscillator, which would have a higher output level than a crystal. So the EMI would have less of an effect.

  • They could also try adding a filtered connector.  Not sure how they are now connecting the relay (connector, terminal block, wire-nuts?) but most connectors can also have an EMI filter built-in.  If the EMI is conducted, this might be the easiest.

    -Leonard

     

**Attention** This is a public forum