Controlling IO_0 on Duet 3 MB6HC
-
My "io0.out" pin on my Duet 3 MB6HC board with 3.4.6. seems to always be set to high regardless of my M42 designation. I figure this has to do with the fact it's used for PanelDue usually, but I can't seem to figure out a way around this. My config.g is free of errors and the IO_0 is defined like so:
M950 P4 C"0.io0.out" M42 P4 S0
and have tried inverting the S variable as well as using a leading !, but the IO pin always seems to stay high. What can I do to fix this?
-
-
@JRCL check that you don't have a M575 command to switch the port to serial mode in config.g.
-
@dc42 no M575 in my config, but here is the whole thing in case
; Enable network G4 S5 ;wait for board to start if {network.interfaces[0].type = "ethernet"} M552 P192.168.1.14 S1 else M552 S1 ;General Prefrences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"RL1 V3" ; set printer name M669 K1 ; switch to CoreXY mode ; Drives M569 P0.0 S1 ; X motor runs M569 P0.1 S0 ; Y motor runs M569 P0.2 S1 ; Z1 motor runs M569 P0.4 S1 ; Z2 motor runs M569 P0.5 S1 ; Z3 motor runs M569 P20.0 S0 ; E moves M569 P0.3 S0 ; U motor runs M207 S1.5 F7200 Z0.2 M584 X0.0 Y0.1 Z0.2:0.4:0.5 E20.0 U0.3 ; Set drive mapping M350 X16 Y16 Z16 E16 U16 I1 ; configure microstepping with interpolation M92 X80.00 Y80.00 Z400.00 E676.47059 U100 ; set steps per mm M566 X900.00 Y900.00 Z60.00 E300 U900.00 ; set maximum instantaneous speed changes (mm/min) M203 X6000.00 Y6000.00 Z180.00 E7200 U17000.0 ; set maximum speeds (mm/min) M201 X500.00 Y500.00 Z20.00 E3000 U500.0 ; set accelerations (mm/s^2) M906 X800 Y800 Z800 U3800 I30 ; set motor currents (mA) and motor idle factor in per cent M906 E1200 I10 ; extruder current and idle factor M572 D0 S0.02 ; pressure advance-to be calibrated M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z-1 U0 S1 ;set axis minima M208 X100 Y100 Z38.45 U330 S0 ;set axis maxima M671 X-67.2193:182.5338:182.5338 Y54.4915:-72.3045:181.2875 S2 ; position of leadscrew/bed pivot point at front left, rear middle and front right ; Endstops M574 X1 S1 P"0.io1.in" ; configure switch-type (e.g. microswitch) endstop for low end on X via pin io0.in M574 Y2 S1 P"20.io2.in" ; configure switch-type (e.g. microswitch) endstop for high end on Y via pin io1.in M574 Z2 S1 P"0.io3.in+0.io4.in+0.io5.in" ; configure switch-type (e.g. microswitch) endstop for high end on Z M574 U2 S1 P"0.io6.in" ; configure switch-type (e.g. microwswitch) endstop ; Z-Probe M950 S0 C"20.io0.out" ; create servo pin 0 for BLTouch (use IO_4/5/7 for 6HC) M558 P9 C"20.io0.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X-19.14 Y0 Z2.555 ; set Z probe trigger value, offset and trigger height M557 X0:80 Y12:100 P3 ; define mesh grid ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B3950 ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"0.out0" T0 ; create bed heater output on out0 and map it to sensor 0 M307 H0 R0.075 K0.178:0.000 D3.39 E1.35 S1.00 B0 M140 H0 ; map heated bed to heater 0 M308 S1 P"20.temp0" Y"thermistor" ; configure sensor 1 as thermistor on pin temp1 M950 H1 C"20.out0" T1 ; create nozzle heater output on out1 and map it to sensor 1 M307 H1 R4.766 K0.817:0.135 D4.61 E1.35 S1.00 B0 V24.4 ; disable bang-bang mode for heater and set PWM limit M143 H1 S280 ; set temperature limit for heater 1 to 280C ; Fans M950 F0 C"20.out1" Q500 ; create fan 0 on toolboard out1 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"20.out2" Q500 ; create fan 1 on toolboard out2 and set its frequency M106 P1 S1 H1 T45 ; set fan 2 value. Thermostatic control is turned on ;Relays M950 P2 C"0.io_7.out" ;Clamps FWD M42 P2 S0 ;Start in off position M950 P3 C"0.io_8.out" ;Clamps REV M42 P3 S0 ;Start in off position M950 P4 C"0.io_0.out" ;IPV DWN M42 P4 S0 ;Start in off position M950 P5 C"0.io2.out" ;IPV UP M42 P5 S0 ;Start in off position M950 P6 C"0.out9" ;Forming-element M42 P6 S0 ;Start in off position ;Tool Definitions M563 P0 D0 H1 F0 ; tool 0 uses extruder drive 0 and heater 1. Fan 0 and Fan 1 are mapped to 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 ; Epilogue M556 S100 X0 Y0 Z0 ; Put your axis compensation here M912 P0 S0 ; Put your CPU temperature sensor correction here 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