I am using an arduino mega 2560 with ethernet shield, to control an 8 channel relay http://www.amazon.com/SainSmart-8-CH-8-Channel-Relay-Module/dp/B0057OC5WK. Everything works perfect, except when I turn on OR off a 25w AC fan connected to the relay, the arduino resets itself. This doesn't happen everytime, but about 80% of the time, I think this has something to do with the fan(motor) being an inductive load, but I'm not entirely sure. Once the fan has been turned on, it has no issue running, I also have no issue controlling other lighting devices of higher wattages connected to the relay.
A 12v 30A power supply is powering the arduino, along with 4 N-Channel mosfets connected to 4 LED strips. The coils of the relay is powered by a 5v 30A external power supply, and configured to use opto-isolation, whereby the jumper is removed between jd-vcc and vcc, and jd-vcc and ground are connected to external power supply. The relay driver vcc and input pins are connected to the arduino +5v and output pins respectively. The output pins of the arduino are also controlling the gate of the mosfets. To stabilize the current/voltage, I have also placed one 2200uf capacitor on the 5v and 12v rails of the power supply.
From what I see the relay board itself already have flyback diodes to protect from voltage spikes caused by inductive loads? I've spent hours trying to search for a solution, but can't seem to find it. Is there a way to fix this or do I need to get a solid state relay specifically for the fan? Thanks in advance.