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 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