I will be interested to hear the difference in audio on a UMO.
You'll hardly notice that it's actually printing. (With the TMC260 that is) The fan will be the noisy part.
I will be interested to hear the difference in audio on a UMO.
You'll hardly notice that it's actually printing. (With the TMC260 that is) The fan will be the noisy part.
Does this driver have a higher swithching frequency than the DRV8825 that has a very annoying high-pitch sound?
The DRV8825 has a chopper frequency of 30 kHz (datasheet).
The Trinamic drivers seem to be using a flexible chopper PWM frequency. It's been a while since I read the papers on the TMC260, but I don't recall the user having direct control over the PWM. There is no simple "The TMC2100 has a PWM frequency of .... kHz" datasheet value...
You'll hardly notice that it's actually printing. (With the TMC260 that is) The fan will be the noisy part.
Daid,
Does your comment refer to the stealthChop feature or the spreadCycle feature? As noted, stealthChop while extremely quiet doesn't provide enough torque for a 3D printer. SpreadCycle is the advanced current/frequency control which I believe gets you the 256 microstepping interpolation. 256 microstepping should help quiet things down but not to the extent of stealthChop.
50 euros/60 dollar for a full set and a spare seems reasonable enough. What would be needed to make this work? I see some soldering work is needed. Anything else? Do you need a firmware upgrade or adapt the electronics?
These are sort of pin compatible to the current drivers. "Sort of" because they are configured differently and in a way that can't be supported by the jumpers on the shield which either leave the conf pin open or pulled to 5V.
Also they don't support the range of microstepping that the polulo type drivers do.
So my plan is to:
- Purchase 4 or 5 drivers
- Since
- The UMO uses 16 microstepping mode for X and Y
- That is one of the microstepping modes supported
- No firmware changes are required if X and Y stay in 16 microstepping mode
- Those axes are the biggest source of noise
I'll try the drivers in those to axes first.
- In order to get into the recommended mode, I will NOT solder header pins to the 3 config pins which basically disables the use of the jumpers on the shield.
- Then to get into the recommended mode which is 16 microstepping with 256 microstepping interpolation with spreadCycle enabled, cnfg1 needs to be open which it already is due to the lack of header pins on the cnfg pins and cnfg2 needs to be grounded. Since the jumpers on the shield can't ground the pin, you need to solder a jumper wire from cnfg2 to one of the ground pins on the carrier.
See the notes here: https://github.com/watterott/SilentStepStick/blob/master/pcb/SilentStepStick_v10.pdf?raw=true
If the extruder is in 16 microstepping mode (can't remember at the moment), I'll do that one next.
Then I'll make a call about the Z axis. It isn't very noisey at all and I believe it uses 8 microstepping mode which is NOT supported on this driver. This means the FW would need to be changed for 16 microstepping mode and it might not be worth the hassle...
One other thing, the way the shield enables/disables the drivers may not allow the current reduction on idle feature to be used.
To enable the current reduction mode, enable must be left open whereas grounding it will enable the driver but without the current reduction feature.
The drivers will still work as letting the enable pin go high disables the driver. Grounding it enables the driver. However, optimally, letting the pin float would be the best way to enable the driver as it would also enable the current reduction on idle.
However, that would at least be a firmware change if not a hardware change...
Daid,
Does your comment refer to the stealthChop feature or the spreadCycle feature? As noted, stealthChop while extremely quiet doesn't provide enough torque for a 3D printer. SpreadCycle is the advanced current/frequency control which I believe gets you the 256 microstepping interpolation. 256 microstepping should help quiet things down but not to the extent of stealthChop.
No idea in which mode those drivers where used at that point. It was on experimental hardware with experimental firmware.
(It did have a high frequency pitch when the motor was not moving. But I'm sure that can be solved by lowering the power on stopped motors)
Do you think that would carry over to the 2100? It sounded like the main difference was the interface and that the 256 would not be compatible with the UMO board. Maybe I am missing something.You'll hardly notice that it's actually printing. (With the TMC260 that is) The fan will be the noisy part.
Very tempted to plop the $80 USD for the TMC2100 modules, unless it is likely that there would be better versions using the other modules soon. Would also love to hack something together using the TMC260, but don't want to get intwined in another major upgrade project.
Edit: meant TMC260 not 256
I have a video that shows the same UMO running on 16 micro stepping Marlin (normal) and 32 micro stepping on a TinyG board. I hooked it all up and did the comparison tests and made videos. Unfortunately I did this at Ultimaker headquarters back in October and was told not to publish anything that could possibly have secrets. So I might have to blur the hell out of the videos. But that might be a fun project for this weekend.
I also heard 64 micro stepping which is significantly quieter but I don't have any video of that.
anon - Marlin can do 32 bit microstepping if you just tell it on the ulticontroller the number of steps/mm - just double the number and keep speeds below 150mm/sec (shouldn't be a problem). I think this will work better than pure interpolation. I mean I think it will sound quieter than having sudden changes in velocity in 16 microstep intervals.
You could just publish an audio sample.
Was taking a look at the possibility of implementing the tmc260 in a pololu compatible package. It seems like you could add something like a PIC12LF1552 next to the tmc260. At power up it would program the tmc260 over spi.
The PIC could also be connected to Step, Dir, and ~En pins. When the stepper driver is receiving the disable signal, the Step and Dir pins could be used to send data to the PIC (looks like there might be other pins you could also use. Not sure if the Arduino is connected to the MS1:3 pins.) It looks like the PIC12LF1552 would have 3 pins available; assuming the chip select pin on the tmc260 can just be grounded. The internal clock could be used as the clock for the SPI bus and clock for the TMC260, so one wouldn't have to worry about syncing two different clocks or adding an external oscillator. Cost for the PIC12LF1552 $0.56 USD in quantities of 100; so it wouldn't add terribly to the total cost.
I doubt the PIC is able to output his 16MHz clock. Larger MCUs, such as the EFM32 (Cortex M3) that I'm using have special modules for this purpose (in the EFM's case it's called clock management unit, which has an output module that can put the system clock on selected output pins).
I've never heard about that feature in PICs.
I don't know that particular model, but I've worked with a bunch of PIC12, 16 and 18's before.
Btw, if you decide to make a PCB for the TMC260, make sure you read through the appnotes on the trinamic site. I've created a TMC260 board myself and noticed that you need should have a lot of PCB space for heat spreading surfaces. My version measures around 30x26 mm (it's mini-PCIe form factor because I will use miniPCIe connectors) and I used up pretty much all of the space (without any components other than the TMC260, current sense resistors, caps and connector).
I also wondered why no one uses correctly sized current sense resistors (power rating & derating), but that's the usual problem
I am pretty sure the PIC12LF1552 can output its clock on RA4 (Pin 3). At least that is what the datasheet says (page 32 section 5.2.2. http://ww1.microchip.com/downloads/en/DeviceDoc/40001674E.pdf ) From figure 5.1, you can see that it doesn't output directly from the clock source, but it outputs the post scaled clock divided by 4. The highest frequency that can be sent to the CPU is 32 Mhz (post scaled 8Mhz*4x PLL), so you can only get up to 8 Mhz on RA4. According to the TMC260 datasheet (page 8), that would be just enough.
The main reason I have stuck with PIC for my personal projects is that they do a really good job packing in loads of peripherals. I just didn't see that from other MCU, without generally needing to spend a lot more. The other reason is that they are very low power. Some ARM chips are getting very compelling, but I am too lazy and don't have a need to switch.
Edit: on page 42 of the TMC260 datasheet, it seems to have some contradictory information about the required system clock frequency range. Section 13 says 10-20Mhz, while section 13.1 indicates that 8-16Mhz is okay. Looks like all that might be mute anyway, as it seems like the SPI bus is allowed to operate on whatever clock is fed to the bus; so you could just use the intosc on the TMC260.
Lol, true
Either that functionality is new, or I've never noticed it before.
The clock-out feature isn't mentioned other than "there is a CLKOUT pin", though. Very easy to overlook...
The PICs are great, relatively easy to work with and they have loads of features, even in the smallest packages.
I want to switch to an ARM architecture simply because of the much bigger processing power, bigger memories, and better (faster) integration of features like USB and Ethernet.
Making your 3D printer an USB2.0 host (for USB sticks) is no problem at all for an ARM.
/btw:
It seems the TMC2100 isn't on the market yet. It says "coming soon" on the trinamic page. Distributors don't seem to have any of them as well.
The TMC260 is better anyways
Yeah. I don't know when they started doing it accept maybe sometime in the last 10 years. For a long time, I only used an MCU for process control stuff that needed precise timing, so I also used an external clock. At some point it seems like they started making some substantial improvements, like units that can do full speed USB off the intosc.
I wonder where watterot is getting their tmc2100 from. http://www.watterott.com/de/SilentStepStick%20.%20BTW,%20I%20ordered%20some%20of%20these%20out%20of%20curiosity.
So, where are you planning to go with this ARM/TMC260 board? Is it going to be a smoothie derivative, or something else?
I have four of these drivers on the way so we will see how it goes...
I want to switch to an ARM architecture simply because of the much bigger processing power, bigger memories, and better (faster) integration of features like USB and Ethernet.
Making your 3D printer an USB2.0 host (for USB sticks) is no problem at all for an ARM.
Something like the Raspberry Pi? It seems to me that picking a board with longevity is more important than ultimate cost efficiency or speed, to prevent everyone having to use a different board after a while
I have four of these drivers on the way so we will see how it goes...
Cool, I will be following this closely.
Something like the Raspberry Pi? It seems to me that picking a board with longevity is more important than ultimate cost efficiency or speed, to prevent everyone having to use a different board after a while
Cool, I will be following this closely.
What about smoothieboard? It seems to be well regarded. Main problem for it right now is that it doesn't do much for print quality beyond an arduino platform, but that could change. There also seem to be a number of beagleboneblack projects as well. My plan was to sit on the sidelines and see who comes out on top.
...
So, where are you planning to go with this ARM/TMC260 board? Is it going to be a smoothie derivative, or something else?
Don't worry too much about my project yet. It will take me 2-3 years to make that happen. I'm planning ARM (host) -> FPGA (motion control) -> TMC260 (driver).
I'm around 60% done with the overall hardware, but making the firmware for this will take a LONG time.
Also, I made my own display board (because I have no use for the 5V boards out there), PT1000 amplifiers and optical limit switches. The whole package is going to be ridiculously expensive, I fear.
Just need to cement the heat sinks on. Getting too late to continue tonight. Maybe heat sinks tomorrow and recording the sound of existing drivers. Then Friday I'll drop these in and see how they do...
Looking forward to reading your results. BTW, what heatsinks did you pick?
Wetterott sells the tiny sinks that are used on the originals so it made sense to add them to the order.
http://www.watterott.com/en/Heatsinks-6-3x8mm
I'll attach them with some Arctic Alumina™ thermal adhesive which I like better than the tape.
Yeah. I didn't think to add them to the order when I place mine. Will probably go to the local electronics store and pick up some ram heatsinks, or maybe steal them off some defunct electronics.
They don't look quite as optimal, but I went ahead and ordered these. http://www.amazon.com/gp/product/B007XACV8O/ref=pd_lpo_sbs_dp_ss_1?pf_rd_p=1944687782&pf_rd_s=lpo-top-stripe-1&pf_rd_t=201&pf_rd_i=B00AO04I5Y&pf_rd_m=ATVPDKIKX0DER&pf_rd_r=0S8HXEK6VWWNMZ8J4KH1
Recommended Posts
Top Posters In This Topic
33
31
19
8
Popular Days
Jan 30
13
Jan 26
11
Jan 25
7
Feb 7
7
Top Posters In This Topic
aviphysics 33 posts
anon4321 31 posts
jonnybischof 19 posts
zumfab 8 posts
Popular Days
Jan 30 2015
13 posts
Jan 26 2015
11 posts
Jan 25 2015
7 posts
Feb 7 2015
7 posts
jonnybischof 60
That is a very fair price! The TMC parts aren't the cheapest out there.
My version of the TMC260 driver will cost around 30$ per piece...
Link to post
Share on other sites