I must be doing it wrong



  • I bought a Duet Wifi to replace the broken motherboard in my Monoprice Maker Ultimate (a Wanhao Dup6 rebadge). After a bunch of long nights I got it all wired up and installed, figured out my various wiring issues, and I have a config! So I should be good, right?

    Well. No. 😞

    I have a couple problems, and I'm almost certain that it's either a) my config is wrong, b) my expectations from the old Wanhao firmware are clouding my experience, or c) I broke something. Likely a sad mismash of all 3. Here's what I got:

    1. So I have a config that -seems- to work. On the Wanhao, the X and Y endstops are in the front left corner, and the Z endstop is in the back, but at the top of bed travel. So I put all 3 in as at the low end, and home the bed. It correctly homes the X and Y axis, placing them at (0,0). I tell it to move Y+, and it grinds against the endstop. But X+ moves it to the right, as expected! Tell it to move Y-, and it moves away from me (in what should be the positive direction?) I'm clearly confused here. All the steppers are wired the same, straight through.

    1a) Part of my confusion related to coordinates and endstops is, if I tell it the endstop is at the low end of the axis (so X=0), and it homes the head at X=0, it knows the endstop is engaged. But if I tell it to move X-, it sits there and grinds against the endstop, and happily now reports X=-10. Whaaaaat? Why ever support this? Now it thinks the printhead is jamming through the crossbar on the left side.

    1. And then there's the Z axis. The Duet really wants there to be a Z probe, but I don't have one (and hadn't planned on one - I have endstops, why can't those suffice?). I tell it to home the Z axis, and this gets all kind of grindy and crunchy. It's like the Z stepper is bouncing rapidly forward and backward. The bed barely moves and I'm wondering if the stepper is eating itself. Also, when it finally gives up on homing the Z axis, it has a cool trick: I can repeatedly hit the Z+ (or Z-, doesnt matter which as long as I hit the same one) button, and it will randomly decide which way is up. Yesterday I hit the Z+10 button ten times, and the board moved, in order, up, down, down, up, up, down, up, up, down, up. Does this sound like a wiring problem? Configuration?

    I've both taken a config from another person who replaced the Duplicator 6 board with a DuetWifi, and started from scratch. I can't get it to behave. I'm sure there's lots of causes here, and I'm fully aware that part of this is probably expecting it to act like the OEM firmware in methods of control, so I just need to get my head wrapped around it, but if anyone has opinions or ideas, I'd love to hear them.



  • I believe a copy of you config.g and photos of your wiring may help us help you troubleshoot your problems.



  • Have you tried the online configuator or are you making a config from scratch?
    https://configurator.reprapfirmware.org/


  • administrators

    I will assume this is a Cartesian printer, not a CoreXY or H-Bot.

    First of all, check whether the motors are moving in the right direction. +X should be to the right. If it isn't, edit the M569 P0 command in config.g by changing S0 to S1 or vice versa.

    Similarly, if the Y motor is moving the wrong way, edit the M569 P1 command.

    For Z homing without a Z probe, see https://duet3d.com/wiki/Configuring_RepRapFirmware_for_a_Cartesian_printer#Homing_Z_without_a_Z_probe.



  • Ref point 1a, once you have got X homing working, you won't be able to move the print head below X=0 (assuming you have defined X =0 as being the minimum using M208 S1 or some such. Similarly, you won't be able to move beyond X max (or Y and Z max for that matter), if you define the axes maxima using M208 S0 in your config g. However, you do need to successfully home all the axes first so that the printer "knows" where it's at to start with. As has been mentioned, you might be better off starting with the configuration tool.



  • I apologize for the delay in response; I spent most of last week dealing with a death in the family.

    Last night I pulled the wiring out to take some pictures, as requested, and discovered the wiring loom for my Z-axis stepper had some crimp failures. I re-crimped the ends and rebuilt the plug, and it seems more solid now. I checked the rest and they seem good.

    I did use the configurator, but I also started from a config from another person who had a Wanhao Duplicator 6 and replaced the board with a DuetWifi. Both have yielded a relatively similar configuration.

    I've figured out my +/- issue, I need to tell it that the X axis goes backwards, and now when it homes to zero, X+ goes to the right as expected. Y+ still goes up, as expected. So that's solved.

    My problem however is still the Z axis. When I can get it to move, it still randomly goes up or down. Sometimes it just sits there and makes whining noises like David Tennant in The End Of Time[1]. I'll double-check all the wiring, and maybe hand-turn the lead screw to get the bed closer to home. Somewhat disturbingly, I told it to Home Z, and it sat, grinding and whimpering near the bottom of travel, and so I came here to finish my reply. When I went back to my Duet tab, it says the Z axis is homed and it's at Z=0. Which is hard to believe, since it never got to the endstop, and I don't have a probe (installed or configured: [c]M558 P0[/c]). Not sure where it gets that idea, since it's been told about the endswitch ([c]M574 X1 Y1 Z1 S0[/c]).

    I tried upping the current a bit to the Z motor, and now it consistently moves without grinding and pulling a Tennant, but it still bounces randomly backward and forward.

    My current running config:

    ; Configuration file for Duet WiFi (firmware version 1.16)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool on Sat Mar 25 2017 23:18:27 GMT-0700 (PDT)
    
    ; General preferences
    M111 S0 ; Debugging off
    G21 ; Work in millimetres
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves
    M555 P2 ; Set firmware compatibility to look like Marlin
    M208 X0 Y0 Z0 S1 ; Set axis minima
    M208 X200 Y200 Z180 S0 ; Set axis maxima
    
    ; Endstops
    M574 X1 Y1 Z1 S0 ; Define active low and unused microswitches
    M558 P0 ; no Z probe installed
    ;M558 P1 X0 Y0 Z0 H5 F120 T6000 ; Set Z probe type to unmodulated, the axes for which it is used and the probe + travel speeds
    ;G31 P600 X0 Y0 Z2.5 ; Set Z probe trigger value, offset and trigger height
    ;M557 X15:185 Y15:185 S20 ; Define mesh grid
    
    ; Drives
    M569 P0 S0 ; Drive 0 goes backwards
    M569 P1 S1 ; Drive 1 goes forwards
    M569 P2 S1 ; Drive 2 goes forwards
    M569 P3 S1 ; Drive 3 goes forwards
    M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
    M92 X80.4 Y80.4 Z800 E95 ; Set steps per mm
    M566 X1200 Y1200 Z1200 E1200 ; Set maximum instantaneous speed changes (mm/min)
    M203 X20000 Y20000 Z1000 E1000 ; Set maximum speeds (mm/min)
    M201 X1000 Y1000 Z1000 E1000 ; Set accelerations (mm/s^2)
    M906 X1000 Y1000 Z1500 E1000 I60 ; Set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout
    
    ; Heaters
    M143 S280 ; Set maximum heater temperature to 280C
    M305 P0 T100000 B3988 R4700 ; Set thermistor + ADC parameters for heater 0
    M305 P1 T100000 B4138 R4700 X200 ; Set thermistor + ADC parameters for heater 1 and remap it to channel 200
    
    ; Tools
    M563 P0 D0 H1 ; Define tool 0
    G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets
    G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C
    
    ; Network
    M550 Pdup6duet ; Set machine name
    M552 P0.0.0.0 S1 ; Enable network and acquire dynamic address via DHCP
    
    ; Fans
    M106 P0 S1 I0 F500 H1 T180 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P1 S1 I0 F500 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P2 S0.5 I0 F500 H-1 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned off
    
    ; Custom settings are not configured
    
    ; Miscellaneous
    T0 ; Select first tool
    
    

    I appreciate any insight. Thanks!

    [1] "I don't want to go!"



  • The broken wiring:
    Green = Z axis
    Yellow = Y axis



  • Well, crap. I was trying to calibrate my extruder while waiting for some help on the Z axis, and it wouldn't turn - like it was jammed. After it tried briefly, I heard a pop and smelled smoke. Looks like the driver for E0 grenaded.

    I double-checked this wiring, it's not bad. Wondering if the stepper itself is jacked up somehow.

    Guess I can try to go on E1, but I'd rather not kill another driver.

    sigh Starting to feel like this isn't meant to be.


  • administrators

    Ask your Duet supplier for a repair under warranty.

    I'm trying to collect data on blown drivers, so please tell me what VIN voltage you were using and what current was set.



  • I am running a 24V system (my multimeter currently says the PSU is outputting 24.1V DC). Motor current for E0 was 1500mA.

    I will email Filastruder tomorrow. Thanks!



  • while a replacement under warranty certainly is generous, to the OP: 1500mA at 24V is pretty much the highest (right, or is it 2A max?) you are to push the built in drivers, so feel fortunate that dc42 is being very cool about this. I run 24V on a delta bot and my currents are all around 800mA (obviously, the values are motor-dependent, but still, (I am inclined to say) it's unnecessary under normal circumstances to ever run the drivers at their upper limit…lest you get results such as the ones you've gotten. Just a thought for the future!

    Have a nice day. Also, the intermittent direction changes in your Z stepper point to wiring problems for that motor. Before popping that driver too, please re-do the wiring and ensure you've got the correct pairs going to the correct locations as well as no intermittent shorting. Just in case you didn't know this: ensure your power is completely off prior to connecting or disconnecting stepper motor wires, as often doing so while powered up leads to blowing the associated driver, prob. the majority of the time (which is akin to an intermittent short).

    HTH.

    --jonathan


  • administrators

    @jrlederer:

    while a replacement under warranty certainly is generous, to the OP: 1500mA at 24V is pretty much the highest (right, or is it 2A max?) you are to push the built in drivers, so feel fortunate that dc42 is being very cool about this. I run 24V on a delta bot and my currents are all around 800mA (obviously, the values are motor-dependent, but still, (I am inclined to say) it's unnecessary under normal circumstances to ever run the drivers at their upper limit…lest you get results such as the ones you've gotten. Just a thought for the future!

    We've been conservative in limiting the maximum current to 2.0A so far, even though the drivers are theoretically rated to more than 3A. But we've done some more thermal testing, and I have recently been testing a Duet WiFi with nema 23 motors at up to 2.5A. So we'll announce an increase in maximum current soon. I've also been testing the effects of connecting and disconnecting stepper motors under load, and the TMC2660 drivers are more resilient than I expected them to be. I think the most likely thing to damage them is over-voltage, which in some printers can be caused by moving the carriage(s) by hand very quickly.

    @jrlederer:

    Also, the intermittent direction changes in your Z stepper point to wiring problems for that motor. Before popping that driver too, please re-do the wiring and ensure you've got the correct pairs going to the correct locations as well as no intermittent shorting. Just in case you didn't know this: ensure your power is completely off prior to connecting or disconnecting stepper motor wires, as often doing so while powered up leads to blowing the associated driver, prob. the majority of the time (which is akin to an intermittent short).

    I agree, reversals in direction could be caused by a bad connection.



  • So I've spent a ton of time troubleshooting (very carefully, as blowing a driver has scared the crap out of me). Lots of things.

    1. The Z stepper - I redid the wiring, but I finally got mad and replaced the stepper. Some decent NEMA 17's on Amazon were $15, so I bought 5 (in case, you know, I go mad and build a replacement printer - more later). Replaced the stepper, and used the wire that came with it, bam, perfect Z axis.

    2. The extruder - Replaced that one too, because as I was looking into the Z stepper, I determined that Wanhao has some funky wiring for some of the motors. The X and Y have always behaved perfectly, but the Z motor was wired straight through, where it should've had some wires crossed over for the (a,b)(1,2) positions. Same for the extruder. Just finished testing and validating steps/mm for E0, and we're good to go.

    The lack of markings (both of brand/model of the stepper, and which pin is which) scared me, and I was concerned about the lack of movement/random movement in both E0 when I was testing, and Z when it was acting psychotic. $30 worth of steppers has given me much peace of mind.

    I believe I have a working printer! Thank you all so much for your help.

    And, now that it's working again, I think I'm going to start printing parts for a D-bot (after I print the housing for the PanelDue!). I'll be putting a Duet in that one, too. At least I'll be building it from scratch, and won't be able to blame any blown parts on anyone but me.



  • lol i spoke too soon my new extruder stepper's shaft is too long. BRB getting out the dremel… 😉


Log in to reply