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

    3HC Documenation

    Scheduled Pinned Locked Moved Solved
    General Discussion
    2
    16
    552
    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.
    • Work Horse XLundefined
      Work Horse XL
      last edited by

      Hello

      I have a Duet 3 MB6hc and I need to add one more drive to it for a second extruder. I have the 3HC expansion board but can't seem to figure out how to config it. I also need help hooking it up.

      I installed it with the Can bus cable but just get a continuous flashing red light. I have looked and can't seem to find documentation on how to use this board.

      Can someone that has this setup help me or point me in the right direction for help.

      Thank you
      Darrin

      1 Reply Last reply Reply Quote 0
      • Phaedruxundefined
        Phaedrux Moderator
        last edited by

        https://duet3d.dozuki.com/Wiki/Duet_3_Expansion_Hardware_Overview
        https://duet3d.dozuki.com/Wiki/Duet_3_Expansion_3HC_Wiring_Diagram
        https://duet3d.dozuki.com/Wiki/CAN_connection
        https://duet3d.dozuki.com/Wiki/Getting_Started_With_Duet_3

        Most information you are looking for isn't specific to the 3HC. The main Duet 3 docs and the canbus docs should get you started.

        Using the config tool allows you to add expansion boards and map drives and heaters etc.

        https://configtool.reprapfirmware.org/Start

        Z-Bot CoreXY Build | Thingiverse Profile

        1 Reply Last reply Reply Quote 0
        • Work Horse XLundefined
          Work Horse XL
          last edited by

          Phaedrux thank you

          I have been looking over that information and was hoping I was missing something.

          I don't understand how to get the 3HC board working. I am running 3.1.1 version on the MB6HC. I just pulled the 3HC out of the box and plugged it into the can bus cord and hooked power to it. All I see is a flashing red led with no pause. Both jumpers are installed. Pin one is on and I get no response from the 3HC board.

          I have used the online reprap config to aid in the setup so I have that part I think.

          Thank you
          Darrin

          1 Reply Last reply Reply Quote 0
          • Phaedruxundefined
            Phaedrux Moderator
            last edited by Phaedrux

            Post your config.g and the results of sending M122, M122 B1, and M98 P"config.g" please.

            Z-Bot CoreXY Build | Thingiverse Profile

            1 Reply Last reply Reply Quote 0
            • Work Horse XLundefined
              Work Horse XL
              last edited by

              Please see the following, and thank you.

              M122
              === Diagnostics ===
              RepRapFirmware for Duet 3 MB6HC version 3.1.1 running on Duet 3 MB6HC v1.01 or later (SBC mode)
              Board ID: 08DJM-956BA-NA3TJ-6JTD0-3SN6S-1BALV
              Used output buffers: 1 of 40 (13 max)
              === RTOS ===
              Static ram: 154604
              Dynamic ram: 163208 of which 72 recycled
              Exception stack ram used: 272
              Never used ram: 75060
              Tasks: NETWORK(ready,1968) HEAT(blocked,1188) CanReceiv(suspended,3820) CanSender(suspended,1488) CanClock(blocked,1436) TMC(blocked,192) MAIN(running,4552) IDLE(ready,76)
              Owned mutexes:
              === Platform ===
              Last reset 00:06:00 ago, cause: power up
              Last software reset at 2021-02-09 21:40, reason: User, spinning module LinuxInterface, available RAM 75060 bytes (slot 3)
              Software reset code 0x0010 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0444a000 BFAR 0x00000000 SP 0xffffffff Task MAIN
              Error status: 0
              MCU temperature: min 29.3, current 29.4, max 29.6
              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.2, current 12.2, max 12.3, under voltage events: 0
              Driver 0: standstill, reads 63683, writes 0 timeouts 0, SG min/max not available
              Driver 1: standstill, reads 63682, writes 0 timeouts 0, SG min/max not available
              Driver 2: standstill, reads 63683, writes 0 timeouts 0, SG min/max not available
              Driver 3: standstill, reads 63682, writes 0 timeouts 0, SG min/max not available
              Driver 4: standstill, reads 63683, writes 0 timeouts 0, SG min/max not available
              Driver 5: standstill, reads 63682, writes 0 timeouts 0, SG min/max not available
              Date/time: 2021-02-10 16:22:27
              Slowest loop: 3.85ms; fastest: 0.24ms
              === 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 ===
              Hiccups: 0(0), FreeDm: 375, MinFreeDm: 375, MaxWait: 0ms
              Bed compensation in use: none, comp offset 0.000
              === MainDDARing ===
              Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0 CDDA state: -1
              === AuxDDARing ===
              Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0 CDDA state: -1
              === Heat ===
              Bed heaters = 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
              Heater 1 is on, I-accum = 0.0
              === GCodes ===
              Segments left: 0
              Movement lock held by null
              HTTP* is ready with "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.
              === Network ===
              Slowest loop: 0.47ms; fastest: 0.01ms
              Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions Telnet(0), 0 sessions
              HTTP sessions: 0 of 8

              • Ethernet -
                State: disabled
                Error counts: 0 0 0 0 0
                Socket states: 0 0 0 0 0 0 0 0
                === Filament sensors ===
                Extruder 0 sensor: no filament
                === CAN ===
                Messages sent 52, longest wait 0ms for type 0
                === Linux interface ===
                State: 0, failed transfers: 4
                Last transfer: 19ms ago
                RX/TX seq numbers: 10757/10758
                SPI underruns 4, overruns 4
                Number of disconnects: 0
                Buffer RX/TX: 0/0-0
                === Duet Control Server ===
                Duet Control Server v3.1.1
                Code buffer space: 4096
                Configured SPI speed: 8000000 Hz
                Full transfers per second: 31.94

              M122 B1
              Error: M122: Response timeout: CAN addr 1, req type 6024, RID=10

              M98 P"config.g"
              Error: M569: Response timeout: CAN addr 1, req type 6018, RID=11
              Error: M569: Response timeout: CAN addr 1, req type 6018, RID=12
              Warning: M307: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 277C
              Warning: M307: Heater 1 appears to be over-powered. If left on at full power, its temperature is predicted to reach 602C
              Error: M308: Response timeout: CAN addr 1, req type 6011, RID=13
              Error: M950: Response timeout: CAN addr 1, req type 6026, RID=14
              Error: M307: Heater 2 not found
              Error: M143: Heater 2 does not exist
              Error: M950: Response timeout: CAN addr 1, req type 6027, RID=16
              Error: M106: Fan number 2 not found
              Error: M950: Response timeout: CAN addr 1, req type 6027, RID=18
              Error: M106: Fan number 3 not found
              Warning: M307: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 277C

              Simple filament sensor on pin io8.in, enabled, output high when no filament, filament present: no

              ; Configuration file for Duet 3 (firmware version 3)
              ; executed by the firmware on start-up
              ;
              ; generated by RepRapFirmware Configuration Tool v3.1.4 on Wed Nov 04 2020 17:27:13 GMT-0600 (Central Standard Time)

              ; General preferences
              G90 ; send absolute coordinates...
              M83 ; ...but relative extruder moves
              M550 P"Duet 3" ; set printer name

              ; Drives
              M569 P0.0 S0 ; physical drive 0.0 goes forwards
              M569 P0.2 S1 ; physical drive 0.2 goes forwards
              M569 P0.3 S0 ; physical drive 0.3 goes backwards
              M569 P0.5 S0 ; physical drive 0.5 goes forwards
              M569 P0.4 S0 ; physical drive 0.4 goes backwards
              M569 P0.1 S0 ; physical drive 0.1 goes forwards
              M569 P1.0 S1 ; physical drive 1.0 goes forwards
              M569 P1.0 S1 ; physical drive 1.0 goes forwards
              M584 X0:1 Y2 Z3:4 E5:0.1:0.4:0.1 ; assign stepper motor channels
              M350 X16 Y16 Z16 E16:16:16:16 I1 ; configure microstepping with interpolation
              M92 X64.05 Y64.05 Z800.00 E425.00:800.00:65.00:425.00 ; set steps per mm
              M566 X300.00 Y300.00 Z24.00 E300.00:24.00:300.00:300.00 ; set maximum instantaneous speed changes (mm/min)
              M203 X18000.00 Y18000.00 Z300.00 E1200.00:300.00:18000.00:1200.00 ; set maximum speeds (mm/min)
              M201 X700.00 Y700.00 Z100.00 E250.00:100.00:700.00:250.00 ; set accelerations (mm/s^2)
              M906 X2800 Y2800 Z2800 E800:2800:2800:800 I50 ; 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 X625 Y711 Z515 S0 ; set axis maxima

              ; Endstops
              M574 X1 S1 P"io1.in+io2.in" ; configure active-high endstop for low end on X via pin io1.in
              M574 Y1 S1 P"io3.in" ; configure active-high endstop for low end on Y via pin io2.in
              M574 Z1 S1 P"io4.in+io5.in" ; configure active-high endstop for low end on Z via pin io4.in

              ; Z-Probe
              M558 P5 C"!^io7.in" H5 F520 T7200 ; set Z probe type to switch and the dive height + speeds
              G31 P1000 X-2 Y50.94 Z0.790 ; set Z probe trigger value, offset and trigger height
              M557 X78:550 Y70:600 S40 ; define mesh grid

              ; Heaters
              M308 S0 P"temp0" Y"thermistor" T100000 B4700 ; configure sensor 0 as thermistor on pin temp0
              M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0
              ;M301 H0 S1.00 P10 I0.1 D200 T0.4 W180 B30 Use PID on bed heater
              M307 H0 A252.2 C635.5 D7.0 S1.0 V0.0 B0 ; enable bang-bang mode for the bed heater and set PWM limit
              M140 H0 ; map heated bed to heater 0
              M143 H0 S150 ; set temperature limit for heater 0 to 150C
              M308 S1 P"temp1" Y"thermistor" T500000 B5100 C1.19622e-7 ; configure sensor 1 as thermistor on pin temp1
              M950 H1 C"out1" T1 ; create nozzle heater output on out1 and map it to sensor 1
              M307 H1 A577.4 C221.2 D5.8 S1.0 V23.9 B0 ; disable bang-bang mode for heater and set PWM limit
              M143 H1 S450 ; set temperature limit for heater 1 to 450C
              M308 S2 P"1.temp1" Y"thermistor" T500000 B4723 C1.19622e-7 ; configure sensor 2 as thermistor on pin 1.temp1
              M950 H2 C"1.out0" T2 ; create nozzle heater output on 1.out0 and map it to sensor 2
              M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
              M143 H2 S500 ; set temperature limit for heater 2 to 500C

              ; Fans
              M950 F0 C"out7" Q500 ; create fan 0 on pin out7 and set its frequency
              M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
              M950 F1 C"out8" Q500 ; create fan 1 on pin out8 and set its frequency
              M106 P1 S1 H1 T50 ; set fan 1 value. Thermostatic control is turned on
              M950 F2 C"1.out6" Q500 ; create fan 2 on pin 1.out6 and set its frequency
              M106 P2 S1 H1:2 T45 ; set fan 2 value. Thermostatic control is turned on
              M950 F3 C"1.out7" Q500 ; create fan 3 on pin 1.out7 and set its frequency
              M106 P3 S1 H1:2 T45 ; set fan 3 value. Thermostatic control is turned on

              ; Tools
              M563 P0 S"Left " D0 H1 F0 ; define tool 0
              G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
              G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C
              M563 P1 S"Right" D1 H2 F0 ; define tool 1
              G10 P1 X0 Y27.94 Z0 ; set tool 1 axis offsets
              G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C

              ; Custom settings

              M376 H10

              ; Miscellaneous
              M575 P1 S1 B57600 ; enable support for PanelDue
              M501 ; load saved parameters from non-volatile memory
              M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
              M591 D0 P2 C" io8.in" S1 ; filament switch High when filament present
              M591 D0 ; display filament sensor parameters for extruder drive 0
              T0 ; select first tool

              1 Reply Last reply Reply Quote 0
              • Phaedruxundefined
                Phaedrux Moderator
                last edited by

                https://duet3d.dozuki.com/Wiki/CAN_connection#Section_Setting_CAN_addresses

                You'll need to configure the dip switches on the 3HC to define the address of the board. By default it's 126, but it makes more sense to configure it to 1 if it's your first and only expansion board.

                Then in your config.g you need to modify any config commands that target that board.

                For example, in M584 to setup a driver as X on the expansion board you would use M584 X1.0

                This is automatically done by the config tool if you've chosen to add it and assign things to it. And this seems to be the case because your config already has similar things:

                M950 F3 C"1.out7" Q500 ; create fan 3 on pin 1.out7 and set its frequency

                1.out7 for instance.

                Once you set the dip switches to set the can address to 1 your config shouldn't give so many errors when you send M98 P"config.g"

                Hope that makes sense.

                Z-Bot CoreXY Build | Thingiverse Profile

                Work Horse XLundefined 1 Reply Last reply Reply Quote 0
                • Work Horse XLundefined
                  Work Horse XL @Phaedrux
                  last edited by

                  @Phaedrux

                  I have it set that way I think? Pin one is on and pin 2,3,4 are off. Is that not correct?

                  1 Reply Last reply Reply Quote 0
                  • Work Horse XLundefined
                    Work Horse XL
                    last edited by

                    IMG-3608.jpg

                    Work Horse XLundefined 1 Reply Last reply Reply Quote 0
                    • Work Horse XLundefined
                      Work Horse XL @Work Horse XL
                      last edited by

                      @Work-Horse-XL also the Diag LED just flashes rapidly and never pauses.

                      1 Reply Last reply Reply Quote 0
                      • Phaedruxundefined
                        Phaedrux Moderator
                        last edited by

                        You're using SBC mode, can you please try updating?

                        sudo apt update && sudo apt full-upgrade

                        That looks correct in the photo.

                        Z-Bot CoreXY Build | Thingiverse Profile

                        1 Reply Last reply Reply Quote 0
                        • Work Horse XLundefined
                          Work Horse XL
                          last edited by

                          Is that where you hook a keyboard,mouse and monitor to the pi and use the tremial window after you put the files on the sd card with DWC? I'm powering the pi with the duet3. Will that work for power? I do not really understand the PI process. I just use it for WIFI on the board.

                          Thank you for the help.

                          1 Reply Last reply Reply Quote 0
                          • Phaedruxundefined
                            Phaedrux Moderator
                            last edited by

                            You don't have to connect a keyboard, mouse, monitor to the Pi. You can also use remote terminal software (SSH) to connect to the command line terminal and update it that way.

                            Powering the Pi from the Duet may work for a Pi3, but is not recommended for a Pi4, or if you have any USB peripherals attached to the Pi.

                            I suggest you review the getting started guides
                            https://duet3d.dozuki.com/Wiki/Getting_Started_With_Duet_3
                            https://duet3d.dozuki.com/Wiki/SBC_Setup_for_Duet_3

                            Z-Bot CoreXY Build | Thingiverse Profile

                            Work Horse XLundefined 1 Reply Last reply Reply Quote 0
                            • Work Horse XLundefined
                              Work Horse XL @Phaedrux
                              last edited by

                              @Phaedrux I have update the main board to 3.2 and put all the 3HC files in the system folder. There is still no can bus communication to the 3HC board.

                              1 Reply Last reply Reply Quote 0
                              • Phaedruxundefined
                                Phaedrux Moderator
                                last edited by

                                Did the can bus cable come with the Duet or was it procured separately?

                                Z-Bot CoreXY Build | Thingiverse Profile

                                Work Horse XLundefined 1 Reply Last reply Reply Quote 0
                                • Work Horse XLundefined
                                  Work Horse XL @Phaedrux
                                  last edited by

                                  @Phaedrux The cable did not come with it but that was the problem. It was bad. I found a 15' cable and hooked it up and it is working now. Wow! what a mess. Thank you for helping me.

                                  1 Reply Last reply Reply Quote 0
                                  • Phaedruxundefined
                                    Phaedrux Moderator
                                    last edited by

                                    Glad you got it working.

                                    Z-Bot CoreXY Build | Thingiverse Profile

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