Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    Duet 3HC Expansion looses Connection

    Scheduled Pinned Locked Moved Unsolved
    Duet Hardware and wiring
    10
    145
    6.3k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • developeralgo222undefined
      developeralgo222 @developeralgo222
      last edited by

      @developeralgo222
      @dc42 , @droftarts
      Noticing an interesting issue, when i moved the test setup 6XD plus 4x 3HC to the PNP Machine with only Power and CAN Bus Cables connected as before , it doesn't sync at all . The only thing that i changed is the length of the cable from 6XD to 3HC1( from 0.5 ft (shielded ) to 10 ft(shielded) . Everything else is the same , Nothing is plugged onto the boards except PWR & CAN Bus cables.

      Hmmmm!!! Not sure what to make of it now. I am thinking EMI issue. Most of my power & Comm cables are shielded cables.

      Does CAN Bus has a cable length limitation ?

      droftartsundefined dc42undefined 2 Replies Last reply Reply Quote 0
      • droftartsundefined
        droftarts administrators @developeralgo222
        last edited by

        @developeralgo222 The cables you have made up don't appear to fit into the RJ11 strain relief, so I'm not sure how much abuse (and I guess you've wiggled them around a lot recently) they are going to take before you start getting poor connections. As at least some of the problem has been solved by connecting V- of the PSUs, maybe try the pre-built cables you originally used, I think successfully?

        Max cable length depends on the data rate and the number of devices on the bus. We use 1Mbits/sec as the base data rate. Page 5 of http://www.ti.com/lit/an/slla270/slla270.pdf suggests 1Mbits/sec should be OK to 40m length. The data rate is configurable, see https://docs.duet3d.com/en/User_manual/Reference/Gcodes#m952-set-can-fd-expansion-board-address-andor-normal-data-rate. We have users with very large machines, some with CAN bus longer than 10m, without issue.

        As for EMI, I think the whole point of CAN is that it is resilient to noise. Additionally, cable shielding only works if one end of the shielding is grounded. Grounding both ends can cause signals in the shielding itself, and grounding neither end can cause reflections from the cable itself. The 6XD has a shield ground point by the Ethernet socket, but not by the CAN socket. I'm not sure if you can use any GND pin on the board for shield grounding, or if shielding has any special requirements.

        Ian

        Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

        developeralgo222undefined 1 Reply Last reply Reply Quote 0
        • developeralgo222undefined
          developeralgo222 @droftarts
          last edited by developeralgo222

          @droftarts said in Duet 3HC Expansion looses Connection:

          @developeralgo222 The cables you have made up don't appear to fit into the RJ11 strain relief, so I'm not sure how much abuse (and I guess you've wiggled them around a lot recently) they are going to take before you start getting poor connections. As at least some of the problem has been solved by connecting V- of the PSUs, maybe try the pre-built cables you originally used, I think successfully?

          Max cable length depends on the data rate and the number of devices on the bus. We use 1Mbits/sec as the base data rate. Page 5 of http://www.ti.com/lit/an/slla270/slla270.pdf suggests 1Mbits/sec should be OK to 40m length. The data rate is configurable, see https://docs.duet3d.com/en/User_manual/Reference/Gcodes#m952-set-can-fd-expansion-board-address-andor-normal-data-rate. We have users with very large machines, some with CAN bus longer than 10m, without issue.

          As for EMI, I think the whole point of CAN is that it is resilient to noise. Additionally, cable shielding only works if one end of the shielding is grounded. Grounding both ends can cause signals in the shielding itself, and grounding neither end can cause reflections from the cable itself. The 6XD has a shield ground point by the Ethernet socket, but not by the CAN socket. I'm not sure if you can use any GND pin on the board for shield grounding, or if shielding has any special requirements.

          Ian

          As for the CAN Bus cables i have checked and double checked them. I do have Fluke professional Cable tester that i use and they are ok. No issues there.

          I have no idea what the issue might be now. I have done every possible test that is recommended, rechecked every connection again and no working setup. I don't believe All 4 x Duet 3HC can be defective ? The only thing that comes to mind is that the Duet CAN Bus might be unreliable and not as tolerant as its expected to be

          infiniteloopundefined 1 Reply Last reply Reply Quote 0
          • infiniteloopundefined
            infiniteloop @developeralgo222
            last edited by

            @developeralgo222 To summarise, you got all Duets to sync on your test setup? They failed to sync completely when mounted on the PnP machine? You assume the only difference between both setups to be the CAN wiring - which you verified with your Fluke?

            At this point, it is safe to state that all Duets (the 6XD and 4x 3HC) work as expected - that’s proven by your test setup.

            The only thing that comes to mind is that the Duet CAN Bus might be unreliable and not as tolerant as its expected to be

            That’s exactly the single one topic to be ruled out for sure: with its dedicated controllers and a robust protocol, CAN is one of the most reliable communication means, even in harsh environments.

            The CAN cables on the PnP machine are tested good, but some issues still may exist: intermitted contact of the connectors, CAN bus termination, topology of your CAN wiring. To properly commission your setup, add one 3HC at a time and verify the sync. If it doesn’t work, replace the cable (temporarily) and check proper termination.

            As was the case with the initial fault - missing GND connection between the two PSUs - there might be „hidden“ issues lurking around as well. These are difficult to diagnose from a distance, so we have to rely on you to tell us the potentially relevant facts. One such example that comes to my mind is an improper mix of GND and Earth: this can lead to quite ”interesting” effects but is extremely difficult to spot.

            One question in this context: how do you provide VIN and GND to the 3HCs? With two lines each: PSU -> 3HC, with a common V– line, or V– on the machine’s frame?

            But first things first: Commissioning! Please add one 3HC at a time and report your findings.

            Good luck,
            mb

            developeralgo222undefined 1 Reply Last reply Reply Quote 1
            • developeralgo222undefined
              developeralgo222 @infiniteloop
              last edited by developeralgo222

              @infiniteloop said in Duet 3HC Expansion looses Connection:

              @developeralgo222 To summarise, you got all Duets to sync on your test setup? They failed to sync completely when mounted on the PnP machine? You assume the only difference between both setups to be the CAN wiring - which you verified with your Fluke?

              At this point, it is safe to state that all Duets (the 6XD and 4x 3HC) work as expected - that’s proven by your test setup.

              The only thing that comes to mind is that the Duet CAN Bus might be unreliable and not as tolerant as its expected to be

              That’s exactly the single one topic to be ruled out for sure: with its dedicated controllers and a robust protocol, CAN is one of the most reliable communication means, even in harsh environments.

              The CAN cables on the PnP machine are tested good, but some issues still may exist: intermitted contact of the connectors, CAN bus termination, topology of your CAN wiring. To properly commission your setup, add one 3HC at a time and verify the sync. If it doesn’t work, replace the cable (temporarily) and check proper termination.

              As was the case with the initial fault - missing GND connection between the two PSUs - there might be „hidden“ issues lurking around as well. These are difficult to diagnose from a distance, so we have to rely on you to tell us the potentially relevant facts. One such example that comes to my mind is an improper mix of GND and Earth: this can lead to quite ”interesting” effects but is extremely difficult to spot.

              One question in this context: how do you provide VIN and GND to the 3HCs? With two lines each: PSU -> 3HC, with a common V– line, or V– on the machine’s frame?

              But first things first: Commissioning! Please add one 3HC at a time and report your findings.

              Good luck,
              mb

              I know that CAN BUs protocol itself is very reliable from my expeience. I tested and added one board at a time as per previous posts. I have 2 x PSUs (24V,20A ) connected as per suggestions above & diagram above. Each of the VIN & GND from each 3HC to goes individual terminals pair on the PSUs ( i have 6XD, 3HC1, & 3HC2 on PSU1 and 3HC3 , 3HC4 on PSU2 )

              PSUs_Negative_Output_Connection.png

              After the test setup , moved everything to PnP Machine. As indicated above i tested each individual expansion 3HC board( 4 boards in total ) with nothing connected to them only power.

              6XD --> Board 1 (with CAN Jumpers) CAN_IN / CAN_OUT -- Sync

              6XD --> Board 2 (with CAN Jumpers) CAN_IN / CAN_OUT -- No Sync

              6XD --> Board 3 (with CAN Jumpers) CAN_IN / CAN_OUT -- No Sync

              6XD --> Board 4 (with CAN Jumpers) CAN_IN / CAN_OUT -- No Sync

              FYI:

              NOTE: i know it shouldn't be connected this way and it should not work . The CAN Bus Termination jumpers should only be on the Last 3HC board (which is board 4 in my case) in the Chain but to my surprise when i leave the CAN Bus termination Jumpers on each board and connect them , they sync without any issues

              @dc42, @infiniteloop, @droftarts , What's happening here , is this even supposed to work ? Termination on each board in the CAN Bus chain works ?

              1/19/2024, 9:51:42 AM:
              
              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: 117416 of which 0 recycled
              Never used RAM 72436, free system stack 191 words
              Tasks: NETWORK(1,ready,167.6%,182) ETHERNET(5,nWait,0.0%,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%,343) MAIN(1,running,349.0%,444) IDLE(0,ready,4.1%,30), total 520.7%
              Owned mutexes: HTTP(MAIN)
              === Platform ===
              Last reset 01:58:07 ago, cause: power up
              Last software reset at 2024-01-18 17:43, reason: User, Gcodes spinning, available RAM 72856, 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 25.6, current 41.5, max 42.8
              Supply voltage: min 0.3, 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: 8 queued, 8 completed
              Driver 0: ok
              Driver 1: ok
              Driver 2: ok
              Driver 3: ok
              Driver 4: ok
              Driver 5: ok
              Date/time: 2024-01-19 09:51:42
              Slowest loop: 10.11ms; fastest: 0.07ms
              === Storage ===
              Free file entries: 20
              SD card 0 detected, interface speed: 25.0MBytes/sec
              SD card longest read time 2.4ms, 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 35524, received 8481, lost 0, errs 64909191, boc 60488
              Longest wait 0ms for reply type 0, peak Tx sync delay 17202, free buffers 50 (min 49), ts 35439/1747/0
              Tx timeouts 0,0,3438,0,0,0 last cancelled message type 30 dest 127
              === Network ===
              Slowest loop: 5.67ms; 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 1 1 0 0
              Socket states: 5 2 2 2 2 0 0 0
              === Multicast handler ===
              Responder is inactive, messages received 0, responses 0
              
              
              1/19/2024, 9:51:45 AM: 
              
              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 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,5.8%,103) MAIN(1,running,93.1%,399) IDLE(0,ready,0.0%,39) AIN(2,delaying,1.1%,263), total 100.0%
              Last reset 00:09: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 60274, writes 11 timeouts 0, steps req 0 done 0
              Driver 1: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 60275, writes 11 timeouts 0, steps req 0 done 0
              Driver 2: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 60275, 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 180, resyncs 1/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 19.4C, current 28.7C, max 28.7C
              Last sensors broadcast 0x00000000 found 0 149 ticks ago, 0 ordering errs, loop time 0
              CAN messages queued 3092, send timeouts 232, received 1773, lost 0, errs 706207, boc 134, free buffers 38, min 38, error reg ff0000
              Last cancelled message type 4511 dest 0
              dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0
              
              
              
              1/19/2024, 9:51:47 AM: 
              
              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 194 words
              Tasks: Move(3,nWait,0.0%,182) HEAT(2,nWait,0.0%,114) CanAsync(5,nWait,0.0%,67) CanRecv(3,nWait,0.0%,80) CanClock(5,nWait,0.0%,70) TMC(2,nWait,5.8%,103) MAIN(1,running,93.1%,391) IDLE(0,ready,0.0%,39) AIN(2,delaying,1.1%,263), total 100.0%
              Last reset 00:09:49 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 2629, writes 11 timeouts 0, steps req 0 done 0
              Driver 1: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 2630, writes 11 timeouts 0, steps req 0 done 0
              Driver 2: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 2631, 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/4, peak Rx sync delay 182, 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.4, max 12.4
              MCU temperature: min 22.1C, current 32.3C, max 32.3C
              Last sensors broadcast 0x00000000 found 0 244 ticks ago, 0 ordering errs, loop time 0
              CAN messages queued 2486, send timeouts 319, received 1335, lost 0, errs 2290420, boc 2, free buffers 38, min 38, error reg ff0000
              Last cancelled message type 4519 dest 0
              dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0
              
              
              1/19/2024, 9:51:50 AM: 
              
              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 194 words
              Tasks: Move(3,nWait,0.0%,182) HEAT(2,nWait,0.0%,114) CanAsync(5,nWait,0.0%,67) CanRecv(3,nWait,0.0%,80) CanClock(5,nWait,0.0%,70) TMC(2,nWait,5.8%,103) MAIN(1,running,93.1%,421) IDLE(0,ready,0.0%,39) AIN(2,delaying,1.1%,263), total 100.0%
              Last reset 00:09:51 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 12506, writes 11 timeouts 0, steps req 0 done 0
              Driver 1: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 12507, writes 11 timeouts 0, steps req 0 done 0
              Driver 2: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 12508, 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 178, 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.9C, current 31.1C, max 31.3C
              Last sensors broadcast 0x00000000 found 0 171 ticks ago, 0 ordering errs, loop time 0
              CAN messages queued 2616, send timeouts 303, received 1263, lost 0, errs 1911382, boc 244, free buffers 38, min 38, error reg ff0000
              Last cancelled message type 4519 dest 0
              dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0
              
              
              1/19/2024, 9:51:54 AM: 
              
              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 194 words
              Tasks: Move(3,nWait,0.0%,182) HEAT(2,nWait,0.0%,114) CanAsync(5,nWait,0.0%,67) CanRecv(3,nWait,0.0%,80) CanClock(5,nWait,0.0%,70) TMC(2,nWait,5.8%,103) MAIN(1,running,93.0%,399) IDLE(0,ready,0.0%,39) AIN(2,delaying,1.1%,263), total 100.0%
              Last reset 00:09: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 26004, writes 11 timeouts 0, steps req 0 done 0
              Driver 1: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 26005, writes 11 timeouts 0, steps req 0 done 0
              Driver 2: pos 0, 80.0 steps/mm, standstill, SG min 0, mspos 8, reads 26006, 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/5, peak Rx sync delay 177, resyncs 0/0, no timer interrupt scheduled
              VIN voltage: min 24.2, current 24.2, max 24.3
              V12 voltage: min 10.9, current 12.4, max 12.4
              MCU temperature: min 21.9C, current 31.5C, max 31.5C
              Last sensors broadcast 0x00000000 found 0 235 ticks ago, 0 ordering errs, loop time 0
              CAN messages queued 3284, send timeouts 213, received 1169, lost 0, errs 5792377, boc 1162, free buffers 38, min 38, error reg ff0000
              Last cancelled message type 4519 dest 0
              dup 0, oos 0/0/0/0, bm 0, wbm 0, rxMotionDelay 0
              
              

              As per CAN Bus Protocol documentation, The CAN bus must be properly terminated using a 120 Ohms CAN bus termination resistor at each end of the bus.
              Looking at the explanations on CAN Bus, The resistance of the CAN bus terminal is usually 120 ohms. Two 60 ohm resistors are linked in series in the design, and there are usually two 120 ohm nodes on the CAN bus. This is how i think of it

              CAN_BUS.png

              infiniteloopundefined 1 Reply Last reply Reply Quote 0
              • dc42undefined
                dc42 administrators @developeralgo222
                last edited by

                @developeralgo222 said in Duet 3HC Expansion looses Connection:

                Noticing an interesting issue, when i moved the test setup 6XD plus 4x 3HC to the PNP Machine with only Power and CAN Bus Cables connected as before , it doesn't sync at all . The only thing that i changed is the length of the cable from 6XD to 3HC1( from 0.5 ft (shielded ) to 10 ft(shielded) .

                Almost certainly the 10ft cable is faulty. Have you checked that it doesn't have crossed connections between the two ends?

                @developeralgo222 said in Duet 3HC Expansion looses Connection:

                After the test setup , moved everything to PnP Machine. As indicated above i tested each individual expansion 3HC board( 4 boards in total ) with nothing connected to them only power.
                6XD --> Board 1 (with CAN Jumpers) CAN_IN / CAN_OUT -- Sync
                6XD --> Board 2 (with CAN Jumpers) CAN_IN / CAN_OUT -- No Sync
                6XD --> Board 3 (with CAN Jumpers) CAN_IN / CAN_OUT -- No Sync
                6XD --> Board 4 (with CAN Jumpers) CAN_IN / CAN_OUT -- No Sync

                Did you use the same cable between the 6XD and the 3HC in all cases?

                Duet WiFi hardware designer and firmware engineer
                Please do not ask me for Duet support via PM or email, use the forum
                http://www.escher3d.com, https://miscsolutions.wordpress.com

                developeralgo222undefined 1 Reply Last reply Reply Quote 1
                • developeralgo222undefined
                  developeralgo222 @dc42
                  last edited by developeralgo222

                  @dc42 said in Duet 3HC Expansion looses Connection:

                  @developeralgo222 said in Duet 3HC Expansion looses Connection:

                  Noticing an interesting issue, when i moved the test setup 6XD plus 4x 3HC to the PNP Machine with only Power and CAN Bus Cables connected as before , it doesn't sync at all . The only thing that i changed is the length of the cable from 6XD to 3HC1( from 0.5 ft (shielded ) to 10 ft(shielded) .

                  Almost certainly the 10ft cable is faulty. Have you checked that it doesn't have crossed connections between the two ends?

                  @developeralgo222 said in Duet 3HC Expansion looses Connection:

                  After the test setup , moved everything to PnP Machine. As indicated above i tested each individual expansion 3HC board( 4 boards in total ) with nothing connected to them only power.
                  6XD --> Board 1 (with CAN Jumpers) CAN_IN / CAN_OUT -- Sync
                  6XD --> Board 2 (with CAN Jumpers) CAN_IN / CAN_OUT -- No Sync
                  6XD --> Board 3 (with CAN Jumpers) CAN_IN / CAN_OUT -- No Sync
                  6XD --> Board 4 (with CAN Jumpers) CAN_IN / CAN_OUT -- No Sync

                  Did you use the same cable between the 6XD and the 3HC in all cases?

                  Used same cables except 6XD to 3HC1 where i used a longer cable 10ft

                  1 Reply Last reply Reply Quote 0
                  • infiniteloopundefined
                    infiniteloop @developeralgo222
                    last edited by

                    @developeralgo222

                    Termination on each board in the CAN Bus chain works ?

                    What @dc42 says. To test, throw-in some cheapo telephone lines (RJ11) and terminate CAN properly.

                    developeralgo222undefined 1 Reply Last reply Reply Quote 0
                    • developeralgo222undefined
                      developeralgo222 @infiniteloop
                      last edited by developeralgo222

                      @infiniteloop said in Duet 3HC Expansion looses Connection:

                      @developeralgo222

                      Termination on each board in the CAN Bus chain works ?

                      What @dc42 says. To test, throw-in some cheapo telephone lines (RJ11) and terminate CAN properly.

                      i will try another cable , probably a phone cable or another ADSL 2+ high speed cable to replace the 10 ft cable from 6XD to 3HC1 and see if that makes a difference .

                      infiniteloopundefined 1 Reply Last reply Reply Quote 0
                      • infiniteloopundefined
                        infiniteloop @developeralgo222
                        last edited by

                        @developeralgo222 said in Duet 3HC Expansion looses Connection:

                        i will try another cable

                        Great 😊

                        developeralgo222undefined 1 Reply Last reply Reply Quote 0
                        • developeralgo222undefined
                          developeralgo222 @infiniteloop
                          last edited by developeralgo222

                          @infiniteloop said in Duet 3HC Expansion looses Connection:

                          @developeralgo222 said in Duet 3HC Expansion looses Connection:

                          i will try another cable

                          Great 😊

                          Made 2 different straight cables which are shielded and 1 std phone cable (Normally crossed, so i cut one end and crimped it to straight cable ).

                          Cable 1 - Made from CAT 6 Cable (using only 2 pairs for CAN Bus --technically on 2 wires are used) and RJ11 at the ends
                          Cable 2 - Made from CAT 8 Cable (using only 2 pairs for CAN Bus --technically on 2 wires are used) and RJ11 at the ends
                          Cable 3 - Made from Std Phone Cable (using only 2 pairs for CAN Bus --technically on 2 wires are used) and RJ11 at the ends

                          All of them behaved the same when testing each of the 4 x 3HC boards with nothing connected to them only power.

                          6XD --> Board 1 (with CAN Jumpers) CAN_IN / CAN_OUT -- Sync

                          6XD --> Board 2 (with CAN Jumpers) CAN_IN / CAN_OUT -- No Sync

                          6XD --> Board 3 (with CAN Jumpers) CAN_IN / CAN_OUT -- No Sync

                          6XD --> Board 4 (with CAN Jumpers) CAN_IN / CAN_OUT -- No Sync

                          Not sure why CAN Bus would be this unreliable. For sure i checked the cables , tested them using a different cable tester ( Sperry ) this time to rule out anything. i don't think its the cables after this round of tests

                          IMG_1056.jpg IMG_1058.jpg

                          droftartsundefined infiniteloopundefined dc42undefined 3 Replies Last reply Reply Quote 0
                          • droftartsundefined
                            droftarts administrators @developeralgo222
                            last edited by

                            @developeralgo222 something to do with the mounting? You have them stacked, using what looks like electrically conductive standoffs. I don’t know if that connects the grounds of the boards at a point that causes problems, rather than at the PSUs. You could try powering all four boards (or all boards) from one PSU, see if that makes a difference.

                            Ian

                            Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                            developeralgo222undefined 1 Reply Last reply Reply Quote 0
                            • developeralgo222undefined
                              developeralgo222 @droftarts
                              last edited by developeralgo222

                              @droftarts said in Duet 3HC Expansion looses Connection:

                              @developeralgo222 something to do with the mounting? You have them stacked, using what looks like electrically conductive standoffs. I don’t know if that connects the grounds of the boards at a point that causes problems, rather than at the PSUs. You could try powering all four boards (or all boards) from one PSU, see if that makes a difference.

                              Ian

                              Hmmm!!! i don't think so unless the boards themselves have Power rail circuit layer (copper) touching the mounting holes . That would be really really bad. When i did the Test setup they were separated (Not mounted) although still on Brass standoffs. Your thought might be something to investigate , i will check that and try Nylon standoffs

                              1 Reply Last reply Reply Quote 0
                              • infiniteloopundefined
                                infiniteloop @developeralgo222
                                last edited by

                                @developeralgo222 said in Duet 3HC Expansion looses Connection:

                                Not sure why CAN Bus would be this unreliable.

                                It's not about CAN - I've built several applications for constructing machinery from the ground up, connecting controllers via CAN, and these connections are rock-solid. This said, I am now convinced that we can rule out your CAN wiring as cause of the problem. Which leads me to believe we might face an effect which I described as "interesting" early on: some interference between GND and Earth.

                                In your test setup, the boards were strictly isolated from Earth (which was just connected to the two PSUs). Earth is received from the electrical outlets and internally connected with the metal cases of the PSUs. In addition, the metal parts of you PnP machine should be "earthed" as well. The one million dollar question now is: have GND and Earth any potential contact? Or are they maybe decisively synced somewhere?

                                The latter case is something I've done myself, but is not without pitfalls, so I'd like to ask @droftarts for a second opinion. At least, he's on the same trail …

                                developeralgo222undefined 1 Reply Last reply Reply Quote 0
                                • developeralgo222undefined
                                  developeralgo222 @infiniteloop
                                  last edited by

                                  @infiniteloop said in Duet 3HC Expansion looses Connection:

                                  @developeralgo222 said in Duet 3HC Expansion looses Connection:
                                  The one million dollar question now is: have GND and Earth any potential contact? Or are they maybe decisively synced somewhere?

                                  The latter case is something I've done myself, but is not without pitfalls, so I'd like to ask @droftarts for a second opinion. At least, he's on the same trail …

                                  Today, I have isolated all the PSUs and all are “Earthed” ( AC Ground ) . They don’t touch the aluminum metal table at all anywhere. I will also “Earth” (AC ground ) the aluminum metal table today.

                                  Is there anything I might be forgetting on this GND solution. I am trying to avoid creating GND loops

                                  infiniteloopundefined 1 Reply Last reply Reply Quote 0
                                  • infiniteloopundefined
                                    infiniteloop @developeralgo222
                                    last edited by

                                    @developeralgo222

                                    Is there anything I might be forgetting on this GND solution. I am trying to avoid creating GND loops

                                    That’s complex. As a general rule, imagine a star topology, I.e. for each and every voltage, there should be a single point (or rail) from where to further route the power lines.

                                    For your dual PSUs, you already have this central point: V+ (1 rail with 3 connectors on each PSU) is now interconnected as discussed above in this thread.

                                    Now, if you connect GND (of the DC-output) to Earth, do it at a single point as well. Think of it as a common rail where all GND lines meet - kind of a ”local Earth”. Don’t take GND or V– from distant parts of the frame. Aside from the common rail, consider them as not being the same.

                                    Voltage lines may be split or chained on their run, but may then never refer to another source of the same voltage again (that’s a loop). You often run into this trap with shielded lines: the shield carries GND (or, in some cases, V–), but if you supply GND from both ends, you might involuntarily establish a ground loop. The golden rule here is to always feed GND from the origin - leave it unconnected at the destination end.

                                    The fact that most devices in your machine are controlled via V– complicates things. All switched V– lines from the DUETs may never have contact with the ”local Earth”, GND or any other V–.

                                    Grounding the PnP machine is another topic: not all metal parts are always in touch with each other, there are potential isolators such as coatings, belts or lubricants in the way, some parts are clearly isolated by design (printed joints etc). Short cable bridges help in some cases, but for moving parts, you might need to route a dedicated GND line through your cable chain.

                                    Considering USB ground loops, I recommend this article from the documentation: USB ground loops

                                    developeralgo222undefined 1 Reply Last reply Reply Quote 0
                                    • dc42undefined
                                      dc42 administrators @developeralgo222
                                      last edited by dc42

                                      @developeralgo222 have you confirmed that the wires are not crossed between the ends of the 10ft cable? Your cable tester might not detect that. See https://docs.duet3d.com/en/User_manual/Machine_configuration/CAN_connection#example-of-a-good-cable and the photo after that.

                                      Duet WiFi hardware designer and firmware engineer
                                      Please do not ask me for Duet support via PM or email, use the forum
                                      http://www.escher3d.com, https://miscsolutions.wordpress.com

                                      developeralgo222undefined 1 Reply Last reply Reply Quote 0
                                      • developeralgo222undefined
                                        developeralgo222 @dc42
                                        last edited by developeralgo222

                                        @dc42 said in Duet 3HC Expansion looses Connection:

                                        @developeralgo222 have you confirmed that the wires are not crossed between the ends of the 10ft cable? Your cable tester might not detect that. See https://docs.duet3d.com/en/User_manual/Machine_configuration/CAN_connection#example-of-a-good-cable and the photo after that.

                                        Yes i double checked that . i was suspecting that it might be the case but no. Cable tester that i use checks for all kinds of errors on cable from crossed , shorts , reversed, miswires, continuity, shield , etcs i have used various Fluke professional Cable testers for over 20 years and they have never failed, so i am confident when after all testing it says the cable is good, then its good.

                                        They are Straight through cable (Left to right ) and on both ends

                                        • Blue, Blue-white, Orange, Orange-white

                                        Technically , in this case , Blue-White and Orange wires are used by CAN Bus connection in Duet Boards

                                        IMG_1065.jpg

                                        droftartsundefined 1 Reply Last reply Reply Quote 0
                                        • droftartsundefined
                                          droftarts administrators @developeralgo222
                                          last edited by

                                          @developeralgo222 i don’t know if this matters that much for a short cable, but wires of the same colour, ie blue and white-with-blue-stripe, make up the twisted pair. These should be wired to the centre two pins that Duet use for CAN. The other pair goes on the pins outside these. You’re using one wire from each twisted pair.

                                          Ian

                                          Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                                          developeralgo222undefined 1 Reply Last reply Reply Quote 0
                                          • developeralgo222undefined
                                            developeralgo222 @droftarts
                                            last edited by developeralgo222

                                            @droftarts said in Duet 3HC Expansion looses Connection:

                                            @developeralgo222 i don’t know if this matters that much for a short cable, but wires of the same colour, ie blue and white-with-blue-stripe, make up the twisted pair. These should be wired to the centre two pins that Duet use for CAN. The other pair goes on the pins outside these. You’re using one wire from each twisted pair.

                                            Ian

                                            Let me try it . i have tried almost everything Grounding, and everything in between that has been suggested but to no avail. Sometimes its usually the smallest thing that creates a nightmare.

                                            developeralgo222undefined 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA