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

Filament load macro whith sensor

Scheduled Pinned Locked Moved
Filament Monitor
6
15
665
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
    toddel
    last edited by 21 Apr 2020, 10:43

    Hello...

    i'm using the bondtech prusa extruder on my corexy. It has the prusa IR Filament Sensor built in near the gears.

    I'm looking for a macro that does nearly the same as the prusa printers:

    Heat the nozzle up
    when temp is reached a message appears "Now you can load Filament"
    When now the sensor triggers the filament loading should start...

    How can i adress the sensor for that? Or has anyone this running already?

    1 Reply Last reply Reply Quote 0
    • undefined
      T3P3Tony administrators
      last edited by 21 Apr 2020, 18:36

      How are you connecting the prusa IR sensor? from memory these connected by I2C to the prusa board.

      www.duet3d.com

      ? undefined 2 Replies Last reply 21 Apr 2020, 19:06 Reply Quote 0
      • ?
        A Former User @T3P3Tony
        last edited by 21 Apr 2020, 19:06

        @T3P3Tony said in Filament load macro whith sensor:

        connected by I2C

        thats the laser sensor, the FINDA acts like any inductive npn probe afaik

        1 Reply Last reply Reply Quote 0
        • undefined
          toddel @T3P3Tony
          last edited by 21 Apr 2020, 22:15

          @T3P3Tony

          ; Filament Sensor
          M591 D0 P2 C"io8.out" S0 0 ; Filament Sensor an E0, Endstop IO8, Mode P1 Signal high when Filament in, S1: Pause on error

          1 Reply Last reply Reply Quote 0
          • undefined
            toddel
            last edited by 22 Apr 2020, 13:02

            ![alt text](pap.PNG image url)

            Made a plan, sorry i just have PowerPoint here ๐Ÿ™‚

            So how can i read the property of the filament sensor?

            Is there any source/manual how to speak the printers language?

            1 Reply Last reply Reply Quote 0
            • undefined
              T3P3Tony administrators
              last edited by 22 Apr 2020, 13:09

              Potentially use

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

              However this looks like an opportunity to use the Gcode meta commands, have you looked at this:
              https://duet3d.dozuki.com/Wiki/GCode_Meta_Commands

              www.duet3d.com

              undefined 1 Reply Last reply 22 Apr 2020, 13:17 Reply Quote 0
              • undefined
                toddel @T3P3Tony
                last edited by 22 Apr 2020, 13:17

                @T3P3Tony
                Yes. Thanks. Thats what i'm searching for... Meta Commands...

                Nice. Now i need the name/how to check filament sensor state...

                But i'm a step further now...

                Thanks

                undefined 1 Reply Last reply 22 Apr 2020, 13:19 Reply Quote 0
                • undefined
                  T3P3Tony administrators @toddel
                  last edited by 22 Apr 2020, 13:19

                  @toddel and for that you can look at the Object Model
                  https://duet3d.dozuki.com/Wiki/Object_Model_of_RepRapFirmware

                  I believe that OM documentation is yet to catch up with the very latest firmware build (which you should use for this) however use M409 to see the OM as a JSON stucture
                  https://duet3d.dozuki.com/Wiki/Gcode#Section_M409_Query_object_model

                  www.duet3d.com

                  undefined 1 Reply Last reply 22 Apr 2020, 16:57 Reply Quote 0
                  • undefined
                    toddel
                    last edited by 22 Apr 2020, 13:57

                    When i try:

                    M409 K"sensors.filamentMonitors" F"filamentPresent"

                    -> {"key":"sensors.filamentMonitors","flags":"filamentPresent","result":[{"filamentPresent":true}]}

                    When i try:

                    echo !sensors.filamentMonitors[0].filamentPresent

                    -> false

                    Hmm what's wrong?

                    1 Reply Last reply Reply Quote 0
                    • undefined
                      toddel
                      last edited by 22 Apr 2020, 14:26

                      echo sensors.filamentMonitors[0].filamentPresent works ๐Ÿ™†โ€โ™‚๏ธ๐Ÿ™†โ€โ™‚๏ธ

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        toddel @T3P3Tony
                        last edited by 22 Apr 2020, 16:57

                        @T3P3Tony

                        Got it running!

                        if sensors.filamentMonitors[0].filamentPresent = true
                        M291 P"Es ist noch Filament geladen. Mรถchten Sie es entladen?" R"Filament noch geladen!" S3
                        ;call unload.g
                        if sensors.filamentMonitors[0].filamentPresent = false
                        M291 P"Extruder wird zum laden aufgeheizt" R"Extruder wird aufgeheizt" S2
                        M109 S220 ;Wait for extruder
                        while true
                        M291 P"Filament einlegen..." R"Filament einlegen" S1
                        if sensors.filamentMonitors[0].filamentPresent = true
                        G1 E10 F100
                        G1 E100 F300
                        break

                        Is there a way to ask the user after G1 E100 "Color OK?" with anwer options Yes(break), No(another G1 E100) and Abort(break)?

                        Then its finished...

                        undefined 1 Reply Last reply 21 Jul 2020, 21:30 Reply Quote 0
                        • undefined
                          Kolbi @toddel
                          last edited by 21 Jul 2020, 21:30

                          @toddel I made a similar macro set that may interest you.
                          https://forum.duet3d.com/topic/17566/single-macro-for-filament-handling/15

                          1 Reply Last reply Reply Quote 1
                          • undefined
                            mitch
                            last edited by 8 Aug 2020, 22:20

                            I am having issues with this macro while using the Duet3D laser filament sensor.

                            ; Filament is currently loaded
                            if sensors.filamentMonitors[0].filamentPresent = true
                            M702 ; Unload filament as previously configured

                            Does the laser sensor only detect movement and is unable to detect filament presence when it is stationary? In the console when I enter:

                            echo sensors.filamentMonitors[0].filamentPresent

                            I get "null"

                            m591 d0
                            Duet3D laser filament monitor v2 on pin e0stop, enabled, allow 15% to 110%, check every 3.0mm, version 2, quality 223, brightness 255, shutter 86, no calibration data
                            
                            oliofundefined 1 Reply Last reply 9 Aug 2020, 01:52 Reply Quote 0
                            • oliofundefined
                              oliof @mitch
                              last edited by 9 Aug 2020, 01:52

                              @mitch I think your question should be in its own thread so it gets the proper attention.

                              <>RatRig V-Minion Fly Super5Pro RRF<> V-Core 3.1 IDEX k*****r <> RatRig V-Minion SKR 2 Marlin<>

                              1 Reply Last reply Reply Quote 0
                              • undefined
                                mitch
                                last edited by 9 Aug 2020, 01:55

                                I have been searching around the forum tonight leading me to several "indirect filament sensor" threads. I believe the answer to my question above is yes. The sensor detects movement and not presence.

                                The laser filament sensor does have an input for a micro switch but most of the mods do not use it. I must just have an unusual use case in wanting to take advantage of the static state of knowing if filament is loaded. I was using this information to automate startup and printing.

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