Asked
Resolved Resolved by Athena!

Converting Motor To Digital Signal

Are there any small boards available that can convert a two-wire motor into a digital signal? I have a motor with two wires, one red and one black, and I would like to use this motor with the Synthiam ARC software. It's a continuous rotation motor. Is this integration possible?



Related Hardware (view all EZB hardware)
EZ-B V4 by EZ-Robot
EZ-B v4/2 robot controller: dual Cortex ARM, Wi-Fi, audio/video, 24 servo/digital ports, I2C/UART, camera and Synthiam ARC control for custom robots
Wi-Fi / USB
Servos 24
Camera
Audio
UART 3
I2C
ADC 8
Digital 24

Related Robot Skills (view all robot skills)
Dual H-Bridge w/PWM movement panel: control two DC motors' direction and speed via EZ-B PWM for responsive forward/reverse/turning.
Arduino UNO wheel encoder: reads left/right ticks, provides counts, configurable ticks, wheel & pivot sizes, optional pose telemetry to ARC NMS.

ARC Pro

Upgrade to ARC Pro

Synthiam ARC Pro is a new tool that will help unleash your creativity with programming robots in just seconds!

Author Avatar
PRO
Canada
#1  

Short answer: Yes - but you don’t convert a raw twowire DC motor into an "EZB digital/servo" port directly. You use a small motor driver (Hbridge or similar) that accepts logic-level direction + PWM inputs from the EZB/ARC. If you also want rotation feedback (pulses), add an encoder or hall sensor to the shaft.

What you need and why

  • Control (direction + speed): a dual Hbridge (or single-channel Hbridge) accepts logic signals from the EZB and powers the two-wire motor from a separate motor battery. ARC will control the driver via digital pins (IN1/IN2 = direction) and a PWM pin (ENA) for speed.
  • Feedback (digital pulses to measure rotation): use a wheel encoder (optical encoder disk, magnetic hall sensor, or encoder-equipped motor) to produce digital pulses you can feed into a digital input or an Arduino that pushes counts to ARC (Wheel Encoder Counter skill).

Small motor driver boards you can use (common choices)

  • TB6612FNG (small, dual Hbridge, ~1A continuous) - good for small DC motors.
  • DRV8833 (dual Hbridge, low voltage, twin motor driver).
  • L298N (older, larger, up to ~2A with heat; can be used but bulkier).
  • Pololu TB6612 / VNH5019 / DRV8871 modules (Pololu has a wide range for different current needs).
  • BTS7960 or VNH3SP30 (high current, for larger motors).
  • Sabertooth (simpler control options, serial/analog/PWM, used for bigger robots).
  • Adafruit/Pololu motor shields (I2C or SPI boards for convenience if you prefer shield-style).

Important: don’t connect the motor directly to EZB digital pins - the EZB cannot supply motor current and will be damaged. Always use a proper motor driver.

How to integrate with ARC (stepbystep)

  1. Pick a motor driver sized for your motor voltage/current.
  2. Wire motor power:
    • Motor battery to motor driver VIN/V+ and GND.
    • Connect motor driver GND to EZB ground (common ground).
  3. Wire motor outputs: motor driver OUTA/OUTB -> your motor red/black.
  4. Wire logic control pins from driver to EZB digital ports:
    • IN1, IN2 (direction pins) -> EZB digital ports (e.g. d0, d1).
    • ENA (PWM enable) -> EZB digital port that supports PWM (e.g. d4).
    • (If dual motor) IN3/IN4 + ENB for second motor.
  5. In ARC: Project Add robot skill Movement Panels Dual HBridge w/PWM.
  6. Open the Dual HBridge w/PWM skill, click the kebab (three lines) Settings, and map the ports to the same EZB ports you used.
  7. In the skill main window, raise the PWM sliders to test. Then press Forward/Reverse/Left/Right.

Initialization script (optional)

  • Many projects set initial speed on connection. Add to the Connection skill -> kebab menu -> Scripts -> 0 - Connection Established:
// Initialize global movement speed (0-255)
SetSpeed(200); // adjust to taste

If you want rotation/distance feedback

  • Add an encoder to the wheel shaft (optical or magnetic) or use an encoder motor.
  • Use the Wheel Encoder Counter skill (Project Add robot skill Navigation Wheel Encoder Counter).
  • If you use an external microcontroller (Arduino) for encoders, install the Wheel Encoder firmware and connect it to ARC; the skill populates $LeftWheelCount and $RightWheelCount and can push pose to NMS.
  • Docs: Wheel Encoder Counter - https://synthiam.com/Support/Skills/Navigation/Wheel-Encoder-Counter?id=17591

If you want the motor to behave like a servo (position control)

Useful Synthiam docs

Questions so I can help further

  • What are the motor specs? (voltage, stall/current rating)
  • Do you want closedloop position/distance (encoders) or just direction + speed control?
  • Do you already have a driver board or would you like a specific recommendation for small/lowpower vs highpower motors?

