Dialogflow icon Dialogflow Add Google DialogFlow NLP to ARC: conversational intents, parameter prompts, scripted responses, service-account setup and programmatic robot control. Try it →
Asked

Troubleshooting Non-Functional Servos Issue

I am currently using the latest version of ARC and have established a connection. I am working on a GalapagosBot with an EZ-B v4 connected to my Wi-Fi, as indicated by the green LED. While the camera is functioning correctly, none of the eight brand-new servos are operational. Does anyone have any idea why the servos might not be working?



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)
EZB Connection by Synthiam
Connects EZ-B I/O controllers to ARC via COM or IP (5 connections). Supports init scripts, battery monitoring, TCP/EZ-Script server and serial/I2C.
Servo Summary by Synthiam
All-in-one servo view showing and editing servo positions and speeds; add servos and resize the control to fit.

ARC Pro

Upgrade to ARC Pro

Unleash your creativity with the power of easy robot programming using Synthiam ARC Pro

Author Avatar
PRO
Canada
Twitter YouTube GitHub
#9  

Yes - ARC stores robot skills (plugins) in a few places depending on whether they’re shared/installed or per-user. Here’s how to find them and how to safely manage/disable them.

Where to look (Windows)

  • Shared / installed controls & assets (all users):
    • %ProgramData%\Synthiam Inc\ARC by Synthiam
    • Open this in Explorer by pasting into the address bar: C:\ProgramData\Synthiam Inc\ARC by Synthiam
    • Look for folders named Controls, Skills, Plugins, Examples, Downloads here.
  • Your personal project / user skills / STL / servo profiles:
    • %USERPROFILE%\Documents\ARC
    • In Explorer: C:\Users<yourname>\Documents\ARC
    • Check subfolders like Controls, RobotSkills, Projects, STL, Profiles, ServoProfiles.
  • Program installation (app files):
    • C:\Program Files (x86)\Synthiam Inc\ARC by Synthiam
    • This mostly contains the program executable and some built-in controls.

How to find a plugin that creates virtual ports (v0..v99)

  1. Open Explorer and paste %ProgramData%\Synthiam Inc\ARC by Synthiam - scan the Controls or Plugins folders for skill names (Dynamixel, Feetech, Robotis, etc.).
  2. Also check %USERPROFILE%\Documents\ARC\Controls or similar - some user-installed skills live here.
  3. Use Windows search if unsure: search for filenames or folders containing "Dynamixel", "Feetech", or "virtual" or search for file types like *.dll or *.control within those ARC folders.

Safer way to disable / remove a robot skill (recommended)

  • In ARC, find the robot skill window you suspect (e.g., Dynamixel). Click the three-line kebab/hamburger menu (top-right) Remove Control (or Close). This avoids deleting files manually and keeps ARC consistent.
  • If you want it back later, re-add via Project Add robot skill search the robot skill Store.

If a skill keeps re-creating virtual ports or you want to remove files manually

  • First close ARC.
  • Backup the folders you plan to edit (copy the skill folder to a safe place).
  • Delete the skill folder from ProgramData or Documents\ARC (only if you’re certain).
  • Start ARC and verify the virtual ports are gone.

Next steps I can help with

  • Want me to show how to disable the skill from inside ARC stepbystep?
  • Tell me which skill name you see in your Project (or paste the folder names from %ProgramData%\Synthiam Inc\ARC by Synthiam) and I’ll point to the exact folder and whether it creates virtual ports (v0..v99).
  • If you prefer, paste the ARC Status output (COPY button) and the servo Summary port list - I’ll identify which skill is responsible and how to disable it.

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
Thingiverse
#10  

@athena

i found the folder plugins . i deleted all plugins . still same error .

Author Avatar
PRO
Canada
Twitter YouTube GitHub
#11  

Good - thanks for checking the folders. Since you deleted the plugins but the problem persists, let’s isolate whether this is a project/configuration issue or a hardware/power issue. Follow these steps in order and paste back any outputs or errors you see.

Important: I can’t view images, so please copy/paste any ARC Status text you see (use the COPY button in the bottom status area) if asked.

  1. Restart ARC and power-cycle the EZB
  • Close ARC, power off the EZB, start ARC, then power the EZB back on.
  • Why: deleting plugin files can leave project settings referencing them until ARC restarts.
  1. Confirm EZB connection (all indexes)
  • Create a JavaScript script in ARC and run this. It will report if each connection index is connected and the address.
for (var i=0; i<5; i++) {
  var connected = controlCommand("Connection","GetStatus", i);
  var addr = controlCommand("Connection","GetAddress", i);
  print("Index " + i + " connected? " + connected + "  address: " + addr);
}

Paste the printed output here.

  1. Quick single-servo test (bypass UI)
  • Run this JavaScript to command D0 (physically plug one known-good servo into D0) to move:
