Continuing on my mash-up projects with the DXL MKR Shield, here are my current progress on using the ESP32 S3 controller with the Dynamixel2Arduino Library using the wire-wrap experimental carrier developed for my previous ESP32 mash-up project, see post below
ESP32 + DXL Shield MKR Mashup in ARDUINO - #6 by roboteer
I used the UM Feather S3 from Unexpected Maker and the test setup is shown below:
First, using this board with Windows 10 (at least on my current PC) requires me to manually set this board to LOAD mode in order to upload my sketch from the PC to this S3 board using a combination to the BOOT and RESET buttons, and then manually use RESET again to run the uploaded sketch (EVERY SINGLE TIME!). The Arduino IDE won’t be able to flip-flop automatically for the user between the loading and running USB Ports with the current version of ESP32 S3 (for example like for the Portenta H7 Lite).
Second, the usual Arduino Pin labeling “Ax” scheme no longer applies. For example to use the Pin “A5”, now one just specifies “5”.
Thirdly, Serial1 can still be used for the DXL Control Port, but one needs to begin Serial1 separately and before the beginning of the usual Dynamixel2Arduino instance/handle, see picture below:
Next, I checked to see if my Sync Read Write sketch still worked on a Single Core (Core 0 or Core 1, one at a time), and I am glad to report that it worked well with the ESP32 S3 also:
Then, I went on to check the Dual Core version that worked well previously for the ESP32 V2 (see YouTube video ESP32 and Dynamixel MKR Shield Mash-Up - YouTube
Unfortunately, at present, I have only partial success:
This Dual Core sketch was compiled and uploaded fine.
But after starting the two Independent Tasks, the S3 just hanged (see picture below):
My guess is that semaphores would have to be implemented next. So stay tuned!