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.
    • dc42undefined
      dc42 administrators @stereo
      last edited by

      @stereo said in RepRapFirmware 3.0beta 11 released:

      Do all home X, Y work fine? Am I the only one? show homex.g
      On beta10

      G91 ; relative positioning
      G1 Z5 F6000 H2 ; lift Z relative to current position
      G1 H1 X-335 F1800 ; move quickly to X axis endstop and stop there (first pass)
      G1 X5 F6000 ; go back a few mm
      G1 H1 X-335 F360 ; move slowly to X axis endstop once more (second pass)
      G1 Z-5 F6000 H2 ; lower Z again
      G90 ; absolute positioning

      work good.

      On beta11 goto Z5,Z-5,X5.. but does not go to the microswitch.

      Please post your config.g file. Which Duet are you using?

      Duet WiFi hardware designer and firmware engineer
      Please do not ask me for Duet support via PM or email, use the forum
      http://www.escher3d.com, https://miscsolutions.wordpress.com

      stereoundefined 1 Reply Last reply Reply Quote 0
      • stereoundefined
        stereo @dc42
        last edited by stereo

        @dc42 shot_191024_124521.png shot_191024_124938.png

        M574 X1 S1 P"io0.in" or
        M574 X1 S0 P"io0.in"
        on beta11 always triggered YES.

        IF RUN "M574 Y2 S0","M574 X1 S0" work fine NO...

        normal config on beta10:
        M574 X1 S0 P"io0.in"

        Duet3

        1 Reply Last reply Reply Quote 0
        • A Former User?
          A Former User @dc42
          last edited by

          @dc42 FOUND THE CAUSE OF THE BUG 😄

          This is ZPROBE.IN in beta10 (bltouch disconnected)

          34b3b580-bc57-4f8a-908d-2ffea12884f3-image.png

          as you can see ~3V with some ugly 50Hz garbage that should not interfere

          but this is ZPROBE.IN in beta11 (bltouch disconnected)

          60c767d3-a300-4035-a997-b5be9b246698-image.png

          as you can see it's floating around 1V at 50Hz so I'd say ZPROBE.IN is HIZ at this point and there is no pullup enabled... I don't see on schematic where zprobe_in becomes zprobe_mcu, are you using external pullup or you just need to configure it as in with pullup enabled .. anyhow .. there's no pullup on zprobe.in with beta11

          dc42undefined 1 Reply Last reply Reply Quote 0
          • A Former User?
            A Former User
            last edited by

            found the zprobe_in to zprobe_mcu .. just 10k trough and 2n2 down .. so def port configuration missing 😄

            and I also found the commit that introduced the bug:

            src/Endstops/LocalZProbe.cpp:42

            https://github.com/dc42/RepRapFirmware/blame/c25d73194252791ceb479ced79ffc77b31c810fe/src/Endstops/LocalZProbe.cpp#L42

            you switched it from PinAccess::readWithPullup; to PinAccess::read;

            Nuramoriundefined 1 Reply Last reply Reply Quote 0
            • A Former User?
              A Former User
              last edited by

              This will probbly work ok with bltouch v2 or v1 as they have 0/1 output, v3/v3.1 is open drain output so it can only pull low. Not sure why you switched from readWithPullup to read, but maybe create a new probe type with pullup, or should we add external pullup if this is to remain without one on the port?

              b7c4c4fe-7b67-4c36-8584-1c94bcea4f30-image.png

              1 Reply Last reply Reply Quote 0
              • Nuramoriundefined
                Nuramori @A Former User
                last edited by Nuramori

                @smece sadly, I saw your posts 3 minutes too late :p.

                Thought my errant height map was a fluke due to a part swap. I dug a nice groove into my test spring plate (luckily I always use a sacrificial test plate whenever I change anything on the printer, hardware or software).

                Moving back to 10 brought everything back to “normal”.

                1 Reply Last reply Reply Quote 0
                • dc42undefined
                  dc42 administrators @A Former User
                  last edited by dc42

                  @smece said in RepRapFirmware 3.0beta 11 released:

                  so I'd say ZPROBE.IN is HIZ at this point and there is no pullup enabled... I don't see on schematic where zprobe_in becomes zprobe_mcu, are you using external pullup or you just need to configure it as in with pullup enabled .. anyhow .. there's no pullup on zprobe.in with beta11

                  Thanks for tracking this down. I removed implicit enabling of pullup resistors in beta 11 because it meant that you couldn't turn them off. If you want to enable the pullup resistor, you need to be explicit by using C"^zprobe.in" in your M558 command.

                  The BLTouch that I test with is the older version that drives the output high when triggered, that's why I didn't see the problem during testing.

                  I'll update the documentation to make this clear.

                  Duet WiFi hardware designer and firmware engineer
                  Please do not ask me for Duet support via PM or email, use the forum
                  http://www.escher3d.com, https://miscsolutions.wordpress.com

                  A Former User? 1 Reply Last reply Reply Quote 2
                  • A Former User?
                    A Former User @dc42
                    last edited by

                    @dc42 said in RepRapFirmware 3.0beta 11 released:

                    you need to be explicit by using C"^zprobe.in" in your M558 command.

                    Perfect, this solves the problem. Everything works ok now.

                    M558 P9 C"^zprobe.in" H5 F120 T3000 A2
                    M950 S0 C"exp.heater3"
                    G31 P100 X35 Y0 Z2.2
                    
                    1 Reply Last reply Reply Quote 0
                    • 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
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA