Dear All,
I did a very simple circuit to control three relays (that controls 220VAC Lights).
The circuit is as the following:
MSP430F2122 with three input pins with internal pull downs, connected to three push buttons, the other side of the buttons is connected to the 3.3V supply via 4.7K ohm resistor
The MSP430F2122 uses other three pins as outputs to drive ULN2003 that drives the relays.
The code in the MSP430F2122 is designed to reset to 0 (off position) the three outputs, then scan the three inputs when an input event happens it toggle its output to toggle the relay.
This sounds simple and works fine but I faced a huge problem when I installed this device to control the actual lights.
When other surrounding inductive loads (Fluorescent lamps with normal transformer and starter) switched off I found my lamps turn off as a result of a reset.
The distance between the switch of the inductive lamp load and my circuit is about 2 meters
Since the distance is a bit large I repeated the action several time, my circuit resets in 90% of the cases.
I returned to check what’s wrong in my hardware design, I don’t know a specific reason but I wish that you can help me.
1) The reset pin is connected to the 3.3V Vcc via 47K ohm resistor, nothing else
2) All of the unused pins are left at the reset stat (all inputs, no pull ups or downs, no interrupt enable)
If anyone can help, I need the following:
1) some explanations of why this is happening, what is the design mistake
2) how to solve it
3) how to create the problem on bench and confirm that the solution is really effective (Electromagnetic Interference, Electrostatic Discharge and Fast Transient Burst)
Best regards,
Mina Anton