print("Single servo D0 test starting");
print("IsReleased(d0) = " + IsReleased(d0));
Servo.setPosition(d0,120);
sleep(1000);
Servo.setPosition(d0,60);
sleep(1000);
print("Single servo D0 test finished");
  • Did the servo move? If yes, hardware/power is OK and this is a UI/config mapping issue. If no, report any ARC Status messages and the battery voltage measured while the test runs.
  1. Try the same test on other d ports (D0..D7)
for (var p=0; p<=7; p++){
  var port = eval("d"+p);
  print("Moving d"+p);
  Servo.setPosition(port,90);
  sleep(350);
}
print("Sent positions to D0-D7");
  • Report which ports moved, if any.
  1. Test Virtual port v0 (just to confirm it’s ignored by PWM servos)
print("Trying virtual port v0");
Servo.setPosition(v0,90);
sleep(500);
print("v0 command sent");
  • If a skill that handles v0 exists, it might respond - otherwise nothing will happen. Tell me the ARC Status output if any.
  1. If servo moves with scripts but servo Summary still shows v0
  • Open the servo Summary control window.
  • Click the three-line kebab menu (top-right) -> Settings.
  • For each servo entry: check Board Index and Port. Set Port to the physical port (d0, d1, ) - NOT v0.
  • If the UI keeps reverting or won’t let you pick d0:
    • Remove the servo Summary control (kebab menu -> Remove Control).
    • Add it again: Project -> Add robot skill -> servo Summary.
    • Reconfigure ports to d0..d7.
  1. If servo Summary still shows v0 entries even after re-adding
  • Create a new blank project (File -> New Project) and add a servo Summary there. Configure one servo to d0 and test with the single-servo script above.
    • If it works in a new project, your original project file has references to virtual ports that you need to edit/clean.
    • If it still shows v0 in a new project, something global is creating virtual ports.
  1. Search your project files for references to v0
  • Open PowerShell and run (paste into PowerShell):
Get-ChildItem -Path "$env:USERPROFILE\Documents\ARC" -Recurse -ErrorAction SilentlyContinue |
  Select-String -Pattern "v0" -SimpleMatch |
  Select FileName, LineNumber, Line | Format-Table -AutoSize
  • Or use Windows Explorer "Search in files" for "v0" inside C:\Users<you>\Documents\ARC.
  • Paste any filenames and lines shown here - that tells us which control or project file still references a v0.
  1. Check for leftover skill entries in your Project
  • In ARC, open Project -> My Robot (or Project Details) and look for installed controls listed there. Remove any robot skill you don’t need (especially those related to Dynamixel/Feetech/virtual servos).
  1. Power & wiring quick checklist (again)
  • Confirm servo wiring G-V-S orientation (Ground to G, V to +, Signal to S). Re-seat connectors.
  • Report battery voltage at the EZB VIN while trying to move servos.
  • Confirm the EZB board index used in servo Summary matches the EZB index that is connected (usually index 0).

What I need from you next

  • The outputs from steps 2 and 3 (connection list + single-servo test).
  • The result of the D0..D7 test (step 4).
  • If you created a new project, tell me whether the new project servo Summary worked.
  • The results of the PowerShell search (step 8) if you ran it.
  • The exact ARC Status text (COPY and paste) if you saw errors after sending commands.

I’ll use that info to tell you whether there’s a lingering project file referencing virtual ports, a misconfigured control, or a hardware/power issue and provide exact edits to resolve it. Do you want stepbystep help doing any one of those checks now?


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.
#12   — Edited

Nomad, it appears you are trying to control a servo on port D23. In your servo summary, you have no servos on D23. Athena, Nomad is not using Vx servos; there is no need to mention that in this question.

Nomad, to control a servo, select the port that the servo is connected to. You must also specify the Min and Max range for that servo if you're using a Horizontal/Vertical servo robot skill to test with. The image of the microcontroller during port selection is a visual aid for identifying the ports. Each port has a description, such as D0, D1, D2, etc.

User-inserted image

Author Avatar
PRO
Canada
Twitter YouTube GitHub
#13  

Thanks - that message from Synthiam_Support is useful. Summary: ARC is trying to control a servo on D23 but your servo Summary control does not have a servo configured on D23. That mismatch will make servos appear dead even though the EZ-B and camera are working.

Do this in order - it will fix the common mapping/config issue or identify a hardware/power problem.

  1. Confirm where the servos are physically plugged in
  • Tell me exactly which EZ-B digital ports your servos are plugged into (for example: D0-D7, D8, D23, etc.).
  • If you attached an image, I can’t view it - paste the exact text shown in ARC instead.
  1. Fix the servo Summary mapping (stepbystep)
  • Open the servo Summary control in ARC.
  • Click the kebab / three-line menu (top-right) Settings (or Edit).
  • For each servo entry:
    • Set Board Index to the EZ-B index you use (usually 0).
    • Set Port to the physical digital port the servo is plugged into (d0, d1, ... d23) - do NOT use v0 unless you intentionally use a virtual port/driver.
    • Set Min and Max for testing (example: Min = 30, Max = 150) so the Horizontal/Vertical test will move it.
    • Save / Close.
  • If the control won’t let you choose d23 (or reverts to v0), remove the servo Summary control and re-add it:
  1. Quick software test (JavaScript) - run this in ARC scripting (change port if needed)
  • Replace d23 with the port your servo is actually on (d0, d1, etc.) and run:
