Keep function value when attribute condition changes?

Questions or discussions about the Titan and classic consoles and software.

Moderator: Moderators

DC3
Posts: 20
Joined: 25 Mar 2018, 02:39

Keep function value when attribute condition changes?

Postby DC3 » 07 Apr 2022, 14:19

Can a function value be kept when the attribute condition changes?

By example, if I have an attribute in a personality with two conditions like:

Code: Select all

Condition 1:
  Function id=1 range=0~100 WheelPos=0
  Function id=2 range=0~100 WheelPos=1
Condition 2:
  Function id=3 range=0~100 WheelPos=0
  Function id=4 range=0~100 WheelPos=1

If condition 2 is true and function 4 has value of 25, if then condition 1 becomes true I would like function 2 to get value 25 but for now it gets value 0.

I have a fixture that has two prism channels that set rotate or index mode for each and one channel that sets rotate or index value for both. I would like to choose the prism with one attribute and have rotate or index keep the value when I change prism but for now the rotate and index values get reset when the prism changes.

I hope that's clear, my friend who helps with technical translations is not available.

By actual example, the personality I have can be downloaded here High End Systems_SolaSpot ATU.d4. If you choose 3 Facet prism and set a CCW rotate value of 85, then choose 4 Facet prism you'll see the rotate value gets reset to 1 but I would like it stay at 85.

To be clear about the personality file, it is written for touring needs, many fixture features might not be added, it is not compatible with factory personalities, it needs a minimum version of Titan to work, I don't know what that minimum version is, what ever version added 32bit DMX channels is the minimum, I'm using V15 and it works fine.
User avatar
niclights
The eManual
Posts: 4442
Joined: 24 Sep 2004, 01:06
Location: UK

Re: Keep function value when attribute condition changes?

Postby niclights » 07 Apr 2022, 15:29

Unfortunately this is not possible at the moment, although I do appreciate where it would be useful.

You can specify functions and use the function index property to make associations, for example in more recent factory personalities I set the index and middle 'no spin' of gobo rotate controls of relevant fixtures to have a function index of 0 with all the others set at -1. This means that when switching the condition from index to spin it will initially select the middle 'no spin' so that you can then wheel down into CW or up into CCW. But currently there is no way to hold the actual level over.

As an aside I haven't looked at the linked personality yet but there shouldn't ever be a dependency on software version. Of course there may be things that have been added that are only available in more recent versions (for example gobo swatches) but Titan will just ignore these and the rest of the personality should work fine. I'm not sure if you really mean 32bit. I have not yet come across any fixture that employs 32bit controls There are some very rare examples of 24bit. Technically speaking both are supported but I would be surprised if 32bit worked correctly at the moment (24bit should be ok).
DC3
Posts: 20
Joined: 25 Mar 2018, 02:39

Re: Keep function value when attribute condition changes?

Postby DC3 » 17 Apr 2022, 21:10

Sorry for the late reply, thank you for the information, it would be a useful feature for me.

I tried the function index before when I was trying to use it to set a default function for a condition but it didn't work consistently. It worked as you describe for Spin but didn't work the same for things like Scroll.

The personality was given for if my description wasn't clear but I think you understood well so no need to look at it. Sorry, I must have another system in mind, I did think that 32bit didn't work on older versions of Titan.
revenant
Posts: 51
Joined: 25 Oct 2020, 14:36

Re: Keep function value when attribute condition changes?

Postby revenant » 19 Apr 2022, 13:02

Although you can define a 32bit attribute, Titan does not support the full 32bit range of DMX values. Long story short, for DMX values, Titan supports 31bit. The personality will work fine as the largest DMX value being used is no greater than 31bit.

I had originally thought that Titan supported 24bit max and also briefly thought that 32bit support was a more recent addition but it turned out to be I just didn't look at it close enough. Back around V11 I created and couple of simple dimmer types, one with a single 24bit dimmer attribute with a single dimmer function using the full 24bit DMX range, the other a single 32bt dimmer attribute with a single function using the full 32bit DMX range. The 24bit type worked with no issues, the 32bit type failed to patch so I concluded that 32bit was not supported and that 24bit was the max.

Fast forward to around V12 and I had cause to try a 32bit attribute again, this time, it patched and worked fine, so I concluded that 32bit support had been added. Only when looking at it in more detail did I notice and consider that although the DMX values were greater than 24bit they were not using the full 32bit range. Going back to the simple 32bit dimmer type I had previously and a few other experiments later lead me to conclude that 31bit values were the max supported, and it has probably always been the case.
User avatar
niclights
The eManual
Posts: 4442
Joined: 24 Sep 2004, 01:06
Location: UK

Re: Keep function value when attribute condition changes?

Postby niclights » 19 Apr 2022, 13:12

The DMX values are a 32 bit signed integer. To support I guess it either needs to be changed to an unsigned 32 bit integer or a long. In reality though I'm not sure if there is much call for it. It's hard to conceive of the need for 32 bit accuracy but maybe. I did look at the personality linked and could see how this was being used and it did appear to work in that example.

Who is online

Users browsing this forum: No registered users and 23 guests