RAMPS, TMC2130s, and LCD


oakdesign has it right. Here’s a photo of mine (only one driver connected at the moment, this is my test board for prusa fw)

Thing to remember is that each driver shares the MOSI/MISO/SCK pins but has it’s own CS pin. that can be any spare pin with very few exceptions, but you need to specify the pin in marlin.




I do get your point, they aren’t very good. However, the pin layout is public (as you’ve seen). The schematic for MKS GEN is almost the same as ramps. They actually used to publish the schematic and have withdrawn it, but you can still find it if you look hard enough, or ask the right people.



One thing to note, for all those doing this, is that apparently the TMC2130 on silentstepstick can be damaged if they are powered without VM being present. Which practically means that powering the board from USB without the serparate power supply turned on, is a risk.

On MKS gen you can disconnect the VccUSB by removing the fuse F4.



Or the other way round, power board on without usb plugged in results in the same. But to be honest if so I know about the recommendation. I’m dealing with TMC drivers over the past 6 month and sepaiaclly with the 2130 and 2208 did intensive test not always taking care of the power cycle, haven’t managed to damage a single one so far



That’s not an issue, at least on RAMPS - Vcc comes from a 5V regulator when the PSU is connected (there’s a depletion mosfet which disconnected VCCUSB in that instance too).

I’m with you on it being a theoretical risk though.



As I personally don’t use a SD Card with my 12684 and always found it a bit annoying to have some unused pins by using the Smart Graphics adapter I replaced it completely so only wiring the 12 pins needed for LCD to get the AUX3 free. After having the LCD functional I did a reasing of the pins in firmware so to have a single 10 pin connector on AUX 4 ranging from D16 to D37 and 5V,GND from AUX4 as well. Main reaon was not only to get easy access to AUX 3 but as well to get the unused I/O pins to extend my system from dual to quad extruder



Hi there,

I am trying to make my new system work… WKS GEN 1.4 + TMC2130 + Full Graphics LCD. I am upgrading from an Anet 1.0 (a8).

I got the bed and extruder to heat up and the fans to run. Not much, I know.

The LCD is not working but I gave up on that for now. I am on to the drivers.

I soldered all the pins like Tom had on his review, did all the Marling config (I think) but watching the video again, he briefly (too quick for us dummies) talked about hooking up the drivers to to AUX 2 and AUX 3… Could someone post a link or pic of what is this all about? I think he scribbled, on his video, on a white board? And is there more firmware updates to do to cover this wiring?

Thanks!!! Sorry, I have been all over the Forum today!!! Took the day off to work on this and the day is ending…

: )



Here’s my solution. I took a piece of stripboard, cut it to 3 x 8, and cut it in the middle to make a breakout board that I could solder to the ICSP header on the arduino(ish). I ran wires from this header to another piece of stripboard with pin headers soldered in to it. This lets me breakout arbitrarily many SPI headers. (I just broke out SCK/MOSI/MISO, but if I did it again, I would probably also populate the stripboard with 5V and GND).

Pictures here: https://photos.google.com/share/AF1QipNJotflxynl1k-SUjMIVguVygJAMp8YccWEV94QwBtqsRLrqaUk2Dk9Ncj01Gyxag?key=V1hndXdUcFNIUng5amlXeEIyb2wtM1hnd0hsX093



Yeah, cleaner would be nice, but I didn’t know how sold on these I would be (sssssoooooooo sold now! They are awesome!!!)

I’m still having problems with the cooling fan kicking on. If it’s not off or at full, then the printer prints at like 1mm/s… Pretty odd. Also, I noticed if I let the printer sit for awhile the motors won’t respond anymore until a complete printer reboot.

I do need to rebuild at some point… Maybe I’ll tidy it up then



I’m still suffering in not having a replacement ramps yet (was supposed to arrive yesterday but then it was lost hopefully it doesn’t get “lost” today as well).

I’ll have to dial things in fresh for ramps as my dolly build is currently powered by an anet board so my only testing with the TMC2130s is just running steppers on the desk not connected to anything yet.



Following, how’d you know what pins to use for CS?



You can basically use any PIN thats free for CS. A10 and D44 on the AUX2 connector are nice candidates.
You can use this to find some suitable pins for your setup.



Anything in particular that make those two pins better than the others? Any pin on Aux-2 is usable, right?



@SpeedGP basically yes, but my plan was to desolder the aux3 connector on the ramps and the LCD so I could put these extra long ones from a stacking arduino shield so it’d be a little cleaner. That ended up not working because the ramps started falling apart while desoldering (one of the SPI pins traces detached from the board) so I’m waiting on a new board to arrive to finish up.

New plan is to use a stacking arduino mega proto board between the mega and the ramps and just running the TMC2130s SPI pins to connectors on it.

As already mentioned you can use any digital pin for CS, I’m just going to arrange them on Aux 2 in a single row so I can put them into a 4 pin dupont connector.



How are you all wiring the diag pins? Looks like stock Marlin uses diag1, and prusa’s einsy board uses diag0 and diag1 soldered together. Has anyone looked into the init code from MK3 branch? I know the two diagonal pins share 80% functionality, but iirc diagonal 0 can trip on over temp prewarn and diag1 trips on stall. Maybe solder both to an interrupt capable pin and read the registers in the handler?



Thank you for all this information because sometimes the SD cards that I buy do not display any information when it is checked