My course has primarily focused on robotics projects using the EZ-B controller and a camera for real-time interfacing. With recent developments, I am planning to create an additional video that incorporates Synthiam's support for other types of controllers. Although I've successfully flashed an alternative controller, it lacked compatibility with camera integration and Wi-Fi capabilities. The absence of an onboard computer limits the use of a USB camera, posing a significant challenge.
This dependency on specific components like the EZ-B, IO Tiny, and cameras can be problematic. For my course project, Mecha Morphix, which involves controlling five servos, the Arduino Mega seems excessive. I am in search of a suitable controller, compatible with Synthiam ARC, that includes both Wi-Fi and camera support to effectively replace the EZ-B.
I noticed that the ESP32 with a camera is listed among the supported controllers for ARC. Has anyone experimented with using the ESP32 in conjunction with a camera for such applications? Any insights or experiences would be appreciated.

@dave yeah something isnt right because, I get plenty of correctly moving servos with this esp-32 and other software over wifi . I've changed computers incase it was the wifi in my desktop, laptop gets the same 9 sec delay. I changed the baud rate and still same results. I changed servos 3 times, only other thing i was going to do was move the servo power off the board to see if it was a power issue from the board ie servo under powered.
This testing is not the red board above. as that needs new IO pin remaping in the firmware. Testing has been on this board: https://synthiam.com/Support/Hardware/Esp32-DevKit-v1
This board has NO camera. I wanted my testing to be progressive..ie get a regular ESP32 board flashed and working before i spent the energy on the Freenove board above with camera.
EDIT: Took the servo power off the board same thing happening.
I'm starting to wonder if the Espressif libraries changed since this last firmware was released in 2024. Or the ESP32Servo by Kevin Harrington.
Thanks - good troubleshooting so far. You’ve proven it’s not the servos, not the PC, and not the board’s servo power (you removed servo power and saw the same behavior). That narrows it down to firmware / network / protocol handling or the way ARC/skill and the ESP32 firmware are talking.
Below is a focused diagnosis + actionable steps (with a minimal test sketch) to isolate whether the problem is:
Please try these in order. I included a low-latency UDP test sketch that bypasses ARC so you can confirm the ESP32 itself can respond quickly.
ESP32 UDP + LEDC servo sketch
PC test client (Python) - measures RTT
Expected results
How to check Arduino/ESP32 core version
If you want, I can:
Summary / Offer
Which do you want right now?
Also, paste your ping output and the firmware version if possible - that will let me narrow down the cause faster.
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.
@Athena remove any remarks in your instructions where a camera is mentioned. The Esp32 i am testing on does NOT have a camera. I want to start with the bare minimums to get started. Like just getting a single servo to move properly. So lets disregard any instructions about a camera for now.
Perfect - thanks for the clarification. I’ll remove any camera references and keep this strictly to the bare minimum: get one servo moving reliably and measure latency. Below is a focused plan, a ready-to-flash minimal ESP32 sketch (no camera code), a Python test client to measure round-trip time (RTT), wiring / power checks, and next steps if you still see the ~9 second delay.
What this will do
Also tell me:
I’ll use those results to tell you exactly what to change next (either firmware tuning, router vs AP guidance, or ARC skill configuration). Want me to prepare a STA-only variant of the sketch pre-configured for your WiFi?
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.
Well start with the obvious. Rookie mistake. I kept wondering if it was the libraries and sure enough success will only work with the stated library versions listed on the DoItESP32 page. DJ even says no guarantee for any other library versions. He is right, current version is not the best options and a little google snooping says current versions are not stable. So stick with those listed versions of both libraries on compiling the code.
All good and running great. servo acts normal. Now to move on to the camera version and bigger and better ESP 32s.
Great news - nice detective work! Glad you found the root cause: mismatched ESP32/servo libraries can absolutely cause the symptoms you saw. DJ’s note about using the exact library/core versions is spot-on - newer core/library changes sometimes break timing/behavior for servo or WiFi features.
A few short confirmations, recommendations and next steps now that the bare-minimum servo test is working and you’re moving to the camera-enabled build.
What you discovered
Recommended next steps for the camera version
Pick the right ESP32 board for camera work
Reuse the working compile environment
Keep servo control deterministic
WiFi and latency settings (no camera yet - but keep in mind)
Camera stream tuning (when you add camera)
Useful Synthiam links
I can help with any of the following (pick one):
A couple follow-up questions
Note about images
If you want, I’ll prepare a camera-enabled firmware draft (with the same cores/libraries) that separates servo updates into a real-time-safe task and the camera into a lower-priority task. Tell me the board you’ll use and the library versions you validated and I’ll build it for you.
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.
Glad you sorted it out. I was wondering what was going on as I have these controlling everything from remote control cars to robot arms without any major issues.
you should make sure you have seperate power for the servos though or you will get brown outs. Oh and tie the grounds together. (Separate power and ground wires not tied will exhibit the type of problem you are seeing but I believe you were using the same power for both and a small low amp servo so then this would not be the case)