Beta 3.4.0beta5 Duet 3HC reporting error
-
Upgraded from 3.3 to 3.4.0 Beta 5 to solve another problem fixed in one of the earlier beta releases. Now I am getting this error when I try to home the machine.
Error: Board 1 does not have input handle 1080
Error: Failed to enable endstops -
@sparkie from @dc42's reply to another post;
That warning is produced when a M574 or M950 J command is run (normally from config.g) and the main board thinks that the endstop or input being defined currently exists on a CAN-connected expansion board (so it tries to delete it); but it doesn't exist there. For example, if you reset the expansion board using M999 B# (where # is the CAN address) or you upgrade the firmware on an expansion board, and then you run config.g without resetting the main board, you will see that warning.
So resetting everything should get it all to start up properly.
-
This was working just fine under 3.3
I have been resetting everything by cycling the power.
In addition to the 3HC, there are 3 1XD boards that also report a similar error with handle 1000
Seems to be no way around it.
-
@sparkie so if you send M115 B1 (and Bn for the 1XD boards) what do you get?
also send M98 P"0:/sys/config.g"
to see if there are any errors on startup other than the one you mentioned.
-
@t3p3tony
11/4/2021, 4:05:51 AM M115 B42
Duet EXP1XD firmware version 3.4.0beta5 (2021-10-12 13:58:21)
11/4/2021, 4:05:33 AM M115 B41
Duet EXP1XD firmware version 3.4.0beta5 (2021-10-12 13:58:21)
11/4/2021, 4:04:45 AM M115 B40
Duet EXP1XD firmware version 3.4.0beta5 (2021-10-12 13:58:21)
11/4/2021, 4:03:50 AM M115 B1
Duet EXP3HC firmware version 3.4.0beta5 (2021-10-12 13:58:36)
11/4/2021, 4:06:37 AM M115
FIRMWARE_NAME: RepRapFirmware for Duet 3 MB6HC FIRMWARE_VERSION: 3.4.0beta5 ELECTRONICS: Duet 3 MB6HC v1.01 or later FIRMWARE_DATE: 2021-10-12 13:53:56The M98 command caused the connect to drop.
It has not reconnected, i suspect it is going through the file and waiting for a timeout on each command.I believe this also happens after a power on reset as it is quite awhile before I can connect using DWC
-
@sparkie Do you have a delay at the start of your config.g (G4 S2) to allow the expansion boards to start up before the config.g runs?
-
@t3p3tony
yes, here is the beginning of the config file; General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"PnP" ; set printer name; Wait a moment for the CAN expansion boards to start
G4 S2 -
@sparkie Ok so just to be sure can you do the following.
- Power cycle the whole Duet system, mainboard and expansion boards. If you can do that at once the make sure the expansion boards are power cycled before the mainboard.
- Report errors in the console on DWC
- Send M98 P"0:/sys/config.g" and report what is shown in the console of DWC
also for completeness please post your config.g here. (using </> so its easy to read.
-
@t3p3tony
I can arrange to be able to cycle power on the expansion boards and the 6HC separately. Just to be clear, do you want me to cycle the expansion boards off and on before I remove power from the 6HC, or power everything off and then power on the expansion boards before or after the 6HC.Not sure what </> means
-
@sparkie the </> is just to make reading the code/screen dumps from dWC easier
I was not sure how you were powering everything. If its all off the same power supply then its fine to have it all come up together normally. If you have them on separate supplied then we want to make sure the expansion boards are running before the mainboard powers up.
-
@T3P3Tony
I have cycled the power but can't connect yet, I will post results when I can. Here is the config file:; Configuration file for Duet3 (firmware version 3.3 Stable) ; executed by the firmware on start-up ; ; --------------- Pin/connection Mapping Legend ------------------- ; 0.out0 ; 0.out1 ; 0.out2 ; 0.out3 ; 0.out4 ; 0.out5 ; 0.out6 ; 0.out7 ; 0.out8 ; 0.out9 ; 0.out4.tach ; 0.out5.tach ; 0.out6.tach ; 0.io0.in ; 0.io1.in ; 0.io2.in ; 0.io3.in ; 0.io4.in ; 0.io5.in ; 0.io6.in ; 0.io7.in ; 0.io8.in ; 0.io0.out ; 0.io1.out ; 0.io2.out ; 0.io3.out ; 0.io4.out ; 0.io5.out ; 0.io6.out ; 0.io7.out ; 0.io8.out ; 0.pson ; 0.spi.cs0 ; 0.spi.cs1 ; 0.spi.cs2 ; 0.spi.cs3 ; 0.temp0 ; 0.temp1 ; 0.temp2 ; 0.temp3 ; 0.mcu-temp - MCU sensor ; ;----------Duet 3 Expansion 1XD (CAN ID#40) Right Y Axis Servo and Endstops----------- ; ; 40.out0 PWM 24V 2A ; 40.out1 PWM 24V 2A ; 40.io0.in HLFB ; 40.io1.in Axis Upper Endstop ; 40.io2.in Axis Lower Endstop ; 40.driver.out step direction enable ; 40.io0.out 3ma ; 40.io2.out 3ma ; 40.SWDoutput ; 40.temp0 ; ;----------Duet 3 Expansion 1XD (CAN ID#41) Left Y Axis Servo and Endstops----------- ; ; 41.out0 PWM 24V 2A Up Camera Led Ring ; 41.out1 PWM 24V 2A ; 41.io0.in HLFB ; 41.io1.in Axis Upper Endstop ; 41.io2.in Axis Lower Endstop ; 41.driver.out step direction enable ; 41.io0.out 3ma ; 41.io2.out 3ma ; 41.SWDoutput ; 41.temp0 ; ;----------Duet 3 Expansion 1XD (CAN ID#42) X Axis Servo and Endstops----------- ; ; 42.out0 PWM 24V 2A ; 42.out1 PWM 24V 2A ; 42.io0.in HLFB ; 42.io1.in Axis Upper Endstop ; 42.io2.in Axis Lower Endstop ; 42.driver.out step direction enable ; 42.io0.out 3ma ; 42.io2.out 3ma ; 42.SWDoutput ; 42.temp0 ; ;----------Duet 3 Expansion 3HC (CAN ID#1) Z Axis Pick Head, Paste Extruder and Air---------- ; ; 1.driver0 A+ A- B+ B- Left Z Axis Solder Paste ; 1.driver1 A+ A- B+ B- Right Z Axis Pick and Place Nozzle ; 1.driver2 A+ A- B+ B- Nozzle Rotation ; 1.out0 PWM 24V 2A Down Camera Led Ring ; 1.out1 PWM 24V 2A Air Pressure Eject Relay ; 1.out2 PWM 24V 2A Vacuum Relay ; 1.out3 PWM 24V ; 1.out4 PWM 24V ; 1.out5 PWM 24V ; 1.out6 PWM 12V ; 1.out7 PWM 12V ; 1.out8 PWM 12V ; 1.out3.tach ; 1.out4.tach ; 1.out5.tach ; 1.io0in Left Solder Paste Extruder Z Axis Upper Endstop ; 1.io1in Right Pick Nozzle Z Axis Upper Endstop ; 1.io2in Pick Nozzle Vacuum Sensor Alarm ; 1.io3in ; 1.io4in ; 1.io5in ; 1.io0.out ; 1.io1.out ; 1.io2.out ; 1.io3.out ; 1.io4.out ; 1.io5.out ; 1.temp0 ; 1.temp1 ; 1.temp2 ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"PnP" ; set printer name ; Wait a moment for the CAN expansion boards to start G4 S2 ; Network ;M552 P0.0.0.0 S1 ; enable network and acquire dynamic address via DHCP M553 P255.255.255.0 M554 P192.168.1.1 M552 P192.168.1.79 S1 M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P40.0 S0 ; physical drive 40.0 goes backwards M569 P41.0 S0 ; physical drive 41.0 goes backwards M569 P42.0 S0 ; physical drive 42.0 goes backwards M569 P1.0 S1 ; physical drive 1.0 goes forwards M569 P1.1 S1 ; physical drive 1.1 goes forwards M569 P1.2 S1 ; physical drive 1.2 goes forwards ;M584 X42.0 Y40.0:41.0 Z1.1 P3 ; set drive mapping Y Axis has seperate servos for each ballscrew, U also defined as second Y axis, only used during homing, (eventually) ;M584 X42.0 Y40.0:41.0 Z1.1 U1.0 V1.2 W41.0 P5 ;M584 V1.2 R1 S1 ;M584 W41.0 P5 ; set drive mapping Y Axis has seperate servos for each ballscrew M584 S0 X42.0 Y40.0:41.0 Z1.1 U1.0 M584 S0 V1.2 P5 ;M584 W41.0 P5 ; set drive mapping Y Axis has seperate servos for each ballscrew ;M350 E1:1 I0 ; configure microstepping without interpolation ;M350 X1 Y1 Z1 U1 V1 I0 ; configure microstepping with interpolation M350 X16 Y16 Z16 U16 V16 I1 ; configure microstepping with interpolation ;M92 X80.00 Y80.00 Z200.00 U200.0 V10.0 W80.0 ; E420.00:420.00 ; set steps per mm M92 X80.00 Y80.00 Z200.00 U200.0 V8.0 ; E420.00:420.00 ; set steps per mm M566 2000.00 Y2000.00 Z1000.00 U2000.00 V2000.00 ; E120.00:120.00 ; set maximum instantaneous speed changes (mm/min) M203 X40000.00 Y40000.00 Z40000.00 U40000.00 V40000.00 ; E200.00:200.00 ; set maximum speeds (mm/min) M201 X10000.00 Y10000.00 Z10000.00 U10000.00 V10000.00 ; E200.00:200.00 ; set accelerations (mm/s^2) M906 X8000 Y8000 Z2500 U2500 V1000 ; E1800:1800 ; set motor currents (mA) M84 S0 ; Disable motor idle current reduction ; Axis Limits S0 (default) is Maximums S1 is Minimums ;M208 X0 Y0 Z-100 U-100 V-360 S1 ; set axis minima ;M208 X635 Y890 Z0 U0 V360 S0 ; set axis maxima M208 X0:580 M208 Y0:860 M208 Z-100:0 M208 U-100:0 M208 V-360:360 ;M208 W0:890 ; Digital Inputs ; Endstops M574 X1 S1 P"42.io2.in" ; configure active-high endstop for low end on X Axis M574 Y1 S1 P"40.io2.in" ; configure active-high endstop for low end on Left Y Axis M574 Z1 S1 P"!1.io1.in" ; configure active-low endstop for high end on Right Z Axis M574 U1 S1 P"!1.io0.in" ; configure active-low endstop for high end on Left Z (U) Axis ; Digital Outputs M950 F0 C"1.out0" Q20000 ; create fan 0 on pin 1.out0 and set its frequency - Down Camera Led Ring M106 P0 S0 H-1 ; set Down Camera Led Ring off. Thermostatic control is turned off M950 F1 C"0.out2" Q20000 ; create fan 1 on pin 41.out0 and set its frequency - Up Camera Led Ring M106 P1 S0 H-1 ; set Up Camera Led Ring off. Thermostatic control is turned off M950 P2 C"1.out2" ; Air Pressure Eject Relay M950 P3 C"1.out1" ; Vacuum Relay ; Emergency Stop M950 J4 C"!0.io0.in" ; Creates IN GPIO on io0.in, inverted as it is normally high M581 P4 T0 S0 R0 ; Invokes Trigger0 EMERGENCY STOP M950 J5 C"40.io1.in" ; Creates IN GPIO on io0.in, inverted as it is normally high M581 P5 T0 S0 R0 ; Invokes Trigger0 EMERGENCY STOP M950 J6 C"41.io1.in" ; Creates IN GPIO on io0.in, inverted as it is normally high M581 P6 T0 S0 R0 ; Invokes Trigger0 EMERGENCY STOP ;M950 J7 C"41.io2.in" ; Creates IN GPIO on io0.in, inverted as it is normally high ;M581 P7 T0 S0 R0 ; Invokes Trigger0 EMERGENCY STOP M950 J8 C"!42.io1.in" ; Creates IN GPIO on io0.in, inverted as it is normally high M581 P8 T0 S0 R0 ; Invokes Trigger0 EMERGENCY STOP
-
@t3p3tony
Ok, so after a few boneheaded delays
( E-Stop pushed in)
(SD card in the PC and not in the board)
I have the results, I was using YATM115
FIRMWARE_NAME: RepRapFirmware for Duet 3 MB6HC FIRMWARE_VERSION: 3.4.0beta5 ELECTRONICS: Duet 3 MB6HC v1.01 or later FIRMWARE_DATE: 2021-10-12 13:53:56
ok
M98 P"0:/sys/config.g"
HTTP is enabled on port 80
FTP is disabled
TELNET is disabled
Error: Setting not available for external drivers
Setting not available for external drivers
Setting not available for external drivers
ok -
@sparkie
(I adjusted your post with the config to have the backticks around the config to make it easy to read, when using </> select the code block first so it applys it to the code block)There were 3 warnings on startup which I don't think caused the issues but we may as well remove them to be sure.
Error: Setting not available for external drivers Setting not available for external drivers Setting not available for external drivers
M350 X16 Y16 Z16 U16 V16 I1
That will account for at least one of the errors reported as you cant set the microsteps of the external drivers. If you remove the X and Y settings from that then that should stop one of the errors. beware you need to set the steps/mm with M92 correctly to take this into account so multiply by 16
M906 X8000 Y8000 Z2500 U2500 V1000
That will be another one - cant set the current of the external drivers. so you can remove the X and Y
That Y report shows none of the "Error: Board 1 does not have input handle 1080" issues so does the setup now work as expected?
-
@sparkie, to check whether everything is communicating properly after startup, you can do any one of the following:
-
Send M409 K"boards" and look for each board in the response.
-
Go to DWC, start the Object Model Browser if you haven't already (it's under General -> Built-in plugins), go to the Object Model page and expand "boards". Expect to find all the boards there.
-
Create a List Boards macro containing the following, and run it:
while iterations < #boards echo "Board type",boards[iterations].shortName,"found at CAN address",boards[iterations].canAddress
Again, this should list all boards in the system.
-