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

How to change bed heater fault parameters?

Scheduled Pinned Locked Moved
Tuning and tweaking
4
18
1.1k
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.
  • undefined
    Phantom329
    last edited by 25 Sept 2020, 01:58

    I just finished a new printer and am working on configuring the firmware. I try to set my bed to 60C but it faults saying that it is not rising quickly enough. I have a 300^2mm and it does start to heat before faulting so I expect Duet is assuming a smaller bed. How can I change the fault value?

    Heater 0 fault: temperature rising much more slowly than the expected 1.7°C/sec
    
    1 Reply Last reply Reply Quote 0
    • undefined
      Phaedrux Moderator
      last edited by 25 Sept 2020, 02:12

      PID tune the heaters to give the firmware an idea of their performance characteristics.

      https://duet3d.dozuki.com/Guide/Ender+3+Pro+and+Duet+Maestro+Guide+Part+4:+Calibration/40#s161

      M303 H0 S60 to tune
      M500 to save it
      M501 at the end of config.g to load saved values at boot

      Z-Bot CoreXY Build | Thingiverse Profile

      undefined 2 Replies Last reply 25 Sept 2020, 02:14 Reply Quote 0
      • undefined
        Phantom329 @Phaedrux
        last edited by 25 Sept 2020, 02:14

        @Phaedrux Thanks I'll do that

        1 Reply Last reply Reply Quote 0
        • undefined
          Phantom329 @Phaedrux
          last edited by Phantom329 25 Sept 2020, 02:54

          @Phaedrux So I did the auto tune but now my bed makes a really loud noise from the PWM. I enabled bang-bang with M307 H0 B1 but it gave a warning. It was still warm at the time I sent the command, idk if that has anything to do with it. I'm re-tuning it now.

          Warning: M307: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 244C
          
          1 Reply Last reply Reply Quote 0
          • undefined
            Phaedrux Moderator
            last edited by 25 Sept 2020, 04:08

            Tune the bed from room temp for best results.

            Best not to use bang-bang at all.

            That warning is letting you know how hot the model predicts the bed could reach if it failed in a powered on state with no control.

            Can you share an example of the really loud noise? Where is it coming from?

            Also please share your config.g and the results of M122 and M98 P"config.g" so we can get a better idea of what's going on.

            Z-Bot CoreXY Build | Thingiverse Profile

            undefined 1 Reply Last reply 26 Sept 2020, 13:58 Reply Quote 0
            • undefined
              jay_s_uk
              last edited by 25 Sept 2020, 05:09

              You can also adjust the WM frequency using 'Q' in the M950 gcode.
              Some MOSFETs etc can be noisy at certain frequencies

              Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

              undefined 1 Reply Last reply 25 Sept 2020, 07:07 Reply Quote 1
              • undefined
                Phaedrux Moderator
                last edited by 25 Sept 2020, 07:01

                I was hoping he had one of those beds that picks up radio stations...

                Z-Bot CoreXY Build | Thingiverse Profile

                1 Reply Last reply Reply Quote 0
                • undefined
                  BoA @jay_s_uk
                  last edited by 25 Sept 2020, 07:07

                  @jay_s_uk I always thought MOSFETs are noisy only when magic smoke escapes from them 😉

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    jay_s_uk
                    last edited by 25 Sept 2020, 07:23

                    i have an external mosfet on one of my printers (18A 12v heated bed) and it sometimes screams like its being murdered for no reason

                    Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

                    undefined 1 Reply Last reply 25 Sept 2020, 07:31 Reply Quote 0
                    • undefined
                      BoA @jay_s_uk
                      last edited by 25 Sept 2020, 07:31

                      @jay_s_uk Is there any inductor around mosfet? I would rather expect wires to actually make noises not the mosfet. That is weird.

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        Phantom329 @Phaedrux
                        last edited by Phantom329 26 Sept 2020, 13:58

                        @Phaedrux bang-bang did solve the problem of the noise. I could tell the noise was related to be bed because it was only makeing it when the bed was hovering at the set temp, which is when PWM would be used. The noise comes from the actual bed itself and not Duet which is pretty odd. Here is a short vid (turn up the sound) https://drive.google.com/file/d/1iEl3BVpyKjvRqt8IHO-OAdeKiDSx-9hg/view?usp=sharing
                        This is the bed I have https://www.aliexpress.com/i/4000311964727.html?spm=2114.12057483.0.0.14b5133eaIrF4D

                        Also here is the output of M122 and M98

                        M122
                        === Diagnostics ===
                        RepRapFirmware for Duet 2 WiFi/Ethernet version 3.1.1 running on Duet WiFi 1.02 or later
                        Board ID: 08DGM-9T6BU-FG3S8-6J9F2-3SN6L-9ULVG
                        Used output buffers: 7 of 24 (7 max)
                        === RTOS ===
                        Static ram: 27980
                        Dynamic ram: 93912 of which 108 recycled
                        Exception stack ram used: 264
                        Never used ram: 8808
                        Tasks: NETWORK(blocked,636) HEAT(blocked,1224) MAIN(running,1848) IDLE(ready,80)
                        Owned mutexes: WiFi(NETWORK)
                        === Platform ===
                        Last reset 00:02:27 ago, cause: power up
                        Last software reset at 2020-09-24 07:40, reason: User, spinning module GCodes, available RAM 8504 bytes (slot 1)
                        Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0xffffffff Task MAIN
                        Error status: 0
                        MCU temperature: min 13.6, current 22.2, max 22.4
                        Supply voltage: min 23.9, current 24.1, max 24.2, under voltage events: 0, over voltage events: 0, power good: yes
                        Driver 0: standstill, SG min/max not available
                        Driver 1: standstill, SG min/max not available
                        Driver 2: standstill, SG min/max not available
                        Driver 3: standstill, SG min/max not available
                        Driver 4: standstill, SG min/max not available
                        Date/time: 2020-09-26 09:56:09
                        Cache data hit count 244309824
                        Slowest loop: 1.42ms; fastest: 0.13ms
                        I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
                        === Storage ===
                        Free file entries: 10
                        SD card 0 detected, interface speed: 20.0MBytes/sec
                        SD card longest read time 9.8ms, write time 0.0ms, max retries 0
                        === Move ===
                        Hiccups: 0(0), FreeDm: 169, MinFreeDm: 169, MaxWait: 0ms
                        Bed compensation in use: none, comp offset 0.000
                        === MainDDARing ===
                        Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0 CDDA state: -1
                        === AuxDDARing ===
                        Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0 CDDA state: -1
                        === Heat ===
                        Bed heaters = 0 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
                        Heater 1 is on, I-accum = 0.0
                        === GCodes ===
                        Segments left: 0
                        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
                        USB is idle in state(s) 0
                        Aux is assembling a command in state(s) 0
                        Trigger is idle in state(s) 0
                        Queue is idle in state(s) 0
                        Daemon is idle in state(s) 0
                        Autopause is idle in state(s) 0
                        Code queue is empty.
                        === Network ===
                        Slowest loop: 15.24ms; fastest: 0.00ms
                        Responder states: HTTP(2) HTTP(2) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions
                        HTTP sessions: 1 of 8
                        - WiFi -
                        Network state is active
                        WiFi module is connected to access point
                        Failed messages: pending 0, notready 0, noresp 0
                        WiFi firmware version 1.21RC2
                        WiFi MAC address bc:dd:c2:08:78:0b
                        WiFi Vcc 3.39, reset reason Unknown
                        WiFi flash size 4194304, free heap 15240
                        WiFi IP address 192.168.1.245
                        WiFi signal strength -63dBm, reconnections 0, sleep mode modem
                        Socket states: 4 4 0 0 0 0 0 0
                        M98 P"config.g"
                        HTTP is enabled on port 80
                        FTP is disabled
                        TELNET is disabled
                        Warning: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 365C
                        Error: Pin 'fan1' is not free
                        Error: Fan number 2 not found
                        Warning: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 201C
                        1 Reply Last reply Reply Quote 0
                        • undefined
                          BoA
                          last edited by BoA 26 Sept 2020, 14:59

                          Looks like magnetic bed.
                          Current going through the heater wires + magnets = essentially speaker 😄
                          I remember reading some posts that prusa actually implemented some fancy method of switching that eliminates that.

                          https://blog.prusaprinters.org/dev-diary-2-how-we-made-the-heatbed-silent_30946/

                          undefined 1 Reply Last reply 26 Sept 2020, 16:44 Reply Quote 0
                          • undefined
                            Phantom329 @BoA
                            last edited by 26 Sept 2020, 16:44

                            @BoA It sounds like they were hearing a click or chirp sound. Its hard to hear in my video but I hear a constant tone which most likely correlates directly to the switching frequency. I can hear it change frequency as it tries to keep the bed temp steady.

                            undefined 1 Reply Last reply 26 Sept 2020, 17:02 Reply Quote 0
                            • undefined
                              BoA @Phantom329
                              last edited by 26 Sept 2020, 17:02

                              @Phantom329 It is the same sound (I had prusa with their board). And frequency is constant in PWM.

                              1 Reply Last reply Reply Quote 0
                              • undefined
                                Phaedrux Moderator
                                last edited by 26 Sept 2020, 18:44

                                You can alter the PWM frequency for the bed in the M950 command that creates the heater.

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

                                Post your config.g. it looks like you have a fan misconfigured as well.

                                Z-Bot CoreXY Build | Thingiverse Profile

                                undefined 1 Reply Last reply 26 Sept 2020, 23:57 Reply Quote 0
                                • undefined
                                  Phantom329 @Phaedrux
                                  last edited by 26 Sept 2020, 23:57

                                  @Phaedrux I fixed the fan, just had an extra one defined. Here is config.g and config-override.g. What should I set the PWM to? Btw thanks for helping me, I've learned a ton from troubleshooting this.

                                  ; Configuration file for Duet WiFi (firmware version 3)
                                  ; executed by the firmware on start-up
                                  ;
                                  ; generated by RepRapFirmware Configuration Tool v3.1.4 on Thu Sep 24 2020 07:39:49 GMT-0400 (Eastern Daylight Time)
                                  ; General preferences
                                  G90 ; send absolute coordinates...
                                  M83 ; ...but relative extruder moves
                                  M550 P"Phantom Cube" ; set printer name
                                  M669 K1 ; select CoreXY mode
                                  ; Network
                                  M552 S1 ; enable network
                                  M586 P0 S1 ; enable HTTP
                                  M586 P1 S0 ; disable FTP
                                  M586 P2 S0 ; disable Telnet
                                  ; Drives
                                  M569 P0 S1 ; physical drive 0 goes forwards
                                  M569 P1 S1 ; physical drive 1 goes forwards
                                  M569 P2 S0 ; physical drive 2 goes backwards
                                  M569 P3 S0 ; physical drive 3 goes backwards
                                  M584 X0 Y1 Z2 E3 ; set drive mapping
                                  M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
                                  M92 X200.00 Y200.00 Z400.00 E418.00 ; set steps per mm
                                  M566 X720.00 Y720.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
                                  M203 X18000.00 Y18000.00 Z600.00 E1200.00 ; set maximum speeds (mm/min)
                                  M201 X500.00 Y500.00 Z250.00 E1000.00 ; set accelerations (mm/s^2)
                                  M906 X1600 Y1600 Z1600 E1600 I30 ; set motor currents (mA) and motor idle factor in per cent
                                  M84 S30 ; Set idle timeout
                                  ; Axis Limits
                                  M208 X0 Y0 Z0 S1 ; set axis minima
                                  M208 X350 Y310 Z310 S0 ; set axis maxima
                                  ; Endstops
                                  M574 X1 S1 P"xstop" ; configure active-high endstop for low end on X via pin xstop
                                  M574 Y2 S1 P"ystop" ; configure active-high endstop for high end on Y via pin ystop
                                  M574 Z1 S2 ; configure Z-probe endstop for low end on Z
                                  ; Z-Probe
                                  M558 P1 C"zprobe.in" H20 F240 T6000 ; set Z probe type to unmodulated and the dive height + speeds
                                  G31 P25 X0 Y-15 Z13.5 ; set Z probe trigger value, offset and trigger height
                                  M557 X40:300 Y20:280 S65 ; define mesh grid
                                  ; Heaters
                                  M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp
                                  M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0
                                  M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit
                                  M140 H0 ; map heated bed to heater 0
                                  M143 H0 S100 ; set temperature limit for heater 0 to 100C
                                  M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0temp
                                  M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
                                  M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
                                  ; Fans
                                  M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
                                  M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
                                  M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
                                  M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on
                                  ; Tools
                                  M563 P0 D0 H1 F0 ; 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
                                  ; Custom settings are not defined
                                  ; Miscellaneous
                                  M575 P1 S1 B57600 ; enable support for PanelDue
                                  M501 ; load saved parameters from non-volatile memory
                                  M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
                                  T0 ; select first tool
                                  ; config-override.g file generated in response to M500 at 2020-09-24 23:36
                                  ; This is a system-generated file - do not edit
                                  ; Heater model parameters
                                  M307 H0 A176.4 C339.5 D7.2 S1.00 V23.8 B1
                                  M307 H1 A297.7 C97.1 D6.5 S1.00 V24.0 B0
                                  ; Workplace coordinates
                                  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
                                  1 Reply Last reply Reply Quote 0
                                  • undefined
                                    Phaedrux Moderator
                                    last edited by 27 Sept 2020, 00:05

                                    @Phantom329 said in How to change bed heater fault parameters?:

                                    M950 H0 C"bedheat" T0

                                    Try adding Q10 to the end of that. Then you can experiment with different values to see how it changes. You can actually do that in real time by sending M950 H0 Q# in the gcode console while the bed heater is running. Once you find a frequency that works well you can change the config.g to make it take effect at startup.

                                    Z-Bot CoreXY Build | Thingiverse Profile

                                    undefined 1 Reply Last reply 27 Sept 2020, 17:37 Reply Quote 0
                                    • undefined
                                      Phantom329 @Phaedrux
                                      last edited by 27 Sept 2020, 17:37

                                      @Phaedrux I tried changing the Hz from 1 to 1000 but no difference at all. I took a better video and also noted that the bed actually vibrates. It starts at around 55C and sometimes momentarily stops when above 60C (set at 60C) but immediately stops when I turn off the bed heat.
                                      https://drive.google.com/file/d/1k6DX-6bAaiALDYou7UZGFRZKjEFxABVc/view?usp=sharing

                                      1 Reply Last reply Reply Quote 1
                                      9 out of 18
                                      • First post
                                        9/18
                                        Last post
                                      Unless otherwise noted, all forum content is licensed under CC-BY-SA