Asked
— Edited
Hello, Athena!
I am in the process of building a Mars rover prototype, which features six DC motors and six servos, much like the design of NASA's Perseverance rover. Each wheel of the rover is equipped with a servo for directional steering control. I'm thinking of using an IO Tiny combined with a PCA9685 servo driver to manage the servos. For the camera system, I am considering an ESP32-CAM WiFi module to handle video streaming.
Can you please advise if this configuration will integrate effectively with the Synthiam mobile app for both control of the rover's movements and video streaming from the camera system? Thank you!
Related Hardware EZ-B IoTiny
Related Controls
Continuous Servo Movement Panel
Stream All The Video Sources

use a continuous rotation Movement Panel for movement. you can connect all servos to the two pins. they left servos can share an io pin, and so with the right for signal. you don't need an external servo driver. all the wheels move at the same time
the ezb iotiny has a camera port, that does not take i/o. camera has it's own port.
you can add a gimbel x/y for the camera with 2 additional servos. if you're remote controlling this with the mobile app, you can add a servo pad joystick widget to the interface designer and you can control the servos.
Short answer: Yes - the high-level design will work, but you need the right motor/drivers and wiring choices. Below I summarize the recommended architecture, the gotchas (power, signals, port limits), stepbystep ARC/Stream setup for the ESP32CAM, and options for movement control and mobile control. I’ll finish with a small JavaScript example you can use once servos are mapped to virtual ports.
Please answer my follow-ups at the end so I can give exact wiring and script examples.
Recommended architecture (what I’d build)
Useful links:
Important considerations / gotchas
Ports & servo count on IoTiny
PCA9685 power
DC motors & motor drivers
Sharing signal lines
IoTiny camera port is dedicated
Bandwidth & latency
How to integrate ESP32CAM into ARC (Stream All The Video Sources)
Make sure ESP32CAM is running a stream server (common options):
If you need RTSP or better streaming, consider ESP32 RTSP firmware variants.
In ARC:
If your ESP32CAM stream type is not compatible, change its firmware or use a gateway (e.g., an application that converts the stream to an ARC-supported format).
Movement control options (simple advanced)
Simple differential drive (recommended for faster integration)
Drive with continuous rotation servos (if using CR servos as motors)
Independent steering + drive
Mobile control setup (Mobile app / Interface Designer)
Steps to add servo pad joystick:
Power & wiring checklist (do these before testing)
Example JavaScript snippets
Stepbystep summary (quick)
Questions for you (so I can give exact wiring, code, and skill config)
Answer those and I’ll give you wiring diagrams, a PCA9685 control script (JavaScript), and exact ARC skill settings + the Interface Designer mapping.
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.