Updated DIY DRO Build Instruction and Adapter Options

ycroosh

Active User
H-M Supporter - Commercial Member
Joined
Apr 4, 2013
Messages
900
Hi folks,
Over the weekend I uploaded the new version of "Free" firmware - it's now based on the V3 code base and is pin-compatible with the DIY TouchDRO Kit module.
The instructions are here: How to Build a Do-it-Yourself DRO. Schematic, firmware, etc. are on that page as well.
I've made a few more changes to the "lineup":
  • The kit now has an option to get TouchDRO Plus (it will come with a different firmware burned into the chip). This basically turns the kit into into a "lite" version of TDA-410.
    • You get TouchDRO Plus app unlock and support for serial protocols (Mitutoyo SPC and BIN6 for now; more will be coming in due time).
    • There is still no reference inputs (the board doesn't have the hardware) , no touch probe, and no way to use the tachometer as a fifth scale input.
  • There is no longer a kit without a tachometer input (TDK-40 that sold for $129). The TDK-40T has tachometer input and now costs $149 (down for $159).
  • The ESP32 module that is included in the kit is now available separately (with and without the Plus add-on) here: ESP32 Module for DIY DRO Kit
Basically, DIY DRO builds now can have the same firmware performance as the kit or the pre-made boards (if you use a pre-flashed module). If you use a pre-programmed module, there are "no strings attached". I.e. you can legally use the resulting DRO for commercial purposes. Free firmware is free for personal/non commercial use.

The kit give you RS-422 inputs and probably a more reliable build. TDA-410/420 give you reference input support, power failure recovery and (in case of TDA-420) - touch probe input or an option to have 1 or 2 additional TTL (non-differential) scale inputs.

Hope this makes sense. If not, or you have additional questions - ask away...
Regards
Yuriy
 
So, just to be clear (yeah I know, you've told me already but I'm slow on the uptake!:oops:), if I were to buy a TDK-40T for my lathe, I can use the V3 firmware and get access to some of the Plus features?

Is that right?
 
So, just to be clear (yeah I know, you've told me already but I'm slow on the uptake!:oops:), if I were to buy a TDK-40T for my lathe, I can use the V3 firmware and get access to some of the Plus features?

Is that right?

Well, let me try to explain how this works in human-understandable terms :)

TouchDRO adapter is a small computer. Different adapter versions come with different hardware capabilities:
  • The DIY adapter circuit (the one I linked above) has a very basic input buffer to take four single ended 5V (TTL) scale inputs and make it safe for the "brain" (ESP32 module). You can connect RS-422 scales, but the A'/B' lines will be ignored. This circuit is optimized to be cheap and easy to build. The buffer(s) I used are fast and robust enough to work well, so it's not a huge tradeoff.
  • The kit uses proper RS-422 drivers, so it can handle scales with differential lines (RS-422). You can use TTL scales too; the A'/B' inputs will just be "grounded", but the DRO will work fine.
  • The TDA-4xx adapters have much more sophisticated circuit.
    • Each primary input can read RS-422 (and TTL) scales.
    • Since the inputs have the "R" line as well, the adapter can use the reference signal to zero out scales at a repeatable position.
    • They also have one or two "flexible" inputs that can handle either additional TTL inputs (although a much slower - about 50KHz pulse rate, as opposed to "who the heck knows; my generator can't go past 2MHz"), or other "special" modes, like a tachometer, touch probe, etc.
    • These adapters have an on-board high-durability EEPROM that can be rewritten about 2,000,000 times, a super-capacitor, and some extra parts. When the board looses power, the super cap holds enough energy to allow the ESP32 to write out the last known position.
Each firmware version is customized to work with the given't adapter's pinout and hardware capabilities. At this point "Plus" vs. "Basic" are not in the picture. We are talking about basic functionality.

"Plus" firmware does two things:
  1. It adds a unique secret activation key that tells TouchDRO app that the device it's talking too includes "Plus" feature flag, which turns on additional functionality in the app. There is not a "Plus" and "Even Pluser" version of the app. It's either free, or "Plus".
  2. The firmware includes additional code that can switch the primary inputs from reading quadrature signal to decoding serial data. This is a code feature that is either there or not (depending on the firmware).
The "Free" firmware and the "Basic" kit come without the "Plus" bits.
If you buy a kit with "Plus" add-on, the above two things are included. From the app's perspective it's as "Plus" as TDA-420. TDA-420 just includes that by default in the price.

Does this help, or did I muddy it up even more?
Regards
Yuriy
 
