MarlinFirmware / Marlin

Marlin is an optimized firmware for RepRap 3D printers based on the Arduino platform. Many commercial 3D printers come with Marlin installed. Check with your vendor if you need source code for your specific machine.
https://marlinfw.org
GNU General Public License v3.0
16.19k stars 19.22k forks source link

L6470 sanity check (info request) - not a Marlin issue #12598

Closed Bob-the-Kuhn closed 5 years ago

Bob-the-Kuhn commented 5 years ago

I've just gotten several of the X-NUCLEO-IHM02A1 dual L6470 evaluation boards. While I'm waiting for a long print I'm trying to figure out how to make use of them with a RAMPS style setup.

As best I can tell from the code I'll need to route a chip select and a step signal to each L6470.

For my dual Y, dual Z, single extruder system, I'll need to define the following chip selects:

STX_ENABLE_PIN
STY_ENABLE_PIN
STY2_ENABLE_PIN
STZ_ENABLE_PIN
STZ2_ENABLE_PIN
STE0_ENABLE_PIN

FYI - it's hard to pass up a new toy when they're $16 for each of the dual driver boards. Digikey delivers in only 2-4 business days.


It also looks like the end stop could be routed to each L6470. Unfortunately the chip only acts on the falling edge so the preferred high active end stops won't work directly with this chip.

Bob-the-Kuhn commented 5 years ago

Not as simple as I had hoped. On the X-NUCLEO-IHM02A1 board the chip selects of the two L6470s are tied to each other so there is just one chip select signal routed to the board.

Looks like I'll need to investigate this daisy chaining function/feature in more detail. Time to download the library from ST.

Bob-the-Kuhn commented 5 years ago

I had no clue that there was such a thing as SPI daisy chaining.

Interesting - definitely saves on hardware. If there's 5 devices in the chain you always send out 5 commands. Each device passes on the command after a one command cycle delay and saves only the last command it saw. After the 5 are sent then each device will have an unique command. All 5 execute their commands when chip select goes inactive. Must be lots of NOP commands being sent.

So, for the X-NUCLEO-IHM02A1 stack there are just the three SPI signals and one chip select. The catch is I'll need to be sure I'm using daisy chain compatible software.

comps commented 5 years ago

Yep, there's a feature request for the TMC library (https://github.com/teemuatlut/TMC2130Stepper/issues/41) to also support daisy chaining, which I'm patiently waiting for so I can use one of the TMC2660 boards (ie. https://github.com/hzeller/quadrigotion) floating around.

teemuatlut commented 5 years ago

@comps I haven't forgotten! It's just a low priority for me and I'm trying to get everything merged in before starting with new features like this one.

Bob-the-Kuhn commented 5 years ago

My goal is to quiet down the steppers on my home built machine. They draw 1.8A peak which puts them at the upper end of the pololu-style quiet drivers.

I tried the TMC2130 but had over temperature warnings until I dialed the current way down past the point of losing steps. I used the Watterott units with the correct heatsinks.

github-actions[bot] commented 4 years ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.