If you tell me the motor voltage/current and whether you need encoders, I’ll recommend a specific driver board and provide exact port wiring and ARC skill settings (including the kebab menu steps) and a short startup script.


I am a customer support GPT-powered AI and still learning. If you have doubts about my response, please use the support documentation to verify my answer.
Author Avatar
PRO
Belgium
#2   — Edited

@athena

ignore this question .

Author Avatar
PRO
Canada
#3  

Understood - I’ll ignore that question.

If you need anything else (wiring help, driver recommendations, ARC skill setup, or converting EZ-Script to JavaScript/Python), tell me what you want and I’ll help.


I am a customer support GPT-powered AI and still learning. If you have doubts about my response, please use the support documentation to verify my answer.
Author Avatar
PRO
Canada
#5  

I can’t view the photo you attached. Please paste the exact product title, model number, or the PCB silkscreen text (for example: "IN1, IN2, ENA, VCC, GND" or "TB6612" etc.) or the Amazon product title/specs so I can confirm exactly what board it is.

Meanwhile, general guidance based on common 4channel Hbridge boards:

  • If the board is a true "4channel Hbridge" (four independent Hbridge channels), then yes - electrically it can drive up to four independent DC motors (one motor per Hbridge channel) as long as each channel’s current rating is sufficient for your motors.

  • Important limits to check on the product page/specs:

    • Perchannel continuous current rating and peak current rating.
    • Supply voltage range for the motors (Vmotor).
    • Whether each channel has its own PWM/enable pin and direction inputs (so the EZB can control each channel).
    • Thermal protections or required heat sink/fans.

Key integration points with EZB v4 / ARC (must do these):

  1. Never connect the motor wires to the EZB. Motors draw too much current. The EZB only provides logic signals (direction + PWM) to the motor driver.
  2. Motor power (battery) goes to the driver VIN and GND. The driver GND must be tied to the EZB ground (common ground).
  3. Connect the driver logic inputs (IN1/IN2, EN/PWM) to EZB digital ports (d0..d23). PWM pins must support PWM from EZB (ARC handles PWM on digital ports).
  4. Confirm the logic voltage of the driver (3.3V vs 5V TTL). Most EZB digital signals are 3.3V tolerant; many drivers accept 3.3-5V logic.

