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

    6HC+1LC where connect filament sensor?

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    7
    18
    637
    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.
    • jay_s_ukundefined
      jay_s_uk @Nurgelrot
      last edited by

      @Nurgelrot not possible currently

      m591 d0 p1 c"e0stop"
      Error: M591: Filament monitor port must be connected to same CAN board as extruder driver
      

      https://docs.duet3d.com/en/User_manual/RepRapFirmware/CAN_limitations#permanent-limitations

      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

      Nurgelrotundefined 1 Reply Last reply Reply Quote 0
      • Nurgelrotundefined
        Nurgelrot @jay_s_uk
        last edited by Nurgelrot

        @jay_s_uk Thank for checking I could have sworn that they added an exception for the the simple switches. Might be able to reproduce the same functionality with a trigger? M581.

        Or do what I do and mount the filament monitor to the frame and run the wire down with the boden tube. Sucks but its the best I could come up with.

        jay_s_ukundefined dc42undefined 2 Replies Last reply Reply Quote 1
        • jay_s_ukundefined
          jay_s_uk @Nurgelrot
          last edited by

          @Nurgelrot M581 should work although segmentation M669 S1 T1 may also have to be used

          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

          1 Reply Last reply Reply Quote 0
          • dc42undefined
            dc42 administrators @Nurgelrot
            last edited by

            @Nurgelrot said in 6HC+1LC where connect filament sensor?:

            Thank for checking I could have sworn that they added an exception for the the simple switches.

            This is planned but not yet implemented.

            Duet WiFi hardware designer and firmware engineer
            Please do not ask me for Duet support via PM or email, use the forum
            http://www.escher3d.com, https://miscsolutions.wordpress.com

            Reineundefined 1 Reply Last reply Reply Quote 2
            • Reineundefined
              Reine @dc42
              last edited by

              @dc42 any idea when this will be implemented?

              dc42undefined 1 Reply Last reply Reply Quote 0
              • dc42undefined
                dc42 administrators @Reine
                last edited by

                @Reine it's already implemented in the 3.5 source code, but untested.

                Duet WiFi hardware designer and firmware engineer
                Please do not ask me for Duet support via PM or email, use the forum
                http://www.escher3d.com, https://miscsolutions.wordpress.com

                zambz2016undefined 1 Reply Last reply Reply Quote 1
                • zambz2016undefined
                  zambz2016 @dc42
                  last edited by

                  @dc42 said in 6HC+1LC where connect filament sensor?:

                  but untested.

                  Can I use it already, or it needs to be tested and then released?

                  jay_s_ukundefined 1 Reply Last reply Reply Quote 0
                  • jay_s_ukundefined
                    jay_s_uk @zambz2016
                    last edited by

                    @zambz2016 simple switches were implemented in the 3.5.1 release

                    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

                    Christopheundefined 1 Reply Last reply Reply Quote 0
                    • Christopheundefined
                      Christophe @jay_s_uk
                      last edited by Christophe

                      @jay_s_uk Sorry for picking up on this thread again, but I'm on the 3.5.1 release testing this
                      I have this in my config.g, for a filament sensor connected to the Duet 3 (5 Mini+)

                      M591 D0 S1 P2 C"^io1.in"
                      

                      The extruder (and all other stuff for the toolhead) is on a 1LC Expansion Board
                      When I enter:

                      M591 D0
                      

                      I get this result:

                      Simple filament sensor on pin 121.io1.in, enabled when printing from SD card, output high when no filament, filament present: no
                      

                      It still seems like it wants to use 121.io1.in instead of the Duet board io1.in, or am I missing something?

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

                        @Christophe said in 6HC+1LC where connect filament sensor?:

                        It still seems like it wants to use 121.io1.in instead of the Duet board io1.in, or am I missing something?

                        Check your config to see if you've defined it elsewhere already.

                        Z-Bot CoreXY Build | Thingiverse Profile

                        Christopheundefined 2 Replies Last reply Reply Quote 0
                        • Christopheundefined
                          Christophe @Phaedrux
                          last edited by

                          @Phaedrux I've double checked my config but I only define the filament sensor on one place

                          config.g

                          ; General preferences
                          G4 S2											; wait for CAN
                          G90                                     		; send absolute coordinates...
                          M83                                     		; ...but relative extruder moves
                          M669 K1                                 		; coreXY
                          G21 	                                  		; set units to millimeters
                          
                          M98 P"network.g"								; configure network settings
                          
                          ; Drives
                          M569 P0.0 S1 D2                         		; physical drive 0.0 goes forwards, no stealthchop, spreadcycle for extruder
                          M569 P0.1 S1 D3                         		; physical drive 0.1 goes forwards
                          M569 P0.2 S1 D3                         		; physical drive 0.2 goes forwards
                          M569 P0.3 S0 D3                        		 	; physical drive 0.3 goes forwards
                          M569 P0.4 S0 D3                        		 	; physical drive 0.4 goes forwards
                          M569 P121.0 S1 D3                         		; physical drive 0.5 goes forwards
                          M584 X0.4 Y0.3 Z0.0:0.1:0.2 E121.0        		; set drive mapping
                          M350 X16 Y16 Z16 E16 I1                 		; configure microstepping with interpolation
                          
                          ; Motor settings
                          M92 X80.00 Y80.00 Z800.00 E832.0           		; set steps per mm
                          M906 X1800 Y1800 Z1500 E800 I30             	; set motor currents (mA) and motor idle factor in percent
                          M84 S30                                 		; set idle timeout
                          M915 P3:4 S20 R0 F0 H400               			; setup for stall detection
                          
                          ; Speed settings
                          M566 X600.00 Y600.00 Z100.00 E3000.00 P1        ; set maximum instantaneous speed changes (mm/min)
                          M203 X30000.00 Y30000.00 Z1000.00 E3600.00     	; set maximum speeds (mm/min)
                          M201 X9000.00 Y9000.00 Z100.00 E5000.00        	; set accelerations (mm/s^2)
                          
                          ; Axis Limits
                          M208 X-5:505 Y-10:502 Z0:500                   	; set axis minima and maxima
                          
                          ; Endstops
                          M574 X1 S3                                     	; configure sensorless endstop for x-axis
                          M574 Y1 S3                                     	; configure sensorless endstop for y-axis
                          M574 Z1 S2                                     	; configure Z-probe endstop for low end on Z
                          
                          ; Tramming
                          M671 X-4.5:250:470 Y-4.52:485:-4.52 S5         	; define positions of Z leadscrews or bed levelling screws
                          M557 X3:470 Y0:485 P10						   	; define 10x10 mesh grid
                          
                          ; Heaters
                          M308 S0 P"temp0" Y"thermistor" T100000 B3950 A"Bed"    	; configure sensor 0 as thermistor on pin temp0
                          M950 H0 C"out1" T0                                     	; create bed heater output on out5 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 S120                                           	; set temperature limit for heater 0 to 120C
                          M307 H0 B0 R0.195 C128.4 D1.80 S1.00                   	; pid tune 330W
                          
                          ; Fans
                          M950 F0 C"121.out2" Q500                   				; create fan 0 on pin out3 and set its frequency
                          M950 F1 C"!121.out1+out1.tach"             				; create fan 1 on pin out4 and set its frequency
                          M106 P0 C"Hotend Fan" S255								; temporary spin up the tool fan
                          M106 P1 C"Layer Fan" S255 H-1 B0.35 L0.20 X0.40			; set fan 1 name and value. Thermostatic control is turned off
                          G4 S1													; wait two seconds to turn them back off
                          M106 P0 C"Hotend Fan" S0 H1 T45 L255   					; set fan 0 name and value. Thermostatic control turned on for Hotend
                          M106 P1 S0												; turn off part fan
                          
                          ; Tools
                          M563 P0 D0 H1 F1 S"MainTool"    						; define tool 0
                          G10 P0 X0 Y0 Z0            								; set tool 0 axis offsets
                          G10 P0 R25 S0              								; set initial tool 0 active and standby temperatures to 0C
                          
                          M950 H1 C"121.out0" T1         								; create nozzle heater output on out2 and map it to sensor 1
                          M307 H1 B0 S1.00           								; disable bang-bang mode for heater and set PWM limit
                          M143 H1 S280               								; set the maximum temperature in C for heater
                          
                          ; Filament Sensor
                          M591 D0 S1 P2 C"^io1.in"           						; configure switch filament monitor
                          
                          ; Ambient (DHT) Sensor
                          M308 S10 P"io0.out+io0.in" Y"dht22" A"AmbientTemperature"		; configure pins for DHT sensor (temperature)
                          M308 S11 P"S10.1" Y"dhthumidity" A"AmbientHumidity"				; configure pins for DHT sensor (humidity)
                          
                          ; Hotend thermistor
                          M308 S1 P"121.temp0" Y"thermistor" T100000 B4725 C7.060000e-8 A"Hotend"
                          
                          ; Z-Probe
                          M558 P8 C"^121.io0.in" H6.0 F400:200 T30000				; set Z probe type to unmodulated and the dive height + speeds
                          G31 P500 X-30 Y-15 Z0.000              					; set Z probe trigger value, offset and trigger height, more Z means closer to the bed
                          
                          ; Filament settings
                          M404 N1.75 D0.8                        					; filament width and nozzle diameter
                          M207 S1.0 F3600 T1200 Z0.27 		   					; retraction settings used by M10 & M11
                          
                          T0														; activate tool 0
                          
                          ; Triggers
                          M950 J1 C"!121.button0" 								; button0 toolboard
                          M581 P1 S0 T2 R0    									; trigger2.g
                          M950 J2 C"!121.button1" 								; button1 toolboard
                          M581 P2 S0 T3 R0    									; trigger3.g
                          
                          ; Accelerometer
                          M955 P121.0 I10 										; specify orientation of accelerometer on Toolboard 1LC with CAN address 121
                          
                          ; Global Variables
                          if exists(global.state)
                          	set global.state = "Started"
                          else
                          	global state = "Started"
                          	
                          if exists(global.printer_type)
                          	set global.printer_type = "V-CORE_3.1"
                          else
                          	global printer_type = "V-CORE_3.1"
                          
                          if exists(global.printer_config)
                          	set global.printer_config = "0.1.1"
                          else
                          	global printer_config = "0.1.1"
                          
                          M501
                          

                          M122

                          M122
                          === Diagnostics ===
                          RepRapFirmware for Duet 3 Mini 5+ version 3.5.1 (2024-04-19 14:41:25) running on Duet 3 Mini5plus Ethernet (standalone mode)
                          Board ID: 3YN4S-4867A-G65J0-401GQ-1Q82Z-73P7R
                          Used output buffers: 3 of 40 (32 max)
                          === RTOS ===
                          Static ram: 103232
                          Dynamic ram: 116316 of which 0 recycled
                          Never used RAM 19012, free system stack 194 words
                          Tasks: NETWORK(1,ready,918.8%,138) ETHERNET(5,nWait 7,8.4%,562) HEAT(3,nWait 6,4.5%,326) Move(4,nWait 6,0.5%,341) CanReceiv(6,nWait 1,8.1%,774) CanSender(5,nWait 7,0.0%,336) CanClock(7,delaying,1.2%,348) TMC(4,nWait 6,225.3%,102) MAIN(1,running,224.7%,647) IDLE(0,ready,0.0%,30) AIN(4,delaying,134.0%,256), total 1525.5%
                          Owned mutexes:
                          === Platform ===
                          Last reset 17:41:20 ago, cause: software
                          Last software reset at 2024-05-30 14:47, reason: User, Gcodes spinning, available RAM 29824, slot 2
                          Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00000000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
                          Error status: 0x00
                          MCU revision 3, ADC conversions started 63680215, completed 63680215, timed out 0, errs 0
                          MCU temperature: min 32.4, current 34.2, max 38.4
                          Supply voltage: min 24.4, current 24.5, max 24.5, under voltage events: 0, over voltage events: 0, power good: yes
                          Heap OK, handles allocated/used 99/6, heap memory allocated/used/recyclable 2048/1000/920, gc cycles 1
                          Events: 4 queued, 4 completed
                          Driver 0: standstill, SG min 0, read errors 0, write errors 0, ifcnt 32, reads 61500, writes 3, timeouts 0, DMA errors 0, CC errors 0
                          Driver 1: standstill, SG min 0, read errors 0, write errors 0, ifcnt 32, reads 61500, writes 3, timeouts 0, DMA errors 0, CC errors 0
                          Driver 2: standstill, SG min 0, read errors 0, write errors 0, ifcnt 32, reads 61500, writes 3, timeouts 0, DMA errors 0, CC errors 0
                          Driver 3: standstill, SG min 0, read errors 0, write errors 0, ifcnt 40, reads 61497, writes 5, timeouts 0, DMA errors 0, CC errors 0
                          Driver 4: standstill, SG min 0, read errors 0, write errors 0, ifcnt 40, reads 61498, writes 5, timeouts 0, DMA errors 0, CC errors 0
                          Driver 5: standstill, SG min 0, read errors 0, write errors 0, ifcnt 20, reads 61503, writes 0, timeouts 0, DMA errors 0, CC errors 0
                          Driver 6: standstill, SG min 0, read errors 0, write errors 0, ifcnt 20, reads 61502, writes 0, timeouts 0, DMA errors 0, CC errors 0
                          Date/time: 2024-05-31 09:47:16
                          Cache data hit count 4294967295
                          Slowest loop: 21.72ms; fastest: 0.16ms
                          === Storage ===
                          Free file entries: 20
                          SD card 0 detected, interface speed: 22.5MBytes/sec
                          SD card longest read time 13.4ms, write time 5.7ms, max retries 0
                          === Move ===
                          DMs created 83, segments created 0, maxWait 0ms, bed compensation in use: none, height map offset 0.000, max steps late 0, min interval 0, bad calcs 0, ebfmin 0.00, ebfmax 0.00
                          no step interrupt scheduled
                          Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0
                          === DDARing 0 ===
                          Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
                          === DDARing 1 ===
                          Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
                          === Heat ===
                          Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0
                          Heater 0 is on, I-accum = 0.0
                          Heater 1 is on, I-accum = 0.0
                          === GCodes ===
                          Movement locks held by null, 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 idle in state(s) 0
                          Trigger is idle in state(s) 0
                          Queue is idle in state(s) 0
                          LCD is idle in state(s) 0
                          SBC is idle in state(s) 0
                          Daemon is idle in state(s) 0
                          Aux2 is idle in state(s) 0
                          Autopause is idle in state(s) 0
                          File2 is idle in state(s) 0
                          Queue2 is idle in state(s) 0
                          Q0 segments left 0, axes/extruders owned 0x0000803
                          Code queue 0 is empty
                          Q1 segments left 0, axes/extruders owned 0x0000000
                          Code queue 1 is empty
                          === Filament sensors ===
                          check 0 clear 0
                          Extruder 0 sensor: ok
                          === CAN ===
                          Messages queued 570615, received 1299700, lost 0, errs 0, boc 0
                          Longest wait 2ms for reply type 6048, peak Tx sync delay 277, free buffers 26 (min 25), ts 316973/316973/0
                          Tx timeouts 0,0,0,0,0,0
                          === Network ===
                          Slowest loop: 30.28ms; fastest: 0.04ms
                          Responder states: MQTT(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0)
                          HTTP sessions: 2 of 8
                          = Ethernet =
                          Interface state: active
                          Error counts: 0 0 10976 0 0 0
                          Socket states: 2 2 2 2 2 0 0 0
                          

                          M122 B121

                          M122 B121
                          Diagnostics for board 121:
                          Duet TOOL1LC rev 1.1 or later firmware version 3.5.1 (2024-04-19 14:42:41)
                          Bootloader ID: SAMC21 bootloader version 2.3 (2021-01-26b1)
                          All averaging filters OK
                          Never used RAM 3956, free system stack 122 words
                          Tasks: Move(3,nWait 7,0.2%,121) HEAT(2,nWait 6,44.8%,107) CanAsync(5,nWait 4,0.0%,55) CanRecv(3,nWait 1,1.8%,71) CanClock(5,nWait 1,2.8%,59) ACCEL(3,nWait 6,0.0%,53) TMC(2,delaying,461.4%,53) MAIN(1,running,176.7%,315) IDLE(0,ready,0.0%,27) AIN(2,delaying,623.0%,112), total 1310.8%
                          Owned mutexes:
                          Last reset 17:41:59 ago, cause: software
                          Last software reset time unknown, reason: AssertionFailed, available RAM 3392, slot 2
                          Software reset code 0x0120 ICSR 0x00000000 SP 0x2000415c Task  Freestk 129 bad marker
                          Stack: 00000544 00022ffc 00019b65 20003134 00016cff 20003134 000163d1 20000ed0 00000000 00000001 00008275 200071c8 200071c8 200071e0 00000000 20000f50 00011647 000223b8 00022474 00021ac8 00019b05 200071c8 200071c8 20000f50 000083ed 200071d8 000009c7
                          Driver 0: pos 0, 832.0 steps/mm, standstill, SG min 0, read errors 0, write errors 0, ifcnt 41, reads 13426, writes 3, timeouts 10, DMA errors 0, CC errors 0, failedOp 0x6a, steps req 0 done 0
                          Moves scheduled 0, completed 0, in progress 0, hiccups 0, segs 0, step errors 0, maxLate 0 maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0, ebfmin 0.00 max 0.00
                          Peak sync jitter -5/10, peak Rx sync delay 214, resyncs 0/0, no timer interrupt scheduled
                          VIN voltage: min 24.4, current 24.5, max 24.5
                          MCU temperature: min 39.2C, current 46.1C, max 46.4C
                          Last sensors broadcast 0x00000002 found 1 131 ticks ago, 0 ordering errs, loop time 0
                          CAN messages queued 1301180, send timeouts 0, received 571258, lost 0, errs 0, boc 0, free buffers 18, min 18, error reg 0
                          dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0
                          Accelerometer: LIS3DH, status: 00
                          I2C bus errors 0, naks 0, contentions 0, other errors 0
                          === Filament sensors ===
                          Interrupt 5726621 to 0us, poll 4 to 976us
                          Driver 0: no filament
                          
                          1 Reply Last reply Reply Quote 0
                          • Christopheundefined
                            Christophe @Phaedrux
                            last edited by

                            @Phaedrux Same behaviour on 3.5.2 RC1

                            I start off by not configuring the filament sensor at all in the config.g

                            M591 D0
                            Extruder 0 has no filament sensor
                            

                            I then enter

                            M591 D0 S1 P2 C"^io1.in"
                            ; which gives the following result when reading it out
                            M591 D0
                            Simple filament sensor on pin 121.io1.in, enabled when printing from SD card, output high when no filament, filament present: no
                            

                            It always changes the pin from io1.in to 121.io1.in

                            jay_s_ukundefined 1 Reply Last reply Reply Quote 0
                            • jay_s_ukundefined
                              jay_s_uk @Christophe
                              last edited by

                              @Christophe although a simple switch on a board different to where the extruder connected was in the release notes as being included in 3.5, I don't think it works currently

                              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

                              Christopheundefined 1 Reply Last reply Reply Quote 0
                              • Christopheundefined
                                Christophe @jay_s_uk
                                last edited by

                                Alright @jay_s_uk, gonna try a quick fix with M581 and segmentation. Hit me up if you need a hand testing stuff later, happy to help! Cheers!

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