DUET MB6HC + SBC (PI4B) communication issue with 1HCL
-
Hi there,
I am currently working on a big volume 3D printer with a Duet MB6HC which should control 5 NEMA23 through 5 1HCL expansion boards.
It seems to be quite challenging getting those two connected together and I am not surre where I'm failing.This is my set up: the Duet MB6HC board in SBC mode via a Raspberry Pi 4 model B with its integrated operating system. The connection between the Raspberry and the Duet board seems to be working correctly and I can control it through DWC (in addition to this, now the Duet board is powered with 24V and its SD card is removed).
Additionally, we have a 1HCL expansion board powered at 24V connected via the CAN-BUS port through a SJ11 cable.
By strictly following the instructions from the Duet website, we are encountering the following issues:
The Duet board does not communicate with the expansion board (the leds still blink asynchronously).
I tried many ways but nothing worked so far.Here's my config:
; Configuration file for Duet 3 MB 6HC (firmware version 3.3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.16 on Mon Oct 30 2023 18:23:15 GMT+0100 (Central European Standard Time) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"VulcanONE" ; set printer name G4 S1 ; Drives M569 P121.0 S1 ; physical drive 121.0 goes forwards M569 P0.1 S1 ; physical drive 0.1 goes forwards M569 P0.2 S1 ; physical drive 0.2 goes forwards M584 X121.0 Y0.1 Z0.2 ; set drive mapping M350 X16 Y16 Z16 I1 ; configure microstepping with interpolation M92 X80.00 Y80.00 Z400.00 ; set steps per mm M566 X900.00 Y900.00 Z60.00 ; set maximum instantaneous speed changes (mm/min) M203 X6000.00 Y6000.00 Z180.00 ; set maximum speeds (mm/min) M201 X500.00 Y500.00 Z20.00 ; set accelerations (mm/s^2) M906 X800 Y800 Z800 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 X230 Y210 Z200 S0 ; set axis maxima ; Endstops ; WARNING: No endstops configured ; Z-Probe M558 P0 H5 F120 T6000 ; disable Z probe but set dive height, probe speed and travel speed M557 X15:215 Y15:195 S20 ; define mesh grid ; Heaters ; Fans ; Tools ; Custom settings are not defined
Moreover, although we manage to communicate with the board via SBC, we cannot connect the board to the network through Ethernet. Is that possible a general CAN communication issue?
-
@Tuma Please post the response to sending
M122
in the console. The most common problem is that the firmware version on the mainboard and the firmware version on the expansion board is different. If the Raspberry Pi and Duet are up to date, but it still doesn't connect, then you can force a firmware update on the expansion board; see https://docs.duet3d.com/User_manual/Machine_configuration/CAN_connection#factory-resetting-a-tool-or-expansion-boardIf you need to factory reset a board:
- On those boards having a (CAN) reset jumper (e.g. EXP1XD), fit the jumper and then power up the board
The board will reset its address and CAN bus speed to default and request firmware from the main board.
Don't forget to remove the jumper afterwards.
Additionally, check that you have wired the CAN cable between the boards correctly, and that bus termination is correct. See https://docs.duet3d.com/User_manual/Machine_configuration/CAN_connection#wiring-scheme
@Tuma said
Moreover, although we manage to communicate with the board via SBC, we cannot connect the board to the network through Ethernet. Is that possible a general CAN communication issue?
If you are in SBC mode, you connect the Ethernet cable to the Raspberry Pi, not the Duet. In standalone mode (no Raspberry Pi), you need to have some extra commands in the config to enable Ethernet; see https://docs.duet3d.com/en/How_to_guides/Getting_connected/Getting_connected_to_your_Duet
Can you explain how you have connected so far, and how you are trying to connect the Ethernet?
Ian
-
@droftarts Hi, and thanks for the support. I reply to you point by point.
Here's the response:
M122
=== Diagnostics ===
RepRapFirmware for Duet 3 MB6HC version 3.4.6 (2023-07-21 14:11:38) running on Duet 3 MB6HC v1.02 or later (SBC mode)
Board ID: 08DJM-9P63L-DJ3T8-6J1FL-3SJ6T-K87ZB
Used output buffers: 1 of 40 (12 max)
=== RTOS ===
Static ram: 153252
Dynamic ram: 65368 of which 0 recycled
Never used RAM 132052, free system stack 208 words
Tasks: SBC(ready,0.5%,496) HEAT(notifyWait,0.0%,373) Move(notifyWait,0.0%,352) CanReceiv(notifyWait,0.0%,943) CanSender(notifyWait,0.0%,335) CanClock(delaying,0.0%,344) TMC(notifyWait,7.3%,92) MAIN(running,91.2%,1265) IDLE(ready,1.1%,30), total 100.0%
Owned mutexes: HTTP(MAIN)
=== Platform ===
Last reset 00:07:50 ago, cause: power up
Last software reset at 2023-11-02 16:31, reason: User, GCodes spinning, available RAM 132052, slot 0
Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0044a000 BFAR 0x00000000 SP 0x00000000 Task SBC Freestk 0 n/a
Error status: 0x00
Step timer max interval 134
MCU temperature: min 24.9, current 39.8, max 40.0
Supply voltage: min 24.3, current 24.4, max 24.4, under voltage events: 0, over voltage events: 0, power good: yes
12V rail voltage: min 12.1, current 12.2, max 12.4, under voltage events: 0
Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0
Events: 0 queued, 0 completed
Driver 0: standstill, SG min 0, mspos 8, reads 21406, writes 11 timeouts 0
Driver 1: standstill, SG min 0, mspos 8, reads 21403, writes 14 timeouts 0
Driver 2: standstill, SG min 0, mspos 8, reads 21403, writes 14 timeouts 0
Driver 3: standstill, SG min 0, mspos 8, reads 21406, writes 11 timeouts 0
Driver 4: standstill, SG min 0, mspos 8, reads 21406, writes 11 timeouts 0
Driver 5: standstill, SG min 0, mspos 8, reads 21406, writes 11 timeouts 0
Date/time: 2023-11-06 10:46:19
Slowest loop: 1.03ms; fastest: 0.05ms
=== Storage ===
Free file entries: 10
SD card 0 not detected, interface speed: 37.5MBytes/sec
SD card longest read time 0.0ms, write time 0.0ms, max retries 0
=== Move ===
DMs created 125, segments created 0, maxWait 0ms, bed compensation in use: none, comp offset 0.000
=== MainDDARing ===
Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
=== AuxDDARing ===
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 ===
Segments left: 0
Movement lock held by null
HTTP is doing "M122" 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
Code queue is empty
=== CAN ===
Messages queued 2357, received 0, lost 0, boc 3762
Longest wait 0ms for reply type 0, peak Tx sync delay 0, free buffers 50 (min 49), ts 2352/0/0
Tx timeouts 0,0,470,0,0,0 last cancelled message type 30 dest 127
=== SBC interface ===
Transfer state: 5, failed transfers: 0, checksum errors: 0
RX/TX seq numbers: 18913/18913
SPI underruns 0, overruns 0
State: 5, disconnects: 0, timeouts: 0 total, 0 by SBC, IAP RAM available 0x2ab5c
Buffer RX/TX: 0/0-0, open files: 0
=== Duet Control Server ===
Duet Control Server v3.4.6
Code buffer space: 4096
Configured SPI speed: 8000000Hz, TfrRdy pin glitches: 0
Full transfers per second: 0.06, max time between full transfers: 43.6ms, max pin wait times: 48.4ms/2.6ms
Codes per second: 0.00
Maximum length of RX/TX data transfers: 2980/692**I cannot see the 1HCL firmware.
I made multiple reset on the expansion (following the procedure).
I am currently using an RJ11 from FAEG (model FG15263 plug + plug 6/4) with four cables: is that correct?
about the Internet connection I explain badly: with SBC I use normal WIFI and everything seems work.
I also try disconnects the raspberry, reinstall its original SD card in the duet, and via YAT (that sees correctly the board and the firmware) trying to configuring the IP while connected to the router. when then I type the IP in the browser bar it says "connection timeout" (but all this process without the Raspberry and with the SD installed). So it could be considered a completely different "scenario".Hope I explain myself better.
thank you again for the support.
-
@Tuma Dear,
I discovered the issue was the cable (didn't see the twisted colors).My bad and thank you again for the support.
-
@Tuma thanks, I'll mark this as solved then.
-
-