• Scam Alert. Members are reminded to NOT send money to buy anything. Don't buy things remote and have it shipped - go get it yourself, pay in person, and take your equipment with you. Scammers have burned people on this forum. Urgency, secrecy, excuses, selling for friend, newish members, FUD, are RED FLAGS. A video conference call is not adequate assurance. Face to face interactions are required. Please report suspicions to the forum admins. Stay Safe - anyone can get scammed.

TouchDRO Tablet Question

Tomc938

Ultra Member
Premium Member
So I think I was able to flash the TouchDRO firmware to my ESP32 dev board, but...

When I power it from my serial port on my laptop, and fire up the software on my Samsung tablet, the ESP32 doesn't show up in the list of devices.

I tried pushing the reset and boot buttons, and closing the Bluetooth window and opening it again. I just powered up the tablet, and I have 2 ESP chips that I tried flashing and neither one works.

Does anyone who uses TouchDRO know what I might be doing wrong? Is it possibly that I am powering it from the USB port?

Any suggestions would be appreciated.

Thanks!

PS: I also tried powering the board from a battery bank and it didn't show up on my tablet or laptop under Bluetooth, so it doesn't seem to be broadcasting.

And this is the results from my Python code:

Connecting......
Detecting chip type... ESP32
Chip is ESP32-D0WD-V3 (revision v3.1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: 10:06:1c:85:d1:f4
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 460800
Changed.
Configuring flash size...
Auto-detected Flash size: 4MB
Flash will be erased from 0x00000000 to 0x000a6fff...
Compressed 681712 bytes to 421563...
Wrote 681712 bytes (421563 compressed) at 0x00000000 in 10.5 seconds (effective 520.2 kbit/s)...
Hash of data verified.


Leaving...
Hard resetting via RTS pin...
 
Last edited:
In the touchdro thread on the hobby-machinist forum. I laid out how to program the esp32.

Your likely caught in the timing between pressing reset and the upload. Also make sure 100% that you have a good working cable. I have troubleshooted with people trying to upload to arduino's and esp's that did not have a good cable and it was painful.
 
In the touchdro thread on the hobby-machinist forum. I laid out how to program the esp32.

Your likely caught in the timing between pressing reset and the upload. Also make sure 100% that you have a good working cable. I have troubleshooted with people trying to upload to arduino's and esp's that did not have a good cable and it was painful.
I used your thread on the hobby-machinist site as a guide along the way. I found it very helpful, thank you for sharing the information!

As far as the cable, I am able to use the Arduino IDE, and Python from the Terminal window, to program the chip and receive output to the laptop screen that shows a working connection.

Can you explain in greater detail the timing for pressing of the boot button and the enter key? I couldn't figure that part out 100%. I tried flashing without the boot button, I tried pressing the button and releasing just before I press enter. I tried hitting enter and then pressing the boot button. I tried holding the boot button until the code had executed and then releasing the boot button. I tried all of the above and then resetting after the upload.

I know a very small bit of Unix, but from what I'm reading in the echo from the flash, it is detecting the chip revision, the crystal speed, changing the baud rate (not sure why I did that, but I did), detecting onboard memory, and writing the file.

I have TWO boards, and I guess there is the chance that neither board has a functioning Bluetooth chip, but it seems to point to a different issue.

Going to the TouchDRO forum is a great idea! Maybe there is someone in the community who would have an idea.

I feel a little awkward asking Yuri, since I didn't even source my supplies from him.
 
So I was able to find a Python script that tested the BT on the board, and I was able to connect my laptop to the chip.

Tried the TouchDRO bin file and still nothing.

I'll let you know if I hear anything from the other board.
 
I’m wondering if there is a quirk with your boards. They do have differences. The expressif boards are a bit different from some of the clones. I used wroom boards. Yurii is a great help. He has answered all my questions. Send him a pm on the other board.
 
So I was able to find a Python script that tested the BT on the board, and I was able to connect my laptop to the chip.

Tried the TouchDRO bin file and still nothing.

I'll let you know if I hear anything from the other board.

I don't know if this is meaningful or not for what you are doing Tom. I corresponded with Yurih a fair bit on his Samsung Bluetooth problem as well as his magnetic scale concerns.

As you might or might not know, Yurih couldn't make his unit work with Samsung phones and tablets (and a few others) and was recommending against them for a long while.

In the end, he discovered that Samsung's Bluetooth system needs to see regular communications in both directions in order to stay awake. He fixed that by regularly sending meaningless characters just to keep the radio awake.

Samsung devices now work with his unit.

Not sure if that helps. But you never know.
 
Tom I’m assuming your using the latest I think 1.6, try installing version 1.4. This is what I have gotten to load.
 
I don't know if this is meaningful or not for what you are doing Tom. I corresponded with Yurih a fair bit on his Samsung Bluetooth problem as well as his magnetic scale concerns.

As you might or might not know, Yurih couldn't make his unit work with Samsung phones and tablets (and a few others) and was recommending against them for a long while.

In the end, he discovered that Samsung's Bluetooth system needs to see regular communications in both directions in order to stay awake. He fixed that by regularly sending meaningless characters just to keep the radio awake.

Samsung devices now work with his unit.

Not sure if that helps. But you never know.
That is interesting. It could be an issue as there are so many development boards, and they are all slightly different.

I'll see if I can find another table to try it with.
 
I'll see if I can find another table to try it with.

You lost me Tom. This doesn't relate to a data table. It's a device issue. I don't remember if he fixed it in the app or in his device software. If you forced me to guess, it would be in the app.

Here is a quote from the TouchDRO website:

"If you've scratch built a DIY adapter using off-the-shelf parts, please use the Yuriy's Toys Forum to get help from the community. Unfortunately, due to the increasing number of emails, I won't be able to dedicate time to helping you with the build. That said, I monitor the forums and try to jump in when I see a novel or persistent problem."

I think this confirms your instinct to avoid contacting Yurih directly. (which I admired when I read your thoughts) But it does invite you to use the forum - knowing he reads most stuff there. An ideal approach for your situation if you ask me.

I couldn't find where he discussed the Bluetooth communication issue with me. So I still don't know if he fixed it the module firmware or in the android app. But my bet is that it's the module firmware that bumps the android BT hardware to keep it awake.

That said, it's the android hardware that has the issue (it is android that fails) so this makes me think the android app itself has to keep its own radio awake by sending data to the module. Normally, it only receives.
 
I couldn't find where he discussed the Bluetooth communication issue with me. So I still don't know if he fixed it the module firmware or in the android app. But my bet is that it's the module firmware that bumps the android BT hardware to keep it awake.

That said, it's the android hardware that has the issue (it is android that fails) so this makes me think the android app itself has to keep its own radio awake by sending data to the module. Normally, it only receives.

IIRC the problem started after an Android OS update (which is why we all turned “auto-update” off. A subsequent Android update fixed it, but it took on the order of a year. Yuriy says all is well now, but this was the primary reason I used a Fire HD8 for my Mini-Lathe and later upgraded to an HD 10 for the Mini-Mill.
 
You lost me Tom. This doesn't relate to a data table. It's a device issue. I don't remember if he fixed it in the app or in his device software. If you forced me to guess, it would be in the app.

Here is a quote from the TouchDRO website:

"If you've scratch built a DIY adapter using off-the-shelf parts, please use the Yuriy's Toys Forum to get help from the community. Unfortunately, due to the increasing number of emails, I won't be able to dedicate time to helping you with the build. That said, I monitor the forums and try to jump in when I see a novel or persistent problem."

I think this confirms your instinct to avoid contacting Yurih directly. (which I admired when I read your thoughts) But it does invite you to use the forum - knowing he reads most stuff there. An ideal approach for your situation if you ask me.

I couldn't find where he discussed the Bluetooth communication issue with me. So I still don't know if he fixed it the module firmware or in the android app. But my bet is that it's the module firmware that bumps the android BT hardware to keep it awake.

That said, it's the android hardware that has the issue (it is android that fails) so this makes me think the android app itself has to keep its own radio awake by sending data to the module. Normally, it only receives.
Thanks for the forum link! I'll head over there. I posted a couple of fairly straight forward questions on the Esspressif forums and while I had close to 200 views, I didn't get a single response. When I solved the problems, I went back and posted my findings in answer to my own question in case someone else has similar questions.

I have heard in a couple of places that the Samsung was an issue, so I am trying as many permutations of hardware/software and ESP32 dev board (I have 2) as possible.

I can see Yurih being absolutely SWAMPED with emails, and I know there are so many factors that can lead to an issue. Early in the process I found out I had some duplication in my file structure on my laptop (not sure how that happened) and I was in the wrong "Applications" folder on my laptop. I"ve also found code on the internet that just doesn't work with the hardware I have. but I've also found enough hat works that I know it's not all operator error.

Anyway, thanks for the assistance on this. I will be sure to keep you updated and let you know if I get the issue solved.
 
I have heard in a couple of places that the Samsung was an issue, so I am trying as many permutations of hardware/software and ESP32 dev board (I have 2) as possible.

It turns out it wasn't Samsung that had an issue. It was a particular Bluetooth chip set. If it didn't send regularly, it would get turned off (put in sleep mode) even if it was getting regular input.

He fixed it just by sending garbage data regularly. That way the chip stayed awake.
 
Tom I’m assuming your using the latest I think 1.6, try installing version 1.4. This is what I have gotten to load.
On further digging, I see there is a 30 pin and a 38 pin version of this chip. I have the 38 pin version.

What do you have? Would this make a difference?

I'm think for $4 I'd order the 30 pin version and see if that makes a difference.
 
On further digging, I see there is a 30 pin and a 38 pin version of this chip. I have the 38 pin version.

What do you have? Would this make a difference?

I'm think for $4 I'd order the 30 pin version and see if that makes a difference.

These are the ones I got. They were the ones that Yurih was using for his boards at the time. I am sure you have scoured this section https://www.touchdro.com/resources/adapters/diy/esp32-diy-dro.html. I tried using the info he has and it did not work for me. My how to worked for me. There are differences in how the memory works for some of the esp32's and this needs to be addressed in the main program. So not a boot and load issue but an actual program modification issue.
1730164924126.png
 
YES!!!

I somehow missed these lines of code on the page:

esptool.py \
-p /dev/ttyACM0 \
-b 460800 \
--before default_reset \
--after hard_reset \
--chip esp32 write_flash \
--flash_mode dio \
--flash_size detect \
--flash_freq 40m \
0x1000 bootloader.bin \
0x8000 partition-table.bin \
0x10000 touchdro-universal-32-v14.bin

I think I was looking at so many pages they all began to blur, and IDK what I was seeing and not.

I was able to load the current version onto my chip and it connected flawlessly to my Samsung tablet.

I did have some issues with my laptop - I think. I pasted the code from the page into my terminal window, changed the file name and port ID and flashed the first chip. I copied the lines of code to an email and sent it to myself, but when I tried to flash the second one (for my lathe) esptool generated all kinds of errors. Things like "-p command not found", to about every other thing I tried. I ended up restarting my laptop and copying the code from the website and correcting again or port and file name/location. Then it worked!

Thanks so much to GuustFlatter and everyone here for the help! I was so close, but because I was so close I could not see the bigger picture.

Next step the hardware build. I'm not quite as concerned about issues with this step as I have a friend who is a retired Electrical Engineer, and another friend who is an Avionic Electronics Specialist. Between those twoI should be able to figure things out.

Now to let others know how things finally worked out in case they need some help also.
 
Back
Top