Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    RepRapFirmware 3.0beta 11 released

    Scheduled Pinned Locked Moved
    Beta Firmware
    13
    72
    3.5k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • fmaundefined
      fma
      last edited by fma

      I just installed RRF3.0beta11 on my DuetWifi2, and I have troubles configuring Fans. In my config.g file, I have:

      M950 F0 C"heater1" Q100    ; Fan 0 (water pump) is connected to heater 1, PWM at 100Hz
      M950 F1 C"heater2" Q100    ; Fan 1 (Berd air pump) is connected to heater 2, PWM at 100Hz
      M950 F2 C"duex.fan3" Q100  ; Fan 2 (Leds) is connected to heater 2, PWM at 100Hz
      M950 S0 C"fan0"            ; Servo 0 is connected to "fan0" pin
      
      ; Tools
      M563 P0 D0 H1 F1 S"Manual"  ; Define tool 0 using Drive 0, Heater 1 and Fan 1
      

      But I don't see any fan controls in DWC2... What I missed?

      I also would like to know:

      • how to setup thermostatic control for a fan
      • how to name a fan

      Thanks,

      PS: the tool is working fine.

      Frédéric

      gtj0undefined 1 Reply Last reply Reply Quote 0
      • gtj0undefined
        gtj0 @fma
        last edited by

        @fma You still need M106 commands...

        This is for a Duet3 but

        ; Fans & LEDs
        M950 F0 C"out7" Q25000
        M106 P0 C"PartCooling" S0  H-1
        M950 F1 C"out8" Q25000
        M106 P1 C"HotEnd" T45 H1
        
        M950 F2 C"out9" Q100
        M106 P2 S255 B0 C"Bed LED"
        
        1 Reply Last reply Reply Quote 1
        • fmaundefined
          fma
          last edited by

          Ok, I see. Thanks!

          Frédéric

          1 Reply Last reply Reply Quote 0
          • fmaundefined
            fma
            last edited by

            I also have the homing issue G0/G1: insufficient axes homed.

            But it does not happen all the time. It can home fine, then it does not. I can't find a pattern, it can happens at different stages...

            I'm using a Duet2Wifi.

            Here are my congif.g and all homing files:

            ; Configuration file for Duet WiFi
            ; executed by the firmware on start-up
            
            ; 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
            M667 S1  ; Select CoreXY mode
            
            ; Drives
            M208 X-60:302 Y-100:305 Z0:320 U-1000:1000  ; Set axis limits
            M584 X0 Y1 Z2 E5 U6                         ; Remap axes
            M569 P0 S1                                  ; Drive 0 goes forwards
            M569 P1 S1                                  ; Drive 1 goes forwards
            M569 P2 S0                                  ; Drive 2 goes reverse
            M569 P5 S0                                  ; Drive 5 goes reverse
            M569 P6 S1                                  ; Drive 6 goes forward
            M350 X16 Y16 Z16 E16 U16 I1                 ; Configure microstepping with interpolation
            M92 X66.667 Y66.667 Z1417.323 E530 U140     ; Set steps per mm
            M203 X30000 Y30000 Z1200 E3600 U3600        ; Set maximum speeds (mm/min)
            M201 X1000 Y1000 Z100 E3000 U3000           ; Set accelerations (mm/s^2)
            M566 X900 Y900 Z60 E600 U600                ; Set maximum instantaneous speed changes (mm/min)
            M906 X1750 Y1750 Z1750 E750 U1250 I30       ; Set motor currents (mA) and motor idle factor in per cent
            M84 S30                                     ; Set motors idle timeout
            
            ; Endstops (must be defined after any M584 command)
            M574 X2 S1 P"xstop"  ; X min active high endstop switch
            M574 Y2 S1 P"ystop"  ; Y min active high endstop switch
            M574 Z1 S1 P"zstop"  ; Z min active high endstop switch
            
            ; Sensors
            M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 R4700               ; bed temperature sensor uses 'bedtemp' pin
            M308 S1 P"duex.e2temp" Y"thermistor" T100000 B4725 C7.06e-8 R4700  ; E0 temperature sensor uses 'deux.e2temp' pin
            
            ; Heaters
            M950 H0 C"bedheat" T0          ; heater 0 uses the 'bedheat' pin and sensor 0
            M143 H0 S120                   ; Set maximum heater 0 temperature to 120°C (not yet supported)
            M307 H0 A105.6 C627.9 D1.5 B0  ; Auto-tune values for heater 0
            M950 H1 C"duex.e2heat" T1      ; heater 1 uses the 'duex.e2heat' pin and sensor 1
            M143 H1 S280                   ; Set maximum heater 1 temperature to 280C (not yet supported)
            
            ; Fans
            M950 F0 C"e0heat" Q100000           ; Fan 0 connected to 'e0heat' pin, PWM at 100KHz
            M106 P0 C"Part cooling"             ; Part cooling fan uses fan 0
            M950 F1 C"e1heat" Q100000           ; Fan 1 connected to 'e1heat' pin, PWM at 100KHz
            M106 P1 C"Water pump" T45 H1 X0.25  ; Thermostatic fan uses fan 1, monitor heater 1, max PWM 25% (6V out of 24V)
            M950 F2 C"duex.fan3" Q100           ; Fan 2 connected to 'duex.fan3' pin, PWM at 100Hz
            M106 P2 C"Leds"                     ; Leds uses fan 2
            
            ; Servos
            M950 S0 C"fan0"  ; Servo 0 connected to 'fan0' pin
            
            ; Tools
            M563 P0 D0 H1 F1 S"Manual"  ; Define tool 0 using Drive 0, Heater 1 and Fan 1
            G10 P0 X0 Y0 Z0             ; Set tool 0 axis offsets
            G10 P0 R190 S190            ; Set initial tool 0 active and standby temperatures
            M207 S1.5 F2400             ; Set retraction length (G10/G11)
            M572 D0 S0.08               ; Pressure advance
            
            ; Network
            M550 PDuetWifi  ; Set machine name
            M551 Pxxxxxx    ; Set password
            M552 S1         ; Enable network
            ; Access point is configured manually via M587 by the user
            M586 P0 S1      ; Enable HTTP
            M586 P1 S1      ; Enable FTP
            M586 P2 S0      ; Disable Telnet
            
            ; Misc
            M912 P0 S-13  ; Calibrate CPU temp.
            M106 P2 S0.1  ; Turn leds on 10%
            
            ; Custom settings are not configured
            
            ; homeall.g
            ; called to home all axes
            
            M98 P0:/sys/homexy.g
            M98 P0:/sys/homez.g
            M98 P0:/sys/homeu.g
            
            ; homexy.g
            ; called to home the X and Y axis
            
            G91  ; relative positioning
            
            G1 Z1 F1200 H2  ; lift Z
            
            G1 X325 Y325 F1800 H1  ; course home X or Y
            G1 X325 H1             ; course home X
            G1 Y325 H1             ; course home Y
            G1 X-5 Y-5 F6000       ; move away from the endstops
            G1 X325 F300 H1        ; fine home X
            G1 Y325 H1             ; fine home Y
            
            G1 Z-1 F1200 H2  ; lower Z
            
            G90  ; absolute positioning
            
            ; homez.g
            ; called to home the Z axis
            
            G91  ; relative positioning
            
            G1 Z-325 F600 H1  ; course home Z
            G1 Z5 F1200       ; move away from the endstop
            G1 Z-325 F120 H1  ; Fine home Z
            
            G90  ; absolute positioning
            
            ; homeu.g
            ; called to home the U axis
            
            G92 U0
            

            Thanks for you help.

            Frédéric

            deckingmanundefined JoergS5undefined 2 Replies Last reply Reply Quote 0
            • deckingmanundefined
              deckingman @fma
              last edited by

              @fma You need to put your M584 before M667 and M208. Look at the order dependencies here https://duet3d.dozuki.com/Wiki/Gcode#Section_M584_Set_drive_mapping. Also, it probably won't make any difference but M667 is deprecated and you should really be using M669 instead of M667.

              Ian
              https://somei3deas.wordpress.com/
              https://www.youtube.com/@deckingman

              1 Reply Last reply Reply Quote 0
              • fmaundefined
                fma
                last edited by

                Ok, thanks. I applied all these corrections, but I still have the issue.

                I tried to removed the U axis: not better.

                Frédéric

                deckingmanundefined 1 Reply Last reply Reply Quote 0
                • deckingmanundefined
                  deckingman @fma
                  last edited by

                  @fma Then I guess what's needed is some way of reproducing the problem - it's always difficult to diagnose when there is an element of "randomness" involved.

                  Unfortunately, I'm unable to help much more because I can't home my printer at all. Some of my end stops are on expansion boards and RRF 3 firmware doesn't yet work for homing with end stops on expansion boards.

                  Ian
                  https://somei3deas.wordpress.com/
                  https://www.youtube.com/@deckingman

                  1 Reply Last reply Reply Quote 0
                  • JoergS5undefined
                    JoergS5 @fma
                    last edited by JoergS5

                    @fma said in RepRapFirmware 3.0beta 11 released:

                    M208 X-60:302 Y-100:305 Z0:320 U-1000:1000

                    I would propose as reason:
                    M208 X-60:302 Y-100:305 Z0:320 U-1000:1000
                    means X maximum distance is 362, Y is 405, but you home only 325 each in
                    G1 X325 Y325 F1800 H1
                    , so depending on your current position you reach one of the endstops or not, assumed, 0 position is not defined after turning the printer on. I would change to
                    G1 X500 Y500 F1800 H1
                    and the followong two also to be sure they reach the endstops..

                    1 Reply Last reply Reply Quote 0
                    • JoergS5undefined
                      JoergS5
                      last edited by

                      This post is deleted!
                      1 Reply Last reply Reply Quote 0
                      • JoergS5undefined
                        JoergS5
                        last edited by

                        If G1 X325 Y325 F1800 H1 reaches X immediately, M208 defines X/Y position as 302/305, but in reality Y may be at -100. So it will not reach the endstop with the following Y move, even when the first line reached an endstop. So better 500 for the following two lines also.

                        1 Reply Last reply Reply Quote 0
                        • fmaundefined
                          fma
                          last edited by fma

                          The min values are wrong; I didn't noticed it because I home on max values. Anyway, total travel for X and Y is < 325mm, so the endstops are always reached (I'm using relative positionning). And in my tests, I'm close to the max positions, so carriage travels only a few mm before hitting the endstops.

                          And it was working fine with 2.02/2.03 firmwares; I just changed the S param to H param in the G1 moves.

                          Frédéric

                          1 Reply Last reply Reply Quote 0
                          • fmaundefined
                            fma
                            last edited by

                            I confirm it is totally random.

                            Say I'm on the max position, both endstops X/Y activated. If I hit the homing button several times, I can see the machine homing X then fail, or Y, the fail, or none, or successfully home all axis.

                            But I find a workaround: I changed

                            G1 X-5 Y-5 F6000       ; move away from the endstops
                            

                            to

                            G1 X-5 Y-5 F6000 H2    ; move away from the endstops
                            

                            and it now works fine. If it can helps to find the problem...

                            Frédéric

                            1 Reply Last reply Reply Quote 0
                            • Danalundefined
                              Danal
                              last edited by Danal

                              This may or may not be related, I didn't completely follow all above... if it helps:

                              I have noticed that RepRap 3 on Duet 3 hardware gets "stuck" if the endstop is already triggered (physically) when a G28 is issued. Stuck meaning it won't successfully show as homed, and therefore won't G0/G1 (to move off the switch). Just won't move at all.

                              I've had to either manually back it off (forcing the steppers) or add something like an M564 (to allow unhomed movement) and a G0 back off of a millimeter or two (and then turn M564 back to normal), or similar, to my home... files. Of course, this back off would be problematic if the axis happened to be a physical max when the home... file was invoked.

                              Anyway, one of those two things is required to get that axis to move again. Not even a reboot will help.

                              Delta / Kossel printer fanatic

                              1 Reply Last reply Reply Quote 0
                              • fmaundefined
                                fma
                                last edited by

                                I though it was the case here, but even when I was not on the endstops, the problem occured (again, not all the time). And I was able to successfully homed even when starting from endstops position.

                                With the H2 param added on the mov away, it works all the time.

                                Frédéric

                                1 Reply Last reply Reply Quote 0
                                • Danalundefined
                                  Danal
                                  last edited by

                                  @fma said in RepRapFirmware 3.0beta 11 released:

                                  I was able to successfully homed even when starting from endstops position.

                                  Interesting. Mine fails every time when already triggered.

                                  Board: Duet 3 version v0.6 (MB6HC)
                                  Firmware: RepRapFirmware for Duet 3 v0.6 3.0beta11 (2019-10-22b1)

                                  Delta / Kossel printer fanatic

                                  1 Reply Last reply Reply Quote 0
                                  • fmaundefined
                                    fma
                                    last edited by

                                    I'm using a Duet2...

                                    Frédéric

                                    Danalundefined 1 Reply Last reply Reply Quote 0
                                    • Danalundefined
                                      Danal @fma
                                      last edited by

                                      @fma said in RepRapFirmware 3.0beta 11 released:

                                      I'm using a Duet2...

                                      Aha! Yes, I am on 3 HW (and of course SW). Therefore, my data point not relevant at all.

                                      Delta / Kossel printer fanatic

                                      1 Reply Last reply Reply Quote 0
                                      • gtj0undefined
                                        gtj0
                                        last edited by

                                        One other thing to try is adding M400's to your homing scripts to make sure that
                                        moves finish before the start of the next move or the macro finishes.

                                        1 Reply Last reply Reply Quote 0
                                        • fmaundefined
                                          fma
                                          last edited by

                                          Ok, but the problem occurs inside the homexy.g macro. I will try to add M400 before moving back...

                                          Frédéric

                                          gtj0undefined 1 Reply Last reply Reply Quote 0
                                          • gtj0undefined
                                            gtj0 @fma
                                            last edited by

                                            @fma said in RepRapFirmware 3.0beta 11 released:

                                            Ok, but the problem occurs inside the homexy.g macro. I will try to add M400 before moving back...

                                            Yeah I understand that. The issue I was having (and still do to some extent) was that the moves to home both axes weren't actually finishing before the macro execution ended. When macro ends, it resets state so it was doing that before the moves completed and left things in a very weird and unpredictable state. The M400's inside the homing files helped (but haven't sovled the issue completely).

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA