IN DEVELOPMENT BigBox Dual X Carriages with Duet Wifi (and Duex)

Discussion in 'Guides, Mods, and Upgrades' started by T3P3Tony, Oct 20, 2016.

  1. T3P3Tony

    T3P3Tony Well-Known Member

    Joined:
    Oct 12, 2016
    Messages:
    48
    Likes Received:
    19
    Alex

    I am working through this right now as well.

    I suggest you move the U axis to the middle and set it to say 150 with G92
    G92 U150
    Then you can use G1 U145 and G1 U155 to confirm the direction of travel without a danger of hitting any thing.

    Also my homeu.g is:
    G91 ; relative mode
    G1 U400 F6000 S1 ; move up to 400mm in the +X direction, stopping if the homing switch is triggered
    G1 U-4 F600 S2 ; move slowly 4mm in the -X direction
    G1 U10 F300 S1 ; move slowly 10mm in the +X direction, stopping at the homing switch
    G90 ; back to absolute mode​

    You need to have you M208s setup correctly in config.g, mine are:
    M208 X250 Y235 U318.6 Z300 ; set axis maxima
    M208 X-1.0 Y-100 Z-0.5 U69 S1 ; set axis minima
    One you have U moving in the correct direction then trigger the endstop with your hand to avoid a carriage crash and see if you get the correct behaviour. The issue you are describing implies that the endstop thinks it is at a minimum not a maximum hence it wont back off to fine home.
     
    dc42 likes this.
  2. Alex9779

    Alex9779 Moderator
    Staff Member

    Joined:
    Sep 4, 2015
    Messages:
    2,405
    Likes Received:
    731
    @T3P3Tony I didn't mount it yet so the motor can move the way it likes and I trigger the endstop with the hand...
    I almost forgot to print the left fan, printing now...
    Other things are mostly prepared for the switch...
     
    #2 Alex9779, Oct 20, 2016
    Last edited: Oct 20, 2016
  3. T3P3Tony

    T3P3Tony Well-Known Member

    Joined:
    Oct 12, 2016
    Messages:
    48
    Likes Received:
    19
    have a look at the config/homeing files to see if you can get the expected behaviour
     
  4. T3P3Tony

    T3P3Tony Well-Known Member

    Joined:
    Oct 12, 2016
    Messages:
    48
    Likes Received:
    19
    Post just arrived with astrosyn damper for my Y motor (a recommended upgrade I never bothered with on the KS bigBox) so fitting that now, then will do first print with only X axis.
     
  5. Alex9779

    Alex9779 Moderator
    Staff Member

    Joined:
    Sep 4, 2015
    Messages:
    2,405
    Likes Received:
    731
    I did, as I said, I basically just copied my homex.g, but now I am printing the fan, moved back to the "old" config (commented everything with "U").

    Side note: this is also my very first Colorfabb HT print! First layer came down pretty well given that I disassembled the left Z support part to drill holes in it and didn't relevel or anything after remounting it :D
     
  6. dc42

    dc42 Well-Known Member

    Joined:
    Aug 16, 2016
    Messages:
    173
    Likes Received:
    70
    Don't forget to declare your U axis high end endstop switch in the M574 command by adding parameter U2.
     
  7. T3P3Tony

    T3P3Tony Well-Known Member

    Joined:
    Oct 12, 2016
    Messages:
    48
    Likes Received:
    19
  8. Alex9779

    Alex9779 Moderator
    Staff Member

    Joined:
    Sep 4, 2015
    Messages:
    2,405
    Likes Received:
    731
    I modeled it in Onshape (www.onshape.com)... That's a browser CAD system. I linked the file in the description. You can create a free account then copy the files to your workspace and edit them. All parametric just change the dimensions...
     
    #8 Alex9779, Oct 20, 2016
    Last edited: Oct 20, 2016
  9. T3P3Tony

    T3P3Tony Well-Known Member

    Joined:
    Oct 12, 2016
    Messages:
    48
    Likes Received:
    19
    Cheers Alex, I need to get into Onshape (and 123D) I ended up redoing it is OpenSCAD as for simple shapes it super quick.
     
    dc42 likes this.
  10. dc42

    dc42 Well-Known Member

    Joined:
    Aug 16, 2016
    Messages:
    173
    Likes Received:
    70
    I have just released RRF 1.16beta 3 to fix some issues with U axis support that Tony reported. Also just released is PanelDue firmware 1.15a which not only shows the U homing button, but also the U axis position.
     
    T3P3Tony likes this.
  11. Alex9779

    Alex9779 Moderator
    Staff Member

    Joined:
    Sep 4, 2015
    Messages:
    2,405
    Likes Received:
    731
    Ok I connected the second motor and endstop but I still have the same results as the day before yesterday...

    Here is a stripped config, only commands with U axis involved:
    Code:
    [...]
    M208 X-14 Y0 Z0 U0 S1 ; Set axis minima
    M208 X272 Y240 Z300 U330 S0 ; Set axis maxima
    [...]
    M574 X1 Y1 Z0 U2 S1 ; Define active high microswitches
    [...]
    M569 P5 S1 ; Drive 5 goes forwards
    
    ; Configure U axes
    M584 U5 ; Create U axis for second X carriage before we try to configure it
    [...]
    M92 X160 Y360 Z1600 U160 E417:417 ; Set steps per mm
    [...]
    M566 X480 Y480 Z24 U480 E300:300 ; Set maximum instantaneous speed changes (mm/min)
    M203 X9000 Y9000 Z360 U9000 E1500:1500 ; Set maximum speeds (mm/min)
    M201 X1000 Y1000 Z100 U1000 E5000:5000 ; Set accelerations (mm/s^2)
    
    And here is my homeu.g:
    Code:
    ; Lift Z relative to current position
    G91
    G1 Z5 F6000
    G90
    
    ; Move quickly to U axis endstop and stop there (first pass)
    G1 U999 F1800 S1
    
    ; Go back a few mm
    G91
    G1 U-5 F6000
    G90
    
    ; Move slowly to X axis endstop once more (second pass)
    G1 U999 F360 S1
    
    ; Lower Z again
    G91
    G1 Z-5 F6000
    G90
    
    My issues are:
    1. U motor not moving initially. I have to home, the motor gets power but does not move, I have to hit the endstop and hold, then the machine thinks it is homed. When I home again it just moves fast away from the endstop and the slowly towards it but stops after some mm, I have to move the carriage manually to a spot within the range of that move to let it trigger the endstop.
    2. Consecutive homes for U work then.
    3. Moving the carriage does not work. Neither with the PanelDue nor by gcode. Every command using U in relative or absolute mode move the carriage just to the left until the other carriage is hit and the motor still runs...
    I have no idea if my configuration has a problem as I am not able to get the position the firmware thinks the carriage is after homing...
     
  12. Alex9779

    Alex9779 Moderator
    Staff Member

    Joined:
    Sep 4, 2015
    Messages:
    2,405
    Likes Received:
    731
    Ok I did what I found in DW forum about connecting an external stepper and corrected my config and setup:
    • supply 3.3V
    • M569 P5 S1 T2 ; Drive 5 goes forwards
    I am using a DRV8825 on a bread board, I have a and had always a capacitor on the 24V close to the stepper...

    But still the same behaviour...
     
  13. Alex9779

    Alex9779 Moderator
    Staff Member

    Joined:
    Sep 4, 2015
    Messages:
    2,405
    Likes Received:
    731
    Oh there is a 1.16beta3 out... Trying it now...
    And 1.15a for the PanelDue...

    Side note: I love my PanelDue mount and that I decided not to screw the case together... Much easier to update, just remove, unplug, go to computer and update...
     
  14. Alex9779

    Alex9779 Moderator
    Staff Member

    Joined:
    Sep 4, 2015
    Messages:
    2,405
    Likes Received:
    731
    Ok I moved the M584 command way to the top and now it seems to work! Tried this with 1.16beta2 too but with no luck...

    Here is my current config:
    Code:
    ; 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
    
    ; Configure U axes
    M584 X0 Y1 Z2 U5 E3:4
    
    ; Set limits
    M208 X-14 Y-49.5 Z0 U330 S1 ; Set axis minima (U limits NOT correct!!!)
    M208 X272 Y196 Z300 U0 S0 ; Set axis maxima (U limits NOT correct!!!)
    
    ; Endstops
    ;M574 X1 Y1 Z0 S1 ; Define active high microswitches
    M574 X1 Y1 Z0 U2 S1 ; Define active high microswitches
    M558 P1 X0 Y0 Z1 H3 F120 T5000 ; Set Z probe type to unmodulated, the axes for which it is used and the probe + travel speeds
    G31 P500 X14.75 Y34 Z0.60 ; Set Z probe trigger value, offset and trigger height
    
    ; Drives
    M569 P0 S0 ; Drive 0 goes forwards
    M569 P1 S1 ; Drive 1 goes forwards
    M569 P2 S1 ; Drive 2 goes forwards
    M569 P3 S0 ; Drive 3 goes backwards
    M569 P4 S0 ; Drive 4 goes backwards
    M569 P5 S1 T2 ; Drive 5 goes forwards
    
    ; Microstepping
    M350 X16 Y16 Z16 E16:16 I1 ; Configure microstepping with interpolation
    M92 X160 Y360 Z1600 U160 E417:417 ; Set steps per mm
    
    ; Movement
    M906 X300 Y1200 Z1200 E600:600 I60 ; Set motor currents (mA) and motor idle factor in per cent (tweaked for motor temps)
    M566 X480 Y480 Z24 U480 E300:300 ; Set maximum instantaneous speed changes (mm/min)
    M203 X9000 Y9000 Z360 U9000 E1500:1500 ; Set maximum speeds (mm/min)
    M201 X1000 Y1000 Z100 U1000 E5000:5000 ; Set accelerations (mm/s^2)
    M84 S30 ; Set idle timeout
    
    ; Heaters
    M143 S320 ; Set maximum heater temperature to 320C
    M307 H0 A141.0 C620.4 D0.7 B0
    M307 H1 A333.3 C181.3 D6.7 B0
    M305 P0 T100000 B4388 C0.0000000000000000 R4700 L0 H30 ; Set thermistor + ADC parameters for heater 0
    M305 P1 X200 ; Set thermistor + ADC parameters for heater 1 and remap it to channel 200
    M305 P2 X201 ; Set thermistor + ADC parameters for heater 2 and remap it to channel 201
    
    ; Tools
    M563 P0 D0 H1 ; Define tool 0
    G10 P0 X0 Y0 ; Set tool 0 axis offsets
    G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C
    M563 P1 D1 H2 ; Define tool 1
    G10 P1 X0 Y0 ; Set tool 1 axis offsets
    G10 P1 R0 S0 ; Set initial tool 1 active and standby temperatures to 0C
    T0 ; Select first tool
    
    ; Network
    M550 PBigBox ; Set machine name
    M540 P0x60:0x01:0x94:0x0C:0x54:0x28 ; set MAC address
    M552 P0.0.0.0 S1 ; Enable network and acquire dynamic address via DHCP
    M554 P172.16.0.1 ; Set gateway
    
    ; Fans
    M106 P0 S0 I0 F10 H-1 B0.1 L30 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S1 I0 F10 H1:2 T40 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P2 S0.5 I0 F5 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
    
     
  15. T3P3Tony

    T3P3Tony Well-Known Member

    Joined:
    Oct 12, 2016
    Messages:
    48
    Likes Received:
    19
    Yes you need M584 at the top.

    I have both hotend cooling fans connected to fan1 with thermostatic control so f either hotend gets over 50c they both come on. When I was the DueX I might split them out to seperate fan channels to reduce noise further
     
  16. Alex9779

    Alex9779 Moderator
    Staff Member

    Joined:
    Sep 4, 2015
    Messages:
    2,405
    Likes Received:
    731
    That's something I am considering too...

    So far it seems to work now, all my issues are gone with 1.16beta3 and the move of the config line... Now going to optimise the system, I think I will remove the cable mounts on the side and route the cables under the to the back side and the up...
     
  17. dc42

    dc42 Well-Known Member

    Joined:
    Aug 16, 2016
    Messages:
    173
    Likes Received:
    70
    I have a put preliminary build of firmware 1.16 beta 4 at https://dl.dropboxusercontent.com/u/193 … rmware.bin. This supports X axis mapping. So you should now be able to do dual material and mirrored prints on IDEX machines.

    Some notes:

    1. I have updated the sample tool change files on the wiki page. In particular, you should not use the G1 R2 commands in the tpost#.g files that I had in the earlier version.

    2. The reported coordinates are raw, which is deliberate. So the X coordinate shown by DWC is that of the physical X axis regardless of any mapping. Same with M114. If you have a PanelDue and you put the latest 1.15a firmware on it, you can see the U coordinate as well. Eventually, DWC will show the U coordinate as well.

    3. Make sure that the commands in your homing files that cause the head to back off a few mm after dong course homing have the S2 modifier on them, so that X mapping will not occur on those commands. Similarly, any command you have in homez.h or homeall.g to put the head in a particular position prior to doing a G30 probe should have the S2 modifier to ensure that you put the X carriage there and not the U carriage.

    4. I suspect there will be a few glitches, such as additional places where X mapping needs to be done. Most likely they will occur when changing between tools. This is something that I can't test fully, because I don't have a dual carriage printer yet.
     
  18. dc42

    dc42 Well-Known Member

    Joined:
    Aug 16, 2016
    Messages:
    173
    Likes Received:
    70
    PS - one thing that I forgot about is that you will most likely want fan mapping too, so that a M106 command with no fan number that is generated by your slicer is mapped to the correct print cooling fan.

    For now, a simple solution is to connect both print cooling fans in parallel. That leaves you with two fan channels free even without a DueX2/X5, so you can have a thermostatic hot end fan on each carriage.
     
  19. dc42

    dc42 Well-Known Member

    Joined:
    Aug 16, 2016
    Messages:
    173
    Likes Received:
    70
    You might want to swap over the drivers on your U axis and one of the extruders, so that the U axis has the TMC2660. It should be quieter that way.
     
  20. Alex9779

    Alex9779 Moderator
    Staff Member

    Joined:
    Sep 4, 2015
    Messages:
    2,405
    Likes Received:
    731
    Going to check that out tonight.
    I have a few problems with homing Z. I dont get how the offset of the probe works. It set it but sometimes it is not taken into account when homing. Or it was before I rebuilt the box and now it is not any more...
    Think I just set it to 0 and use the nozzle coords to set the points for leveling...
     

Share This Page