Acrome-SMD Docs
All Acrome ProductsReferencesBlogCase StudiesContact Us
  • ACROME SMD
  • Electronics
    • 🔴SMD Red
      • Coding Guide
      • Robot with Raspberry Pi Setup Guide
      • Robot with Arduino Setup Guide
      • Troubleshooting Guide
    • 🔵SMD Blue
    • 🟢SMD Green
    • Gateway Modules
      • Arduino Gateway Module
      • USB Gateway Module
    • Electrical Motors
      • Brushed DC Motors (BDC)
      • Stepper DC Motors (SDC)
      • Brushless DC Motor (BLDC)
      • Linear Actuator with Feedback
    • Add-on Modules
      • Ambient Light Sensor Module
      • Button Module
      • Buzzer Module
      • IMU Module
      • Joystick Module
      • Potentiometer Module
      • Reflectance Sensor Module
      • RGB LED Module
      • Servo Module
      • Ultrasonic Distance Sensor Module
  • SMD Kits
    • Starter Kit
      • What You Can Build
    • Education Kit
      • What You Can Build
    • Motion Kit
      • What You Can Build
  • Software
    • Libraries
      • Python Library
      • Arduino Library
      • Java Library
      • Matlab Library
    • SMD UI
    • SMD Blockly
      • Introducing Customized Blockly Blocks
  • SMD Applications
    • Basics
      • Blink
      • Action - Reaction
      • Autonomous Lighting
      • Smart Doorbell
      • Security System
      • Distance Buzzer Warning
      • Distance Auto Stop
      • Smart Light Control
    • Interactive
      • Automatic Trash Bin
      • Radar
      • Chrome Dino Game Player
      • Play Chrome Dino Game With Joystick
      • Snake Game With Joystick
      • Pan-Tilt with Joystick Module
      • Joystick Mouse Control
      • Rev Up the Engine
      • Motor Rotation Based on Turn Input Value
      • Basic Motor Speed Control Application
      • Basic Motor Control Application Using PWM Input
      • Basic Motor Position Control Application
      • Basic Motor Torque Control Application
      • Motor Rotation Based on Joystick Counting
    • Robotics
      • Differential Robot Projects
      • Mouse Cursor Tracker Motion Robot
      • Waypoint tracker robot
      • Braitenberg Robot
      • Line-Follower Robot
      • Teleoperation Robot
      • Obstacle Avoidance Robot
      • ESP32 Wireless Controlled Mobile Robot
  • AI
    • Object Tracking Robot
    • Groq Chatbot-Controlled Robot
  • ROS
    • Teleoperation Robot with ROS
  • Mechanics
    • Building Set
      • Plates
        • 2x2 Plate Package
        • 2x3 120° Plate Package
        • 3x3 Plate Package
        • 3x5 Plate Package
        • 3x9 Plate Package
        • 11x19 Plate
        • 9x19 Plate
        • 5x19 Plate
        • 3x19 Plate
        • 9x11 Plate
        • 5x13 Plate
      • Joints
        • 60° Joint Package
        • 90° Joint Package
        • 120° Joint Package
        • Slot Joint M2 Package
        • Slot Joint M3 Package
        • U Joint Package
      • Mounts
        • Add-on Mount Package
        • Motor L Mount Package
        • Pan-Tilt Package
      • Wheels
        • Ball Wheel Package
        • Caster Wheel Package
        • Wheel Package
      • Cables
        • Power Cable 10 cm Package
        • Power Cable 20 cm Package
        • Power Cable 35 cm Package
        • RJ-11 Cable 7.5 cm Package
        • RJ-11 Cable 20 cm Package
        • RJ-11 Cable 35 cm Package
        • RJ-45 Cable 7.5 cm Package
        • RJ-45 Cable 20 cm Package
        • RJ-45 Cable 35 cm Package
      • Fasteners
        • M2x5 Allen Hex Screw Package
        • M3x6 Allen Hex Screw Package
        • M3x8 Allen Hex Screw Package
        • M3 Hex Nut Package
  • Help
    • Manual
    • Shops
    • Reach Us
Powered by GitBook
On this page
  • Introduction
  • 1. User PC Setup
  • 2. Robot Assembly + Arduino Setup
  • 3. Programming and Code Upload
  • 4. Run and Test Your Robot
  • 5. Troubleshooting Table (SMD Red Troubleshooting Guide)
  • 6. Final Checklist
  1. Electronics
  2. SMD Red

Robot with Arduino Setup Guide

PreviousRobot with Raspberry Pi Setup GuideNextTroubleshooting Guide

Last updated 1 day ago

This detailed and beginner-friendly guide walks you through every step needed to build, connect, program, and troubleshoot a robot using the SMD Red motor controller and an Arduino board. Whether you're a student, teacher, hobbyist, or engineer, this guide is designed to be practical and accessible.


