Duet 3 Tool Board - CAN Connector & Step / Direction Outputs



  • @Danal If you're making up new cables yourself or you don't mind modifying your existing ones then yes it's absolutely possible with the single connector design. The area where splitting the connector gives the most benefit is where you're upgrading an existing setup.

    My scenario for this would be:
    You have a pre-existing printer (Bought or built a while ago) with a single tool board and you now want to upgrade to a new FOC motor driver. You could cut a pair in the existing cable and add the new connectors, but if the existing cable doesn't have enough slack it would also need to be extended. The new driver board could include a pair of four pin connectors and act as a pass-through, but then it has to be designed as an upgrade board rather than a generic stand alone board and this also eats up valuable board space. You could also re-pin the connector but that's never fun.

    Now even with foresight that you might want to do this when you initially wire the printer, you'd have to either leave a spare loop of cable and cut it for the upgrade or you'd need to add the spare connector and make a little "bridge" to plug onto it until you do the upgrade.

    I see this being particularly powerful for the new E3D Toolchanger platform. Currently it's all based around the Duet 2 and the wiring harness will need to be modified or replaced when moving to the Duet 3, but once that's all nailed down I could see a range of different tools being made available with six pin tool connectors on the machine end and ready-to-go wiring. This is where even for a printer which is sold pretty much as a massive Meccano kit right now (It is great fun to assemble if you like your Meccano), I see a lot of off the shelf opportunities in the future. For my particular case with the motor controllers, step / direction outputs would make my life much easier than having to design and make a motor control board but I think both sides are valid.

    It looks like the tool distribution board is little more than a power distribution board and a load of pass-through connectors for the CAN bus, it simply loops between each tool board, effectively daisychaning them. The bypass jumpers are a strong indication of this along with the second CAN pair for each tool. This is why they need both pairs - If they really wanted to use a single pair for each tool board, they would need a microcontroller on the tool distribution board which acted like a gateway, which in turn would need six CAN controllers / transceivers unless a different protocol was used to communicate with the individual tool boards. Serial could be used for this, but that then means that an individual tool board needs to use serial to speak to the mainboard if no tool distribution board is used.

    The 3HC board does indeed have a single CAN connector, but the processor does support two separate CAN busses so I wouldn't be surprised if the connector also supported CAN passthrough using the same pinout of the main board. The documentation suggests that you should be able to use at least three 3HC boards.



  • @dc42 That sounds great, it would certainly solve the main scenario for me with a FOC motor on the extruder.

    While it removes the particular scenario I used for the reasoning behind splitting the CAN connector, I think it would still help for those unforeseen scenarios down the road with little cost so please do still consider that. (E3D Cyclops tool?)



  • @yngndrw said in Duet 3 Tool Board - CAN Connector & Step / Direction Outputs:

    [...long post...]

    Good writeup. I do see the scenarios, and a lot of valid points regarding the flexibility you describe.

    The 3HC board does indeed have a single CAN connector,

    Actually, the 3HC has two RJ11, specifically for daisy chaining. I have two of them running at the moment, on a 4-tool toolchanger that needed XYZZZUTTTT which is just beyond a 6HC and a single 3HC.



  • @Danal Sorry you're absolutely right, I'm not sure how I missed the second connector especially as I was specifically looking for it - It's not like RJ11 connectors are inconspicuous.

    I do wonder why both of the CAN buses are exposed via the same connector on the 6HC - Are they intended to be used together to provide a low and high priority bus?



  • @yngndrw said in Duet 3 Tool Board - CAN Connector & Step / Direction Outputs:

    @Danal Sorry you're absolutely right, I'm not sure how I missed the second connector especially as I was specifically looking for it - It's not like RJ11 connectors are inconspicuous.

    I do wonder why both of the CAN buses are exposed via the same connector on the 6HC - Are they intended to be used together to provide a low and high priority bus?

    I do kind of wonder the same thing. Why two? And why on the same connector? I can see the Duet designers, back when they had a blank piece of paper, thinking "minimum wires", and that does not add up to either side of the coin (two, but one connector).

    Hmmm....



  • @Danal I think I came across something a while back about using two channels at some point in the future. I might have got that wrong but there was a reason for having 4 pins on the CAN BUS connector and using 4 conductor cables. I'm not privy to that sort of information but as a long term user of Duet products going back to the days of the 06 board, there is always a good reason behind what they do.



  • It's fun to speculate though. I'd suspect it was different priorities of communication - Configuration / status information on one and trajectory / motion control on the other.

    So the 6HC has two CAN pairs on the same connector.

    The 3HC has a processor which supports two CAN busses, but CAN connector pinouts on the wiring diagram only list the middle pair as CAN - The other pair is shown as "passthrough". It's also interesting to note that there are two termination resistor jumpers, presumably one per pair so that they can both be terminated even if they aren't both used by that board.

    The tool board looks to take a single pair for passthrough and has no termination resistors.

    The tool distribution board is where things get interesting. It has a pair of RJ11 connectors for passthrough, but only has a single termination jumper. Is it expected that only one CAN pair makes it to the tool distribution board? Is v0.4 of the tool distribution an old design that has since been updated and not put on the documentation site?



  • @yngndrw said in Duet 3 Tool Board - CAN Connector & Step / Direction Outputs:

    The 3HC has a processor which supports two CAN busses, but CAN connector pinouts on the wiring diagram only list the middle pair as CAN - The other pair is shown as "passthrough". It's also interesting to note that there are two termination resistor jumpers, presumably one per pair so that they can both be terminated even if they aren't both used by that board.

    Perhaps I don't have the correct mental map for CAN. In order to daisy chain, would it not be true that the center pair of either connector has the potential to need to be a master?

    It would be possible to 'force' and "in" v "out" connector... but... since the chosen chip has two can, both (either) of which can be master... why not eliminate one more support headache?



  • @yngndrw said in Duet 3 Tool Board - CAN Connector & Step / Direction Outputs:

    Configuration / status information on one and trajectory / motion control on the other.

    Dave once commented that moves are sent about two seconds in advance. Doesn't seem to reflect a high need for prioritization.



  • @Danal Yes in CAN any board could send a message at any time and therefore act as a master, with the message ID allowing for prioritisation / arbitration. (Lowest ID wins) I think you're right in that it would probably make life easier in there was a BUS in each direction so that's a fair theory.

    The buffering of moves makes a lot of sense in this setup and that probably rules out the different prioritisations.

    Maybe there simply isn't enough bandwidth over one bus for the number of expansion boards they'd like to support?


  • administrators

    @yngndrw said in Duet 3 Tool Board - CAN Connector & Step / Direction Outputs:

    I do wonder why both of the CAN buses are exposed via the same connector on the 6HC - Are they intended to be used together to provide a low and high priority bus?

    The reason was lack of space. The second CAN bus was a late addition and isn't supported in firmware yet. It's there so that we can provide a low speed CAN bus as well as the standard high speed CAN-FD bus, to give us the option of supporting CANopen devices in future. It would require an external adapter to split the two buses.



  • @dc42 Ah I see, that makes sense! Does that mean that the tool distribution board is missing the second termination jumper that the expansion board has, or is that an old design in the documentation, or is it intended that the splitter would always come before the tool distribution board?


  • administrators

    @yngndrw said in Duet 3 Tool Board - CAN Connector & Step / Direction Outputs:

    is it intended that the splitter would always come before the tool distribution board?

    Yes.


Log in to reply