Hello
I think I damaged my MKS DLC32 v2.1 card somehow. There is no image on the screen and I cannot connect. When I connect the card to the computer, it connects as com5 but I cannot upload firmware and I cannot do lightburn. The lights on the card are in their usual colors. Also, there is no burning smell from the card. I tried removing the drivers on it and tried different drivers but it seems not to be related to them. It seems like the software inside is corrupted, I don’t know. What could be the problem?
Unless you have put the wrong voltage somewhere it is unlikely you have damaged the board. ESP32’s can be tricky to program, doubly so to program from Windows.
However, while they can get corrupted to the point where they do not boot it is essentially impossible to brick them.(*)
I’ve done a lot of ESP32 programming and never failed to recover one. You need to try manually putting it into ‘flash mode’ and then re-running the flasher:
Almost all ESP32 boards have two buttons; one is reset (goes to the reset pin on the cpu), the other goes to GPIO pin 0 and is often labelled ‘boot’. You put the chip in flash mode by resetting it while pressing the boot button; as the cpu starts it looks at pin 0 and goes directly into flash mode if it is active.
You should start by powering up the board in boot mode; I cant see from the photos but there should be boot and reset buttons somewhere. Press and hold boot while briefly pressing reset, release the boot button and try the firmware flash again.
It may also help to remove the screen, just in case it is interfering somehow.
There is a lot of ‘programming esp chips from windows’ information online; but as a unix guy I’ve never really read them, however if driver is installed OK and the device appears as a com port the manual flash procedure should work.
(*) Not strictly true, if you mess with boot mode fuses things can go wrong. But these require a special programmer to manipulate, you cannot accidentally set them
It turns out that the jumpers on the card are shorted to put it in download mode. I did this and tried it. But I got the same errors and nothing changed. If I install a virtual Linux, can you help me step by step on how to proceed? Which Linux version should I install?
I’m afraid this isn’t something solvable with a virtualised linux; the virtual machine does not have direct hardware control of the USB port, it still has to go through windows to access it.
The best first step is to install esptool
; the commandline tool provided by Expressif, the makers of the ESP32.
If you look at the screenshot of the error above you can see output from this tool, the DLC firmware updater uses it internally. But to test the board you need to install it so you can run esptool
directly (from the python commandline prompt)
You need to install Python
, then pip install esptool
, and finally run esptool chip_id
; Once you can read the chip id, you can then go back to the firmware updater; in esp circles running a chip-id is used as the classic connectivity test.
I will not give instructions for this; there are many good guides on the Internet covering installing Python and Running ESPTOOL.py. And I dont know how experienced you are… do you have any Python or commandline experience?
For installing Python and ESPtool I’d start with the official guides from the makers:
Python3: 4. Using Python on Windows — Python 3.13.0 documentation
Esptool: Installation and Dependencies - ESP32 - — esptool.py latest documentation
A quick note; I just browsed the esptool doc, when they talk about using a ‘Python Virtual Environment’ please note that this is not the same as a ‘Virtual Machine’. In fact it is quite different; a python VM is a software container, very different from virtualised hardware… don’t let this confuse you…
1 Like
Hello
After a long struggle, I managed to install things related to python and esp. But it gives an error as I marked in the picture. I also tried from a different USB port. I also tried putting the control card in download mode. But the result did not change. I think I seriously damaged the card.
Sorry slow reply, I was having a Sunday
I’m inclined to agree, especially if you suspect that the board has had 5volts or more applied to any of the cpu’s pins.
A quick point I completely forgot earlier:
Have you tried replacing the USB cable with a ‘known good’ one? this is a depressingly frequent cause of failure.
I’m lucky in that I have a box full of ESP32 dev boards, so I can always plug a ‘known good’ board in to test my PC’s connection.
I would still recommend reading and following the troubleshooting tips they give in the web page link in that error message.
Also; are you familiar with PuTTY ? or any other serial terminal software.
- It is worth connecting to the com port with putty and seeing if any output happens when you press the reset button.
- A working ESP32 always sends a short diagnostic message on the (usb) serial when rebooted. See the Expressif documentation for settings, I think it is 115200 baud, no polarity. but check.
Beyond that I’ve run out of advice; I notice you asking about board choices on another thread and that may be the way to go.
Edit:
Actually; another thought. You were asking about virtual linux. Another option would be to put linux on a USB stick and boot from that as a one-off. The latest Ubuntu would be best.
I have tried many things and now I am giving up. I believe there is a physical problem. That is why I ordered a new card for myself. I hope I will not make the same mistake this time. However, I would like to ask for your help to clarify something. I think the problem is that the drivers are not adjusted according to the motor and they get too hot and somehow damage the control card. I also think that the thin or inappropriate cables I use between the motor and the control card have an effect on this. (The cable thickness is 1.2 mm) I have 2 types of motor drivers. A4498 and DRV8825. Speaking of DRV8825, I found that the driver was set to 1600mv in the measurements I made yesterday. At first I thought this value was too high. However, the motors I use say 2A. In a video I watched on Youtube, they said that 860mv is suitable for A4498 and a stepper motor with a value of 1A. They used that well-known formula. In this case, I thought as follows. If 860mv is required for a 1A motor, when we make the ratio, 1600mv seems correct for a 2A motor. In this case, why were my drivers getting too hot to be touched by hand? There was no difficulty in the movements of my axes. In other words, my motors were moving very easily. Despite this, the drivers seemed to be literally burning. In fact, the adhesive tapes holding the aluminum heat sinks on them melted due to the heat. After that, the control card stopped working anyway. By the way, the resistors on the A series and DRV series drivers say R100. I want to diagnose the problem correctly. Note: Control card 24v step motors 24v