Connectivity for harnesses on the same page - Page 1
Forum section: electronics / general

author: radar_macgyver
author_rank: Frequent Contributor
timestamp: March 22, 2017, 12:40:34 am
content: I use Altium's harness feature when making schematics for industrial enclosures, to indicate a specific wire type in a cable assembly. When the harness crosses from one page to another, everything works as expected, and a net on one of the harness entries will appear on the other side. If I assign an incorrect net label, the design compiler will flag this as an error.However, if I have two harness entries connected by a harness on thesame page(see figure), the software doesn't seem to connect the entries on either side. I can assign different net names and they are not flagged as an error.Is there a setting I can tweak to make this work properly? Thanks.

author: ajb
author_rank: Super Contributor
timestamp: March 22, 2017, 03:56:51 pm
content: It should work if you name the harness itself, either by using a net label or by connecting it to a port (the latter probably being why harnesses have worked properly across sheets for you in the past).I think the problem is that connecting a wire to a harness entry isn't sufficient for Altium to establish an identifier for that wire, because harnesses are meant to be able to be duplicated through a design. I'm not sure why connecting the harness connectors isn't sufficient to let Altium know that they're connected and to assign a name to the harness automatically the way it does with nets, but I suspect this is a holdover from the way that buses work--it does allow you to use harnesses/buses as dumb graphical elements without affecting the connectivity of the design, which is sometimes useful. Anyway, to establish connectivity the wire has to be attached to a harness entry AND a named *harness*, at which point Altium designates it 'HarnessName.EntryName' which then becomes the name of the associated net.Note that since you have net labels on wires that are attached to harnesses once you name the harness you will have multiple names for those nets. If you name that harness "H1", for example, you'll have the names EL_MF_SHLD and H1.SHLD associated with the same net. This results in a warning by default, but you can assign it whatever ERC level you deem appropriate.

author: radar_macgyver
author_rank: Frequent Contributor
timestamp: March 23, 2017, 05:32:40 am
content: Adding a net label to the harness does work, and nets connected to a harness entry get assigned a name of the form "harness_name.harness_entry". It seems like AD doesn't propagate net names up the hierarchy, but confusingly enough, it only seems to do so when the harness does not cross a page boundary. This is doubly confusing, since I've turned off the option to let ports to name nets.In this instance, I was hoping to use the DRC to spot mistakes, such as assigning different net names to the same wire pair on either end of a cable assembly. Looks like AD doesn't have the ability to do this, at least not when the harness doesn't span across pages.

author: ajb
author_rank: Super Contributor
timestamp: March 27, 2017, 02:32:20 pm
content: I think if you connect a port to the harness with "Allow Ports to Name Nets" disabled and with "Nets with multiple names" set as an error you might get what you want? Connecting the harness to a port should force Altium to compile the harness connections into the netlist, but by not allowing it to name the harness you should get regular autonames which can be overridden by your net labels as in regular wire-connected nets.

author: radar_macgyver
author_rank: Frequent Contributor
timestamp: March 28, 2017, 04:48:22 am
content: Those are the settings I have now, and it seems to work fine as long as the harness crosses a page boundary. When the harness stays on the same page, I don't use a port label, and it doesn't seem to bring the harness connections into the netlist at all.Interestingly, when I add a port to the harness (even if the port doesn't go anywhere), it seems to do the right thing (see image). Now, all pins of P21 have a net assigned (CN1-CN5). Same schematic without the port would throw up a bunch of warnings that P21's pins were single-pin nets. Strange, I should file a support request about this (yeah right - like Altium ever reads those...)