That’s not a cooler.
THIS is a cooler
Sure, send it to me. I will investigate the problem and fit a new crystal if it needs one.
Thanks for the offer.
Can you PM your postal address please ?
Hi Dave & Max,
I have 4 off 3HC boards and one of them has been a bit of a CAN bus nuisance since day 1, but I have persevered.
The board in question has the same crystal markings as the photo above "120 020a"
Since a recent update (3.3.2 and various 3.3 betas) there is no longer any CAN bus activity RED led flashing, it is off all the time.
Now there is a small chance that I may have inadvertently messed up by trying to load the boot loader and consequently there is no LED activity.
so, I have ordered a ST-Link V2 and JST 1.5mm harness so will try to re-install the boot loader at the correct location.
I will report back later during the week.
Dave, if I am unsuccessful, may I return the board back to you for a quick check, happy to paypal you return postage ? Based in Coventry, not a million miles from you.
Or I am happy to re-solder a different batch# XTAL if you can advise or signpost me to Farnell RS etc.
Board was originally purchased by my client from Oozenest.
PCB is v1.0 with a central hole near the processor, orange sticker dot and label "DUET3 EB1 WD01117"
Thanks & Regards,
Is this crimp tool Engineer PA21 suitable for the Duet 3 5 way IO_n connectors, specifically the Molex and Wurth crimps
Crimp pins above:
I am aware not to mix Molex & Wurth products.
Or is the PA21 just for the larger 4 way JST Stepper connector ?
Can you recommend something suitable please (UK & cheap < £50) ?
I would like to see endstop status returned to DWC.
I have multiple steppers on a common rail moving in a co-ordinated fashion in convoy, nose to tail. Magnet & reed-switch on each end.
So a table of ALL endstops status was a great aid to debugging.
@dc42 said in RepRapFirmware road map Q1 2021:
"These are our current plans for RRF over the next few months:
....RRF 3.3: this is planned to be a short cycle. Work on it has already started....
....RRF 3.3 will also increase the maximum number of axes supported to 15,....
....I hope to have a release candidate available by the end of January....."
Thanks for all your hard work. This news is very welcome.
Thanks for your suggestions, here are the M98 & M115 responses:
20/12/2020, 10:32:30 M98 P"config.g"
No errors reported, green background to above text in console, assume it's OK ?
20/12/2020, 10:30:34 M115 B0
FIRMWARE_NAME: RepRapFirmware for Duet 3 MB6HC FIRMWARE_VERSION: 3.1.1 ELECTRONICS: Duet 3 MB6HC v1.01 or later FIRMWARE_DATE: 2020-05-19b2
20/12/2020, 10:30:40 M115 B1
Board EXP3HC firmware 3.1.0 (2020-05-15b1)
20/12/2020, 10:30:44 M115 B2
Board EXP3HC firmware 3.1.0 (2020-05-15b1)
I have a Duet3 6HC and two 3HC configured to drive 10 stepper motors.
Axes: XYZ UVW ABC & D
Firmware is 3.1.1
SBC mode with a RPi4, LCD TS and booting directly from SATA SSD on USB3.0
6HC defaults to CAN address 0
3HC have CAN address of 1 & 2 by way of the DIP switches
I have done updates & upgrades etc
sudo apt-get updates
sudo apt-get upgrade
The 10th stepper "D" on driver 2.0 used to work but now does not move. (I have been tidying up config.g)
If I swap the CAN addresses of the 3HC boards, this anomaly follows CAN address 2
So I can prove the stepper drivers have not blown up.
Tried the 10th stepper "D" on 2.1 & 2.2 too, does not move.
In DWC all the 10 axes XYZ UVW ABC & D are shown.
However, in response to M584 I get:
Driver assignments: X0.0 Y0.1 Z0.2 U0.3 V0.4 W0.5 A1.0 B1.1 C1.2 E0.3, 10 axes visible
Why is axis D2.0 not reported, but E0.3 instead ?
I would have expected E2.0
I have not configured any extruders.
I have checked my config.g about 10 times now, can't see any typos etc
; Configuration file for Duet 3 (firmware version 3) ; executed by the firmware on start-up ; firmare V3.1.1 as of December 2020 ; support for 10 axes ONLY at this time ! ; see this Forum thread for future releases 3.1.2 or 3.1.3 to correct this ; https://forum.duet3d.com/topic/20088/cnc-mode-need-12-16-axes-how-to/2?_=1607778151592 ; Machine plan and axis assignment ; Plan View ; Back RAILs PODs ; ↑ ; [Z]=========←[D]⇿[?]⇿[?]→ ; ⬍ ; Left [Y]=========←[A]⇿[B]⇿[C]→ Right ; ⬍ ; [X]=========←[U]⇿[V]⇿[W]→ ; ↓ ; ; Front ; Operator Position M80 ; turn on 24V 42A PSU using ATX method G4 S5 ; wait 5 seconds for the 2 off 3HC boards to boot up ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Duet 3" ; set printer name ; Use command M98 P"config.g" to check the syntax of this file ; Use M584 to check drive/axis mapping ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; M569: Set motor driver direction, enable polarity and step pulse timing ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M569_Set_motor_driver_direction_enable_polarity_and_step_pulse_timing ; Main 6HC Board, CAN Addr #0 M569 P0.0 S1 ; physical drive 0.0 goes forwards, X M569 P0.1 S1 ; physical drive 0.1 goes forwards, Y M569 P0.2 S1 ; physical drive 0.2 goes forwards, Z M569 P0.3 S1 ; physical drive 0.3 goes forwards, U M569 P0.4 S1 ; physical drive 0.4 goes forwards, V M569 P0.5 S1 ; physical drive 0.5 goes forwards, W ; 1st 3HC Board, CAN Addr #1 M569 P1.0 S1 ; physical drive 1.0 goes forwards, A M569 P1.1 S1 ; physical drive 1.1 goes forwards, B M569 P1.2 S1 ; physical drive 0.2 goes forwards, C ; 2nd 3HC Board, CAN Addr #2 M569 P2.0 S1 ; physical drive 2.0 goes forwards, D ;M569 P2.1 S1 ; physical drive 2.1 goes forwards, future "F" ? ;M569 P2.2 S1 ; physical drive 2.2 goes forwards, future "J" ? ; 3rd 3HC Board, CAN Addr #3 ; V3.1.2 or 3.1.3 ;M569 P3.0 S1 ; physical drive 3.0 goes forwards, future "P" ? ;M569 P3.1 S1 ; physical drive 3.1 goes forwards, future "Q" ? ;M569 P3.2 S1 ; physical drive 3.2 goes forwards, future "R" ? ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; M584: Set drive mapping ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M584_Set_drive_mapping ; Main 6HC Board CAN #0 M584 X0.0 ; X axis, Board 0, Stepper Channel 0, RAIL A M584 Y0.1 ; Y axis, Board 0, Stepper Channel 1, RAIL B M584 Z0.2 ; Z axis, Board 0, Stepper Channel 2, RAIL C M584 U0.3 ; U axis, Board 0, Stepper Channel 3, Left POD on RAIL A M584 V0.4 ; V axis, Board 0, Stepper Channel 4, Center POD on RAIL A M584 W0.5 ; W axis, Board 0, Stepper Channel 5, Right POD on RAIL A ; 1st 3HC Board CAN #1 M584 A1.0 ; A axis, Board 1, Stepper Channel 0, Left POD on Center RAIL B M584 B1.1 ; B axis, Board 1, Stepper Channel 1, Center POD on Center RAIL B M584 C1.2 ; C axis, Board 1, Stepper Channel 2, Right POD on Center RAIL B ; 2nd 3HC Board CAN #2 M584 D2.0 ; D axis, Board 2, Stepper Channel 0, Left POD on RAIL C ;M584 D2.1 ; ? axis, Board 2, Stepper Channel 1, Center POD on RAIL C ;M584 D2.2 ; ? axis, Board 2, Stepper Channel 2, Right POD on RAIL C ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; M350: Set microstepping mode ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M350_Set_microstepping_mode ; later than M584 M350 X16 Y16 Z16 I1 ; configure 1/16th microstepping with interpolation M350 U16 V16 W16 A16 B16 C16 D16 I1 ; configure 1/16th microstepping with interpolation ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; M92: Set axis steps per unit ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M92_Set_axis_steps_per_unit M92 X17.65 Y17.65 Z17.65 ; set steps per mm RAILS M92 U20.00 V20.00 W20.00 A20.00 B20.00 C20.00 D20.00 ; ?20.00 ?20.0 set steps per mm PODs ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; M566: Set allowable instantaneous speed change ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M566_Set_allowable_instantaneous_speed_change ; 6HC Board M566 X900.00 Y900.00 Z900.00 ; set maximum instantaneous speed changes (mm/min) RAILs M566 U900.00 V900.00 W900.00 A900.00 B900.00 C900.00 D900.00; ?900.00 ?900.00 ; set maximum instantaneous speed changes (mm/min) PODs ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; M203: Set maximum feedrate mm/minute ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M203_Set_maximum_feedrate M203 X9000 Y9000 Z9000 ; RAILs M203 U9000 V9000 W9000 A9000 B9000 C9000 D9000 ; ?4000 ?4000; PODs ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ;M201: Set max acceleration mm/s^2 ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M201_Set_max_acceleration M201 X6000 Y6000 Z6000 ; RAILs M201 U4000 V4000 W4000 A4000 B4000 C4000 D4000 ; ?4000 ?4000; PODs ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ;M906: Set motor currents ;https://duet3d.dozuki.com/Wiki/Gcode#Section_M906_Set_motor_currents M906 X800 Y800 Z800 I30 ; set motor currents (mA) and motor idle factor in per cent RAILs M906 U800 V800 W800 A800 B800 C800 D800 I30; PODs ;M906 ?800 I30 ;M906 ?800 I30 ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; M84: Stop idle hold ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M84_Stop_idle_hold M84 X Y Z S30 ; Set idle timeout, 30 seconds RAILs M84 U V W A B C D S30 ; PODs ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; M208: Set axis max travel ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M208_Set_axis_max_travel M208 X0 Y0 Z0 S1 ; set axis minima RAILs M208 X2000 Y2000 Z2000 S0 ; set axis maxima RAILs M208 U0 V0 W0 A0 B0 C0 D0 S1 ; set axis minima left PODs M208 U3000 V3000 W3000 A3000 B3000 C3000 D3000 S0 ; set axis maxima left PODs ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ; Endstops ; M574: Set endstop configuration ; https://duet3d.dozuki.com/Wiki/Gcode#Section_M574_RepRapFirmware_Num_3 ; RAIL & POD endstop switches are normally open NO magnetic reed switches. BAD, inform client ! ; The switches close when in proximity of a magnet, i.e HOME LOW position ; Xnnn Position of X endstop: 0 = none, 1 = low end, 2 = high end. ; endstops at low end of travel, hence S1 ; Possible combinations ; 0.io0.in logivc level , no pullup resistor ; ^0.io0.in active high, pullup resistor ; !0.io0.in active low ; ^!0.io0.in active low, pullup resistor <= try this one ; 6HC Board 0 M574 X1 S1 P"^!io0.in" M574 Y1 S1 P"^!io1.in" M574 Z1 S1 P"^!io2.in" M574 U1 S1 P"^!io3.in" M574 V1 S1 P"^!io4.in" M574 W1 S1 P"^!io5.in" ; 3HC Board 1 M574 A1 S1 P"^!1.io0.in" M574 B1 S1 P"^!1.io1.in" M574 C1 S1 P"^!1.io2.in" ; 3HC Board 2 M574 D1 S1 P"^!2.io0.in" ;M574 ?1 S1 P"^!2.io1.in" ;M574 ?1 S1 P"^!2.io2.in" ; 3HC Board 3 ;M574 ?1 S1 P"^!3.io0.in" ;M574 ?1 S1 P"^!3.io1.in" ;M574 ?1 S1 P"^!3.io2.in" ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ;M563 ;M453 ;T0 ; select first tool M564 S0 H0 ; ignore end stops for development
Any ideas Guys ?
I got a load of these and they work. Nice and cheap.
1mtr long, just coiled up the excess.
CAN-FD on the duet uses the two center wires, 1:1, no cross over.
The driver chips don't need heatsinks. If you need extra cooling, use a fan to blow air lengthways along the board, especially the back.
Thanks, I''ll arrange for a gentle breeze for the 1 x 6HC, 2 x 3HC, 4 x 1XD
@JuJuDelta Why would You want to cool TMC5160 when they have external mosfets?
Doh ! Yes of course, just looked at the schematics !
(Must have been thinking about another older project)
Many thanks for your reply David !
I will inform my customer he will have to wait for the update, but it's coming.
I will assist him with firmware upgrade and implementation.
(And now for the inevitable question all software developers hate....)
Do you have estimated timescale for release of 3.2 & 3.3 ?
I wish to drive 12 (16) steppers as individual axes using Duet 3 products: 6HC & 2(4) off 3HC. Also support for 12(16) endstops.
CNC mode configuration.
I understand that at present the current stable firmare can drive 10 axes: XYZ UVW ABCD
I have read in other threads that it is possible to rebuild the firmware from the GitHub repository, assuming the correct Eclipse IDE, environment and C compilers are installed.
My question is how difficult would it to add the additional axes. I do not need to use any "industry standard" G-Code naming convention for the axes.
The G-Code i need to execute moves 3 parallel rails, and there are 3 movable pods on each rail. Hence 12 total steppers/axes that ideally are independently controlled.
Sample G-Code snippet:
;move 4 rails labelled RA, RB RC & RD to coords. Rail feed rate RF, Pod feed rate PF
G06 RA 0 RB 150 RC 600 RD 1150 RF 1300 PF 300
; move the 4 pods on each rail: Rail A: A1, A2, A3, A4
; move the 4 pods on each rail: Rail B: B1, B2, B3, B4
; move the 4 pods on each rail: Rail C1, C2, C3, C4
; move the 4 pods on each rail: Rail D1, D2, D3, D4
I would prefer independent control of each pod, even if they end up at same linear co-ordinate i.e not map multiple steppers to one axis (virtual paralleling)
G06 A1 0 A2 500 A3 1000 A4 2880
G06 B1 0 B2 500 B3 1000 B4 1500
G06 C1 0 C2 500 C3 1000 C4 2880
G06 D1 0 D2 500 D3 1000 D4 1500
I expect some work would be needed on the DWC web visualisation also.
I do have experience in embedded code development, C, Eclipse IDE etc.
But would this be beyond the ability of say a 2nd year Undergraduate Intern 3 month project ?
Can someone please point me to the source code module filenames that are involved with maximum number of axes.
I have looked in these threads so far:
I'd appreciate your comments, especially if it's impossible.
@CaLviNx said in NOBODY USE RJ11, IT IS 2020 !! PLEASE USE RJ45 LIKE EVERYONE !!!:
No don't plug it in there !
With respect to Duet3, I personally think it's a good idea to have RJ11 for the CAN and RJ45 for the Ethernet. Stops me putting things in the wrong hole !
Remember Duet3 CAN wiring is 1:1 on the RJ11.
Cross over cables often come bundled with modems etc.
RJ11 lives matter.
Forgive me for stating the obvious, or if you have checked already:
DSL cables come in 2 flavours, 1:1 wiring and cross over.
The first few I grabbed out of my junk box were cross over, didn't work.
Wasted an hour debugging.
1:1 is needed for Duet 3