Tag the 'Load Name' (circuit description) of a device

Tag the 'Load Name' (circuit description) of a device

dtiemeyer
Advisor Advisor
1,778 Views
15 Replies
Message 1 of 16

Tag the 'Load Name' (circuit description) of a device

dtiemeyer
Advisor
Advisor

I have placed a receptacle and assigned 1000va. I circuit it as the only item on the circuit. I fill in the circuit description on the panel schedule.  How can I create a tag that reads the circuit description (called 'Load Name' in the properties of the circuit) so that when I tag the receptacle it displays this info?

My other CAD is a Cadillac and I like to Revit to the Max!
0 Likes
1,779 Views
15 Replies
Replies (15)
Message 2 of 16

iainsavage
Mentor
Mentor

I'm not electrical.

I assume that Load Name is one of those built-in parameters which can't be included in a tag?

If that's the case then the solution I think would be:-

  1. create and load your own shared parameter into the project and associate it with the device category.
  2. use Dynamo to get the value of the built in parameter and transfer it into your own shared parameter.
  3. load the same shared parameter into your tag family
0 Likes
Message 3 of 16

iainsavage
Mentor
Mentor

Actually from a sample file I'm not seeing a Load Name parameter for devices:

iainsavage_0-1676564221151.png

I see a Circuit Load Name for wires:

iainsavage_1-1676564286088.png

Could you share some screenshots of the items and properties to clarify what you are aiming for?

0 Likes
Message 4 of 16

dtiemeyer
Advisor
Advisor

@iainsavage You're on the right path (I believe) that it is a parameter that is not fully exposed. I would like to tag the device directly without creating a wire, to tag the Load Name - in the image below, that would be 'COPIER'  (note, Properties is displaying the circuit properties, not the device properties, but the device is on that circuit).

dtiemeyer_0-1676565186896.png

 

My other CAD is a Cadillac and I like to Revit to the Max!
0 Likes
Message 5 of 16

iainsavage
Mentor
Mentor

Right so the Load Name is applied to the circuit but you want it to be applied to the device?

As far as I can see it is only the Panel and Circuit Number which shows in the device properties.

So I think you'd need (with Dynamo) to get the Panel, Load Name and Circuit Number for each way on the panel, sort lists, get index value of Load Name from "n" circuit number. Pass to another shared parameter. Then for devices get circuit number, then based on the value of the circuit number set the value of the load references shared parameter in the device family.

I don't immediately know how to code that in Dynamo but someone else could probably help more quickly @RLY_15 

0 Likes
Message 6 of 16

dtiemeyer
Advisor
Advisor

I agree that dynamo could solve the problem, but I'm hoping for an easy solution that my engineers won't have to jump through a ton of hoops to do something as simple as display data that is already connected. Does anyone else have suggestions other than Dynamo?

My other CAD is a Cadillac and I like to Revit to the Max!
0 Likes
Message 7 of 16

RLY_15
Advisor
Advisor

I'm also not electrical, so I don't know about the Dynamo route immediately.. panel schedules are weird behavior relative to most other elements. I'll take a quick look to see if it's readily accessible. Worst case I think I have some AU presentations saved that I had intended to pass over to an elec colleague that covers a similar topic.

 

In regards to the comment about preferring not to use Dynamo, I'm not seeing the parameter information noted directly in the electrical device element, so I don't believe it's taggable through the Revit standard UI. You'd need a macro or third party add-in if you don't want to take a Dynamo approach.

0 Likes
Message 8 of 16

iainsavage
Mentor
Mentor

Okay, so far I've got:-

  1. For every circuit a list of Panel, Load Name and Circuit Number
  2. For every electrical fixture a list of Panel and Circuit Number.

Now I need to do some sort of comparison to find matching pairs i.e. when Panel AND Circuit Number in the fixture list match those values in the circuit list then get the corresponding value of Load Name from the circuit list.

Any ideas how to do this? @RLY_15 

iainsavage_0-1676652060021.png

 

0 Likes
Message 9 of 16

RLY_15
Advisor
Advisor

I'd probably try to use a dictionary for this, built off the circuit panel:

 

robert2JCCH_1-1676665156294.png

 

The input lists and shuffles are just dummy values to simulate pulling the information from the project, which @iainsavage 's already demonstrated how to do.

 

Dictionaries are good for using common matching values to re-populate lists. We're creating our own common matching value by compressing the data that 'should' be matching to single string items. I tossed in a 'what if' scenario for having fixtures that somehow don't have corresponding circuits as a way to stress-test this example, but I don't know if this is a real case issue that can happen. Regardless, stress-testing for corner cases is always good.

0 Likes
Message 10 of 16

dtiemeyer
Advisor
Advisor

Hi @iainsavage and @RLY_15  Thank you both for the effort put into this!  I think I'm going to move it over to Revit Ideas, because I'd really like to see a native Revit solution to this, especially considering that it's already 90% of the way there, a device/fixture can tag the connected Panel/Circuit, so obviously expanding it to more information points would be quite easy for Autodesk to accomplish.  Thanks again!

My other CAD is a Cadillac and I like to Revit to the Max!
0 Likes
Message 11 of 16

RLY_15
Advisor
Advisor

Good idea and best of luck. Generally speaking I think Revit would be well served with more system data exposed at the component level for tagging.

0 Likes
Message 12 of 16

iainsavage
Mentor
Mentor

I'd been playing with that script over rhe past few days but had to give up, my Dynamo skills just aren't good enough at the moment.

One hurdle that I fell at was that there are a number of blank circuits in the sample file and they cause one of the nodes to fail because it causes duplicate keys in the dictionary.bykeysvalues node.

iainsavage_0-1677088417986.png

 

0 Likes
Message 13 of 16

dtiemeyer
Advisor
Advisor

@iainsavage  I know what you mean about 'dynamo skills', it always seems to be just a bit more complex that I would've envisioned...    have you asked ChatGPT to write the dynamo script ??  😁

My other CAD is a Cadillac and I like to Revit to the Max!
0 Likes
Message 14 of 16

dtiemeyer
Advisor
Advisor

I think for now a piece of text will suffice.

My other CAD is a Cadillac and I like to Revit to the Max!
0 Likes
Message 15 of 16

iainsavage
Mentor
Mentor

Just an update on this, I appear to now have the script working for electrical fixtures and lighting fixtures.

For simplicity I have used the Comments field to take the value for the Load Name.

Additional family categories can be added by copying the node groups, changing the element category and changing the connections between certain nodes.

Instead of Comments field you could use your own shared parameter. To do this create the shared parameter, load into your project/template and associate it to the requisite categories. Then load the same shared parameter into a tag family and include it in the label, then load the tag into the project/template. In the Dynamo script change the value of the pink code block to match your shared parameter name.

iainsavage_0-1677882492337.png

Hope this helps you.

Major Kudos to @RLY_15 for the pointers, I woud never have worked this out on my own.

PS: the script will throw up errors if there are unassigned fixtures but should still work for the assigned ones.

Try it on a small sample project of your own and let me know if it gives you the correct values for each circuit/fixture.

Message 16 of 16

dtiemeyer
Advisor
Advisor

Wow, thanks for this @iainsavage ! I will give it a try.

My other CAD is a Cadillac and I like to Revit to the Max!
0 Likes