Well, let me try to explain how this works in human-understandable terms :)

TouchDRO adapter is a small computer. Different adapter versions come with different hardware capabilities:
  • The DIY adapter circuit (the one I linked above) has a very basic input buffer to take four single ended 5V (TTL) scale inputs and make it safe for the "brain" (ESP32 module). You can connect RS-422 scales, but the A'/B' lines will be ignored. This circuit is optimized to be cheap and easy to build. The buffer(s) I used are fast and robust enough to work well, so it's not a huge tradeoff.
  • The kit uses proper RS-422 drivers, so it can handle scales with differential lines (RS-422). You can use TTL scales too; the A'/B' inputs will just be "grounded", but the DRO will work fine.
  • The TDA-4xx adapters have much more sophisticated circuit.
    • Each primary input can read RS-422 (and TTL) scales.
    • Since the inputs have the "R" line as well, the adapter can use the reference signal to zero out scales at a repeatable position.
    • They also have one or two "flexible" inputs that can handle either additional TTL inputs (although a much slower - about 50KHz pulse rate, as opposed to "who the heck knows; my generator can't go past 2MHz"), or other "special" modes, like a tachometer, touch probe, etc.
    • These adapters have an on-board high-durability EEPROM that can be rewritten about 2,000,000 times, a super-capacitor, and some extra parts. When the board looses power, the super cap holds enough energy to allow the ESP32 to write out the last known position.
Each firmware version is customized to work with the given't adapter's pinout and hardware capabilities. At this point "Plus" vs. "Basic" are not in the picture. We are talking about basic functionality.

"Plus" firmware does two things:
  1. It adds a unique secret activation key that tells TouchDRO app that the device it's talking too includes "Plus" feature flag, which turns on additional functionality in the app. There is not a "Plus" and "Even Pluser" version of the app. It's either free, or "Plus".
  2. The firmware includes additional code that can switch the primary inputs from reading quadrature signal to decoding serial data. This is a code feature that is either there or not (depending on the firmware).
The "Free" firmware and the "Basic" kit come without the "Plus" bits.
If you buy a kit with "Plus" add-on, the above two things are included. From the app's perspective it's as "Plus" as TDA-420. TDA-420 just includes that by default in the price.

Does this help, or did I muddy it up even more?
Regards
Yuriy
Well, if I'd read your OP properly and looked at the new options for the kit, I'd have answered the question I really wanted answering myself and saved me from demonstrating my own lazy ignorance in my post above and saved you from having to waste your time correcting my understanding.:oops::grin:

For my lathe, I'll be buying the TDK-40T Plus.:)

Thank you Yuriy :)
 
Yuriy thank you for posting this to your site. Thank you for keeping the diy part going. I'm slowly building my shop back after our move and the touchdro is still on my list of to do's. Its only been about 6 years in the making but I will get one installed one of these days. Just a quick comment on the build page, I would never have thought to remove the pins from the plug in connectors for the esp32. In the past in my projects I broke the pins off or wired them separately to the board.
 
Well, if I'd read your OP properly and looked at the new options for the kit, I'd have answered the question I really wanted answering myself and saved me from demonstrating my own lazy ignorance in my post above and saved you from having to waste your time correcting my understanding.:oops::grin:

For my lathe, I'll be buying the TDK-40T Plus.:)

Thank you Yuriy :)
Don't think of it as me wasting time. Rather, this is "Yuriy enablement" - you gave me a perfect opportunity to bloviate about my product ;)
Seriously, though, I've learned a long time ago that if people are asking questions, I'm probably not explaining something well enough. I have my wife read every article I add to the site, and listen very carefully to her questions. It's very easy for me (and engineers in general) to fall into the trap of "RTFM you dumb user!!!!! How is it not obvious that you need to type `mccmd --dry-run -d 3.1415926*sin(infinity)` to see what time it is!!!!!?????". My "UI/UX" professor used to say "if you need a user manual for your device, you've failed"

Today after work I will be working on something that provides a clear blow-by-blow comparison between different options.
 
Yuriy thank you for posting this to your site. Thank you for keeping the diy part going. I'm slowly building my shop back after our move and the touchdro is still on my list of to do's. Its only been about 6 years in the making but I will get one installed one of these days. Just a quick comment on the build page, I would never have thought to remove the pins from the plug in connectors for the esp32. In the past in my projects I broke the pins off or wired them separately to the board.
This was just me being lazy :) I didn't want to route the lines around the chip, and removing the pins gave me a straight shot to the other side of the module. I figured that it will simplify the build for others...
 
Back
Top