Strange bug: Hot-end temp drops during tramming



  • Here's a video of it happening.
    https://youtu.be/GU5kOmrDL9Q

    Here's my tramming g-code.

    ;File     : bltouch-bed.g
    ;Effect   : 4 point bed homing for the Bl-touch and magnetic bed, probing between magnets.
    ;Use-case : The BL-touch is affected by magnets. This 4 point bed.g was created by Robert Hendricks to probe points in the nulls in the magnetic field.
    ;         : remove/rename the original bed.g and rename this file to 'bed.g' to activate.
    
    M561 ; clear any existing bed transform
    G30 P0 X50.5 Y70 Z-99999 ; define 4 points in a clockwise direction around the bed, starting near (0,0)
    G30 P1 X50.5 Y255.9 Z-99999
    G30 P2 X273.9 Y255.9 Z-99999
    G30 P3 X273.9 Y70 Z-99999 S3
    G1 X0 Y0 F5000
    

    M122

    === Diagnostics ===
    RepRapFirmware for Duet 2 WiFi/Ethernet version 2.05 running on Duet Ethernet 1.02 or later + DueX5
    Board ID: 08DGM-917DA-G4MS8-6J9DJ-3SD6M-KVSVA
    Used output buffers: 7 of 24 (23 max)
    === RTOS ===
    Static ram: 25712
    Dynamic ram: 93700 of which 12 recycled
    Exception stack ram used: 544
    Never used ram: 11104
    Tasks: NETWORK(ready,580) HEAT(blocked,1176) DUEX(suspended,160) MAIN(running,1300) IDLE(ready,160)
    Owned mutexes:
    === Platform ===
    Last reset 16:40:28 ago, cause: power up
    Last software reset at 2020-02-02 22:31, reason: User, spinning module GCodes, available RAM 11376 bytes (slot 0)
    Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0441f000 BFAR 0xe000ed38 SP 0xffffffff Task 0x4e49414d
    Error status: 0
    Free file entries: 9
    SD card 0 detected, interface speed: 20.0MBytes/sec
    SD card longest block write time: 84.6ms, max retries 0
    MCU temperature: min 23.6, current 39.7, max 43.3
    Supply voltage: min 23.9, current 24.0, max 24.2, under voltage events: 0, over voltage events: 0, power good: yes
    Driver 0: standstill, SG min/max 0/1023
    Driver 1: standstill, SG min/max 0/1023
    Driver 2: standstill, SG min/max not available
    Driver 3: standstill, SG min/max 0/244
    Driver 4: standstill, SG min/max 0/1023
    Driver 5: standstill, SG min/max 0/1023
    Driver 6: standstill, SG min/max 0/1023
    Driver 7: standstill, SG min/max 0/1023
    Driver 8: standstill, SG min/max not available
    Driver 9: standstill, SG min/max not available
    Date/time: 2020-02-04 12:00:44
    Cache data hit count 4294967295
    Slowest loop: 169.02ms; fastest: 0.07ms
    I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
    === Move ===
    Hiccups: 0, FreeDm: 160, MinFreeDm: 104, MaxWait: 21605969ms
    Bed compensation in use: none, comp offset 0.000
    === DDARing ===
    Scheduled moves: 39, completed moves: 39, StepErrors: 0, LaErrors: 0, Underruns: 0, 0
    === Heat ===
    Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1
    Heater 0 is on, I-accum = 0.2
    Heater 2 is on, I-accum = 0.7
    === GCodes ===
    Segments left: 0
    Stack records: 3 allocated, 0 in use
    Movement lock held by null
    http is idle in state(s) 0
    telnet is idle in state(s) 0
    file is idle in state(s) 0
    serial is idle in state(s) 0
    aux is idle in state(s) 0
    daemon is idle in state(s) 0
    queue is idle in state(s) 0
    autopause is idle in state(s) 0
    Code queue is empty.
    === Network ===
    Slowest loop: 183.35ms; fastest: 0.02ms
    Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0)
    HTTP sessions: 1 of 8
    Interface state 5, link 100Mbps full duplex
    

    config.g

    ; Configuration file for RailcoreII 300ZL Series Printers
    ; Do NOT change this file. All customizations should occur in config-user.g
    
    ; Debugging
    M111 S0                                 ; Debug off
    M929 P"eventlog.txt" S1                 ; Start logging to file eventlog.txt
    M550 P"RailCore"                        ; Machine name and Netbios name (can be anything you like)
    
    M552 S1 P192.168.1.201                          ; Use DHCP
    
    ; General preferences
    M555 P2                                 ; Set output to look like Marlin
    M575 P1 B57600 S1                       ; Comms parameters for PanelDue
    G21                                     ; Work in millimetres
    G90                                     ; Send absolute coordinates...
    M83                                     ; ...but relative extruder moves
    
    ; Axis and motor configuration
    M669 K1                                 ; CoreXY mode
    
    ; Drives
    M584 X0 Y1 Z5:6:7 E3:4:8:9; U5 V6 W7  ; Map Z to drivers 5, 6, 7. Define unused drivers 3,4,8 and 9 as extruders
    M569 P0 S0                  ; Drive 0 goes forwards (change to S0 to reverse it)| X stepper
    M569 P1 S1                  ; Drive 1 goes backwards(change to S1 to reverse it)| Y Stepper
    M569 P2 S1                  ; Drive 2 goes forwards                             | Unused
    M569 P3 S1                  ; Drive 3 goes forwards                             | Extruder S1 for Bondtech, S0 for Titan
    M569 P4 S0                  ; Drive 4 goes forwards                             | Extruder (unused)
    M569 P5 S0                  ; Drive 5 goes backwards                            | Front Left Z
    M569 P6 S0                  ; Drive 6 goes backwards                            | Rear Left Z
    M569 P7 S0                  ; Drive 7 goes backwards                            | Right Z
    
    ;Leadscrew locations
    M671 X-10:-10:333 Y22.5:277.5:150 S7.5 ;Front left,(-10,22.5) Rear Left (-10.,227.5) , Right (333,160) S7.5 is the max correction - measure your own offsets, to the bolt for the yoke of each leadscrew
    
    ; Axis and motor configuration
    M350 X16 Y16 Z16 I1              ; Set 16x microstepping for axes & extruder, with interpolation.
    M350  E64:64 I0
    
    M574 X1 Y1 Z0 S1 U0 V0 W0                        ; Set homing switch configuration (x,y at min, z at max) IF YOU NEED TO REVERSE YOUR HOMING SWITCHES CHANGE S1 to S0
    M906 X1400 Y1400 Z1400 E1000 I60            ; Motor currents (mA) - WARNING: Conservative - May trigger stallguard (and prematurely during homing) if sensorless.
    M201 X2000 Y2000 Z100 E2000                 ; Accelerations (mm/s^2) - WARNING: Conservative
    M203 X48000 Y48000 Z300 E5000              ; Maximum speeds (mm/min) - WARNING: Conservative
    M566 X1500 Y1500 Z20 E750                   ; Maximum jerk speeds mm/minute - WARNING: Conservative
    M92 X200 Y200 Z1600                     ; Steps/mm for X.Y
    M92 Z1600                               ; Steps/mm for Z - TR8*2 / 1.8 deg stepper or TR8*4 / 0.9 deg stepper
    M92 E3100:3100                                ; Extruder - 0.9 deg/step (ProjectR3D kit with E3D stepper MT-1701HSM140AE or Standard Titan stepper 42BYGHM208P4.5-15-X2) 
    
    ; Set axis minima:maxima switch positions (Adjust to suit your machine and to make X=0 and Y=0 the edges of the bed)
    ; These values are conservative to start with, adjust during commissioning.
    M208 X0:280 Y0:284 Z-0.2:620        ; Conservative 300ZL/T settings (or 250ZL)
    
    ; Thermistors
    M305 P0 S"Bed" T100000 B3950 R4700 H0 L0          ; BOM thermistor values. Put your own H and/or L values here to set the bed thermistor ADC correction
    M305 P2 S"Right" T100000 B4725 C7.06e-8 R4700 H0 L0  ; E3D Semitec 104GT2 thermistor values. Put your own H and/or L values here to set the first nozzle thermistor ADC correction
    
    M305 P1 S"Left" X200
    ;M305 P2 S"Right" X201
    
    
    ;Heaters
    M570 S360                                  ; Print will be terminated if a heater fault is not reset within 360 minutes.
    M143 H0 S160                               ; Maximum H0 (Bed) heater temperature
    M143 H1 S300                               ; Maximum H1 (Extruder) heater temperature (Conservative and in case extruder has PTFE lining)
    M143 H2 S300  
    M140 S-273 R-273                           ; Standby and initial Temp for bed as "off" (-273 = "off")
    
    ; Default heater model
    M307 H0 A270.7 C90.4 D6.7 B0 S1.0          ; Default Bed Heater Parameters, before tuning / if config-override.g is missing
    M307 H1 A508.1 C249.0 D3.8 S1.00 V24.2 B0  ; Default Tool Heater Parameters, before tuning / if config-override.g is missing\
    M307 H2 A508.1 C249.0 D3.8 S1.00 V24.2 B0  ; Default Tool Heater Parameters, before tuning / if config-override.g is missing
    
    ; Fans
    M106 P0 H-1                             ; Disable thermostatic mode for fan 0
    M106 P1 H-1                             ; Disable thermostatic mode for fan 1
    ;M106 P2 H-1                             ; Disable thermostatic mode for fan 2
    M106 P0 S0                              ; Turn off fans
    M106 P1 S0
    ;M106 P2 S0
    M106 P3 H1:2 T60:200 L.5 X128
    
    
    ; Tool definitions
    M563 P0 D0 H1 F0:1                          ; Define tool 0
    M563 P1 D1 H2 F0:1                          ; Define tool 1
    G10 P0 S-273 R-273                      ; Set tool 0 operating and standby temperatures(-273 = "off")
    G10 P1 X-0.9 Y-24
    
    
    M557 X20:280 Y0:280 S16:16      ; Set Default Mesh (conservative)
    
    M98 P"config-user.g"                    ; Load custom user config
    
    M501                                    ; Load saved parameters from non-volatile memory
    
    

    config-user.g

    ; Z probe and compensation definition
    M558 P9 F100 H3 R0.2 T6000 A5 B1  ; BL-touch
    G31 X0 Y45 Z0.677 P25       ; BL-touch - Z Offset set to 0, determine your own Z-Offset and enter it here (Note: Positive number is closer to the bed)
    M307 H7 A-1 C-1 D-1     ; BL-touch : remaps some channels to make the PWM port on the Duex5 work for a Z-probe if you use a different PWM port than the docs show, you have to change that
    

    config-override.g

    ; config-override.g file generated in response to M500 at 2020-01-12 09:53
    ; This is a system-generated file - do not edit
    ; Heater model parameters
    M307 H0 A230.4 C645.8 D9.1 S1.00 V24.1 B0
    M307 H1 A425.7 C265.4 D4.4 S1.00 V24.0 B0
    M307 H2 A334.6 C199.9 D4.9 S1.00 V24.0 B0
    M307 H3 A340.0 C140.0 D5.5 S1.00 V0.0 B0
    M307 H4 A340.0 C140.0 D5.5 S1.00 V0.0 B0
    M307 H5 A340.0 C140.0 D5.5 S1.00 V0.0 B0
    M307 H6 A340.0 C140.0 D5.5 S1.00 V0.0 B0
    G10 L2 P1 X0.00 Y0.00 Z0.00
    G10 L2 P2 X0.00 Y0.00 Z0.00
    G10 L2 P3 X0.00 Y0.00 Z0.00
    G10 L2 P4 X0.00 Y0.00 Z0.00
    G10 L2 P5 X0.00 Y0.00 Z0.00
    G10 L2 P6 X0.00 Y0.00 Z0.00
    G10 L2 P7 X0.00 Y0.00 Z0.00
    G10 L2 P8 X0.00 Y0.00 Z0.00
    G10 L2 P9 X0.00 Y0.00 Z0.00
    

  • Moderator

    @gnydick said in Strange bug: Hot-end temp drops during tramming:

    M558 P9 F100 H3 R0.2 T6000 A5 B1

    You've got B1 set. It temporarily halts the heaters during probing to remove potential interference. Useful for probes like the BLTouch that may have wires running next to high current heaters and is close to potentially large bed heaters.

    So, not a bug, it's a feature.

    https://duet3d.dozuki.com/Wiki/Gcode#Section_M558_Set_Z_probe_type

    Try turning it off and see if your BLTouch still behaves. If it does you can probably run fine without it set.


  • Moderator

    @Phaedrux I'd just managed to work that out when you replied! Though gcode dictionary says it turns off the bed heater, not hot end?:

    Bn If 1, turn off bed heater while probing, default (B0) leaves heater on. (RepRapFirmware 1.21 and later)

    https://duet3d.dozuki.com/Wiki/Gcode?revisionid=HEAD#Section_M558_in_RepRapFirmware_2_x_and_earlier

    Ian


  • Moderator

    I believe it also halts the hotend, at least that's what it seems to do on mine.



  • Ahhhhh, awesome!



  • Also, why doesn't it do it when it homes-Z?


  • Moderator

    Doesn't it? When I tested it today I was just using homeall and it was doing it.

    Maybe it's faster so you're not noticing? But it should be happening when G30 is executed.


Log in to reply