MKS DLC32 Board Disconnects Caused by Auto Air Assist

I recently configured auto air assist on my MKS DLC32 board, with guidance from an article. Relay Control - Diode Laser Wiki However, I’ve encountered an issue where the board disconnects when executing the M8/M9 commands. I am using a probe pin. If I do not connect to air assist m8/m9 works fine without disconnect. Software is fluidnc.

I’m seeking advice on potential problems and possible solutions. Any insights or assistance would be greatly appreciated.


I’d try swapping the relay out for an solid state relay eliminating the mechanical relay.

In all prabability, the supply line has a transient or interference generated by the switching of the compressor.

Ensure there is plenty of power for all of these devices to use. Isolating the compressor from the supply lines of the controller or pc might be an easy test…

When you switch a mechanical relay on, it switches, without regard to the switched voltage. If you switch it on at 120V it will draw a surge of current, it can also arc when it turns off.

A ssr will switch at zero voltage, both on and off. And it will also last a lifetime.

Good luck


1 Like

If that relay is being energized directly from the coil and not through a driver you will probably be drawing to much current and possible voltage spikes.

1 Like

Thank you for your answer. Which SSR you can recommend? In this, article 3-pin ssr is recommending. What do you think?

When you add on stuff, you need to know it’s current draw to ensure you won’t overload things… Many of these say 40A, but they need a relatively large heat sink to perform at that level.

Funny that @misken suggests the one he doesn’t use anywhere… I know we spoke about that in the past…

In all likelihood the one he has green checked would probably be the best option. Don’t know what he means here. do not recommend to use two-pole SSRs because the control pin of the mainboard is misused as a power supply. I like his wiki in general…


1 Like

[Sorry, have been busy a few days :-)]
Maybe not necessary to add, but I think I explained everything you discussed here exactly like this on the page.
I suggest using SSRs over “common” relays and I recommend not using the IO-pin of the controller to drive load (that’s why I recommend a three-pin SSR, that gets its power not out of the IO-pin. Nothing else that all of you said here, right? Otherwise I’m happy to change the article, of course :slight_smile:

We missed you :crazy_face:

Thanks for the clarification…

The way I read the line, it wasn’t not too meaningful…

I’ll have to think of a better suggestion for this…

Surprising, the Arduino can sink a fair amount of current. Each I/O pin can sink 40mA with a total of 200mA for the whole device.


Can’t find a schematic for the V1.0 board… so I’m not sure how it’s wired up… mine is the DLC32…


I tested this relay, seems it can work. The only thing is relay is on when the m8 command, I have to invert it.

Thanks, everyone.

There are usually active-low and active-high versions of the same relay type. You might need the other one, then.

Can you change this configuration by something in the sd card?


If using FluidNC, that’s just one configuration parameter. Ah, just checked. He is using Fluid. Then just change

flood_pin: gpio.xy
flood_pin: gpio.xy:low

(or to gpio.xy:high, depending on what you had before)

1 Like

Yeah, actually I already changed it in the configuration like @misken mentioned.

The problem with this can be that the hardware can have a pullup or pulldown in the opposite direction, so on power up, it might activate the relay until the firmware initializes. It’s only a second or so but if you want to avoid it, make sure the relay follows the logic of the controller hardware

I had issues with my GRBL controller when the air assist turned on. I added a RC snubber from Line to Neutral on the air pump. This fixed my issue. Here is the part I bought from Amazon. JESSINIE 10Pcs RC Absorption Snubber Circuit Module RC Loop Module Relay Contact Protection Circuit Electromagnetic Anti-Interference Module.