print("Single servo test on d23 (change port if needed)");
print("IsReleased: " + IsReleased(d23));
Servo.setPosition(d23, 120);
sleep(1000);
Servo.setPosition(d23, 60);
sleep(1000);
print("Single servo test done");
  • Paste the script output here and tell me whether the servo moved.
  1. Power & wiring checks
  • Measure battery voltage at the EZB VIN while you run the test command (multimeter across battery leads). Paste that value.
    • Good: ~7.4V for a 2S LiPo/pack. If it sags below ~6V during movement, servos may not respond.
  • Confirm each servo cable orientation is correct: G = Ground, V = +V (battery), S = Signal. Re-seat connectors and try again.
  • If servos are on a separate power rail, make sure grounds are common (battery ground tied to EZB ground).
  1. If ARC still targets D23 unexpectedly
  • Search your project for references to "d23" or "v0" (Project Save As or run the PowerShell search I suggested earlier). If a control or script sets a port to d23, edit or remove it.
  • Try a clean project: File New Project add servo Summary and configure a single servo on the physical port to confirm behavior.

Useful docs:

Tell me:

  • Which physical ports your servos are plugged into now.
  • The output from the JS test (and whether servos moved).
  • Battery voltage measured during the test.
  • The text from the ARC Status (use COPY and paste here) if there are any errors.

I’ll walk you through the exact edits or next debug step based on those results.


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
Thingiverse
#14  

synthiam support

i have a micro servo on port D23 .im using the original galapagos in ARC .

Author Avatar
PRO
Canada
Twitter YouTube GitHub
#15  

Thanks - good info. Since the servo is physically on D23 and you’re using the original Galapagos with an EZB v4, let’s verify the ARC configuration and then do a quick hardware check.

Follow these steps in order and paste back results if anything fails.

  1. Verify the servo Summary is configured for D23
  • Open the servo Summary control in ARC.
  • Click the kebab (three-line) menu Settings (or Edit).
  • For the entry for that servo:
    • Board Index = the EZB index you’re using (usually 0).
    • Port = d23 (do NOT put it in quotes).
    • Set reasonable Min / Max for testing (example: Min = 30, Max = 150).
  • Save/Close.

If you can’t select d23 or the control reverts:

  • Remove the servo Summary control (kebab Remove Control).
  • Project Add robot skill add servo Summary again and configure for d23.
  1. Quick ARC connection check (run this script in ARC JavaScript)
  • This confirms ARC sees the EZB and its address on index 0.
// Connection check
var connected = controlCommand("Connection", "GetStatus", 0);
var addr = controlCommand("Connection", "GetAddress", 0);
print("EZ-B index 0 connected: " + connected);
print("EZ-B index 0 address: " + addr);

Paste the printed output here.

  1. Singleservo movement test (run this in ARC JavaScript)
  • This tests direct servo control on d23. Make sure the servo is powered before running.
print("Single servo test starting on d23");
print("Released?: " + IsReleased(d23));
Servo.setPosition(d23, 120); // move to 120
sleep(1000);                 // sleep uses milliseconds
Servo.setPosition(d23, 60);  // move to 60
sleep(1000);
print("Commanded position (last): " + Servo.getPosition(d23));
  • Paste the script output and tell me whether the servo moved.
  1. Hardware & power checklist (common causes)
  • Battery voltage: measure battery voltage at the EZB VIN while you run the test and paste the value. (Good targets: ~5-6V for micro servos if powered separately, ~7.4V if your servos/ESCs are compatible - confirm servo spec.)
  • Wiring orientation: confirm each servo connector is G V S (Ground, +V, Signal). Re-seat the connector.
  • Common ground: if servos have a separate power supply, ensure the servo ground and EZB ground are tied together.
  • Torque state: IsReleased(d23) should return false for torque on. If true, run Servo.release(d23) only when you want torque off.
  • If your servos expect 5-6V and you’re powering them with 7.4V, that can damage them. Verify servo voltage spec.
  1. If problems persist
  • Test the same single servo on a different digital port (e.g., move the servo plug to D0 and update the script to use d0). That isolates possible bad wiring on D23.
  • Try a new blank project: File New Project Add servo Summary configure a single servo on d23 and run the singleservo JS test.
  • If ARC keeps targeting a different port (D23 vs control expects another): search your project files for references to d23 or any script/skill that sets ports. If you want, I can give the PowerShell search command to run.

Useful links:

Tell me the outputs from steps 2 and 3, the measured battery voltage during the test, and whether the servo moved. I’ll guide the next step based on those results.


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
Thingiverse
#16  

@athena

i deleted ARC complete and redownloaded a new one . same error . i tested a blank ARC only one window , same error . now also i don't see the folder my projects anymore . all plugins are removed . not one servo works , all new . i did system recovery , no luck there . i do see on the , download folders the icon from microsoft edge not google . my default web is google .