No communication between 6HC and 3HC

  • hello, i recently bought a Duet 3 Expansion 3HC, Duet 3 Mainboard 6HC and a PanelDue Integrated 7,0“. I can't manage to make the duet 3 mainboard comunicate with the expansion board. i tried changing the firmware, downgrade and upgrade, i tried reversing the middle wires of the CAN cable, i tried different kind of cables but it simpy does not do anything. the diag led of the expansion board flashes 3 times when power is applied, then one really short time and that's it. nothing else. there is a led near the sd card slot on the mainboard that flashes once per second and no other flashing leds. and upgrading the firmware of the expansion board does not seem to happen. i place all the dip switches to off, and place the correct firmware files on the sd card. nothing happens, if i remove the firmware upgrade file from the sd card the expansion boards diag led flashes 5 times as if it cannot find the file on the sd card. with the expansion board set to CAN address 1 or any other the duet mainboard reports: Response timeout: CAN addr 1, req type 6021, RID=9. help!!!

  • Which versions of firmware have you tried?
    Did you try 3.2.2 or 3.3 beta 1?

    To be clear - it should be the same on both boards.

  • well, i tried with 3.2.2 and 3.3 beta 1 but cannot confirm that the firmware ended up on the expansion board as i have no ideea if the firmware on the expansion bard gets upgraded or not. i even tried 3.1 but there is a bit of a mess as i don't know what firmware the expansion board came with.

  • 3 flashes mean the CRC of the firmware file is incorrect.

    I would imagine communication between your boards works if you are able to get the 5 flashes. Otherwise, if communication didn't work - you wouldn't get that either.

    Did you download the files as a bundle or individually? If individually, go for the bundle and unpack it all onto your Duet. Then try again with the reset process.

  • @pkos i even tried formatting the sd card and placing all the required files there. still nothing. 9 out of 10 times i placed the bundle on the sd card.

  • I know some people had an issue with their bootloader - but people were advised against upgrading it just like that. Here I would defer to much wiser people than myself 😉

    I know your issues to some extent. For some time, I couldn't get the two boards to work together with 3.2, but in my case 3.2.2 solved the problem.

  • what cable are you using for the CAN?
    did you buy it separately or did it come with the purchase?

  • @jay_s_uk I bought 4 cables separately and made about 4 of them my self. The cable is 30 cm long, I tried crimping it in all posibile configurations. Only when it's crimped identical at both ends I get the 5 flashes that the firmware it's not on the sd card

    L. E. oh and I tried it with the jumpers placed on the expansion board and without them, with cables crossed and normal. Nothing helped

  • Looking at the wiring, it looks as though it should be pins 3 and 4 that are connected straight through for CAN.
    Can you check your wiring matches that?
    Can you also ensure that the jumpers are fitted behind the input can connection on the 3HC?
    A blinking LED once per second is a good indication that things are talking.
    Can you confirm what arrangement you have the ID jumpers set at? Do you have just number 1 set to on?
    If you do, connect everything up, get the slow flashing and send M122 B1
    If you have a different number set for the CAN address, adjust the B value to suit.

  • The wires are matching. I tried all possible combinations of wire order.
    The jumpers are fitted, the led from the expansion board blinks 3 times when the board is powered on, then one really short flash, and then nothing. The diag led on the mother board flashes continuously once per second. The address jumpers are set to 1 on and the rest are off, I also tried with other addresses, but still nothing. The only response I get from m122 b1 is: CAN addr 1, req type 6021, RID=1

  • @klayus what firmware are you running on the 6HC?
    If you are running 3.2 (or similar) can you downgrade to 3.1.1 and then try the M122 B1 again?

  • I tried with 3.1.1, 3.2, 3.3beta

    I forgot to mention that the board did comunicate at first, 2 maybe 3 hours when we first installed it and powered it up. The leds were flashing on both boards, we then updated it to the last stable firmware and from then on all the problems happened

  • Is there anyway to reset the 6hc mother board to the default settings that it came with?

  • @klayus yes, load a new config.
    No settings pertaining to your setup are stored on the board.
    How long have you had the 3HC? It could be a slow crystal

  • well i ordered it 2 weeks ago from it's a v1.01 board 6hc, the expansion board is duet eb1 wd01236

  • I would suggest buying a known working cable.
    The type suggested to use are high speed ADSL cables. They aren't very expensive and would rule out all the wiring combinations etc

  • I'm trying to revert to 3.1.1 again but there is a missing binary from github, or so duet reports. The file is called "duet3_sdiap32_mb6hc.bin"

  • its part of the 3.2 release to allow downgrading

  • Moderator

    Can you provide the results of M122 and a photo of the wiring on the 3HC?

    When switching between firmware versions it's a good idea to upload the complete zip file through DWC if possible. That way any ancillary files are included. They makes going back and forth between versions much easier.

  • so the result from M122 is:
    === Diagnostics ===
    RepRapFirmware for Duet 3 MB6HC version 3.2.2 running on Duet 3 MB6HC v1.01 or later (standalone mode)
    Board ID: 08DJM-956BA-NA3TJ-6JKDD-3S06T-KU82T
    Used output buffers: 1 of 40 (1 max)
    === RTOS ===
    Static ram: 149788
    Dynamic ram: 91308 of which 604 recycled
    Never used RAM 117132, free system stack 185 words
    Tasks: NETWORK(ready,545) HEAT(blocked,368) CanReceiv(blocked,927) CanSender(blocked,371) CanClock(blocked,356) TMC(blocked,60) MAIN(running,1325) IDLE(ready,19)
    Owned mutexes: USB(MAIN)
    === Platform ===
    Last reset 00:00:23 ago, cause: reset button
    Last software reset at 2021-02-21 15:52, reason: User, GCodes spinning, available RAM 110284, slot 2
    Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0044a000 BFAR 0x00000000 SP 0x00000000 Task MAIN Freestk 0 n/a
    Error status: 0x00
    Aux0 errors 0,0,0
    Aux1 errors 0,0,0
    MCU temperature: min 39.3, current 40.9, max 41.1
    Supply voltage: min 25.4, current 25.6, max 26.2, under voltage events: 0, over voltage events: 0, power good: yes
    12V rail voltage: min 12.1, current 12.1, max 12.2, under voltage events: 0
    Driver 0: position 0, standstill, reads 740, writes 11 timeouts 0, SG min/max 0/0
    Driver 1: position 0, standstill, reads 740, writes 11 timeouts 0, SG min/max 0/0
    Driver 2: position 0, standstill, reads 740, writes 11 timeouts 0, SG min/max 0/0
    Driver 3: position 0, standstill, reads 740, writes 11 timeouts 0, SG min/max 0/0
    Driver 4: position 0, standstill, reads 740, writes 11 timeouts 0, SG min/max 0/0
    Driver 5: position 0, standstill, reads 741, writes 11 timeouts 0, SG min/max 0/0
    Date/time: 1970-01-01 00:00:00
    Slowest loop: 999.15ms; fastest: 0.05ms
    === Storage ===
    Free file entries: 10
    SD card 0 detected, interface speed: 25.0MBytes/sec
    SD card longest read time 2.2ms, write time 0.0ms, max retries 0
    === Move ===
    DMs created 125, maxWait 0ms, bed compensation in use: none, comp offset 0.000
    === MainDDARing ===
    Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
    === AuxDDARing ===
    Scheduled moves 0, completed moves 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, chamberHeaters = -1 -1 -1 -1
    === GCodes ===
    Segments left: 0
    Movement lock held by 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" 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.15ms; fastest: 0.00ms
    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
      === CAN ===
      Messages queued 1, send timeouts 0, received 0, lost 0, longest wait 0ms for reply type 0, free buffers 48

    i did receive earlier this message:
    === CAN ===
    Messages queued 5863, send timeouts 55, received 5, lost 0, longest wait 0ms for reply type 0, free buffers 48
    where it says it received 5 messages from the expansion board.

    i receive this:
    m115 b1
    Error: M115: Response timeout: CAN addr 1, req type 6024, RID=1

    but if i send:
    m997 s1

    it says ok as if it managed to install the firmware on expansion board 1?

  • @klayus M997 S1 is not the correct command.
    you should be using M997 B1

  • @jay_s_uk m997 b1
    Error: M997: Response timeout: CAN addr 1, req type 6024, RID=3

  • Do I need to tell the mainboard anywhere that there is an explanation board attached? In a config file?

  • no. I'm pretty sure it just repeatedly sends out packets to determine if anything is connected or not.

  • So? Is the 6hc broke or the 3hc?

Log in to reply