I decided to remove the DB25 connector on the stepper board. The rationale was that this would make it easier to reverse engineer the internal parallel interface circuitry, and the DB25 connector wouldn't be needed anyway. I cut the DB25 off more or less flush using an oscillating multi tool, and desoldered the pin stubs. Easy peasy, no muss no fuss.
Then I grabbed the meter and started beeping out traces. I didn't get very far before I realized that this was going to take a fair amount of time, because there is a ton of discrete SMT parts on the bottom side. Also, there is a good chance of errors creeping in, because, hey, I'm only human.
This led me to wondering what happens if this board fails. I'd have to buy an equivalent replacement, and if it isn't identical (very likely), repeat the reversing effort, at least in part, and redo the patch wiring. During that down time, I wouldn't have the use of the machine, and that would make me sad. :-(
So I took a break from reversing and did some googling on this particular stepper board (JP-3163B). Turns out there are a lot of folks out there who have had problems with it missing steps or just plain dying an early death.
I also noted that single-axis "TB6600" controllers are only $15, and available from multiple sources. So, rather than waste time reversing an obsolete board with no documentation, no drop-in replacement, and possible performance and reliability issues, I decided to plunk down $45 and replace the stepper board with three single axis controllers. The new controllers are scheduled to arrive Monday July 10.
WARNING: A lot of these lower-cost "TB6600" stepper controllers don't actually have a Toshiba TB6600 chip, they have a TB67S109 instead, which is not as powerful.
From the Toshiba datasheets:
|abs max motor current||recommend operating current||clock input freq|
My motors are 3A, and grbl max rate is only around 30Khz, so these should work fine.
I disassembled one of the units to have a look - Toshiba TB67S109 QFN package mounted on bottom, thermally coupled to heatsink with a chunk of aluminum. No grease between the chunk and the heat sink, so I'm going to add some.