@developeralgo222 @dc42 & @droftarts Finally got this fixed . The issue was bad cable /connection from 6XD to Expansion Board 1 of 3HC . Never trust any cables from China , OMG when i decided to splice them , they are really crappy no shields and no proper insulations per pair. Buyer be aware.Have seen this in many chinese made products on Amazon.
developeralgo222
@developeralgo222
AI , Bitaxe , Jabit, Hardware and Software engineering
Best posts made by developeralgo222
-
RE: Duet 3HC Expansion looses Connection
-
RE: Duet 3HC Expansion looses Connection
@droftarts said in Duet 3HC Expansion looses Connection:
@developeralgo222 Yes, that is correct. The three V- terminals on each power supply are basically one output, they are linked to the same rail. Use a decent sized gauge of wire, at least as big as the other power wires.
I asked @dc42 the other day if your problem might be down to an issue with shared ground. I hadn't spotted that you are using two PSUs. However, I thought the CAN bus was pretty tolerant of this sort of thing, but maybe not.
Ian
connected the cable ,now they are syncing without any timeouts
M122 B1 Diagnostics for board 1: Duet EXP3HC rev 1.02 or later firmware version 3.5.0-rc.2 (2023-12-14 08:56:47) Bootloader ID: SAME5x bootloader version 2.4 (2021-12-10) All averaging filters OK Never used RAM 156976, free system stack 202 words Tasks: Move(3,nWait,0.0%,182) HEAT(2,nWait,0.0%,138) CanAsync(5,nWait,0.0%,67) CanRecv(3,nWait,0.0%,80) CanClock(5,nWait,0.0%,70) TMC(2,nWait,5.7%,103) MAIN(1,running,93.1%,413) IDLE(0,ready,0.0%,39) AIN(2,delaying,1.1%,263), total 100.0% Last reset 00:00:42 ago, cause: power up Last software reset data not available Driver 0: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 35139, writes 11 timeouts 0, steps req 0 done 0 Driver 1: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 35139, writes 11 timeouts 0, steps req 0 done 0 Driver 2: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 35140, writes 11 timeouts 0, steps req 0 done 0 Moves scheduled 0, completed 0, in progress 0, hiccups 0, segs 0, step errors 0, maxLate 0 maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0, ebfmin 0.00 max 0.00 Peak sync jitter -4/5, peak Rx sync delay 156, resyncs 0/0, no timer interrupt scheduled VIN voltage: min 24.2, current 24.2, max 24.2 V12 voltage: min 12.4, current 12.4, max 12.4 MCU temperature: min 17.9C, current 20.5C, max 20.5C Last sensors broadcast 0x00000000 found 0 142 ticks ago, 0 ordering errs, loop time 0 CAN messages queued 364, send timeouts 0, received 221, lost 0, errs 54, boc 0, free buffers 38, min 38, error reg 360000 dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0 ok M122 B2 Diagnostics for board 2: Duet EXP3HC rev 1.02 or later firmware version 3.5.0-rc.2 (2023-12-14 08:56:47) Bootloader ID: SAME5x bootloader version 2.4 (2021-12-10) All averaging filters OK Never used RAM 156976, free system stack 202 words Tasks: Move(3,nWait,0.0%,182) HEAT(2,nWait,0.0%,120) CanAsync(5,nWait,0.0%,67) CanRecv(3,nWait,0.0%,80) CanClock(5,nWait,0.0%,70) TMC(2,nWait,5.7%,103) MAIN(1,running,93.1%,436) IDLE(0,ready,0.0%,39) AIN(2,delaying,1.1%,263), total 100.0% Last reset 00:00:46 ago, cause: power up Last software reset data not available Driver 0: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 48746, writes 11 timeouts 0, steps req 0 done 0 Driver 1: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 48746, writes 11 timeouts 0, steps req 0 done 0 Driver 2: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 48747, writes 11 timeouts 0, steps req 0 done 0 Moves scheduled 0, completed 0, in progress 0, hiccups 0, segs 0, step errors 0, maxLate 0 maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0, ebfmin 0.00 max 0.00 Peak sync jitter -5/7, peak Rx sync delay 157, resyncs 0/0, no timer interrupt scheduled VIN voltage: min 24.3, current 24.3, max 24.3 V12 voltage: min 12.3, current 12.3, max 12.4 MCU temperature: min 21.1C, current 23.9C, max 23.9C Last sensors broadcast 0x00000000 found 0 133 ticks ago, 0 ordering errs, loop time 0 CAN messages queued 392, send timeouts 0, received 239, lost 0, errs 57, boc 0, free buffers 38, min 38, error reg 3a0000 dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0 ok M122 B3 Diagnostics for board 3: Duet EXP3HC rev 1.02 or later firmware version 3.5.0-rc.2 (2023-12-14 08:56:47) Bootloader ID: SAME5x bootloader version 2.4 (2021-12-10) All averaging filters OK Never used RAM 156976, free system stack 202 words Tasks: Move(3,nWait,0.0%,182) HEAT(2,nWait,0.0%,120) CanAsync(5,nWait,0.0%,67) CanRecv(3,nWait,0.0%,80) CanClock(5,nWait,0.0%,70) TMC(2,nWait,5.7%,103) MAIN(1,running,93.1%,424) IDLE(0,ready,0.0%,39) AIN(2,delaying,1.1%,263), total 100.0% Last reset 00:00:53 ago, cause: power up Last software reset data not available Driver 0: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 10560, writes 11 timeouts 0, steps req 0 done 0 Driver 1: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 10560, writes 11 timeouts 0, steps req 0 done 0 Driver 2: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 10561, writes 11 timeouts 0, steps req 0 done 0 Moves scheduled 0, completed 0, in progress 0, hiccups 0, segs 0, step errors 0, maxLate 0 maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0, ebfmin 0.00 max 0.00 Peak sync jitter -7/6, peak Rx sync delay 155, resyncs 0/0, no timer interrupt scheduled VIN voltage: min 24.2, current 24.2, max 24.2 V12 voltage: min 12.3, current 12.3, max 12.4 MCU temperature: min 21.1C, current 23.8C, max 23.8C Last sensors broadcast 0x00000000 found 0 143 ticks ago, 0 ordering errs, loop time 0 CAN messages queued 448, send timeouts 0, received 275, lost 0, errs 60, boc 0, free buffers 38, min 38, error reg 3c0000 dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0 ok M122 B4 Diagnostics for board 4: Duet EXP3HC rev 1.02 or later firmware version 3.5.0-rc.2 (2023-12-14 08:56:47) Bootloader ID: SAME5x bootloader version 2.4 (2021-12-10) All averaging filters OK Never used RAM 156976, free system stack 204 words Tasks: Move(3,nWait,0.0%,182) HEAT(2,nWait,0.0%,120) CanAsync(5,nWait,0.0%,67) CanRecv(3,nWait,0.0%,80) CanClock(5,nWait,0.0%,70) TMC(2,nWait,5.7%,103) MAIN(1,running,93.1%,429) IDLE(0,ready,0.0%,39) AIN(2,delaying,1.1%,263), total 100.0% Last reset 00:00:55 ago, cause: power up Last software reset data not available Driver 0: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 21146, writes 11 timeouts 0, steps req 0 done 0 Driver 1: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 21147, writes 11 timeouts 0, steps req 0 done 0 Driver 2: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 21147, writes 11 timeouts 0, steps req 0 done 0 Moves scheduled 0, completed 0, in progress 0, hiccups 0, segs 0, step errors 0, maxLate 0 maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0, ebfmin 0.00 max 0.00 Peak sync jitter -5/4, peak Rx sync delay 153, resyncs 0/0, no timer interrupt scheduled VIN voltage: min 24.2, current 24.3, max 24.3 V12 voltage: min 12.4, current 12.4, max 12.4 MCU temperature: min 21.6C, current 24.4C, max 24.4C Last sensors broadcast 0x00000000 found 0 110 ticks ago, 0 ordering errs, loop time 0 CAN messages queued 470, send timeouts 0, received 287, lost 0, errs 63, boc 0, free buffers 38, min 38, error reg 3f0000 dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0 ok M122 B0 === Diagnostics === RepRapFirmware for Duet 3 MB6XD version 3.5.0-rc.2 (2023-12-14 10:33:00) running on Duet 3 MB6XD v1.01 or later (standalone mode) Board ID: 0JD2M-999AL-D25S0-7J9DA-3SJ6S-T43V2 Used output buffers: 1 of 40 (7 max) === RTOS === Static ram: 153284 Dynamic ram: 117344 of which 0 recycled Never used RAM 72508, free system stack 176 words Tasks: NETWORK(1,ready,105.3%,182) ETHERNET(5,nWait,0.0%,312) HEAT(3,nWait,0.0%,369) Move(4,nWait,0.0%,340) CanReceiv(6,nWait,0.0%,797) CanSender(5,nWait,0.0%,334) CanClock(7,delaying,0.0%,342) MAIN(1,running,226.8%,444) IDLE(0,ready,2.7%,30), total 334.8% Owned mutexes: USB(MAIN) === Platform === Last reset 02:16:05 ago, cause: power up Last software reset at 2024-01-15 20:32, reason: User, Gcodes spinning, available RAM 72304, slot 2 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x00 MCU temperature: min 25.5, current 42.1, max 42.7 Supply voltage: min 0.1, current 24.0, max 24.7, under voltage events: 0, over voltage events: 0, power good: yes 12V rail voltage: min 0.1, current 12.2, max 12.2, under voltage events: 0 Heap OK, handles allocated/used 99/0, heap memory allocated/used/recyclable 2048/12/12, gc cycles 0 Events: 0 queued, 0 completed Driver 0: ok Driver 1: ok Driver 2: ok Driver 3: ok Driver 4: ok Driver 5: ok Date/time: 1970-01-01 00:00:00 Slowest loop: 21.40ms; fastest: 0.07ms === Storage === Free file entries: 20 SD card 0 detected, interface speed: 25.0MBytes/sec SD card longest read time 2.5ms, write time 0.0ms, max retries 0 === Move === DMs created 125, segments created 0, maxWait 0ms, bed compensation in use: none, height map offset 0.000, max steps late 0, ebfmin 0.00, ebfmax 0.00 no step interrupt scheduled Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0 === DDARing 0 === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === DDARing 1 === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 === GCodes === Movement locks held by null, null HTTP is idle in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is ready with "M122 B0" in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 SBC is idle in state(s) 0 Daemon is idle in state(s) 0 Aux2 is idle in state(s) 0 Autopause is idle in state(s) 0 File2 is idle in state(s) 0 Queue2 is idle in state(s) 0 Q0 segments left 0, axes/extruders owned 0x0000000 Code queue 0 is empty Q1 segments left 0, axes/extruders owned 0x0000000 Code queue 1 is empty === CAN === Messages queued 40919, received 2240, lost 0, errs 39255999, boc 1404 Longest wait 2ms for reply type 6024, peak Tx sync delay 22911, free buffers 50 (min 49), ts 40828/341/0 Tx timeouts 0,0,39777,47,0,0 last cancelled message type 30 dest 127 === Network === Slowest loop: 0.47ms; fastest: 0.03ms Responder states: MQTT(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0) HTTP sessions: 0 of 8 = Ethernet = Interface state: active Error counts: 0 0 0 1 0 0 Socket states: 2 2 2 2 2 0 0 0 === Multicast handler === Responder is inactive, messages received 0, responses 0 ok
-
RE: Configs for PCB PnP for Duet3D 6XD and 3 x 3HC expansion boards
@droftarts said in Configs for PCB PnP for Duet3D 6XD and 3 x 3HC expansion boards:
@developeralgo222 said in [Configs for PCB PnP for Duet3D 6XD and 3 x 3HC expansion boards]
This sounds like the functionality that we need to replicate. Like I've said, the enable wires aren't connected on either of the links you sent. My best guess is that the enable signal isn't quite right, but it seems to work with Mach3 with enable disconnected. Disconnect the enable wires.@droftarts , i disconnected and the ENABLE Wires from the External Drive and the Duet 6XD and that did the trick. Now i am able to move X and Y -axis Motors now
-
RE: Duet 3 3HC to external DM542 Driver and a Stepper Motor
The 6HC, 3HC, and 1HCL internally derive the STEP/DIR/etc and can directly control the phases of the stepper motors - like you said, you can connect the A+ to A+, A- to A-, B+ to B+, and B- to B- to directly drive the stepper motors.
This is helpful to know that 3HC internally derive the STEP/DIR/etc and can directly control the phases of the stepper motors and i don't need the External Drivers for fine tunning microsteps of STEP/DIR/ENA etc
-
RE: Duet 3HC Expansion looses Connection
@oliof said in Duet 3HC Expansion looses Connection:
@developeralgo222 and just to be sure, termination only happens on the last 3HC in the chain?
Yes
-
RE: Duet 3HC Expansion looses Connection
@infiniteloop said in Duet 3HC Expansion looses Connection:
Decided to retest the isolated boards (Test bench setup )
Thank you for the tests. Looks like some meters of CAN more or less make a difference - that’s not OK at all. Could you please run two quick tests on the bench, both starting with the setup as on the photo:
- physically swap 3HC boards #1 and #2 in the CAN chain, take the 15m cable to link the 6XD with 3HC2 (chaining 6XD -> 3HC2 -> 3HC1 -> 3HC3 -> 3HC4). No change of IDs. This is to see whether a different CAN port on at least one end of the connection with the 6XD makes a difference or not.
TEST 1
- Same Test with 0.5m and 4m Works OK, Syncs and No errors
- Same Test with 15m Kenable ADSL 2+ cable Does Not Work . Just reconnected errors and CAN timeout errors
...... 1/28/2024, 6:08:17 PM Error: Expansion board 3 reconnected 1/28/2024, 6:08:15 PM Error: Expansion board 4 reconnected ..... ... 1/28/2024, 6:11:03 PM M122 B0 === Diagnostics === RepRapFirmware for Duet 3 MB6XD version 3.5.0-rc.2 (2023-12-14 10:33:00) running on Duet 3 MB6XD v1.01 or later (standalone mode) Board ID: 0JD2M-999AL-D25S0-7J9DA-3SJ6S-T43V2 Used output buffers: 1 of 40 (29 max) === RTOS === Static ram: 153284 Dynamic ram: 117412 of which 0 recycled Never used RAM 72440, free system stack 204 words Tasks: NETWORK(1,ready,29.1%,172) ETHERNET(5,nWait,0.1%,323) HEAT(3,nWait,0.0%,369) Move(4,nWait,0.0%,340) CanReceiv(6,nWait,0.0%,795) CanSender(5,nWait,0.0%,334) CanClock(7,delaying,0.0%,342) MAIN(1,running,50.4%,444) IDLE(0,ready,20.4%,30), total 100.0% Owned mutexes: HTTP(MAIN) === Platform === Last reset 00:05:22 ago, cause: power up Last software reset at 2024-01-19 15:33, reason: User, Gcodes spinning, available RAM 71300, slot 0 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x00 MCU temperature: min 30.5, current 42.7, max 42.9 Supply voltage: min 23.9, current 24.0, max 24.0, under voltage events: 0, over voltage events: 0, power good: yes 12V rail voltage: min 12.1, current 12.2, max 12.2, under voltage events: 0 Heap OK, handles allocated/used 99/0, heap memory allocated/used/recyclable 2048/12/12, gc cycles 0 Events: 265 queued, 265 completed Driver 0: ok Driver 1: ok Driver 2: ok Driver 3: ok Driver 4: ok Driver 5: ok Date/time: 2024-01-28 18:11:00 Slowest loop: 1200.90ms; fastest: 0.07ms === Storage === Free file entries: 20 SD card 0 detected, interface speed: 25.0MBytes/sec SD card longest read time 2.8ms, write time 0.0ms, max retries 0 === Move === DMs created 125, segments created 0, maxWait 0ms, bed compensation in use: none, height map offset 0.000, max steps late 0, ebfmin 0.00, ebfmax 0.00 no step interrupt scheduled Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0 === DDARing 0 === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === DDARing 1 === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 === GCodes === Movement locks held by null, null HTTP is ready with "M122 B0" in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 SBC is idle in state(s) 0 Daemon is idle in state(s) 0 Aux2 is idle in state(s) 0 Autopause is idle in state(s) 0 File2 is idle in state(s) 0 Queue2 is idle in state(s) 0 Q0 segments left 0, axes/extruders owned 0x0000000 Code queue 0 is empty Q1 segments left 0, axes/extruders owned 0x0000000 Code queue 1 is empty === CAN === Messages queued 1972, received 923, lost 0, errs 12242198, boc 0 Longest wait 0ms for reply type 0, peak Tx sync delay 0, free buffers 50 (min 49), ts 1614/0/0 Tx timeouts 0,0,1613,58,0,298 last cancelled message type 30 dest 127 === Network === Slowest loop: 7.24ms; fastest: 0.03ms Responder states: MQTT(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0) HTTP sessions: 1 of 8 = Ethernet = Interface state: active Error counts: 0 0 0 1 0 0 Socket states: 5 5 2 2 2 0 0 0 === Multicast handler === Responder is inactive, messages received 0, responses 0 1/28/2024, 6:11:03 PM Error: Expansion board 4 reconnected 1/28/2024, 6:11:00 PM CAN response timeout: board 4, req type 6024, RID 58 Error: Expansion board 4 reconnected Error: Expansion board 4 reconnected 1/28/2024, 6:10:59 PM M122 B4 ......... ......... Error: Expansion board 4 reconnected 1/28/2024, 6:10:58 PM Error: Expansion board 4 reconnected ............ 1/28/2024, 6:10:56 PM CAN response timeout: board 3, req type 6024, RID 57 Error: Expansion board 4 reconnected Error: Expansion board 2 stopped sending status 1/28/2024, 6:10:54 PM M122 B3 ............ ............ Error: Expansion board 4 reconnected 1/28/2024, 6:10:53 PM Error: Expansion board 4 reconnected ...... ...... 1/28/2024, 6:10:52 PM CAN response timeout: board 2, req type 6024, RID 56 1/28/2024, 6:10:50 PM M122 B2 ....... 1/28/2024, 6:10:50 PM Error: Expansion board 4 reconnected Error: Expansion board 4 reconnected ....... 1/28/2024, 6:10:49 PM Error: Expansion board 2 stopped sending status ...... 1/28/2024, 6:10:46 PM M122 B1 CAN response timeout: board 1, req type 6024, RID 55
TEST 2:
- again starting with the initial arrangement, replace the short cable between 3HC3 and 3HC4 with the 15m one. The result might indicate a problem with either the overall length of the CAN bus, or the position of the long section within the chain of boards.
For both tests, would you mind to post the M122 reports (if available)?
NOTE: i can confirm that we might have an Issue with CAN Bus cable Length . If this can be reproduced by someone else then its bad news.
- Same Test with 0.5m and 4m Works OK, Syncs and No errors
- Same Test with 15m Kenable ADSL 2+ cable Does Not Work ,
Where 6XD-->0.5m-->3HC1 -->0.5m-->3HC2-->0.5m-->3HC3-->15m-->3HC4
- 6XD-->0.5m-->3HC1 -->0.5m-->3HC2-->0.5m-->3HC3 All Sync except 3HC4 Which has 15m kenable ADSL 2+ cable connected between 3HC3 and 3HC4
1/28/2024, 6:34:08 PM M122 B4 CAN response timeout: board 4, req type 6024, RID 82 1/28/2024, 6:34:04 PM M122 B3 Diagnostics for board 3: Duet EXP3HC rev 1.02 or later firmware version 3.5.0-rc.2 (2023-12-14 08:56:47) Bootloader ID: SAME5x bootloader version 2.8 (2023-07-25) All averaging filters OK Never used RAM 156832, free system stack 194 words Tasks: Move(3,nWait,0.0%,182) HEAT(2,nWait,0.0%,120) CanAsync(5,nWait,0.0%,67) CanRecv(3,nWait,0.0%,80) CanClock(5,nWait,0.0%,70) TMC(2,nWait,6.0%,103) MAIN(1,running,92.8%,391) IDLE(0,ready,0.0%,39) AIN(2,delaying,1.2%,263), total 100.0% Last reset 00:06:57 ago, cause: power up Last software reset data not available Driver 0: pos 0, 8.9 steps/mm, standstill, SG min 0, mspos 8, reads 48852, writes 17 timeouts 0, steps req 0 done 0 Driver 1: pos 0, 8.9 steps/mm, standstill, SG min 0, mspos 8, reads 48853, writes 17 timeouts 0, steps req 0 done 0 Driver 2: pos 0, 8.9 steps/mm, standstill, SG min 0, mspos 8, reads 48854, writes 17 timeouts 0, steps req 0 done 0 Moves scheduled 0, completed 0, in progress 0, hiccups 0, segs 0, step errors 0, maxLate 0 maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0, ebfmin 0.00 max 0.00 Peak sync jitter -4/13, peak Rx sync delay 182, resyncs 0/0, no timer interrupt scheduled VIN voltage: min 24.2, current 24.3, max 24.3 V12 voltage: min 12.3, current 12.3, max 12.4 MCU temperature: min 22.6C, current 29.6C, max 29.6C Last sensors broadcast 0x00000000 found 0 148 ticks ago, 0 ordering errs, loop time 0 CAN messages queued 3382, send timeouts 0, received 2066, lost 0, errs 14241581, boc 0, free buffers 38, min 38, error reg ffff00 dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0 1/28/2024, 6:34:01 PM M122 B2 Diagnostics for board 2: Duet EXP3HC rev 1.02 or later firmware version 3.5.0-rc.2 (2023-12-14 08:56:47) Bootloader ID: SAME5x bootloader version 2.8 (2023-07-25) All averaging filters OK Never used RAM 156832, free system stack 194 words Tasks: Move(3,nWait,0.0%,182) HEAT(2,nWait,0.0%,120) CanAsync(5,nWait,0.0%,67) CanRecv(3,nWait,0.0%,80) CanClock(5,nWait,0.0%,70) TMC(2,nWait,6.0%,103) MAIN(1,running,92.8%,393) IDLE(0,ready,0.0%,39) AIN(2,delaying,1.2%,263), total 100.0% Last reset 00:06:54 ago, cause: power up Last software reset data not available Driver 0: pos 0, 8.9 steps/mm, standstill, SG min 0, mspos 8, reads 38393, writes 17 timeouts 0, steps req 0 done 0 Driver 1: pos 0, 8.9 steps/mm, standstill, SG min 0, mspos 8, reads 38393, writes 17 timeouts 0, steps req 0 done 0 Driver 2: pos 0, 8.9 steps/mm, standstill, SG min 0, mspos 8, reads 38394, writes 17 timeouts 0, steps req 0 done 0 Moves scheduled 0, completed 0, in progress 0, hiccups 0, segs 0, step errors 0, maxLate 0 maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0, ebfmin 0.00 max 0.00 Peak sync jitter -11/10, peak Rx sync delay 183, resyncs 0/0, no timer interrupt scheduled VIN voltage: min 24.2, current 24.2, max 24.3 V12 voltage: min 12.3, current 12.3, max 12.4 MCU temperature: min 23.2C, current 30.8C, max 31.0C Last sensors broadcast 0x00000000 found 0 128 ticks ago, 0 ordering errs, loop time 0 CAN messages queued 3360, send timeouts 0, received 2052, lost 0, errs 14147821, boc 0, free buffers 38, min 38, error reg ffff00 dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0 1/28/2024, 6:33:59 PM M122 B1 Diagnostics for board 1: Duet EXP3HC rev 1.02 or later firmware version 3.5.0-rc.2 (2023-12-14 08:56:47) Bootloader ID: SAME5x bootloader version 2.8 (2023-07-25) All averaging filters OK Never used RAM 156904, free system stack 194 words Tasks: Move(3,nWait,0.0%,182) HEAT(2,nWait,0.0%,120) CanAsync(5,nWait,0.0%,67) CanRecv(3,nWait,0.0%,80) CanClock(5,nWait,0.0%,70) TMC(2,nWait,6.0%,103) MAIN(1,running,92.8%,413) IDLE(0,ready,0.0%,39) AIN(2,delaying,1.2%,263), total 100.0% Last reset 00:06:52 ago, cause: power up Last software reset data not available Driver 0: pos 0, 20.0 steps/mm, standstill, SG min 0, mspos 8, reads 28357, writes 17 timeouts 0, steps req 0 done 0 Driver 1: pos 0, 20.0 steps/mm, standstill, SG min 0, mspos 8, reads 28357, writes 17 timeouts 0, steps req 0 done 0 Driver 2: pos 0, 20.0 steps/mm, standstill, SG min 0, mspos 8, reads 28358, writes 17 timeouts 0, steps req 0 done 0 Moves scheduled 0, completed 0, in progress 0, hiccups 0, segs 0, step errors 0, maxLate 0 maxPrep 0, maxOverdue 0, maxInc 0, mcErrs 0, gcmErrs 0, ebfmin 0.00 max 0.00 Peak sync jitter -5/15, peak Rx sync delay 180, resyncs 0/0, no timer interrupt scheduled VIN voltage: min 24.1, current 24.1, max 24.2 V12 voltage: min 12.4, current 12.4, max 12.4 MCU temperature: min 20.5C, current 26.3C, max 26.3C Last sensors broadcast 0x00000000 found 0 16 ticks ago, 0 ordering errs, loop time 0 CAN messages queued 3343, send timeouts 0, received 2042, lost 0, errs 14059073, boc 0, free buffers 38, min 38, error reg ffff00 dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0 1/28/2024, 6:33:56 PM M122 B0 === Diagnostics === RepRapFirmware for Duet 3 MB6XD version 3.5.0-rc.2 (2023-12-14 10:33:00) running on Duet 3 MB6XD v1.01 or later (standalone mode) Board ID: 0JD2M-999AL-D25S0-7J9DA-3SJ6S-T43V2 Used output buffers: 1 of 40 (29 max) === RTOS === Static ram: 153284 Dynamic ram: 117916 of which 0 recycled Never used RAM 71936, free system stack 202 words Tasks: NETWORK(1,ready,35.2%,172) ETHERNET(5,nWait,0.1%,317) HEAT(3,nWait,0.0%,369) Move(4,nWait,0.0%,340) CanReceiv(6,nWait,0.0%,797) CanSender(5,nWait,0.0%,334) CanClock(7,delaying,0.0%,350) MAIN(1,running,64.4%,444) IDLE(0,ready,0.3%,30), total 100.0% Owned mutexes: HTTP(MAIN) === Platform === Last reset 00:06:49 ago, cause: power up Last software reset at 2024-01-19 15:33, reason: User, Gcodes spinning, available RAM 71300, slot 0 Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task MAIN Freestk 0 n/a Error status: 0x00 MCU temperature: min 28.3, current 42.7, max 42.7 Supply voltage: min 24.0, current 24.0, max 24.1, under voltage events: 0, over voltage events: 0, power good: yes 12V rail voltage: min 12.1, current 12.2, max 12.2, under voltage events: 0 Heap OK, handles allocated/used 99/0, heap memory allocated/used/recyclable 2048/12/12, gc cycles 0 Events: 0 queued, 0 completed Driver 0: ok Driver 1: ok Driver 2: ok Driver 3: ok Driver 4: ok Driver 5: ok Date/time: 2024-01-28 18:33:55 Slowest loop: 5.37ms; fastest: 0.07ms === Storage === Free file entries: 20 SD card 0 detected, interface speed: 25.0MBytes/sec SD card longest read time 2.3ms, write time 0.0ms, max retries 0 === Move === DMs created 125, segments created 0, maxWait 0ms, bed compensation in use: none, height map offset 0.000, max steps late 0, ebfmin 0.00, ebfmax 0.00 no step interrupt scheduled Moves shaped first try 0, on retry 0, too short 0, wrong shape 0, maybepossible 0 === DDARing 0 === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === DDARing 1 === Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1 === Heat === Bed heaters -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0 === GCodes === Movement locks held by null, null HTTP is ready with "M122 B0" in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 SBC is idle in state(s) 0 Daemon is idle in state(s) 0 Aux2 is idle in state(s) 0 Autopause is idle in state(s) 0 File2 is idle in state(s) 0 Queue2 is idle in state(s) 0 Q0 segments left 0, axes/extruders owned 0x0000000 Code queue 0 is empty Q1 segments left 0, axes/extruders owned 0x0000000 Code queue 1 is empty === CAN === Messages queued 2108, received 9884, lost 0, errs 13969212, boc 96 Longest wait 30ms for reply type 6018, peak Tx sync delay 1586, free buffers 50 (min 49), ts 2047/1998/0 Tx timeouts 0,0,0,0,0,0 === Network === Slowest loop: 7.36ms; fastest: 0.03ms Responder states: MQTT(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0) Telnet(0) HTTP sessions: 1 of 8 = Ethernet = Interface state: active Error counts: 0 0 0 0 0 0 Socket states: 5 2 2 2 2 0 0 0 === Multicast handler === Responder is inactive, messages received 0, responses 0
I think further Testing with different Length using TEST 1 and 2 is required to rule out this issue of cable length. I have tried several self-made CAN Bus cables with different lengths around 4m to 5m and some work but some don't , i am assuming that my Network Cable craftmanship might not be the top notch ( BTW, i have always terminated all my own Network cables for over 25 years as an engineer). I assumed that Kenable ADSL 2+ cables should work in this case to rule out if its my cable termination work.
-
RE: Duet 3HC Expansion looses Connection
@gloomyandy said in Duet 3HC Expansion looses Connection:
@developeralgo222 Just to clarify, when you are using the boards individually are you enabling the termination resistors on the 3HC boards that is being tested?
Yes , Each 3HC board is CAN Bus terminated when testing individually.
-
RE: Wiring Multiple Endstops in Parallel or Series with Duet 6XD
@droftarts
i did define the wrong pins. The correct pins areI am able to move the X and Y-axis to homing points except the triggers or Endstops were not working correctly. I will update as per your advice and comment out the endstop lines for X and Y axis in the config.g and just leave Trigger 1 then test again
Updated Config.g Snapshot
On trigger 1 for X and Y-axis and commented out Endstops for X and Y-axis; Triggers -- Two triggers, one for X and one for Y, and set them to pause the machine M950 J1 C"!0.io0.in" ; define Trigger input pin #1 on IO_0 M950 J2 C"!0.io1.in" ; define Trigger input pin #2 on IO_1 M581 T1 P1:2 S1 R0 ; invoke trigger 1 (pause) when an inactive-to-active edge (correct for NO switches) is detected on input 1 or input 2 at any time ; Endstops ; For X and Y Axis ;M574 X1 S1 P"!0.io0.in" ; configure active high endstop switch for low end on X via pin io0.in ;M574 Y1 S1 P"!0.io1.in" ; configure active high endstop switch for low end on Y via pin io1.in
Updated homex.g
; homex.g ; called to home the X axis ; Undefine any Triggers for X and Y-axis M950 J1 C"nil" ; undefine X axis limit switch triggers M950 J2 C"nil" ; undefine Y axis limit switch triggers ;Define The Triggers for X and Y-axis M574 X1 S1 P"0.io0.in" ; define X axis endstop, minimum end M574 Y1 S1 P"0.io1.in" ; define Y axis endstop, minimum end ; Home X-Axis G91 ; relative positioning G1 H2 X0 ; move X-axis Minimum Homing endstop and stop there (first pass) G1 H2 X-1575 F1800 ; move quickly to X-axis Maximum endstop and stop there (first pass) G1 H2 X-15 F6000 ; go back a few mm G1 H2 X-1575 F360 ; move slowly to X-axis Maximum endstop once more (second pass) G1 H2 X0 ; move back to X-axis Minimum Homing endstop and stop there (second pass) G92 X0 G90 ; absolute positioning ; M574 X0 M574 Y0 ; Triggers M950 J1 C"0.io0.in" M950 J2 C"0.io1.in"
Updated homey.g
; homey.g ; called to home the Y axis ; ; generated by RepRapFirmware Configuration Tool v3.3.16 on Tue Dec 05 2023 09:51:46 GMT-0500 (Eastern Standard Time) M950 J1 C"nil" ; undefine X axis limit switch triggers M950 J2 C"nil" ; undefine X axis limit switch triggers M574 X1 S1 P"!0.io0.in" ; define X axis endstop, minimum end M574 Y1 S1 P"!0.io1.in" ; define Y axis endstop, minimum end G91 ; relative positioning G1 H2 Y0 ; move Y-axis Minimum Homing endstop and stop there (first pass) G1 H2 Y2125 F1800 ; move quickly to Y-axis Maximum endstop and stop there (first pass) G1 H2 Y15 F6000 ; go back a few mm G1 H2 Y2125 F360 ; move slowly to Y-axis Maximum endstop once more (second pass) G1 H2 Y0 ; move back to Y-axis Minimum Homing endstop and stop there (second pass) G92 Y0 G90 ; absolute positioning M574 X0 M574 Y0 M950 J1 C"!0.io0.in" M950 J2 C"!0.io1.in"
@droftarts , Does this look correct to you ?
Latest posts made by developeralgo222
-
RE: Reading Sensor Pressure from Analog output
@infiniteloop Thanks guys for the help i will test it this weekend
-
RE: Reading Sensor Pressure from Analog output
currently i only have
M308 S1 P"2.io0.in" Y"linear-analog" A"VG1" F0 B0.0 C-101 V0.0 U0.0
i am not using U & V as @dc42 mentioned above.
If i understand what you explained above would this work for the subset range
i will test it but would this work as my start of testing
M308 S1 P"2.io0.in" Y"linear-analog" A"VG1" F0 B22 C-123 V0.0 U0.0
OR
M308 S1 P"2.io0.in" Y"linear-analog" A"VG1" F0 B22 C-101 V0.0 U0.0
and also do i need to include U & V values in the M308 command if both the values are at 0.0 ? or i can leave them out and just use B & C values like this and no worry about including U & V on the command
M308 S1 P"2.io0.in" Y"linear-analog" A"VG1" F0 B22 C-123
-
RE: Reading Sensor Pressure from Analog output
Managed to mount 12 resistors ( that i had in hand creating 6 Voltage Dividers ( 1.8K & 3.3K ) per connection and it seems to work read the values fine now . Now my issue is how to Calibrate it correctly .
Sensor Analog ( 1 ~ 5V) ===> Duet Analog ( 0 ~ 3V getting a Max of 3.24V) . Ideally probably i need to use 1.7K resistor so at get 3.3V or 1.6K resistor(assuming leakage or noise) to get 3.33V
@ 0 kPa on the Sensor ===> Duet reads -22 kPa
@ 40 kPa on Sensor ===> Duet reads -38 kPa
@ 55 kPa on Sensor ==> Duet reads -53 kPa
@ 65 kPa on Sensor ==> Duet reads -63 kPa
and so on
Not sure how to calibrate it correctly using U & V values for adjusted reading
-
RE: Reading Sensor Pressure from Analog output
i can't seem to get a good voltage divider to purchase that can handle 6 outlets. Do you have any link of any voltage divider that can do that and is being sold anywhere ? i don't have time to design one at the moment
-
RE: Reading Sensor Pressure from Analog output
@gloomyandy , ok will do that. Quick question, Do i need to connect a 10K resistor between the 3.3V converter source i.e Tie VA(3.3V) to OE then to 10K resistor to GND as per the TXS0108E Datasheet ?
-
RE: Reading Sensor Pressure from Analog output
@gloomyandy Yes i did before i plugged everything in . 5V on the High side and 3.3V on the low side. Let me just do it again to see if that changed with the load
-
RE: Reading Sensor Pressure from Analog output
@gloomyandy , Voltage divider is simple and works most of the time (Dividers tend to be unreliable sometimes when you need accuracy ) but i have 6 sensors that are connected and are being used as Vacuum Pressure Sensing Actuators for my Pick-and-Place machine . i need high accuracy and robust reliability , that's why i used a Voltage Level Shifter
-
RE: Reading Sensor Pressure from Analog output
@droftarts
Thanks Ian, i have tried connecting directly & through a level Shifter and none seems to work correctly .I am sure i am not the only one who has dealt or is dealing with this issue on Duet3 boards.
How to correctly read Pressure Sensor values either using a Digital NPN output signal ( 1 =True , 0=False) or Analog Voltage/Current Signal output ( Variable range ). i have made the connections and double checked everything but can't get it to work on Duet3 Boards but it works great on my Arduino and other boards no issues at all.
-
RE: Reading Sensor Pressure from Analog output
@gloomyandy . Any suggestion of a solution if a Logic level shifter is not the right solution ?
AFAIK, these are the recommended solutions to solve this issue. Are you suggesting anything different from this?
-
Voltage Divider ( simple but not robust)
-
Bi-directional Logic Level Shifter ( Robust )
-
Zener Diode Clamp
-
Opto-isolator
-
-
RE: Reading Sensor Pressure from Analog output
i have 6 ports connected to 6 sensors as indicated above ( Board 2 (3HC) = 2.io0.in , 2.io1.in , 2.io2.in & Board 3 (3HC) = 3.io0.in , 3.io1.in , 3.io2.in ) and they are all behaving the same way.
i have tried on the 6XD analog capable ports and they are behaving the same way too