Esp32 DevKit v1

Esp32 Devkit V1 by Espressif

Turn DOIT ESP32 DevKit v1 into an EZB for Synthiam ARC: affordable WiFi with 3 UARTs, AP/Client modes, servo pin tips and GPIO-to-Dx mapping.
Connection Type
Wi-Fi
Number of Servos
Varies
Audio Support
No
Camera Support
No
UARTs
Varies
I2C Support
No
ADC Ports
Varies
Digital Ports
Varies

The DOIT ESP32 DevKit v1 is an affordable Wi-Fi controller with plenty of I/O and three hardware UARTs. With the firmware below installed, the board behaves like an EZB that Synthiam ARC can connect to over Wi-Fi. This firmware is compatible with ARC 2019.06.25.00 and newer.

Servo note: For servo use with EZ-Cam, only the following pins are recommended: 2, 4, 12–19, 21–23, 25–27, 32–33.
DOIT ESP32 DevKit v1 board layout

Video Tutorial


Wi-Fi Modes

The firmware supports two Wi-Fi modes:

  • AP Mode – the ESP32 creates its own Wi-Fi network and acts as the server that ARC connects to.
  • Client Mode – the ESP32 joins your existing Wi-Fi network (router), and ARC connects to the ESP32’s IP address on that network.

You can view the current IP address and connection status using the Arduino IDE Serial Monitor set to 115200 baud.


Port Configuration

In ARC, the digital ports are labeled D0–D23. On the ESP32, the pins are labeled with GPIO numbers that are not in sequential order. Use the pin translation diagram below to map ESP32 GPIO pins to ARC Dx ports.

Pins marked TX/RX are the hardware UART pins and correspond to hardware UART #0 in ARC.

ESP32 to ARC digital port mapping

ARC Pro

Upgrade to ARC Pro

With Synthiam ARC Pro, you're not just programming a robot; you're shaping the future of automation, one innovative idea at a time.

Author Avatar
PRO
Canada
#17  

Wiring was getting too messy (even for me) so I created a little ESP32 servo shield. In hindsight I really don’t need the FTDI as I won’t reprogram it unless a new firmware comes out so I think I will order just the ESP chips from China  and make some smaller shields just for servo control.

User-inserted image

Author Avatar
PRO
Synthiam
#18  

That's a great idea! Looks good with the sticker labels!

Author Avatar
PRO
Canada
#20   — Edited

Small problem with ESP servo calibration and degrees of movement.   Take a HDD servo connect to an ESP and press center and it is about 10 degrees off. Now plug it into a EZB press center  Perfect.

OK recalibrate for ESP. Now add servo control and move it to 1 degree it should be at 90 degrees to servo motor but it is about 45 degrees. Now move it to 180 degrees and it is only at about 135 degrees.

now move back to 0 and press release and it will move back to 135 degrees   now move servo by hand to 0 and press release again  this time it moves back to 135 but doesnt release

using latest ESP firmware and port D5

Author Avatar
PRO
Synthiam
#21  

That’s the esp32 servo firmware for ya. All of the arduino servo libraries are off a little. They weren’t written that well. Might want to take a look at other servo libraries to try instead of the one I choose. I think it choose that one because it was the highest recommended.

Author Avatar
PRO
Synthiam
#23  

Wanna try a new firmware for me? I updated the servo library to the latest - see if this helps. Let me know if it works before I update it on the website firmware list: EZ-ESP32.zip

Author Avatar
PRO
Canada
#24  

went to bed with a broken servo, woke up to a working servo.  Nice thank for the quick turn around. you still have to recalibrate (although i guess I could use an offset with my bots that use them) and release doesn't work but I get 180 degrees and it is a lot snappier, the old driver was a bit grindy.

I think the ESP has a lot of promise as a controller. There are a lot of things that work with arduino like LIDAR etc and having a single $5 controller that does a lot of things with ARC would be great.

I am sure the new ESP32-S3 will solve all the performance issues as well

https://www.espressif.com/en/news/ESP32_S3