Max7221 Issue

Hi all, running out of ideas on how to solve my issue, hopefully there are some good suggestions on where else i can isolate and fix the trouble I am facing.

I have a MAX7221 chip connected to a mega2560 Arduino. Using the LED Control Library to communicate with the MAX7221.

The MAX7221 is controlling 2 x 7 segments display using DIG 0 and DIG 1.

Typically, everything works fine, but at times, the MAX7221 seems to lose DIG 1 randomly (meaning the digit stops displaying on the 7 SEG) while DIG 0 still works. At times, the whole MAX7221 stops working at all and either no displays turns up or both segments are stuck on number "8".

Already have the 10UF electrolytic capacitor and 0.1UF ceramic capacitor in the circuit. Additionally both grounds are connected. DIN, Load(CS), Clock I have also tested with 10k resistors inline but to no effect.

The MAX7221 comes from RS so I believe should be authentic. Furthermore I had swapped the chips from a separate batch to isolate this issue.

Had also tried to add code to wake from low power mode, but that does not seem to solve the issue. Only a full power cycle of the circuit would make the issue go away.

I have observed that this happens whenever a Relay triggers. Basically this relay is triggered on a timed basis (standalone timer relay from finder, not controlled by arduino) to control the heating and cooling time for a total of 31 units of heaters. This is the heating elements used:

The power supply for the heating elements is a separate 2000W 24V meanwell power supply unit. We had tried using smaller rated power supplys due to the theorotical 20watts consumption per heater, but it seems that they are unable to handle the surge in current for the heaters when initially connected.
I have isolated by removing the 24V output to the heaters from the relay and this issue with the MAX7221 does not turn up (Meaning that relay still running, but heaters are not working/being powered).

Maybe the problem is in the code or schematic that you did not post

How to get the best out of this forum

Dear Bob,

I hear u on this and am trying to get an updated schematic done. As there is a lot of connectivity, this takes some time. In the meantime would love to hear suggestions anyone might have.

With regards to the code, I am very sure that it is not the issue as I have isolated that the issue only happens when the heating elements are being supplied when the relay triggers. Otherwise the max 7221 works fine if the heating elements are not supplied with DC.

I am going to take your word that the code is OK and I cannot see the schematic so I will take a SWAG. When a transient is adsorbed by a CMOS device it can latch internally and normally the only way to clear it is to power it down if you are very lucky and it has not fried the part. This can be either a positive or negative transient. That is one of the reasons heaters on AC are fired on the Zero cross unless being phase controlled.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.