DC Motor Multiplexer

Summary of DC Motor Multiplexer


This article describes a DC Motor Multiplexer project enabling control of up to four DC motors in forward and reverse directions using a single MOSFET and five digital pins. The system utilizes relays to manage motor direction while the MOSFET regulates speed via PWM signals from a microcontroller like the LinkIt One.

Parts used in the DC Motor Multiplexer:

  • DC motors (salvaged DC fans)
  • MOSFET (rated for more than combined fan load)
  • Solder less bread board
  • Jumper Wires
  • LinkIt One or another micro-controller
  • 9volt battery and connector
  • 8 relays

This DC Motor Multiplexer allows you to control up to four DC motors in forward and reverse using one MOSFET and only 5 digital pins.

For this intractable you will require:

– DC motors (I used salvaged DC fans)
– MOSFET (I used a 110v 30amp make sure it is rated for more than your combined fans)

– Solder less bread board

– Jumper Wires

– LinkIt One (or another micro-controller)

– 9volt battery and connector

– 8 relays

A huge thank you to instructables, autodesk, MediaTek, and Penolopy Bulnick for sending me the Link It One used in this instructable.

Check Out Our Other Accounts! Like, Subscribe, and Follow to keep up to date with our latest projects. 🙂

Step 1: Controller

First place the MOSFET onto the bread board, then connect the battery connector to the power rails. Place a jumper wire from the hot power rail to one side of the MOSFET gate, and a second jumper wire on the other gate to connect the motor. Place a data wire from the control pin to one of the PWM digital pins (i.e. Pin 9).

Step 2: Relays

From each relay control pin split the jumper wire into two jumper wires and use them to control each pair of side by side relays. The first relay of each pair will be positive, and the second relay will be neutral. Then the left contact of the relay pair will be for one direction and the right for the opposite direction of control.

NOTE: This multiplexer can control all four motors simultaneously, but can only have a single power setting, but the direction can be reversed.

This setup would work perfectly for a Skid Steer robot design or for a system which only requires the movement of one motor or a pair of motors at a time.

Step 3: Coding

To control the speed of the motor set pin 9 to be an output and send a value between 0-255 to the MOSFET.

0 is no movement and 225 is full speed.

The digital pins used to control the pairs of relays must be set as outputs. When nothing is being set to a pair of relays they will turn the motor in the native direction of the relay (marked by the solid line), and will reverse the motor when a HIGH signal is sent.

If you have any suggestions for improvement, questions, or photos of you own projects make sure to comment below.
Have a great day! 🙂

Source: DC Motor Multiplexer

Quick Solutions to Questions related to DC Motor Multiplexer:

  • How many DC motors can this multiplexer control?
    The multiplexer allows you to control up to four DC motors.
  • Can I control the speed of the motors?
    Yes, by setting pin 9 to an output and sending a value between 0 and 255 to the MOSFET.
  • What is required to set the motor to full speed?
    You must send a value of 225 to the MOSFET on pin 9.
  • Does this setup allow independent speed settings for each motor?
    No, it can only have a single power setting for all motors simultaneously.
  • How does the system reverse the motor direction?
    A HIGH signal sent to the relay pairs reverses the motor direction.
  • What happens when no signal is set to a pair of relays?
    The motor will turn in the native direction marked by the solid line on the relay.
  • Which component controls the gate connection for the motor?
    A second jumper wire connects the other side of the MOSFET gate to the motor.
  • Can this system be used for a Skid Steer robot design?
    Yes, this setup would work perfectly for a Skid Steer robot design.

About The Author

Muhammad Bilal

I am a highly skilled and motivated individual with a Master's degree in Computer Science. I have extensive experience in technical writing and a deep understanding of SEO practices.

Scroll to Top