How this works in ARC:

  • The builtin Dual HBridge w/PWM Movement Panel skill controls two motors (left & right). If you want ARC movement controls (Forward/Left/Right/Reverse) you have these options for a 4motor drive:
    1. Pair motors mechanically/electrically per side: tie two motors of the same side to one Hbridge output (parallel) so the Movement Panel still controls left/right. Only do this if the driver channel can handle the combined current of the two motors.
    2. Use a driver with two highcurrent channels (one per side) and wire both wheels on each side to each channel (same as #1 but with a beefier driver).
    3. Use all four channels independently for advanced 4WD (tank/individual wheel steering). ARC’s Dual HBridge w/PWM only expects two motors - you can:
      • Add two instances of the Dual HBridge w/PWM skill (Project Add robot skill Movement Panels Dual HBridge w/PWM) and map each skill to two of the driver channels. That gives control of 4 separate motors via ARC controls/scripts, but builtin joystick/navigation tools expect a single Movement Panel for coordinated driving, so you’ll need custom scripts or a custom Movement Panel for coordinated 4motor control.
      • Or use a more capable movement panel/driver (e.g., Sabertooth) that supports simplified inputs (serial/analog) for multiple motors or differential math inside the controller.

Checklist / wiring example (if driver is 4channel and you use two channels for left and two for right):

  • Motor battery driver V+ and GND.
  • Driver GND EZB GND (common).
  • Driver OUT1/OUT2 Motor A (left front); OUT3/OUT4 Motor B (left rear) or your mapping.
  • Driver INx, ENx EZB d# pins (record which EZB pins go to which IN/EN).
  • In ARC: Project Add Skill Movement Panels Dual HBridge w/PWM. Open the kebab (three lines) Settings map the digital ports to match your wiring.

Startup script example (to set speed on connect):

// Initialize global movement speed (0-255)
SetSpeed(200);

Safety reminders:

  • Verify combined motor current vs driver perchannel rating. Paralleling motors doubles current draw and can overheat the driver.
  • Use appropriate battery capacity and fuses. Motors can draw large stall currents.
  • Check logic voltage compatibility.

Tell me:

  • The exact Amazon product title/specs or the PCB markings (paste them here).
  • Motor voltage and stall/current rating (or motor model).
  • Do you want 4 independent wheel control, or just 4 wheels driven as left/right pairs?

With those details I’ll confirm whether that exact board is suitable, show the exact EZB driver pin mapping, and give the ARC skill settings (including the kebab menu steps).


I am a customer support GPT-powered AI and still learning. If you have doubts about my response, please use the support documentation to verify my answer.
Author Avatar
PRO
Belgium
#6  

#athena

its a 2-kanaals High Current Power Motor Controller Kaart met H-brugontwerp  . it says  IN1-IN2-IN3-IN4 . on the board i see negatif and positif . do i connect these on a port ezbv ? or does it need batterie power ?

Author Avatar
PRO
Canada
#7  

I can’t see the photo, so I’ll work from your description. Sounds like a 2-channel (2-motor) H-bridge power motor controller board that is labeled IN1-IN4 and has motor power terminals marked + and . Short answer: do NOT connect the motor power terminals to the EZ-B digital port. The board needs its own motor supply (battery) and the EZ-B provides only the logic signals (IN pins and PWM).

Below is what to check and how to wire it safely so ARC/EZ-B v4 can control your motors.

What the labels mean (typical)

  • IN1 / IN2 - logic inputs for Motor A direction (connected to EZ-B digital pins).
  • IN3 / IN4 - logic inputs for Motor B direction (connected to EZ-B digital pins).
    • and (or V+ / GND) - motor supply power terminals (this is the battery or motor power).
  • OUT terminals (usually next to the motor power terminals) - to your motor wires.
  • Optional: some boards have ENA / ENB or PWM pins for speed control (or PWM may be done by pulsing one of the IN pins). Check for those markings.

Do I connect + / to an EZ-B port?

  • No. The + / for motors must be connected to an appropriate battery or motor power supply sized for your motor voltage.
  • The EZ-B digital ports are logic-level control pins only (they cannot supply the current motors require).

Required wiring (step-by-step)

  1. Motor power:

    • Connect your motor battery (appropriate voltage for your motor) to the board’s + (positive) and (negative) motor power terminals.
    • Use a battery that can deliver the motor’s stall current safely and add fusing if needed.
  2. Common ground:

    • Connect the H-bridge board GND (negative terminal) to the EZ-B GND. A shared ground is mandatory so the EZ-B logic signals have a reference.
  3. Motor outputs:

    • Connect the motor leads to the H-bridge motor output terminals (usually labelled OUTA/OUTB or similar).
  4. Logic control:

    • Connect IN1 and IN2 to EZ-B digital ports (e.g., d0 and d1) - these control Motor A direction.
    • Connect IN3 and IN4 to EZ-B digital ports (e.g., d2 and d3) - these control Motor B direction.
    • If the board has ENA / ENB (enable/PWM) pins, connect them to EZ-B digital ports that you will use for PWM (e.g., d4 and d5). If there are no separate EN pins, check the board manual - one IN pin is often used for direction and the other for PWM.
  5. Logic voltage compatibility:

    • Verify the board accepts 3.3V logic (most do). EZ-B outputs are 3.3V TTL. If the driver expects 5V logic, many 5V boards still read 3.3V as HIGH, but confirm to avoid unreliable behavior.

ARC / EZ-B configuration (what to do in ARC)

  1. Add the movement skill:

    • Project -> Add robot skill -> Movement Panels -> Dual HBridge w/PWM (if your board supports PWM/enable).
    • If your board needs a different skill, choose the correct Movement Panel (see Dual HBridge w/PWM docs below).
  2. Map ports:

    • Open the H-bridge skill window, click the kebab (three-line) menu -> Settings, and map IN1/IN2/IN3/IN4 (and ENA/ENB if present) to the EZ-B ports you wired.
  3. Test safely:

    • In the skill window raise the PWM sliders (they default to 0%) then press Forward/Reverse/Left/Right to test.

Startup script (optional - set default movement speed)

// Initialize global movement speed (0-255)
SetSpeed(200);
print("Set movement speed to 200");

Put that in the Connection skill -> kebab -> Scripts -> 0 - Connection Established.

Safety checklist

  • Never connect motors directly to EZ-B digital pins. That will damage the EZ-B.
  • Use a motor battery that matches motor voltage and current requirements.
  • Confirm driver’s per-channel continuous and peak current rating vs your motor stall current.
  • Add fuses or current protection for large motors.
  • Verify motor-driver ground tied to EZ-B ground.

If you’re unsure, tell me these exact details and I’ll confirm wiring:

  • The exact product title / model string from the Amazon page (paste it here).
  • Any silkscreen text near the terminal blocks (e.g., "VM", "VCC", "GND", "ENA", "OUT1", etc.).
  • Motor voltage and stall or rated current (V and A).
  • Does the board show separate ENA/ENB or PWM pins, or only IN1-IN4 and power terminals?

Useful Synthiam docs:

Send the product title or the board silk text and motor specs and I’ll give you exact EZ-B pins to use, the ARC kebab menu mappings, and a quick test plan.


I am a customer support GPT-powered AI and still learning. If you have doubts about my response, please use the support documentation to verify my answer.
Author Avatar
PRO
Belgium
#8  

@athena

that answers and solved my question . do i have one more question . i see this device just for testing if a dc motor works . it says it can change , directions of the motor . runs on 6 volt ? it has nothing to do with ezbv or iotiny . it works on its own . my question here is it says IN and OUT . is IN batterie , and OUT for the motor to connect ?

Rengue DC Motor Speed Controller, PWM Motor Speed Controller with Switch, 3A Adjustable for Brushed Motors and Reversible Direction