Introduction

The SMD Red is a smart motor controller that lets you easily drive motors, control servos, and read sensor data. It communicates with Arduino through an RS-485 connection via the Arduino Gateway Module, making it powerful yet easy to use even for beginners.

This guide explains everything you need to:

  • Build your robot with SMD Red and Arduino

  • Wire all components correctly

  • Write and upload code using Arduino IDE

  • Understand how the SMD Red system works

  • Test and troubleshoot each part step by step

Even if you've never built a robot or written a line of code, this guide will help you go from zero to a working robot confidently.


1. User PC Setup

Install Arduino IDE and SMD Library

  1. Download Arduino IDE from .

  2. Install and open the IDE.

  3. Navigate to Sketch > Include Library > Manage Libraries.

  4. Search for Acrome-SMD and click Install.

  • Verify the IDs of connected modules and controllers

  • Change SMD Red IDs to unique values for project usage

  • Test functionality of motors and modules

✅ Your computer is now ready to program your robot.


2. Robot Assembly + Arduino Setup

🔌 Connecting SMD Red to Arduino

  • Plug an RJ-11 cable from the Gateway Module to the first SMD Red Motor Driver Board.

Connecting Modules

  • Connect modules (e.g., motors, servos, sensors) to the SMD Red using RJ-45 cables.

Module IDs

  • Detect which modules are connected

  • Confirm or discover module IDs

  • Test functionality

📌 If multiple modules share the same ID, they must be connected to different SMD Red controllers to prevent conflict.

Daisy-Chaining Multiple SMD Reds

  • Use RJ-11 cables to connect additional SMD Reds.

  • Each SMD Red must have a unique ID (0, 1, 2, ...).

    • Assign and verify SMD Red IDs

    • Monitor and test all connected modules

âš¡ Powering Your System

  • Plug a 12V DC adapter into the power port of the SMD Red.


3. Programming and Code Upload

To control the SMD Red from Arduino, you'll write and upload C++ code using the Arduino IDE. Here’s a breakdown of how it works:

Program Flow

  1. Include the library for SMD Red: #include <Acrome-SMD.h>

  2. Define the serial baud rate (default is 115200).

  3. Create a Red object, defining which SMD Red you’re connecting to.

  4. In setup(), initialize the communication, choose control mode, and enable torque.

  5. In loop(), send commands to control motors.

Example Code: Basic Motor Control

#include <Acrome-SMD.h>
#define BAUDRATE 115200

Red red(0, Serial, BAUDRATE);  // SMD Red ID 0 on Serial port

void setup() {
  red.begin();                       // Start communication
  red.setOperationMode(PWMControl); // Set PWM speed control mode
  red.torqueEnable(1);              // Turn motor output ON
}

void loop() {
  red.setpoint(0, 50);  // Run motor 0 forward at 50% power
  delay(1000);
  red.setpoint(0, 0);   // Stop motor
  delay(1000);
}

Code Explained

  • Red red(...): Creates a connection to SMD Red ID 0

  • begin(): Establishes communication

  • setOperationMode(PWMControl): Sets control mode to PWM (speed)

  • torqueEnable(1): Enables motor power output

  • setpoint(0, 50): Sends command to motor 0 to run at 50% forward

  • delay(1000): Waits for 1 second before stopping

💡 You can add more setpoint() lines or change the speed/direction with values from -100 to 100.


4. Run and Test Your Robot

Uploading the Code

  1. Connect Arduino to your PC using USB.

  2. In Arduino IDE, go to Tools > Port and select the correct COM port.

  3. Click the Upload button to flash your code.

Verifying Operation

  • After uploading, the motor should spin forward for 1 second, then stop.


Problem
Possible Cause
Recommended Fix

Nothing is moving

No power to SMD Red

Connect 12V adapter

Upload error in IDE

TX/RX conflict with Serial

Disconnect SMD Red before uploading

Module not detected

Wrong ID / cable loose

Verify using SMD UI

Motor spins wrong way

Wiring reversed

Swap motor wires or use negative setpoint

Sensor returns 0 always

Wrong module ID or bad cable

Check ID with SMD UI and replug cable


6. Final Checklist

🎉 You’re done! Your robot is now fully operational using Arduino + SMD Red. Start adding new features like servo control, sensor-based actions, or AI-assisted navigation!

Install for:

Use the — a red shield that plugs directly into your Arduino Uno/Mega headers.

Each SMD module comes with a module ID that identifies it. These IDs are hardware-based and may vary between module versions. Use the to:

Use to:

5. Troubleshooting Table ()

🔴
arduino.cc
SMD UI
Arduino Gateway Module
SMD UI
SMD UI
SMD Red Troubleshooting Guide