Configuring Ultimaker



  • I have difficulties configuring the firmware for my Ultimaker Original.
    I'm having the following issues:

    • X axis moves, but not very smoothly
    • Y, Z ad E axes do not move at all
    • Temprature sensor for Hotend (PT100) shows "Error"
    • Temprature sensor for Heated Bed shows way to high temperature => 96.x degrees celcius instead of like 25.x degrees

    I haven't configured the endstops yet, but this moment I'm using 3 mechanical endstops for x,y,z.

    I've used the configuration for the BigBox from here: https://forum.e3d-online.com/index.php?threads/bigbox-duetwifi-controller.1766/
    My configuration looks like this

    [[language]]
    ; Configuration file for Ultimaker
    
    ; Communication and general
    M111 S0                                 ; Debug off
    M550 PUltimaker            ; Machine name and Netbios name (can be anything you like)
    M551 Preprap                           ; Machine password (used for FTP)
    ;*** If you have more than one Duet on your network, they must all have different MAC addresses, so change the last digits
    M540 P0xBE:0xEF:0xDE:0xAD:0xFE:0xED     ; MAC Address
    ;*** Wifi Networking
    M552 S1                ; Enable WiFi
    
    M555 P2                               ; Set output to look like Marlin
    M575 P1 B57600 S1        ; Comms parameters for PanelDue
    ; Movement section
    M569 P0 S1                          ; Drive 0 goes forwards (change to S0 to reverse it)
    M569 P1 S1                          ; Drive 1 goes forwards
    M569 P2 S1                          ; Drive 2 goes forwards
    M569 P3 S1                          ; Drive 3 goes forwards
    M569 P4 S1                          ; Drive 4 goes forwards
    M574 X1 Y1 Z1.2 S1                    ; set endstop configuration (X and Y endstops only, at low end, active high)
    M906 X800 Y600 Z800 E1000           ; Set motor currents (mA)
    M201 X9000 Y9000 Z1000 E10000            ; Accelerations (mm/s^2)
    M203 X15000 Y15000 Z100 E3600       ; Maximum speeds (mm/min)
    M566 X500 Y500 Z5 E25              ; Minimum speeds mm/minute
    M208 X210 Y210 Z200                    ; set axis maxima (adjust to suit your machine)
    M208 X0 Y0 Z-0.2 S1                    ; set axis minimum (adjust to make X=0 and Y=0 the edge of the bed)
    M92 X160 Y360 Z1600                    ; Set axis steps/mm
    M92 E304:304                           ; Set extruder steps per mm
    G21                                 ; Work in millimetres
    G90                                 ; Send absolute coordinates...
    M83                                 ; ...but relative extruder moves
    M350 X16 Y16 E16 I1               ; Set 16x microstepping with interpolation
    
    ; Z probe section
    M558 P1 X0 Y0 Z1 H3 F200 T5000        ; Smart IR Z probe, used for homing Z axis, dive height 3mm, probe speed 200mm/min, travel speed 5000mm/min
    G31 X11.0 Y0.5 Z1.65 P500           ; Set the probe height and threshold (put your own values here)
    
    ; Heater and thermistor section
    ;*** If you have a Duet board with 1K thermistor series resistors, change R4700 to R1000 to the following M305 commands
    M305 P0 T100000 B4388 R4700 H30 L0    ; Put your own H and/or L values here to set the bed thermistor ADC correction
    M305 P1 T100000 B4388 R4700 H30 L0    ; Put your own H and/or L values here to set the first nozzle thermistor ADC correction
    M305 P2 R4700 H0 L0                    ; Put your own H and/or L values here to set the second nozzle thermistor ADC correction
    M301 H1 P10 I0.10 D100 T0.50 S1.0    ; PID settings for extruder 0
    M301 H2 P10 I0.10 D100 T0.50 S1.0    ; PID settings for extruder 1
    M570 S120                            ; Increase to allow extra heating time if needed
    M106 F10 ; Fix for Bigbox Blower
    
    ; Tool definition section
    M563 P0 D0 H1                       ; Define tool 0 to use extruder drive 0 and heater 1
    G10 P0 S0 R0                        ; Set tool 0 operating and standby temperatures
    ;*** If you have a dual-nozzle build, un-comment the following 2 lines
    ;M563 P1 D1 H2                      ; Define tool 1
    ;G10 P1 S0 R0                       ; Set tool 1 operating and standby temperatures
    
    ; Bed probe section (not needed if you use a bed.g file)
    ;*** Adjust the XY coordinates in the following M557 commands to suit your build and the position of your Z probe
    M557 P0 X60 Y0                      ; Four...
    M557 P1 X60 Y165                    ; ...probe points...
    M557 P2 X200 Y165                   ; ...for bed...
    M557 P3 X200 Y0                     ; ...levelling
    ;M557 P4 X141 Y82.5                 ; 5th probe point for levelling (un-comment this to get a 5th point at the centre of the bed)
    
    ; Epilogue
    ;*** If you are using axis compensation, put the figures in the following command
    M556 S78 X0 Y0 Z0                   ; Axis compensation here
    T0
    
    

    Can ayone help me?



  • Well I'm not familiar with your particular machine but here are a few observations.

    If as you say, you are using mechanical end stops for all 3 axes, then your M574 should read X1 Y1 Z1 S1 not Z1.2 (that's assuming your stops are all active high). You probably ought to comment out the Z probe section too.

    Your axis maxima (the first M208) should have S0 at the end. That's maybe why they aren't moving.

    I'd have thought you ought to have Z0 for your axis minimum instead of Z-0.2 (your second M208) -unless there is some reason for it that I can't fathom.

    Your bed heater (M305 P0) has a high ADC offset of 30, try setting this to 0. This is assuming he heated bed uses a thermistor

    To use a PT 100 on you hot end, you need to use M305 P1 X200 ;(1st channel is X200 2nd channel is X201). If you have a PT 100 on your bed, it too would need to be configured using M305 P0 Xnnn

    What version of firmware are you running? I may have got this wring - DC will correct me but I think if it's 1.15 or later you ought to be using M307, not M301.

    Your E axis won't run until you get the hot end up to temperature - (i.e fix the pt 100 thing) unless you use M302 to allow cold extrudes.

    HTH

    Ian



  • Well i add S0 to the maxima config with M208, but i still have the same issue. The x motor has quite loud noise and moves, the y motor has low noise but does not move and the z motor has no noise and does not move.

    I also have added M305 P1 X200. But now my Temperature stays at 2000 degrees, event when i disconnect the PT100 from the daugther board. Is the connection for 2-wired PT100's really correct in documentation: Use pin 2,3 and brige 1 and 4? It states that 1 and 4 supply power to the sensor and voltage is measured between 2 and 3.


  • administrators

    @CoolM8:

    Is the connection for 2-wired PT100's really correct in documentation: Use pin 2,3 and brige 1 and 4? It states that 1 and 4 supply power to the sensor and voltage is measured between 2 and 3.

    No, it says bridge 1 and 2, bridge 3 and 4, and connect the sensor between 2 and 3.

    Concerning your config.g file, the values for the BigBox are almost certainly not suitable for your Ultimaker. For example, your X and Y steps/mm in the M92 commands are very high (80 steps/mm is more typical) and your accelerations in the M203 commands are very high (try 1000 for X and Y and 20 for Z until you know what the machine can do). I suggest you research the hardware details more so that you know the correct values to put in config.g.


  • administrators

    PS - you could use the config tool at reprapfirmware.org to generate your config.g and homing files.



  • Well im slowly getting there. I've used the config tool at reprapfirmware.org but im still not sure how the marlin configuration applies to duet configuration, especially the minimum speed, the acceleration and the current settings.

    I now can move the x-axis pretty much smoothly at +/- 10 (even it starts to make a noise after some traveling and it slows down). The behavior on the y-axis is similar but a bit more worse than x. At +/- 100 the behavior gets even more worse.
    Still no luck with the z-axis.

    I keep trying, i know i will get there some time.

    Here is my current config.g:

    [[language]]
    ; Configuration file for Duet WiFi
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool on Thu Nov 17 2016 19:49:26 GMT+0100 (W. Europe Standard Time)
    
    ; 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
    M208 X0 Y0 Z0 S1 ; Set axis minima
    M208 X210 Y210 Z205 S0 ; Set axis maxima
    
    ; Endstops
    M574 X1 Y1 Z1 S1 ; Define active high microswitches
    M558 P0 X0 Y0 Z0 H5 F120 T6000 ; Set Z probe type to switch, the axes for which it is used and the probe + travel speeds
    G31 P600 X0 Y0 Z2.5 ; 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 S0 ; Drive 2 goes forwards
    M569 P3 S1 ; Drive 3 goes forwards
    M569 P4 S1 ; Drive 4 goes forwards
    M350 X16 Y16 Z16 E16:16 I1 ; Configure microstepping with interpolation
    M92 X78.7402 Y78.7402 Z200 E420:420 ; Set steps per mm
    M566 X900 Y900 Z12 E836:836 ; Set maximum instantaneous speed changes (mm/min)
    M203 X9000 Y9000 Z100 E1200:1200 ; Set maximum speeds (mm/min)
    M201 X3000 Y3000 Z100 E10000:10000 ; Set accelerations (mm/s^2)
    M906 X800 Y800 Z800 E800:800 I30 ; Set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout
    
    ; Heaters
    M143 S310 ; Set maximum heater temperature to 310C
    M301 H0 S1.00 P10 I0.1 D200 T0.4 W180 B30 ; Use PID on bed heater (may require further tuning)
    M305 P0 T10000 B3988 C0 R4700 L0 H0 ; Set thermistor + ADC parameters for heater 0
    M305 P1 T100000 B4138 C0 R4700 L0 H0 X201 ; Set thermistor + ADC parameters for heater 1 and remap it to channel 201
    
    ; Tools
    M563 P0 D1 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
    
    ; Network
    M550 PUltimaker ; Set machine name
    M552 P0.0.0.0 S1 ; Enable network and acquire dynamic address via DHCP
    
    ; Fans
    M106 P0 S1 I0 F500 H1 T45 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P1 S1 I0 F500 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P2 S1 I0 F500 H-1 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned off
    
    ; Custom settings are not configured
    
    

    The marlin reference I'm using and what worked on my original electronics is this: https://github.com/AmedeeBulle/Marlin/blob/Marlin_UMO_Unified/Marlin/Configuration.h


  • administrators

    It looks to me that you have copied most of the settings correctly from that Marlin config file into the config tool, assuming you have made the correct choice of the HBK or not and GT2 or not variant. You appear to have assumed HBK but not GT2.

    RRF doesn't have minimum speeds, so nothing to do there. Your accelerations look OK to me.

    Regarding motor currents, do the motors have part number labels on them? If so then I suggest you look them up to find the rated current. Then set the currents to between 50% and 85% of the rated current.

    Does the machine have 1 Z motor or 2? If just 1, dou you have the two jumpers in the ZB connector?



  • I have the following motors: SY42STH33-1334A and their rated current is 1.33A, configured I have 0.75A.

    Could it be that there is an issue with the connection of the motors? I have one Z-motor and there were already jumbers in the ZB connector. The only thing was, that the pins were bent backwards in ZA connector from the shippment. And Yes, i have a Heated Bed on my UMO, but it is self made and not that one from UMO+.
    Furthermore, i still have MXL and not GT2.

    I'have changed some things in the config, but i still have the motor issues on the X and Y axis. Funny is, that when Y is almost at 0 then X +/- 100 runs almost smoothely. With the current config i can hear the Z-axis motor starting to work but it seems to me that it has not enough power to lift the Bed.
    Note, with the current config Homing works for X and Y.

    [[language]]
    ; Configuration file for Duet WiFi
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool on Thu Nov 17 2016 21:40:07 GMT+0100 (W. Europe Standard Time)
    
    ; 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
    M208 X0 Y0 Z0 S1 ; Set axis minima
    M208 X210 Y210 Z205 S0 ; Set axis maxima
    
    ; Endstops
    M574 X1 Y1 Z1 S0 ; Define active low and unused microswitches
    M558 P0 X0 Y0 Z0 H5 F120 T6000 ; Set Z probe type to switch, the axes for which it is used and the probe + travel speeds
    G31 P600 X0 Y0 Z2.5 ; Set Z probe trigger value, offset and trigger height
    
    ; Drives
    M569 P0 S0 ; Drive 0 goes backwards
    M569 P1 S1 ; Drive 1 goes forwards
    M569 P2 S0 ; Drive 2 goes backwards
    M569 P3 S1 ; Drive 3 goes forwards
    M569 P4 S1 ; Drive 4 goes forwards
    M350 X32 Y32 E16:16 I0 ; Configure microstepping without interpolation
    M350 Z16 I1 ; Configure microstepping with interpolation
    M92 X157.4804 Y157.4804 Z200 E420:420 ; Set steps per mm
    M566 X1200 Y1200 Z24 E120:120 ; Set maximum instantaneous speed changes (mm/min)
    M203 X8100 Y8100 Z8100 E1200:1200 ; Set maximum speeds (mm/min)
    M201 X3000 Y3000 Z3000 E250:250 ; Set accelerations (mm/s^2)
    M906 X750 Y750 Z750 E800:800 I30 ; Set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout
    
    ; Heaters
    M143 S310 ; Set maximum heater temperature to 310C
    M301 H0 S1.00 P10 I0.1 D200 T0.4 W180 B30 ; Use PID on bed heater (may require further tuning)
    M305 P0 T10000 B3988 C0 R4700 L0 H0 ; Set thermistor + ADC parameters for heater 0
    M305 P1 T100000 B4138 C0 R4700 L0 H0 X201 ; Set thermistor + ADC parameters for heater 1 and remap it to channel 201
    
    ; Tools
    M563 P0 D1 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
    
    ; Network
    M550 PUltimaker ; Set machine name
    M552 P0.0.0.0 S1 ; Enable network and acquire dynamic address via DHCP
    
    ; Fans
    M106 P0 S1 I0 F500 H1 T45 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P1 S1 I0 F500 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P2 S1 I0 F500 H-1 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned off
    
    ; Custom settings are not configured
    
    

    Im going to continue tomorrow, but thanks so far for the quick help.


  • administrators

    If X runs smoothly at some Y settings but not others, that suggests a mechanical issue. With power off, how smoothly does the mechanism move, if you move the head around slowly by hand?

    Your 750mA current is rather low and on the Duet WiFi it gets rounded down to 700mA. Try 1000mA.

    Do you definitely have the correct Z steps/mm? The HBK and non HBK versions have different Z steps/mm in the Marlin config file.



  • Ok it's getting better:
    The x-axis moves all fine now, the y-xis, having the same config, moves almost fine (it only has some issues in one direction: front to back, when moving at +100 it gets stuttering near the end. The other way around works just fine.

    Still no luck with Z, i've wrongly used 200.0 for the steps but since it is not HBK it should be at 533.3333. So i roundet it to 535. But i'm still not abele to move the bed at all.

    My current config:

    [[language]]
    ; Configuration file for Duet WiFi
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool on Thu Nov 17 2016 21:40:07 GMT+0100 (W. Europe Standard Time)
    
    ; 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
    M208 X0 Y0 Z0 S1 ; Set axis minima
    M208 X210 Y210 Z205 S0 ; Set axis maxima
    
    ; Endstops
    M574 X1 Y1 Z1 S0 ; Define active low and unused microswitches
    M558 P0 X0 Y0 Z0 H5 F120 T6000 ; Set Z probe type to switch, the axes for which it is used and the probe + travel speeds
    G31 P600 X0 Y0 Z2.5 ; Set Z probe trigger value, offset and trigger height
    
    ; Drives
    M569 P0 S0 ; Drive 0 goes backwards
    M569 P1 S1 ; Drive 1 goes forwards
    M569 P2 S0 ; Drive 2 goes backwards
    M569 P3 S1 ; Drive 3 goes forwards
    M569 P4 S1 ; Drive 4 goes forwards
    M350 X16 Y16 E16:16 I0 ; Configure microstepping without interpolation
    M350 Z16 I1 ; Configure microstepping with interpolation
    M92 X78.7402 Y78.7402 Z535 E420:420 ; Set steps per mm
    M566 X1200 Y1200 Z24 E120:120 ; Set maximum instantaneous speed changes (mm/min)
    M203 X8100 Y8100 Z8100 E1200:1200 ; Set maximum speeds (mm/min)
    M201 X3000 Y3000 Z3000 E250:250 ; Set accelerations (mm/s^2)
    M906 X1000 Y1000 Z1000 E800:800 I30 ; Set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout
    
    ; Heaters
    M143 S310 ; Set maximum heater temperature to 310C
    M301 H0 S1.00 P10 I0.1 D200 T0.4 W180 B30 ; Use PID on bed heater (may require further tuning)
    M305 P0 T10000 B3988 C0 R4700 L0 H0 ; Set thermistor + ADC parameters for heater 0
    M305 P1 T100000 B4138 C0 R4700 L0 H0 X201 ; Set thermistor + ADC parameters for heater 1 and remap it to channel 201
    
    ; Tools
    M563 P0 D1 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
    
    ; Network
    M550 PUltimaker ; Set machine name
    M552 P0.0.0.0 S1 ; Enable network and acquire dynamic address via DHCP
    
    ; Fans
    M106 P0 S1 I0 F500 H1 T45 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P1 S1 I0 F500 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P2 S1 I0 F500 H-1 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned off
    
    ; Custom settings are not configured
    
    


  • Awesome, the Z-axis is working fine now. So only the slight issue in the Y -axis persists, as described before. I'm going to move now to the extrudes and the temperature sensore.



  • For the Y axis, if you haven't already, make sure to lubricate the copper bushings (utlimaker style iirc). Also make sure there isn't some mechanical interference - stuttering is usually the stepper skipping, which means the stepper is trying to move but can not move the part. It looks like your steps/mm is correct for the system you're on (well, close to 80 or so). Potentially, you could try moving to 32x microstepping and doubling the steps/mm - This will cause you to lose a bit of holding force - meaning the axis will stop easier if there is indeed something causing a mechanical stop and help you pinpoint where that could be. Alternatively, your steps/mm is off for Y (shouldn't be - should be same as X) and if you really wanted to, you could take out a caliper/micrometer and do the following process:

    Have the duetwifi move the Y axis 10mm
    measure how far it really went
    measured/10mm = newssteps/oldsteps is the formula you would use, and solve for newsteps … newsteps = oldsteps*(measured/10mm)


  • administrators

    I really don't recommend using the calliper method to set steps/mm for any axis other than an extruder. You can use them to diagnose if the steps/mm are set wrong (possibly, depends on how wrong) but to set them the reliable method is to calculate them based on the stepper motor microsteps/rotation, and any gearing you get from belts/pulleys or leadscrews.



  • Sorry to revive a dead thread but did you get it all working nicely in the end @CoolM8. I am nearing the end of my build and am readying myself to start the firmware side of it.


Log in to reply