Pan/tilt wheel limitations

17 views
Skip to first unread message

Julien W

unread,
May 10, 2026, 6:29:47 AM (4 days ago) May 10
to Lightjams
I have an issue with the 2D slider when trying to calibrate pan/tilt at the same time.

My fixture have a pan channel from 0 to 540deg and tilt can go from -45 to 225 (MacBeam1R of MacMah)
But the 2D slider only goes from 0 to 360 for pan and 0 to 90 for tilt.
When we reach the limit (like 360, instead of going to 361, it goes to 0).
I understand that it is correct mathematically, but the fixture do a 360 rotation instead of staying at the same position (which is the purpose of having more than 360).
So I cannot really use it to set position as I don't want to do whole rotation.


Also, as the tilt cannot goes below 0, the fixture is limited from what it can do without typing manually the values.

How do you think I can resolve that without too much processing (I'm thinking about using multiple grids to use precedencies and apply a custom scaling but I think it is a bit overkill)?

Julien W

unread,
May 11, 2026, 4:27:22 AM (3 days ago) May 11
to ligh...@googlegroups.com
I got a solution with adding a pseudo-fixtures with only pan/tilt channels on an unassigned universe.
In a grid, I add these attributes and read them with grid.attributeValueAt (that read DMX and not really the grid attribute, it's why we need a pseudo-fixture to get a 100%value).
Fixture PAN: Max 360
Fixture TILT: Max 180
And positions are computed with:
-PAN: if(grid.powerAt(7,6)>0, grid.attributevalueat(7,1) , last)
-TILT: if(grid.powerAt(7,6)>0, grid.attributevalueat(7,0)*2 , last)

*2 because the picker doesn't go to 100% with tilt.
powerAt: in order to fix a position for the same attributes
last: for the nice feature that backup last value of the cell.
Note: even when setting center in fixture definition, the picker is stuck to 90 for tilt and 270 for pan.

This way, I got a scaling for my fixtures without hardcoding values.

I still have an issue when the picker goes from 360 to 0 on PAN where the fixture make a full rotation instead of keeping it's position (moving smoothly tilt and pan instead of just moving pan).
But I don't think it can be resolved without complex codes.

Virus-free.www.avast.com

--
You received this message because you are subscribed to the Google Groups "Lightjams" group.
To unsubscribe from this group and stop receiving emails from it, send an email to lightjams+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/lightjams/7096febf-ad9f-4a6a-bfed-8bda91c8fa4fn%40googlegroups.com.
Fixture_rotation.mp4

Mathieu

unread,
May 11, 2026, 9:02:09 AM (3 days ago) May 11
to Lightjams
Hi,

The pan and tilt picker is to manually pick an initial position. But after that, you can select the pan or tilt attributes individually to access the full range. You can also use the scale buttons of the manual picker to expand the range around the selected initial position in order for the source power to make the moving head moves.

Can you give more details about what you are trying to do? 

Julien W

unread,
May 12, 2026, 9:18:27 AM (2 days ago) May 12
to ligh...@googlegroups.com
I use the picker to set positions in space. 
If I choose 2 points between the right X-axis, the transition is not linear (the fixture do a whole rotation like in the capture I done) because only pan change.

Changing individually the attribute is not something wanted. I already do that but it is time consuming and not really efficient when I want to calibrate all my positions for a live stage while these positions must be linked linearly.

In fact, my solution to resolve the scaling issue with the picker, resolve also the issue of jump position : As I have now all available positions (center fixture is now on a circle of the picker), I have just to work on the opposite side and avoid the right part of the picker to set all initials positions.
An easy way for me will be to have a picker scaled from its attributes and not a 90/360 fix limitation but as long I have a workaround...



Virus-free.www.avast.com

Mathieu

unread,
May 12, 2026, 10:45:47 AM (2 days ago) May 12
to Lightjams
Ok, I see. That's a good workaround then. Since you are getting the target pan with the grid.attributevalueat function, you might want to check the motor.pan function that calculates the optimized pan value in order to move to the target position. It takes degrees as input, so in your case you can scale the percent to degrees with a percent * 540 (if your max pan is 540 degrees).

Julien W

unread,
May 12, 2026, 11:05:03 AM (2 days ago) May 12
to ligh...@googlegroups.com
I saw this function in the help menu of lightjams but not in the online documentation at https://www.lightjams.com/commandline.html
It may be a good feat for my transitions, I have to study how to use it.
Thanks

Mathieu

unread,
May 12, 2026, 11:51:54 AM (2 days ago) May 12
to Lightjams
Reply all
Reply to author
Forward
0 new messages