How to Use a YYNMOS-4 4-Channel MOSFET to Control 5A to 20A DC Motors or LED Light Strips

How to Use a YYNMOS-4 4-Channel MOSFET to Control 5A to 20A DC Motors or LED Light Strips

In this tutorial, we will explore how to control various DC loads, such as motors and LED light strips, using the YYNMOS-4 4-channel MOSFET module. This module allows you to manage the intensity of lights or the speed of motors effectively. With its capability to handle loads between 5A to 20A, it can be an essential component in your electronic projects.

YNMOS-4: with Arduino 1

We will connect the MOSFET module to an Arduino, allowing us to control the loads through PWM (Pulse Width Modulation). This approach enables smooth control over the operation of motors and lights. For a visual guide, I recommend watching the associated video (in video at 00:00).

Hardware Explained

The YYNMOS-4 module includes four MOSFETs that can handle significant currents, making it ideal for driving various loads. Each MOSFET operates with low resistance (10 to 16 milli-ohms when on), allowing for efficient power delivery. You can connect up to four devices with a maximum current of 5A each, and with proper heatsinking, this can be increased to 20A.

In addition to the MOSFETs, the module features input terminals for control signals and output terminals for connecting your loads. The input can accept signals from 3V to 20V, making it compatible with most microcontrollers, including Arduino. The module also includes LEDs to indicate the status of each output, providing visual feedback during operation.

Datasheet Details

Manufacturer YYNMOS
Part number YYNMOS-4
Logic/IO voltage 3–20 V
Supply voltage 5–36 V
Output current (per channel) 5 A
Peak current (per channel) 20 A
PWM frequency guidance ~1 kHz
Input logic thresholds High: > 3 V, Low: < 1 V
Voltage drop / RDS(on) / saturation 10–16 mΩ
Thermal limits Up to 85°C
Package Standard PCB module
Notes / variants Compatible with PLCs

 

  • Ensure proper heatsinking for currents above 5A.
  • Check voltage ratings before connecting loads.
  • Use PWM signals for speed or intensity control.
  • Be aware of thermal limits to prevent overheating.
  • Double-check wiring to prevent short circuits.

Wiring Instructions

YNMOS-4: Arduino Wiring with an LED Strip
YNMOS-4: Arduino Wiring with LED Strip — YNMOS-4: Arduino Wiring with an LED Strip
robojax_YYNMOS-4-img6
robojax_YYNMOS-4-img6

To wire the YYNMOS-4 module, begin by connecting the power supply. Connect the positive terminal of your power source to the DC+ terminal on the module and the negative terminal to the DC- terminal. Each load you wish to control will connect to one of the output pairs. For instance, connect the positive of your load to the respective output terminal and the negative to the ground.

robojax_YYNMOS-4-img6
robojax_YYNMOS-4-img6

For control signals, connect the PWM-enabled pins from your Arduino to the corresponding input pins on the YYNMOS-4 module. For instance, if you are using pins 3, 5, 6, and 9 on the Arduino, connect them to the PWM inputs on the module. Ensure that the ground of the Arduino is also connected to the ground of the YYNMOS-4 module to maintain a common reference point.

Code Examples & Walkthrough

The following code snippet demonstrates how to define the necessary pins and control the motors or LEDs using PWM signals. The variable motor is an array holding the pin numbers for easy reference.


int pin1 = 3; // PWM pin for motor 1
int pin2 = 5; // PWM pin for motor 2
int pin3 = 6; // PWM pin for motor 3
int pin4 = 9; // PWM pin for motor 4
int motor[]={NULL,pin1, pin2, pin3, pin4};

In this excerpt, we define four PWM pins for controlling each motor or LED. The array motor allows us to easily reference these pins later in the code.

The loop() function shows how to activate the motors at different speeds:


void loop() {
   motorON(1, 75); // Run motor 1 at 75% speed
   delay(4000); // Wait for 4 seconds
   stop(1); // Stop motor 1
   delay(3000); // Wait for 3 seconds
}

This segment of the code activates motor 1 at 75% speed for 4 seconds, then stops it for 3 seconds. Adjusting the speed and timing allows for flexible control of the loads.

For the complete code, please refer to the full program loaded below the article.

Demonstration / What to Expect

Upon completing the wiring and uploading the code to your Arduino, you should observe the motors or LEDs responding to the PWM signals. The motors will start at the defined speeds and can be stopped or adjusted dynamically. If you notice any issues, check for reversed polarity or incorrect wiring, as these are common pitfalls (in video at 12:30).

Video Timestamps

  • 00:00 Start
  • 00:58 Hardware Explained
  • 07:53 Wiring Explained
  • 10:13 Arduino Code for YYNMOS-4 Explained
  • 14:51 Demonstration without Arduino
  • 16:32 Demonstration with Arduino

Images

YNMOS-4: ready
YNMOS-4: ready
YNMOS-4: with Arduino 1
YNMOS-4: with Arduino 1
YNMOS-4: with Arduino 2
YNMOS-4: with Arduino 2
YNMOS-4: Arduino Wiring Close-up
YNMOS-4: Arduino Wiring Close up
YNMOS-4: Arduino Wiring with an LED Strip
YNMOS-4: Arduino Wiring with LED Strip
robojax_YYNMOS-4-img6
robojax_YYNMOS-4-img6
YNMOS-4 4-Channel MOSFET Red
YNMOS-4 4-Channel MOSFET Red
343-Arduino code YYNMOS-4 4-Channel MOSFET to Control 5A DC or LED light control
Language: C++
Copied!

Resources & references

Files📁

No files available.