Connection issue with 3.5-rc2
-
@e4d It looks like your BME280 sensor doesn't work:
Error in macro line 326 while starting up: M308: Failed to initialise BME280 sensor: hardwareError
Apart from that the log looks OK. Does anything change if you remove the
M291
code from your config.g? -
@e4d Please post your full config.g as well.
-
; Duet 3 Configuration File G21 ; Work in millimetres G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves M669 K1 ; Set Core XY mode G4 S5 ;##################################################### Steppers #################################################################################### ;Definition M569 P0.0 S0 ; Driver X M569 P0.1 S0 ; Driver Y M569 P0.2 S0 ; Driver Z3 M569 P0.3 S0 ; Driver Z1 M569 P0.4 S1 ; Driver A M569 P0.5 S0 ; Driver Z2 M569 P1.0 S0 ; E0 Direct Drive M569 P1.1 S0 ; E0 Bowden M569 P1.2 S0 ; E1 Direct Drive M569 P2.0 S1 ; E1 Bowden M569 P2.1 S0 ; E2 Direct Drive M569 P2.2 S0 ; E2 Bowden M569 P3.0 S1 ; E3 Direct Drive M569 P3.1 S1 ; E3 Bowden ;Parametres M584 X0.0 Y0.1 Z0.3:0.5:0.2 E1.0:1.1:1.2:2.0:2.1:2.2:3.0:3.1 A0.4 ; Apply custom drive mapping M208 X-40.5:396 Y-32.8:370.0 A0:132.0 Z0:395 ; Set axis maxima & minima M350 X16 Y16 Z16 A16 E16:16:16:16:16:16:16:16 I1 ; Configure microstepping with interpolation M566 X240 Y240 Z400 E1500:1500:1500:1500:1500:1500:1500:1500 A400 ; Set maximum instantaneous speed changes (mm/min) M203 X30000 Y30000 Z1000 E5000:5000:5000:5000:5000:5000:5000:5000 A2000 ; Set maximum speeds (mm/min) M201 X4000 Y4000 Z500 E4000:4000:4000:4000:4000:4000:4000:4000 A500 ; Set accelerations (mm/s^2) M906 X1800 Y1800 Z1200 A400 I30 ; Idle motion motors to 30% M906 E650:650:650:650:650:650:650:650 I10 ; Idle extruder motors to 10% M92 X80 Y80 Z800 E400:400:400:400:400:400:400:400 A400 ; Set steps per mm assuming x16 microstepping ; ENDSTOPS M574 X1 S1 P"0.io1.in" ; Set X endstop switch detection M574 Y1 S1 P"0.io2.in" ; Set Y endstop switch detection M574 Z1 S2 ; Set Z endstop switch detection M574 A1 S2 ; Set A endstop switch detection ;Z clic probe M558 K0 P8 C"0.io0.in" H5 F700 I0 T10000 ; Set Z probe type to switch, the axes for which it is used and the dive height + speeds G31 K0 P200 X0 Y0 Z0 A0 ; Set Z probe trigger value, offset and trigger height M557 K0 X5:295 Y5:295 P10:10 ; Define mesh grid ;FSR offset probe M558 K1 P8 C"!0.io3.in" H5 F80 T500 ; Configure Z probe offset G31 K1 P125 X0 Y0 Z0 ; Set Z probe trigger value, offset and trigger height M950 P18 C"0.io3.out" ; reset pin M42 P18 S1 ; Init reset pin ;##################################################### Pneumatic #################################################################################### ;Coupler Pump M950 P14 C"2.out1" M42 P14 S0 ; Soufflage copeaux M950 P22 c"2.out0" M42 P22 S0 ; Blower solenoid M950 P15 C"2.out7" ;M2 M42 P15 S0 ; Aspiration solenoid M950 P16 C"2.out6" ;M1 M42 P16 S0 ; Pneumatic sensor M950 J2 C"!1.io1.in" ;##################################################### Heaters #################################################################################### ;Bed M308 S0 P"0.temp0" Y"thermistor" A"Bed" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"0.out0" T0 Q10 ; create bed heater output on out0 and map it to sensor 0 M307 H0 R0.605 K0.237:0.000 D2.36 E1.35 S1.00 B0 ; enable PID mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S215 ; set temperature limit for heater 0 to 215C ;Chamber M308 S5 P"1.temp0" Y"pt1000" A"Chamber" T100000 B4725 C7.06e-8 ; Set thermistor M950 H5 C"1.out2" T5 ; Chamber heater M950 P17 C"1.out3" ; Chamber heater fan M307 H5 B0 S1.00 ; Bang bang tuning M141 H5 ; Define heated chamber M143 H5 S75 ; Set temperature limit for heater 5 to 70C M570 H5 P999999 T50 ; configure heater fault on H4 ;##################################################### Capteurs de blocs matériaux ############################################################### M308 S6 P"1.temp1" Y"linear-analog" A"Bloc_0" M308 S7 P"1.temp2" Y"linear-analog" A"Bloc_1" M308 S8 P"2.temp0" Y"linear-analog" A"Bloc_2" M308 S9 P"2.temp1" Y"linear-analog" A"Bloc_3" global bloc_0 = "vide" global bloc_1 = "vide" global bloc_2 = "vide" global bloc_3 = "vide" G4 S1 global Bval_0 = sensors.analog[6].lastReading global Bval_1 = sensors.analog[7].lastReading global Bval_2 = sensors.analog[8].lastReading global Bval_3 = sensors.analog[9].lastReading M98 P"0:/sys/macros/bloc_id.gcode" ;##################################################### Bloc 0 #################################################################################### if sensors.analog[6].lastReading >= 0 && sensors.analog[6].lastReading < 10 set global.bloc_0 = "Filament" ; Heater 0 M308 S1 P"0.temp1" Y"pt1000" A"Heater 0" T100000 B4725 C7.06e-8 ; Set thermistor M950 H1 C"0.out1" T1 ; H1 heater M143 H1 S400 ; Set temperature limit for heater 1 to 400C M307 H1 R1.554 K0.205:0.000 D5.28 E1.35 S1.00 B0 V23.8 ; PID setup ;Fans M950 F0 C"0.out4" ; part cooling fan M950 F1 C"0.out5" ; heatsink fan M106 P1 S1.0 H1 T70 ; fan full if heater 1 > 70C M106 P0 S0 ; print cooling fan stop ; Define tool M563 P0 S"Extruder" D0:1 H1 F0 G10 P0 S0 R0 M567 P0 E1.0:1.0 ; Filament monitor M591 D0 P7 C"1.io0.in" L7 R75:125 E22 S1 elif sensors.analog[6].lastReading >= 10 && sensors.analog[6].lastReading < 20 set global.bloc_0 = "Incompatible" elif sensors.analog[6].lastReading >= 20 && sensors.analog[6].lastReading < 30 set global.bloc_0 = "Soustractif" ; Define tool M563 P0 S"Fraise" M950 P0 C"0.io4.out" Q1000 ; Define unsoll pin output M42 P0 S0 ; Init ESC M950 P7 C"2.io3.out" ; Define direction pin output M42 P7 S0 ; Init direction ;##################################################### Bloc 1 #################################################################################### if sensors.analog[7].lastReading >= 0 && sensors.analog[7].lastReading < 10 set global.bloc_1 = "Filament" ; Heater 1 M308 S2 P"0.temp2" Y"pt1000" A"Heater 1" T100000 B4725 C7.06e-8 ; Set thermistor M950 H2 C"0.out2" T2 ; H2 heater M143 H2 S400 ; Set temperature limit for heater 2 to 400C M307 H2 R1.554 K0.205:0.000 D5.28 E1.35 S1.00 B0 V23.8 ; PID setup ; Fans M950 F2 C"0.out6" ; part cooling fan M950 F3 C"0.out7" ; heatsink fan M106 P3 S1.0 H2 T70 ; fan full if heater 1 > 70C M106 P2 S0 ; print cooling fan stop ;Define tool M563 P1 S"Extruder" D2:3 H2 F2 M567 P1 E1.0:1.0 G10 P1 S0 R0 ; Filament monitor M591 D2 P7 C"1.io5.in" L7 R75:125 E22 S1 elif sensors.analog[7].lastReading >= 10 && sensors.analog[7].lastReading < 20 set global.bloc_1 = "Incompatible" elif sensors.analog[7].lastReading >= 20 && sensors.analog[7].lastReading < 30 set global.bloc_1 = "Soustractif" ; Define tool M563 P1 S"Fraise" ; Define tool M950 P1 C"0.io4.out" Q1000 ; Define unsoll pin output M42 P1 S0 ; Init ESC M950 P8 C"2.io4.out" ; Define direction pin output M42 P8 S0 ; Init direction ;##################################################### Bloc 2 #################################################################################### if sensors.analog[8].lastReading >= 0 && sensors.analog[8].lastReading < 10 set global.bloc_2 = "Filament" ; Heater 2 M308 S3 P"0.temp3" Y"pt1000" A"Heater 2" T100000 B4725 C7.06e-8 ; Set thermistor M950 H3 C"0.out3" T3 ; H3 heater M143 H3 S400 ; Set temperature limit for heater 3 to 400C M307 H3 R1.554 K0.205:0.000 D5.28 E1.35 S1.00 B0 V23.8 ; PID setup ; Fans M950 F4 C"0.out8" ; part cooling fan M950 F5 C"0.out9" ; heatsink fan M106 P5 S1.0 H3 T70 ; fan full if heater 3 > 70C M106 P4 S0 ; print cooling fan stop ; Define tool M563 P2 S"Extruder" D4:5 H3 F4 M567 P2 E1.0:1.0 G10 P2 S0 R0 ; Filament monitor M591 D4 P7 C"2.io0.in" L7 R75:125 E22 S1 elif sensors.analog[8].lastReading >= 10 && sensors.analog[8].lastReading < 20 set global.bloc_2 = "Pellet" ; Heater 2 M308 S3 P"0.temp3" Y"pt1000" A"Heater 2" T100000 B4725 C7.06e-8 ; Set thermistor M950 H3 C"0.out3" T3 ; H3 heater M143 H3 S400 ; Set temperature limit for heater 3 to 400C M307 H3 R1.554 K0.205:0.000 D5.28 E1.35 S1.00 B0 V23.8 ; PID setup ; Fans M950 F4 C"0.out8" ; part cooling fan M950 F5 C"0.out9" ; heatsink fan M106 P5 S1.0 H3 T70 ; fan full if heater 1 > 70C M106 P4 S0 ; print cooling fan stop M950 F11 C"3.out3" ; TEMPORAIRE !!!!!! M106 P11 S1 ; TEMPORAIRE !!!!!! ; Define tool M906 E650:650:650:650:1400:650:650:650 I10 ; Set stepper current to 1A M563 P2 S"Pellet" D4 H3 F4 G10 P2 S0 R0 elif sensors.analog[8].lastReading >= 20 && sensors.analog[8].lastReading < 30 set global.bloc_2 = "Soustractif" M563 P2 S"Fraise" ; Define tool M950 P2 C"0.io7.out" Q1000 ; Define unsoll output M42 P2 S0 ; Init ESC M950 P9 C"2.io5.out" ; Define direction pin output M42 P9 S0 ; Init direction ;##################################################### Bloc 3 #################################################################################### if sensors.analog[9].lastReading >= 0 && sensors.analog[9].lastReading < 10 set global.bloc_3 = "Filament" ; Heater 3 M308 S4 P"3.temp0" Y"pt1000" A"Heater 3" T100000 B4725 C7.06e-8 ; Set thermistor M950 H4 C"3.out0" T4 ; H4 heater M143 H4 S400 ; Set temperature limit for heater 4 to 400C M307 H4 R1.554 K0.205:0.000 D5.28 E1.35 S1.00 B0 V23.8 ; PID setup ; Fans M950 F6 C"3.out5" ; part cooling fan M950 F7 C"3.out4" ; heatsink fan M106 P7 S1.0 H4 T70 ; fan full if heater 1 > 70C M106 P6 S0 ; print cooling fan stop ;Define tool M563 P3 S"Extruder" D6:7 H4 F6 M567 P3 E1.0:1.0 G10 P3 S0 R0 ; Filament monitor M591 D6 P7 C"3.io0.in" L7 R75:125 E22 S1 elif sensors.analog[9].lastReading >= 10 && sensors.analog[9].lastReading < 20 set global.bloc_3 = "Pellet" ; Heater 3 M308 S4 P"3.temp0" Y"pt1000" A"Heater 3" T100000 B4725 C7.06e-8 ; Set thermistor M950 H4 C"3.out0" T4 ; H4 heater M143 H4 S400 ; Set temperature limit for heater 4 to 400C M307 H4 R1.554 K0.205:0.000 D5.28 E1.35 S1.00 B0 V23.8 ; PID setup M570 H3 P300 T99999 ; TEMPORAIRE !!!!!!!!!!!!!!! ; Fans M950 F6 C"3.out5" ; part cooling fan M950 F7 C"3.out4" ; heatsink fan M106 P7 S1.0 H4 T70 ; fan full if heater 1 > 70C M106 P6 S0 ; print cooling fan stop ;Define tool if move.extruders[4].current == 1000 M906 E650:650:650:650:1400:650:1400:650 I10 ; Set stepper current to 1A else M906 E650:650:650:650:650:650:1400:650 I10 M563 P3 S"Pellet" D6 H4 F6 G10 P3 S0 R0 elif sensors.analog[9].lastReading >= 20 && sensors.analog[9].lastReading < 30 set global.bloc_3 = "Incompatible" ;##################################################### IO #################################################################################### ;led strip M950 E0 C"led" T1 Q3000000 U100 M150 E0 B255 R0 U0 P100 S100 ;Pebble Wiper M950 S21 C"2.io1.out" M280 P21 S50 ;Capteurs ouverture de portes ;M950 J5 C"2.io1.in" ;ouverture de porte ;M950 J6 C"2.io2.in" ;ouverture du couvercle M308 S25 P"2.io2.in" Y"linear-analog" ; Bloc 48V alim M950 P19 C"2.out5" ; Relais de contrôle des alimentations 48V M42 P19 S0 ; TESTS COLINE M950 P30 C"3.io5.out" ; BME 280 armoire à matériaux M308 S10 P"spi.cs0" Y"bme280" A"Temperature" ;M308 S11 P"S10.1" Y"bme-pressure" A"pressure[hPa]" M308 S12 P"S10.2" Y"bme-humidity" A"Humidity[%]" ; Filtre à air M950 P20 C"3.out2" M42 P20 S0 ; Accelerometer Input Shaping ;M955 P0 C"spi.cs2+spi.cs3" I14 ; Temporaire ;##################################################### Variables ############################################################################## global fan_chamber = false global pneumatic_debug = 0 global iteration = 0 global togglePneumatic = false global runDaemon = true global timeBed = 0 global x_pos = 0 global y_pos = 0 global z_pos = 0 global x_off = 0 global y_off = 0 global z_off = 0 global z_plateau_ref = 0 global outil_select = 99 global seuils_definis = false global homeall = false global timer_filtre = 0 global timer_filtre_incr = 0 global pwm_fraise = 0 global ip_addr = "" global tool_T0_posX = 0 global tool_T0_posY = 0 global tool_T1_posX = 0 global tool_T1_posY = 0 global tool_T2_posX = 0 global tool_T2_posY = 0 global tool_T3_posX = 0 global tool_T3_posY = 0 global tool_T0_posX_mes = 0 global tool_T0_posY_mes = 0 global tool_T1_posX_mes = 0 global tool_T1_posY_mes = 0 global tool_T2_posX_mes = 0 global tool_T2_posY_mes = 0 global tool_T3_posX_mes = 0 global tool_T3_posY_mes = 0 ;##################################################### Post Config ############################################################################ ;M586 P1 S1 R80 C"*" M501 M911 S21.0 R23.0 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ;##################################################### Affichage ############################################################################# M291 S4 R"Configuration outils" P"Blocs presents" K{"Bloc 0 : "^{global.bloc_0},"Bloc 1 : "^{global.bloc_1},"Bloc 2 : "^{global.bloc_2},"Bloc 3 : "^{global.bloc_3}, " OK"}
-
@e4d The panel of the temperature graph looks odd to me. Perhaps try to disable your ad-blocker (if any) and if that doesn't help, open the dev tools via F12 and check the JS Console for errors.
-
@chrishamm my adblocker is already disabled, here's the output of the dev console on 3 differents browser Chrome, Opera and Edge :
index.ts:420 TypeError: Failed to execute 'appendChild' on 'Node': parameter 1 is not of type 'Node'. at window.Node.appendChild (vue-fragment.esm.js:1:4055) at window.Node.insertBefore (vue-fragment.esm.js:1:3770) at Object.insertBefore (vue.runtime.esm.js:6311:16) at updateChildren (vue.runtime.esm.js:6800:29) at patchVnode (vue.runtime.esm.js:6913:21) at updateChildren (vue.runtime.esm.js:6787:17) at patchVnode (vue.runtime.esm.js:6913:21) at VueComponent.patch [as __patch__] (vue.runtime.esm.js:7081:17) at v._update (vue.runtime.esm.js:3769:25) at VueComponent.ne (vue.runtime.esm.js:3875:16)
-
@e4d Okay, the new version 3.5.0-rc.3 should have a bug fix for this error message, although I don't think it's the reason why DWC stays in "Connecting". Can you try to upgrade your SBC using
apt update
/apt upgrade
and check if that helps? -
@chrishamm thanks for the release, the error message is fixed in the dev console on the browser.
The connection issue was still there sadly. I identified that the issue is caused by the line
M141 H5
If I have it in the config.g file, impossible to connect and when I comment it I can connect on the board as usual. If I comment it on the config, power up and then write "M141 H5" in the console it goes on connection screen.
Is it a known bug or something new ? I can't figure out how to have the control on the heated chamber without using M141 to declare it. Is there a workaround or do you plan a bug fix soon ?
-
@e4d Is there any way you could provide a minimal config.g that lets you reproduce this problem? I just put
M141 H5
in my config.g and after a restart my machine came up as expected. -
This config let us reproduce the problem :
; Duet 3 Configuration File G21 ; Work in millimetres G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves M669 K1 ; Set Core XY mode ;Bed M308 S0 P"0.temp0" Y"thermistor" A"Bed" T100000 B4725 C7.06e-8 ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"0.out0" T0 Q10 ; create bed heater output on out0 and map it to sensor 0 M307 H0 R0.605 K0.237:0.000 D2.36 E1.35 S1.00 B0 ; enable PID mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S215 ; set temperature limit for heater 0 to 215C ;Chamber M308 S5 P"1.temp0" Y"pt1000" A"Chamber" T100000 B4725 C7.06e-8 ; Set thermistor M950 H5 C"1.out2" T5 ; Chamber heater M950 P17 C"1.out3" ; Chamber heater fan M307 H5 B0 S1.00 ; Bang bang tuning M141 H5 ; Define heated chamber M143 H5 S75 ; Set temperature limit for heater 5 to 70C M570 H5 P999999 T50 ; configure heater fault on H4
To test this I did :
- Put this config with "M141 H5" commented
- Access the DWC in Chrome browser
- Execute "M141 H5" in the console
- Refresh the webpage
-
@e4d Thanks! I could reproduce and fix it. The fix will be included in the next DWC version, so probably 3.5.0 stable.
-
@chrishamm thank you for your quick inputs on my issue. Do you have any timeline on the release of 3.5 stable ? I can't use an heated chamber in the meantime ?
-
-
-
@chrishamm it works well on my machines, thank you again for your time on my issue