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

    additional fan driven by thermistor (not heater)

    Scheduled Pinned Locked Moved Solved
    Duet Hardware and wiring
    2
    17
    569
    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.
    • Phaedruxundefined
      Phaedrux Moderator
      last edited by

      Well M143 is meant to control a heater, since the only way a temperature sensor can measure a maximum heat is if a heater generates heat. In the M143 command you can specify a heater to control and a temp sensor to monitor independently. So I'm not sure why you think it's not appropriate to use. The temp sensor would be the sensor you want to watch, and the heater would be whatever is responsible for generating the heat.

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

      M570 is almost unrelated since it controls what happens during a heater fault

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

      Z-Bot CoreXY Build | Thingiverse Profile

      A Former User? 1 Reply Last reply Reply Quote 0
      • A Former User?
        A Former User @Phaedrux
        last edited by

        @Phaedrux
        Thanks for reminding me about that

        But since I just use the heat-plate to heat up the chamber (as by-product which is totally sufficient if you have good insulation around your printer) how can I attach a fan as an inverted chamber-heater (a.k.a. a cooler so to say) that is hooked up to a chamber-temp-sensor without creating a real heater?

        Or am I just thinking to complicated:

        I just create an inverted heater (e.g. E1 is free on my board) and put the fan directly there to E1 e.g. and do NOT create an additional fan later but only a sensor (temp-sensor) attached to that (inverted)-heater?

        1 Reply Last reply Reply Quote 0
        • Phaedruxundefined
          Phaedrux Moderator
          last edited by

          You can control a fan based on a temp sensor, no heater need be directly involved.

          It would be similar to the hotend fan that is thermostatically controlled when a temp sensor is over a set temp. Or ramps up between a temp range.

          Z-Bot CoreXY Build | Thingiverse Profile

          A Former User? 1 Reply Last reply Reply Quote 0
          • A Former User?
            A Former User @Phaedrux
            last edited by A Former User

            @Phaedrux

            yep - thanks for posting
            Thats what I will stay with right now, because since every "heater" (even if inverted) has to be calibrated in RRF3.x I tried to put a fan to the e1-heater with inversion, but couldn´t calibrate of course and it immediatly threw a heater-fault

            -> have put material-specific fan speed for fan3 (or fan2 if you count with 0) that is controlled by an additional temp-sensor in the filament-config.g then to have it somewhere (of course each material has its specific temps for the chamber...)

            Phaedruxundefined 1 Reply Last reply Reply Quote 0
            • Phaedruxundefined
              Phaedrux Moderator @A Former User
              last edited by

              @LB said in additional fan driven by thermistor (not heater):

              I tried to put a fan to the e1-heater with inversion, but couldn´t calibrate of course and it immediatly threw a heater-fault

              I'm not sure I understand what you mean here.

              Z-Bot CoreXY Build | Thingiverse Profile

              A Former User? 1 Reply Last reply Reply Quote 0
              • A Former User?
                A Former User @Phaedrux
                last edited by A Former User

                @Phaedrux

                was another way to try out to make a heater to a cooler (by inverting it)

                • normal: below make on, above make off
                • inversion: below have off, above make on

                but couldn´t calibrate it... but the fan did what it should...

                it all works now via the additional fan defined e.g. for PETG in the filament-config:

                M106 P2 B1.0 L0.9 X1.0 T30:32
                
                1 Reply Last reply Reply Quote 0
                • Phaedruxundefined
                  Phaedrux Moderator
                  last edited by

                  Oh I see what you mean. You literally connected a fan to the heater pins and defined it as a heater. That's clever, but problematic.

                  @LB said in additional fan driven by thermistor (not heater):

                  M106 P2 B1.0 L0.9 X1.0 T30:32

                  You've set the temp range, but what sensor is it tracking? You don't have an H value.

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

                  Z-Bot CoreXY Build | Thingiverse Profile

                  A Former User? 3 Replies Last reply Reply Quote 0
                  • A Former User?
                    A Former User @Phaedrux
                    last edited by A Former User

                    @Phaedrux

                    ...yep... didn´t think about that one in the beginning...

                    but now it works with the little setup in the main/general/system config.g

                    ; chamber heater optional connected then to this sensor...
                    M308 S3 P"e1temp" Y"thermistor" T100000 B4725 C7.060000e-8 A"Chamber" 	; configure sensor Sx as type"thermistor"/"..." on pin P"...", e.g. typ. types vor 100K are B4725, B4138, B3950, see https://duet3d.dozuki.com/Wiki/Connecting_thermistors_or_PT1000_temperature_sensors#Section_Thermistor_parameters
                    ;M950 H3 C"e1heat" T3 ;Qx ; F3                           ; create H=heater (number) output on x and map it to sensor C"x"; T Temperature sens num, required only when creating a heater; see M308
                    ;M141 H3											; exclusive for chamber: map to heater Hx, in RRF3 must come after M950 command that creates heater, and before any M143 command
                    ;M307 H3 I2 ;S0.x Fxxx ;B1                               ; for Hx, B 1=bang-bang/0=PID mode, set PWM limit S0.0-1.0, for I inversion see documentation
                    

                    &

                    ;chamber fan
                    M950 F2 C"fan2" T3 ;Q500 ;! ;Q25000                  ; create F=fan(x) with "!" to invert, on pin C; opt set frequency(Q) e.g. for most real 4-wire pwm-fans 25000 (max 65535), ordinary 2-wire must be kept low around 100-500, default seems to be 250
                    ; set some default vals to start but override it in the print-file with the specific filament-config.g:
                    M106 P2 C"chamber fan" B1.0 L0.9 X1.0 T40:41 H3          ; P=num; s=set speed 0-255/0.0-1.0; limit L min & X max; H=heater monitored+Thermostatic control, -1=off or Hx(:__...) monitored; B=blip time in ms; if not thermostatic (H-1) define a board-boot-start-up speed S=fan speed;
                    

                    M308 with M950 seem to be sufficient to do the job

                    (...sorry for all the comments but for setup I like it more that way, later might delete a lot of them again...)

                    1 Reply Last reply Reply Quote 0
                    • A Former User?
                      A Former User @Phaedrux
                      last edited by

                      @Phaedrux

                      Finally: Thanks for helping me get going with the new RRF3

                      Consider this "solved" (though it worked a little bit diffrent from what I thought in the beginning it would work - it does the job 🙂 )

                      1 Reply Last reply Reply Quote 0
                      • A Former User?
                        A Former User @Phaedrux
                        last edited by A Former User

                        @Phaedrux

                        (First should I start a new thread at this point?)

                        So now that I got the nice "ASAIR AM2302"-DHT22 running (https://forum.duet3d.com/topic/14146/duet3d-dht-22/17?_=1605704384964) - thanks everybody - I was wondering if it is as simple, to swap for the fan what it monitors to the dht...:

                        If my "old" thermistor was within M308 S3, and the DHT-Temp is within M308 is S10, for the fan (after it was initialized with M950) I just re-wire it within the Fan´s M106 from H3 to H10?

                        Edit: Just swapped to H10 and all works nice 🙂

                        -> What brings me to the more interesting question if a print could be paused until the chamber-humidity (due to heating of print-plate and hotend) is below a certain value? (I see now that the humidity dropped slowly, when printing today, from an 35% (environment/room) down to 21,5% in the chamber with 33-35°C heated up (room 23°C) for PETG 🙂

                        Since it is only an additional Sensor with a value, with conditional g-code that should be do-able? First of course I need to see what is a level I can reach for sure even on days with lots of humidity. Will see about a while or loop with humidity-is-value > chamber-humidity-should-value - pause here/do nothing with the break triggered either by time 20-30min or so or by reaching the value...
                        let´s see 🙂

                        Phaedruxundefined 1 Reply Last reply Reply Quote 0
                        • Phaedruxundefined
                          Phaedrux Moderator @A Former User
                          last edited by

                          @LB said in additional fan driven by thermistor (not heater):

                          (First should I start a new thread at this point?)

                          Probably best to create a new thread in the gcode meta commands forum for setting up a conditional loop.

                          Z-Bot CoreXY Build | Thingiverse Profile

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