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.

What I find interesting is that the DoIt ESP32 Dev V1 used the default IP in ARC (192.168.1.1:23) And for the ESP 32 CAM I have to look for the IP via serial monitor and enter that in ARC to connect. Is there something in the DoIt sketch that assigns 192.168.1.1:23 IP to the board? And its not in the sketch for the ESP32 CAM board? I think by default the boards ship with an IP of 192.168.4.1. Both boards are in AP mode. Just asking to be informed.
Nice troubleshooting - glad you got it working with the AI-Thinker selection and can stream both OV2640 and OV3660. Here’s a clear explanation of why you saw different default IPs/ports and what controls them, plus how to make the behavior deterministic.
Why the IP / port differed between boards
How to determine the right IP and port (best practices)
How to set a specific AP IP and port in firmware (Arduino example) If you want a deterministic AP IP, add WiFi.softAPConfig() in the ESP32 sketch before softAP() is started. Example:
If you need the EZB camera server to listen on a specific port, that is defined by the server code in the firmware - you’d change the port there (e.g., the TCP server listen port). If you want, I can point to the exact lines in the Synthiam firmware or show a small sample of how to start a TCP server on port 24.
Practical tips and next steps
Would you like:
Which would help you most for Mecha Morphix and the servo + camera test?
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.
No servos are working on this version of the board (ESP32 CAM) currently. I can get camera to work no problem. But moving through the pins D2, D12, D13, D14, D15 and no movement on hooked up servo. I have the servo power from a power supply, sharing a ground between the ESP32 and power supply. I am then setting up a test range of pins one at a time with the signal wire, and changing it in ARC along the way. Zero servo movement. The servo has power as i can here it hum.
I also tried to flash the Freenove ESP32 S3 CAM Board, but in the IDE i get the following message: Sketch uses 1009665 bytes (32%) of program storage space. Maximum is 3145728 bytes. Global variables use 67324 bytes (20%) of dynamic memory, leaving 260356 bytes for local variables. Maximum is 327680 bytes. esptool.py v4.6 Serial port COM4 Connecting....
A fatal error occurred: This chip is ESP32-S3 not ESP32. Wrong --chip argument? And stops the upload to the board.
Great - glad the camera is working. Let’s get the servos moving and the flashing error resolved. Below I’ll cover the most common causes, quick tests you can run from ARC, and the fix for the ESP32S3 flashing error.
Summary of likely causes
First quick checks (run these in ARC Script control)
Notes: use d2 without quotes (port constant). If these commands do nothing (no voltage change on D2 for Digital.set and no servo movement for Servo.setPosition), continue below.
Troubleshooting steps in order
Action: Reflash with Synthiam ESP32Cam EZB firmware from: https://synthiam.com/Support/Hardware/ESP32-Cam (or confirm you used that exact bin). If you didn’t, flash the Synthiam EZB firmware and retest.
Action:
Action:
Recommendation (practical & robust)
ESP32S3 flashing error and fix
If you prefer esptool CLI, add --chip esp32s3 to the command: esptool.py --port COM4 --chip esp32s3 write_flash ...
Follow-ups I need from you (so I can give exact next steps)
If you want, try this short Script in ARC (it will test digital toggle, then attempt servo movement while printing results):
If all else fails (servos never move while camera running and the Digital toggles also do nothing), I strongly recommend using a dedicated servo controller (PCA9685) or a small WiFi microcontroller (another ESP32/ESP8266 or small ESP32S2/S3) dedicated to servos and have ARC control it via I2C/UART/EZB protocol. I can guide you stepbystep on:
Which do you want to try next?:
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.
I 'm now trying out the Freenove ESP32 Wrover and it flashes ok using the library: ESP32S3 Dev Module
I get this reboot loop over and over after uploading:
ELF file SHA256: 3f9f1ef00900ef81
Rebooting... ESP-ROM:esp32s3-20210327 Build:Mar 27 2021 rst:0xc (RTC_SW_CPU_RST),boot:0x2a (SPI_FAST_FLASH_BOOT) Saved PC:0x4037ba36 SPIWP:0xee mode:DIO, clock div:1 load:0x3fce3818,len:0x109c load:0x403c9700,len:0x4 load:0x403c9704,len:0xb50 load:0x403cc700,len:0x2fe4 entry 0x403c98ac
Guru Meditation Error: Core 1 panic'ed (LoadProhibited). Exception was unhandled.
Core 1 register dump: PC : 0x4204fd15 PS : 0x00060830 A0 : 0x82048f94 A1 : 0x3fceba50
A2 : 0x3fca5e14 A3 : 0x3fc9faac A4 : 0x3c0b6174 A5 : 0xffff8fff
A6 : 0x00000001 A7 : 0x00000000 A8 : 0x80377ddf A9 : 0x3fceba60
A10 : 0x00000016 A11 : 0x00000000 A12 : 0x00000008 A13 : 0x00000060
A14 : 0xb33fffff A15 : 0x00000000 SAR : 0x0000001f EXCCAUSE: 0x0000001c
EXCVADDR: 0x00000000 LBEG : 0x400570e8 LEND : 0x400570f3 LCOUNT : 0x00000000
Nice detail - that reboot loop + Guru Meditation tells us the chip is crashing early in setup (LoadProhibited usually means code tried to read a NULL pointer or invalid memory). Let’s narrow it down and get a stable board again.
Likely causes (high priority)
Step-by-step plan to diagnose and fix
Questions I need to help further
If you paste the Serial Monitor panic output I’ll:
If you’d like, next steps I can prepare for you
Which do you want me to provide next? (If you paste the serial panic text now I’ll analyze it and recommend the concrete fix.)
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.
I'm consuming my valuable time around the controller and camera combo, when the reality is, there are a million ways to get a camera to work with ARC these days, from webcams to wifi cams and so on. So I'm going to focus on only the controller and ARC aspect. All works works fine on the Do It ESP32 Dev v1 board, I just need to get the Freenove (or other board) working with ARC.
I still have 1001 things left to do for the Mecha Morphix launch and have no spare time to fall deep into this endeavor..for now.
Good plan - concentrate on the parts that move your Mecha Morphix forward and avoid getting stuck chasing every board/camera combination. You’ve got a working setup (Do It ESP32 Dev v1) - keep using that for development and demos. Below are concise, actionable options and a short "when you come back to this" checklist so you can finish the Freenove / other board work quickly when you have time.
What I recommend now
Quick reasons:
Useful links
Quick "return-to-work" checklist (when you have time)
Small ARC test scripts (paste into ARC Script control)
If servo is not moving while camera is running
If you’d like, when you have spare time I can prepare one of these for you:
Which is most helpful to have ready for you later - the fixed-IP/port firmware, the PCA9685 wiring guide, or the Freenove flash settings?
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.