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

    Teknic motor not hitting max rpm

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    2
    2
    136
    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.
    • p8blrundefined
      p8blr
      last edited by p8blr

      I've got a Teknic CPM-SDHP-2326P-ELN servo on my X-axis and I'm only getting a max of ~1780rpm. The motor is capable of 6000rpm and I can run it at that speed in the Teknic MSP software, so the issue must be with my config file settings.

      ; Configuration file for Duet 3 MB 6XD (firmware version 3.4.1)  
      ; executed by the firmware on start-up 
      ;
      ; generated by RepRapFirmware Configuration Tool v3.3.15 on Fri Dec 09 2022 12:10:26 GMT-0600 (Central Standard Time) 
      
      ; General preferences
      M575 P1 S1 B57600                                           ; enable support for PanelDue
      G90                                                         ; send absolute coordinates...
      M83                                                         ; ...but relative extruder moves
      M550 P"My Printer"                                            ; set printer name
      
      ; Wait a moment for the CAN expansion boards to start
      G4 S2
      
      ; Network
      M552 P0.0.0.0 S1                                            ; enable network and acquire dynamic address via DHCP
      M586 P0 S1                                                  ; enable HTTP
      M586 P1 S0                                                  ; disable FTP
      M586 P2 S0                                                  ; disable Telnet
      
      ; Drive Setup
      M18                                     ; disable steppers to disable old axes config
      
      ; Drive setup
      ; TX:X:X:X Min stp pls width, stp ple interval, dir setup time, dir hold time, in microseconds
      M569 P121.0 S1 R1 T1:2:1:1              ; physical drive X
      M569 P0.0   S1 R1 T1:2:1:1              ; physical drive Y1
      M569 P0.1   S1 R1 T1:2:1:1              ; physical drive Y2
      M569 P0.2   S0 R1 T1:2:1:1              ; physical drive Z1
      M569 P0.3   S0 R1 T1:2:1:1              ; physical drive Z2
      M569 P0.4   S0 R1 T1:2:1:1              ; physical drive Z3
      M569 P0.5   S0 R1 T1:2:1:1              ; physical drive Z4
      M569 P123.0 S0 R0                       ; physical drive E0 Primary Extruder
      M569 P3.1 S1 R1                         ; physical drive E1 Mosquito 1 extruder
      M569 P3.2 S1 R1                         ; physical drive E2 Mosquito 2 extruder
      M569 P4.0 S0 R1                         ; physical drive actuator 1
      M569 P4.1 S1 R1                         ; physical drive actuator 2
      M569 P1.0 S1 R1                         ; physical drive garage door
      G4 S1                                   ; wait for drive to setup
      
      ; Drive mapping
      M584 X121.0                             ; set drive mapping for x axis
      M584 Y0.0:0.1                           ; set drive mapping for y axis
      M584 Z0.2:0.3:0.4:0.5                   ; set drive mapping for z axes
      M584 E123.0:3.1:3.2                     ; set drive mapping for extruder axes
      M584 U4.0                               ; set drive mapping for mosquito actuator 1
      M584 V4.1                               ; set drive mapping for mosquito actuator 2
      M584 W1.0                               ; set drive mapping for garage door
      G4 S1                                   ; wait for drives to be mapped to letters
      
      ; Drive config
      M350 E16:16:16 U1 V1 W1                               ; configure microstepping with interpolation
      M92 X128 Y128 Z12800 E224.6:410:410 U200 V200 W128 ; set steps per mm
      M566 X900.00 Y900.00 Z60.00 E120:120:120 U900 V900 W120 P1      ; set maximum instantaneous speed changes (mm/min)
      M203 X42000 Y76050 Z1750 E9000:1200:1200 U6000 V6000 W100       ; set maximum speeds (mm/min)
      M201 X25635 Y19770 Z8209 E3000:3000:3000 U200 V200 W250     ; set accelerations (mm/s^2)
      M906 E2700:600:600 U400 V400 W800 I30            ; set motor currents (mA) and motor idle factor in per cent
      M84 S30                                         ; Set idle timeout
      
      ; Brakes
      M569.7 P0.2 C"out3" S100               ; driver 2 on board 6XD uses port out3 to control the brake
      M569.7 P0.3 C"out4" S100               ; driver 3 on board 6XD uses port out4 to control the brake
      M569.7 P0.4 C"out5" S100               ; driver 4 on board 6XD uses port out5 to control the brake
      M569.7 P0.5 C"out6" S100               ; driver 5 on board 6XD uses port out6 to control the brake
      
      ; Endstops
      M574 X1 S1 P"3.io0.in"                   ; configure switch-type (e.g. microswitch) endstop for low end on X via pin 3.io0.in
      M574 Y1 S1 P"0.io1.in"                   ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin io1.in
      M574 Z1 S2                               ; configure Z-probe endstop for low end on Z
      M574 U1 S1 P"3.!io3.in"                  ; configure actuator 1 endstop, high end, microswitch
      M574 V1 S1 P"3.!io5.in"                  ; configure actuator 2 endstop, high end, microswitch
      M574 W1 S1 P"0.io7.in"                   ; configure garage door endstop, low end, microswitch
      
      ; Hobby Servos
      M950 S0 C"3.io1.out"					  ; create servo 1 output on 3.io2 for mosquito acutator 1
      M950 S1 C"3.io4.out"					  ; create servo 1 output on 3.io3 for mosquito acutator 2
      
      
      ;Bed Leveling
      M671 X-405.7848:1541.3704:1541.3704:-405.7848 Y-226.27405:-226.27405:1472.34965:1472.34965 S1 P5 F1 ;Define Z screw X Y locations, max correction, pitch, fudge factor
      
      ; Axis Limits
      M208 X0 Y0 Z0 U0 V0 W0 S1                                            ; set axis minima
      M208 X1211 Y1197 Z1200 U17 V17 W100 S0                               ; set axis maxima
      
      ; Z-Probe
      ; servo pin defined in fan accessories section              ; create servo pin for BLTouch
      M558 P8 C"0.io8.in" H5 F120:12 T6000                        ; set Z probe type and the dive height + speeds
      G31 P500 X0 Y0 Z2.5                                         ; set Z probe trigger value, offset and trigger height
      M557 X0:1200 Y0:1200 P10:10                                 ; define mesh grid
      
      ; Heaters
      M308 S0 P"0.temp0" Y"thermistor" A"Bed" T100000 B4725 C7.06e-8          ; configure bed sensor 0 as thermistor on pin temp0
      M950 H0 C"0.out0" T0                                                    ; create bed heater output on out0 and map it to sensor 0
      M307 H0 B0 S1.00                                                      ; disable bang-bang for bed and set pwm
      M140 P0 H0 S0 R0                                                      ; bed heater 0 uses heater 0
      M143 H0 S255 P0 T0 A2 C0                                              ; Max heater temp: Heater number, max temp, monitor number, sensor number, action, condition
      
      M308 S1 P"0.temp1" Y"thermistor" A"Chamber" T100000 B4725 C7.06e-8      ; configure chamber sensor 1 as thermistor on pin temp1
      M950 H1 C"0.out1" T1                                                    ; create chamber heater output on out1 and map it to sensor 1
      M307 H1 B0 S1.00                                                      ; disable bang-bang for chamber and set pwm
      M141 P0 H1 S0 R0                                                      ; chamber heater 1 uses heater 1
      M143 H1 S255 P0 T1 A2 C0                                              ; Max heater temp: Heater number, max temp, monitor number, sensor number, action, condition
      
      M308 S2 P"3.spi.cs0" Y"rtd-max31865" A"Primary Top"                    ; configure Primary sensor top as PT100 on pin spi.cs0
      M950 H2 C"3.out6" T2                                                  ; create Primary heater output on out3 and map it to sensor 2
      M307 H2 A940 C810 D22 S1.0 B0                                                      ; disable bang-bang for Primary and set pwm
      M143 H2 S480 P0 T2 A2 C0                                              ; Max heater temp: Heater number, max temp, monitor number, sensor number, action, condition
      
      M308 S3 P"3.spi.cs1" Y"rtd-max31865" A"Primary Middle"                 ; configure Primary sensor bottom as PT100 on pin spi.cs1
      M950 H3 C"3.out7" T3                                                  ; create Primary heater output on out4 and map it to sensor 3
      M307 H3 A940 C810 D22 S1.0 B0                                                      ; disable bang-bang for Primary and set pwm
      M143 H3 S480 P0 T3 A2 C0                                              ; Max heater temp: Heater number, max temp, monitor number, sensor number, action, condition
      
      M308 S4 P"4.spi.cs0" Y"rtd-max31865" A"Primary Nozzle"                 ; configure Primary sensor nozzle as PT100 on pin spi.cs0
      M950 H4 C"4.out8" T4                                                  ; create Primary heater output on out0 and map it to sensor 4
      M307 H4 A795 C920 D10 S1.0 B0                                                      ; disable bang-bang for Primary and set pwm
      M143 H4 S480 P0 T4 A2 C0                                              ; Max heater temp: Heater number, max temp, monitor number, sensor number, action, condition
      
      M308 S5 P"3.temp0" Y"PT1000" A"Mosquito 1A"                           ; configure mosquito 1 sensor A as PT1000 on pin temp0
      M950 H5 C"3.out0" T5                                                  ; create mosquito heater output on out0 and map it to sensor 5
      M307 H5 B0 S1.00                                                      ; disable bang-bang for Primary and set pwm
      M143 H5 S505 P0 T5 A2 C0                                              ; Max heater temp: Heater number, max temp, monitor number, sensor number, action, condition;
      
      M308 S6 P"3.temp1" Y"PT1000" A"Mosquito 1B"                           ; configure mosquito 1 sensor B as PT1000 on pin temp1;
      M950 H6 C"3.out1" T6                                                  ; create mosquito heater output on out1 and map it to sensor 6
      M307 H6 B0 S1.00                                                      ; disable bang-bang for Primary and set pwm
      M143 H6 S505 P0 T6 A2 C0                                              ; Max heater temp: Heater number, max temp, monitor number, sensor number, action, condition
      
      M308 S7 P"4.temp0" Y"PT1000" A"Mosquito 2A"                           ; configure mosquito 2 sensor A as PT1000 on pin temp2
      M950 H7 C"4.out0" T7                                                  ; create mosquito heater output on out2 and map it to sensor 7
      M307 H7 B0 S1.00                                                      ; disable bang-bang for Primary and set pwm
      M143 H7 S505 P0 T7 A2 C0                                              ; Max heater temp: Heater number, max temp, monitor number, sensor number, action, condition
      
      M308 S8 P"4.temp1" Y"PT1000" A"Mosquito 2B"                           ; configure mosquito 2 sensor B as PT1000 on pin tem;p0
      M950 H8 C"4.out1" T8                                                  ; create mosquito heater output on out0 and map it to sensor 8
      M307 H8 B0 S1.00                                                      ; disable bang-bang for Primary and set pwm
      M143 H8 S505 P0 T8 A2 C0                                              ; Max heater temp: Heater number, max temp, monitor number, sensor number, action, condition
      
      ; Heater Faults
      M570 H2 P1000 T15 R10
      M570 H3 P1000 T15 R10
      M570 H4 P1000 T15 R10
      
      ; Accessories
      M950 F0 C"0.out7"                       ; create chassis fan 0 on relay
      M106 P0 S0 H-1 C"Chassis Fan"           ; set fan 0 value, thermostatic control off
      
      M950 F1 C"0.out8"                       ; create chamber fan 1 on relay
      M106 P1 S0 H1 T30 C"Chamber Fan"        ; set fan 1 value, thermostatic control from sensor 1
      
      M950 F2 C"0.out2"                         ; create Primary pc fan 2
      M106 P2 S0 H-1 C"Primary PC Fan"         ; set fan 2 value, thermostatic control off
      
      M950 F3 C"1.out1"                         ; create mosquito pc fan 3
      M106 P3 S0 H-1 C"Mosquito PC Fan"       ; set fan 3 value, thermostatic control off
      
      M950 F4 C"1.out2"                       ; create bed vac valve 1
      M106 P4 S0 H-1 C"Vacuum Zone 1"         ; set fan 5 value, thermostatic control off
      
      M950 F5 C"2.out0"                       ; create bed vac valve 2
      M106 P5 S0 H-1 C"Vacuum Zone 2"         ; set fan 5 value, thermostatic control off
      
      M950 F6 C"2.out1"                       ; create bed vac valve 3
      M106 P6 S0 H-1 C"Vacuum Zone 3"         ; set fan 5 value, thermostatic control off
      
      M950 F7 C"2.out2"                       ; create bed vac valve 4
      M106 P7 S0 H-1 C"Vacuum Zone 4"         ; set fan 5 value, thermostatic control off
      
      M950 F8 C"1.out3"                       ; create door locks on relay
      M106 P8 S0 H1 T65 C"Door Locks"         ; set fan 5 value, thermostatic control on
      
      M950 F9 C"2.out4"                       ; create radiator on relay
      M106 P9 S1 H2:3:4:5:6:7:8 T45 C"Radiator Fans"      ; set fan 8 value, thermostatic control on
      
      M950 F10 C"1.out4"                      ; create probe on relay
      M106 P10 S0 H-1 C"Probe Solenoid"
      
      M950 F11 C"1.out0"                      ; create venturi valve
      M106 P11 S0 H-1 C"Venturi"              ; set fan 11 value, thermostatic control off
      
      M950 F12 C"4.out6"                      ; create head electronics fan
      M106 P12 S255 H-1 C"Head Elec Fan 1"              ; set fan 12 value, thermostatic control off
      
      M950 F13 C"4.out7"                      ; create head electronics fan
      M106 P13 S255 H-1 C"Head Elec Fan 2"              ; set fan 12 value, thermostatic control off
      
      ; Trigger Inputs
      M950 J0 C"1.io0.in"                     ; assign input j0 to 1.io0.in for right door lock status
      M581 P0 T0 S0 R1                        ; configure external trigger, pin 0, trigger 0, active-inactive, during print
      
      M950 J1 C"1.io1.in"                     ; assign input j1 to 1.io1.in for left door lock status
      M581 P1 T1 S0 R1                        ; configure external trigger, pin 1, trigger 1, active-inactive, during print
      
      M950 J2 C"1.io2.in"                     ; assign input j2 to 1.io2.in for front door lock status
      M581 P2 T2 S0 R1                        ; configure external trigger, pin 2, trigger 2, active-inactive, during print
      
      M950 J3 C"1.io3.in"                     ; assign input j3 to 1.io3.in for right door open status
      M581 P3 T3 S0 R1                        ; configure external trigger, pin 3, trigger 3, active-inactive, during print
      
      M950 J4 C"1.io4.in"                     ; assign input j4 to 1.io3.in for left door open status
      M581 P4 T4 S0 R1                        ; configure external trigger, pin 4, trigger 4, active-inactive, during print
      
      M950 J5 C"1.io5.in"                     ; assign input j5 to 1.io5.in for front door open status
      M581 P5 T5 S0 R1                        ; configure external trigger, pin 5, trigger 5, active-inactive, during print
      
      M950 J6 C"3.io2.in"                     ; assign input j6 to 3.io2.in for pellet hopper status
      M581 P6 T6 S1 R1                        ; configure external trigger, pin 6, trigger 6, active-inactive, during print
      M581 P6 T7 S0 R0                        ; configure external trigger, pin 6, trigger 6, inactive-active, any time
      
      ; Tools
      M563 P0 S"Primary" D0 H2:3:4 F2      ; define tool 0 as Primary, extruder 0, Heaters 2 3 4, Fan 2
      G10 P0 R0 S0                        ; set tool 0 active and standby temperatures to 0C
      G10 P0 X0 Y0 Z0 U0 V0 W0            ; set tool 0 axis offests
      
      M563 P1 S"Mosquito 1" D1 H5:6 F3    ; define tool 1 as Mosquito 1, extruder 1, Heaters 5 6, Fan 3
      G10 P1 R0 S0                        ; set tool 1 active and standby temperatures to 0C
      G10 P1 X0 Y0 Z0 U17 V0 W0           ; set tool 1 axis offests
      
      M563 P2 S"Mosquito 2" D2 H7:8 F3    ; define tool 2 as Mosquito 1, extruder 1, Heaters 7 8, Fan 3
      G10 P2 R0 S0                        ; set tool 2 active and standby temperatures to 0C
      G10 P2 X0 Y0 Z0 U0 V17 W0           ; set tool 2 axis offests
      
      ; Custom settings are not defined
      
      ; Miscellaneous
      T0                                                          ; select first tool
      M106 P0 S255						; chassis fans on
      
      ```CPM-SDHP-2326P-ELN
      chrishammundefined 1 Reply Last reply Reply Quote 0
      • chrishammundefined
        chrishamm administrators @p8blr
        last edited by

        @p8blr What firmware versions are you using, is your mainboard and 1XD on v3.4.5? At maximum X speed you'd generate ~90k steps/s which should be just doable by the 1XD.

        Duet software engineer

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