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

    Getting acquainted with Duet / Firmware

    Scheduled Pinned Locked Moved
    General Discussion
    2
    8
    1.0k
    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.
    • janjohundefined
      janjoh
      last edited by

      So, I have gotten to the part when my build (Quite similar to what DC42 describes in his "Precision Kossel Build") is now at the stage where the kinematics are functional and it is time to look at firmware.

      So, with sunshine in my eyes i headed over to https://configurator.reprapfirmware.org/ and i have a few questions which google does not quite help me with.

      I start with "custom."

      What should i use for "Firmware compatibility"? I am unclear about what (if any) ramifications this really has?

      "Delta Radius", While i understand the concept, the description says "Radius between the center of the bed and mid point of the tovers".
      Now, to me, the midpoint is the "physical" mid point of the towers. And that would mean that the radius would be different on a machine with 2020 profiles as opposed to 2040, 2060 or 3030, and this cannot be right. On my old pinter, this was the distans "center of joint to center of joint", which to me makes more sense.
      So, what should i really put here?

      Anyway, i went through the setup, got some config. Tried it. Homed the machine. The machine homed nicely. BUT the last step of the cycle moved the head to "full negative X". In other words, the head was pushed towards the "front" of the machine. What may have caused this?

      This is the homedelta that was generated.
      [c]; homedelta.g
      ; called to home all towers on a delta printer
      ;
      ; generated by RepRapFirmware Configuration Tool on Thu Mar 08 2018 18:57:17 GMT+0100 (W. Europe Standard Time)
      G91 ; relative positioning
      G1 S1 X405 Y405 Z405 F1800 ; move all towers to the high end stopping at the endstops (first pass)
      G1 X-5 Y-5 Z-5 F1800 S2 ; go down a few mm
      G1 S1 X10 Y10 Z10 F360 ; move all towers up once more (second pass)
      G1 Z-5 F6000 ; move down a few mm so that the nozzle can be centred
      G90 ; absolute positioning
      G1 X0 Y0 F6000 ; move X+Y to the centre[/c]

      Now, if i commented out the last line, the head stayed in the center position. So, i will assume that i have done something wrong in my initial setup of the machine?

      1 Reply Last reply Reply Quote 0
      • dc42undefined
        dc42 administrators
        last edited by

        @janjoh:

        What should i use for "Firmware compatibility"? I am unclear about what (if any) ramifications this really has?

        It only affects the responses you get when commands are sent over USB or Telnet. Set it to marlin.

        @janjoh:

        "Delta Radius", While i understand the concept, the description says "Radius between the center of the bed and mid point of the tovers".
        Now, to me, the midpoint is the "physical" mid point of the towers. And that would mean that the radius would be different on a machine with 2020 profiles as opposed to 2040, 2060 or 3030, and this cannot be right. On my old pinter, this was the distans "center of joint to center of joint", which to me makes more sense.
        So, what should i really put here?

        The description given by configtool is incorrect. I will have it corrected. The delta radius is the horizontal distance subtended by each rod, measured between joint centres, when the effector is in the centre. The exact value will be found by auto calibration, so you need only an approximate value to start with.

        @janjoh:

        Anyway, i went through the setup, got some config. Tried it. Homed the machine. The machine homed nicely. BUT the last step of the cycle moved the head to "full negative X". In other words, the head was pushed towards the "front" of the machine. What may have caused this?

        Please share your config.g file.

        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

        1 Reply Last reply Reply Quote 0
        • janjohundefined
          janjoh
          last edited by

          [[language]]
          ; Configuration file for Duet WiFi (firmware version 1.20 or newer)
          ; executed by the firmware on start-up
          ;
          ; generated by RepRapFirmware Configuration Tool on Thu Mar 08 2018 18:57:17 GMT+0100 (W. Europe Standard Time)
          
          ; General preferences
          G90                                       ; Send absolute coordinates...
          M83                                       ; ...but relative extruder moves
          M555 P1                                   ; Set firmware compatibility to look like RepRapFirmare
          M665 R225 L360.2 B125 H400                ; Set delta radius, diagonal rod length, printable radius and homed height
          M666 X0 Y0 Z0                             ; Put your endstop adjustments here, or let auto calibration find them
          
          ; Network
          M550 PFull Metal Delta                    ; Set machine name
          M552 S1                                   ; Enable network
          ;*** Access point is configured manually via M587
          M586 P0 S1                                ; Enable HTTP
          M586 P1 S0                                ; Disable FTP
          M586 P2 S0                                ; Disable Telnet
          
          ; Drives
          M569 P0 S1                                ; Drive 0 goes forwards
          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 X200 Y200 Z200 E663                   ; Set steps per mm
          M566 X1200 Y1200 Z1200 E1200              ; Set maximum instantaneous speed changes (mm/min)
          M203 X18000 Y18000 Z18000 E1200           ; Set maximum speeds (mm/min)
          M201 X1000 Y1000 Z1000 E1000              ; Set accelerations (mm/s^2)
          M906 X1000 Y1000 Z1000 E800 I30           ; Set motor currents (mA) and motor idle factor in per cent
          M84 S30                                   ; Set idle timeout
          
          ; Axis Limits
          M208 Z0 S1                                ; Set minimum Z
          
          ; Endstops
          M574 X2 Y2 S1                             ; Set active high endstops
          
          ; Z-Probe
          M558 P0 H5 F120 T6000                     ; Disable Z probe but set dive height, probe speed and travel speed
          M557 R125 S20                             ; Define mesh grid
          
          ; Heaters
          M301 H0 S1.00 P10 I0.1 D200 T0.4 W180 B30 ; Use PID on bed heater (may require further tuning)
          M305 P0 T100000 B4138 C0 R4700            ; Set thermistor + ADC parameters for heater 0
          M143 H0 S120                              ; Set temperature limit for heater 0 to 120C
          M305 P1 T100000 B4138 C0 R4700            ; Set thermistor + ADC parameters for heater 1
          M143 H1 S280                              ; Set temperature limit for heater 1 to 280C
          
          ; Fans
          M106 P0 S0.3 I0 F500 H-1                  ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
          M106 P1 S1 I0 F500 H1 T45                 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
          M106 P2 S1 I0 F500 H1 T45                 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on
          
          ; 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
          
          ; Automatic saving after power loss is not enabled
          
          ; Custom settings are not configured
          
          
          1 Reply Last reply Reply Quote 0
          • janjohundefined
            janjoh
            last edited by

            Also,

            Enable non-volatile memory
            Save print state on power failure

            I understand the "save print state….". But what is the recommendation for Duet specifically for these two? On or off?

            How often does the print state get written? I am thinking about flash-wear.

            1 Reply Last reply Reply Quote 0
            • dc42undefined
              dc42 administrators
              last edited by

              The problem is this line:

              ; Endstops
              M574 X2 Y2 S1 ; Set active high endstops

              it should be:

              M574 X2 Y2 Z2 S1 ; Set active high endstops

              What did you set the Z endstop to when you ran the configurator?

              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

              1 Reply Last reply Reply Quote 0
              • janjohundefined
                janjoh
                last edited by

                Well.. I THOUGHT i just set them all to the same. But looking at that line, I have no problem understanding what the problem is.

                Silly me. Sillier considering that i did look through it. But i must have read "S" as "Z" and not paid any attention to it.

                But, why didnt the printer keep the Z motor running and ram the endstop if the endstop was misconfigured? (Does not relaly matter i suppose, just curious)

                1 Reply Last reply Reply Quote 0
                • dc42undefined
                  dc42 administrators
                  last edited by

                  What happened was that it defaulted to assuming an endstop at the bottom of the Z axis. So it stopped the movement, but then the firmware assumed that the carriage was much lower than it really was.

                  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

                  1 Reply Last reply Reply Quote 0
                  • janjohundefined
                    janjoh
                    last edited by

                    oooh.. of course. I see the logic now.

                    Thank you! Will redo this tonight.

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