ESP32, CNC Shield 3.0 and WebREPL -- OSError 36 and 28 on write()

All ESP32 boards running MicroPython.
Target audience: MicroPython users with an ESP32 board.
Post Reply
User avatar
oserror
Posts: 43
Joined: Tue Feb 12, 2019 12:26 am

ESP32, CNC Shield 3.0 and WebREPL -- OSError 36 and 28 on write()

Post by oserror » Sun May 09, 2021 12:08 pm

I have a Wemos D1 R32 clone. It is an ESP32 / Arduino UNO combination board of sorts. Here is some information on the board:
https://www.botnroll.com/en/esp/3639-we ... inout.html

Attached to is an Arduino CNC Shield:
https://blog.protoneer.co.nz/arduino-cnc-shield/

I have 3 DRV8825 controllers attached to the shield to control 28BYJ-48 motors (modified to run as bipolar and with a 12V power supply). My plan is to control three one-inch vinyl blinds, rotating them open and closed. I have the motors working and I'm getting closer to my goal.

The one thing I'd like to do is to modify and monitor my code from this machine across the room via WebREPL. Monitoring works fine, but as soon as I attempt a write(), I get an OSError number 28 or number 36. If I do not connect via WebREPL, my code can execute a write on its own.

(I believe) the shield is communicating on the RX0/TX0 pins and this is the root of my problem. I have tried several settings of uos.dupterm. Fortunately, I did see the ftp server written by @robert-hh and I am able to upload code that way.

Is there some workaround that might do the trick? I tried changing UART1 to the GPIO pins that are earmarked for Motor A on the CNC shield (18 and 19) and I set the jumpers on the CNC shield as well. I tried a few things but maybe I missed a step?

Any help will be very much appreciated. Thank you.

Post Reply