A Duet 3, Distribution Board, and a 1LC walk into a bar...
-
@bearer
I didn't find any information pertaining to my problem on the link you suggested. The closest it came was in mentioning how settings are lost after upgrading the expansion board firmware. I'm using a Toolboard 1LC, not an Expansion 3HC board, and it mentions what to do after the firmware has been updated. I still need to accomplish that step.Thanks for the info on the terminal jumpers.
And thank you for telling me exactly what I wanted to hear in that I didn't wire the 1LC CAN bus incorrectly. That is a big relief.
-
@choblet said in A Duet 3, Distribution Board, and a 1LC walk into a bar...:
I didn't find any information pertaining to my problem on the link you suggested.
it was mainly the stuff like A heater on an expansion board can only be controlled by a temperature sensor on the same expansion board. etc as we don't know how you've configured it and are having issues with heaters f.ex.
even if not relevant now, it might save you a headache moving forward.
anways, will address more of it later if no-one beat me to it.
-
@bearer
Well, if the Toolboard isn't being detected by the Mainboard and is unable to be found at any of the CAN addresses I tried, it doesn't seem like it's possible to tell whether or not it's a config issue before solving the communication issue between boards. I'm still too unfamiliar to know how they relate, so I'll show you what I have for my initial configuration file:3DP Send code... Status Idle Mode: FFF Tool Position X 0.0 Y 0.0 Z 0.00 Extruder Drives Drive 0 0.0 Speeds Requested Speed 0 mm/s Top Speed 0 mm/s Sensors Vin 24.2 V V12 12.0 V MCU Temperature 33.2 C Tools Extra Control All Tool Heater Current Active Standby T1LC T0 - Load Filament n/a n/a Bed Heater 1 fault 26.4 C 0 0 Temperature Chart System Directory 0:/sys/config.g ; Configuration file for Duet 3 (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.1.3 on Wed Jun 17 2020 02:29:25 GMT-0700 (Pacific Daylight Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Duet 3" ; set printer name ; Drives M569 P0.0 S0 ; physical drive 0.0 goes backwards M569 P0.1 S1 ; physical drive 0.1 goes forwards M569 P0.2 S1 ; physical drive 0.2 goes forwards M569 P1.0 S1 ; physical drive 1.0 goes forwards M584 X0.0 Y0.1 Z0.2 E1.0 ; set drive mapping M350 X32 Y32 Z32 E4 I1 ; configure microstepping with interpolation M92 X157.64 Y800.00 Z800.00 E611.15 ; set steps per mm M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min) M203 X6000.00 Y6000.00 Z900.00 E1200.00 ; set maximum speeds (mm/min) M201 X100.00 Y100.00 Z100.00 E250.00 ; set accelerations (mm/s^2) M906 X850 Y850 Z900 E800 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X100 Y100 Z100 S0 ; set axis maxima ; Endstops M574 X2 S1 P"!^io0.in" ; configure active-high endstop for high end on X via pin !^io0.in M574 Y1 S1 P"!^io1.in" ; configure active-high endstop for low end on Y via pin !^io1.in M574 Z1 S1 P"!^io2.in" ; configure active-high endstop for low end on Z via pin !^io2.in ; Z-Probe M558 P0 H15 F120 T1500 ; disable Z probe but set dive height, probe speed and travel speed M557 X15:85 Y15:85 S5 ; define mesh grid ; Heaters M308 S0 P"1.temp0" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin 1.temp0 M950 H0 C"1.out0" T0 ; create nozzle heater output on 1.out0 and map it to sensor 0 M307 H0 B0 S0.00 ; disable bang-bang mode for heater and set PWM limit M308 S1 P"temp0" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin temp0 M950 H1 C"out0" T1 ; create bed heater output on out0 and map it to sensor 1 M307 H1 B1 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit M140 H1 ; map heated bed to heater 1 M143 H1 S0 ; set temperature limit for heater 1 to 0C ; Fans M950 F0 C"1.out1" Q500 ; create fan 0 on pin 1.out1 and set its frequency M106 P0 S1 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"1.out2" Q500 ; create fan 1 on pin 1.out2 and set its frequency M106 P1 S1 H-1 ; set fan 1 value. Thermostatic control is turned off ; Tools M563 P0 S"T1LC" D0 F0:1 ; define 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 ; Custom settings are not defined ; Miscellaneous M501 ; load saved parameters from non-volatile memory
Hopefully it's a silly, obvious error in something I overlooked.
-
The bed heater getting a heater fault is because in RRF3 it's not known to the system to be a bed heater so the longer heatup times aren't automatically taken into account. This can be fixed by PID tuning the bed.
I can not run the extruder motor. Neither fan nor the thermistor on the hotend return values, but it should be because the CAN bus communication fails when the Mainboard tries to find the 1LC. Error messages galore (how do you get those incessant balloons to calm down or at least minimize?).
If the CAN bus communication fails, how should control of elements on the toolboard work? The many errors are because CAN-FD is a fast protocol. Maybe error squelching would be a good idea ... but that's for another post.
The CAN connectors on the distribution board and the tool board should be free of any strain from movement, or the board connection can fail. That can lead to undefined behavior like uncontrolled heating. The included connectors have some free floating wires which you should -- unlike me -- leave free so you can freely place the cable and then use a cable strain relief a bit away from the board.
-
@oliof
So instead of the Bang-Bang method, I'll look at the PID controller option.Is there a way to scan the CAN ports/channels to see if anything shows up as connected and change the CAN address of the 1LC to match where the system thinks it is? Because the connection never even gets established, but I wonder if it's just at the wrong address.
I went back and inspected my wiring, double-checked the continuity and pin positions to confirm everything checks out. The movement of the cables is minimal, no stress that I can tell.
-
There is no way to scan the CAN ports that I know of. According to https://duet3d.dozuki.com/Wiki/Duet_3_Tool_Board#Section_Commissioning_a_new_Tool_Board the default address is 121 or 10, and according to https://duet3d.dozuki.com/Wiki/Duet_3_Tool_Board#Section_Testing_communication the easiest way to test whether things work is to run
M115 B<address>
.Also, there is a red LED on the Duet3 board that blinks at about 1 second on / 1 second off. There also is one on the toolboard. If they are not blinking in sync, CAN communication has not been established.
-
If the LEDs on the tool boards and expansion boards are flashing in sync with the LED on the main board, then CAN communication has been established, although it may be less than 100% reliable if you haven't set the CAN jumpers correctly. See the first reply from @bearer for how to set the jumpers.
Once all boards are running current firmware (3.1.1 for the main boards, 3.1.0 for tool and expansion boards), you can enumerate the CAN boards using M409 K"boards". Until then, you can use M115 B# for various values of # to search for a board that you know is connected (because it LED is flashing in sync). Depending on when the tool board went through testing, its address should be either 10 or 121.
Once you know the address of the tool board, you can send M997 B# (where # is the address) to tell it to fetch the latest firmware binary (Duet3Firmware_TOOL1LC.bin) from /sys on the main board. See https://duet3d.dozuki.com/Wiki/Duet_3_Tool_Board#Section_Commissioning_a_new_Tool_Board.
-
@dc42 @oliof
Thank you both.
The LED is not flashing at all - it doesn't illuminate. It never did, actually, which I found odd, but when power was at all the terminals on the board where it was expected, I had to move on because I couldn't find a place to start troubleshooting (I'm too new yet).So, @dc42, the question I would love to have a solution for is how to make sure the firmware is current on all the boards, and if not, how can I update my Toolboard 1LC given my setup? I'll go find the command that returns the current firmware if one exists and continue on until I hear back.
Thanks again.
-
@choblet said in A Duet 3, Distribution Board, and a 1LC walk into a bar...:
The LED is not flashing at all - it doesn't illuminate.
I presume you mean the red LED on the tool board doesn't illuminate. Does the blue VIN LED on the tool board illuminate?
-
@dc42
Oh no...there was never a blue LED that lit up. I thought there were no LEDs to keep it from, well, glowing with LEDs. I read about the red flashing LED that was supposed to be in sync with the Mainboard, and assumed the lack of connection was the result of no flashing.It seems I have been troubleshooting a hardware defect with software solutions.
Is this something that the company would likely replace, or anyone you recommend I get in contact with?
Either way, I tried to find the firmware version for the 1LC, but it doesn't seem like it will help if the problem is related to a defective board.
m115 FIRMWARE_NAME: RepRapFirmware for Duet 3 MB6HC FIRMWARE_VERSION: 3.1.1 ELECTRONICS: Duet 3 MB6HC v0.6 or 1.0 FIRMWARE_DATE: 2020-05-19b2
Well, I still learned a lot. I'll migrate things over to the mainboard and try my luck with that. Please continue to offer any suggestions or advice you may have. It is greatly appreciated.
-
If the blue VIN LED isn't lit on your tool board, that implies that it is not receiving VIN power. Check that you are supplying VIN power to the tool distribution board with the correct polarity, that you have a straight-through cable (pin 1 to pin 1) between the distribution board and the tool board, and that the fuse for that power output on the distribution board is intact.
-
@dc42
I thank you, and everyone else who stopped by to chat, for taking the time out of your day to give me a hand. But mostly to @dc42, who made me go back and check a fuse I would have never checked. I've never blown a fuse outside of a car audio mistake, so it was never on my radar.Aside from learning a little about the CAN connections and other confusions I had, I again failed to complete a pretty basic check that would have prevented a great deal of frustration. "There's no way a brand new fuse is defective, it must be the ______"
That one's on me. I know better.
Thanks again. I'll be sure to stop back after I spend another handful of hours with whatever the next challenge is.