Table of Contents

Creating R20 files from d4 personalities

(This is NOT an official documentation but simply based on my personal experiences - it might be not complete or even simply wrong in some aspects. Please give feedback if you find anything that you think should be improved.)

R20 files had been the personalities for the Classic consoles from the Pearl 2000 on. After production of the Classic consoles was stopped, Avolites also ceased to offer free personality service for this system in 2019. You can still download the existing personalities, but no new ones will be created.

This page is intended to be helpful when you need a new personality for a fixture which isn't in the library for classic consoles but does exist as d4 file for the Titan system.

The Pearl 2008 and Tiger Manual contains a highly recommended section (sect. 14) about how personality files need to be written and what each entry does.

Items currently NOT covered by this page are


Preliminary Considerations

It is good to understand the main differences (with regards to personalities) between the old Classic system and the new Titan system. When using the Personality Builder to export R20 files from existing d4 files you most likely need to correct some details following these points.

  1. With R20 files, each mode requires a separate personality file, while in the d4 world there is only one file per fixture, holding all the modes.
  2. No Virtual Dimmers in Classic! In Titan you can define a dimmer channel which doesn't exist in the fixture, to proportionally dim e.g. red/green/blue colour channels. This is not possible on Classic consoles, and thus not supported in R20 files.
  3. No cells/subfixtures in Classic! Nowadays there are numerous fixtures available with many individually controllable pixels or other parts, and in Titan there is a mechanism where you can control all such parts simultaneously (as Master channels) or individualle (as subfixtures or cells). This is not possible in Classic. As such, cell modes as well as modes using cells are not supported in R20 files. There is a special feature called compatibility attributes which attempts to spread out all such attributes onto available attribute banks but this is currently not covered from this explanation.
  4. No Conditions in Classic! In Titan it is rather common to have a virtual function-select attribute which controls how other attributes can be adjusted, e.g. a wheel Gobo Func where you can select Index, Scroll and Shake, and the Gobo wheel itself then shows only a subsection of all the Gobo values. This is not possible in Classic.
  5. No 16 bit Dimmer in Classic! While in theory this should be possible, in reality there is an issue in the software which doesn't allow such dimmers to be dimmed down to 0. Thus you might need to reduce the resolution to 8 bit and put the extra channel elsewhere.
  6. Two wheels only in Classic! While there are at least three control wheels on Titan consoles and it is easy to add and operate attributes on multiple pages, Classic consoles have only two wheels, and spreading attributes across pages is best avoided.
  7. Classic wheel mapping not stored in d4 files! Subsequently to the previous point the wheel mapping (i.e. how the attributes are laid out onto the wheels) for Classic consoles is in most cases different from the mapping in Titan. However, as the d4 file format is targeted towards Titan, it doesn't provide means to store the mapping for Classic consoles. The personality builder has the option to export and import this as separate xml file in File ⇒ Export ⇒ Pearl Mapping. But you need to keep track of such files if you are using this.

1. Check if there really doesn't exist one

Use the search on https://personalities.avolites.com/ to check if there really doesn't exist what you need - downloading is always faster than attempting to do yourself.


2. Update your personality library

You certainly do not want to work with old data. Thus, download and install the latest Titan Fixture Library from https://personalities.avolites.com/.


3. Identify the correct d4 file

We assume that a d4 personality for your fixture already exists. Luckily they usually have verbose file names - have a look in the personality folder (with the PC suite installed it is C:\Program Files (x86)\Avolites\Titan\FixtureLibrary). If you don't find what you need then search at https://personalities.avolites.com/ or https://www.avofixturefinder.com for the correct filename. If you still don't find anything then request the personality for Titan or build it yourself (this might be explained on another day).

If you have found the correct d4 file copy it to a suitable location, e.g. your desktop, and open it in the Titan Personality Builder.

If you want to try it yourself then, as an example, you can download and open the personality of the Prolight Equinox Fusion 260ZR. The PersoBuilder will open with the whole tree collapsed, and the Attributes (top) and Properties (bottom) tabs selected:


4. Identify modes, enter references

As stated above the Classic system cannot handle some specific things which came with Titan. One of them are cells and subfixtures. Thus, cell modes as well as modes referencing those cannot be exported as R20 (we omit the 'Compatibility Attributes' workaround for the moment).

In the left-hand pane expand the Modes section by clicking on the + sign. Now it will look like this:

One by one expand each mode (you might enlarge the PersoBuilder's window for a better overview), and identify the modes which you want to and can export as R20 file:

In order to make the selected modes exportable they each need a distinct Classic Pearl Reference. While it is possible to use up to 11 characters life is much easier if you restrict this to 8 characters. It is good practice to use the first 2 characters for an abbreviation for the manufacturer, characters 3~6 for the fixture name, and the last two for the DMX mode. Here let's use EQuinox FUsion 260ZR 08 (DMX), or EQFU2608, and EQFU2617 respectively. In PersoBuilder, left, click on the mode, in the properties tab (bottom-right) find Classic Pearl Reference, and enter the references we have found.

Do so for each mode which you plan to export as R20.


5. Check Wheel Mapping

Unlike Titan consoles classic only features 2 encoder wheels, and the attribute banks are structured differently. Obviously wee need to check the wheel mapping – the way how the attributes are laid out on the wheels and banks. In order to do this click on the Wheel Mapping tab on the bottom, enlarge the program window so that you have a good overview, select a mode on the left (pro tip: start with bigger modes, than smaller ones may also fit), then select the Classic Pearl tab on top-right, and tick the Filter by Mode checkbox. It will look like this:

In the righthand area you can now drag and drop each attribute, in order to move it to another bank and wheel. Usually the suggested mapping is a good starting point. The most important thing is to move attributes from the 'Unassigned' area (bottom right) onto a valid blue rectangle (defined by Wheels and attribute group). Also using the Page select box with arrow buttons you can toggle to more pages. My result looks this:

Please note that the Classic Pearl wheel mapping is not stored in the d4 file. If you made any changes which you want to store separately for future use then you need to export it using File –> Export –> Pearl Mapping. This will export the mapping onyl as xml file which you need to store and keep track of separately.

Your work on this page is done when nothing is in the Unassigned area, and nothing in the top boxes is red – on every page!


6. Export R20

After having entered the references and checked/adjusted the wheel mapping it is time to have a go on creating R20 files: click File –> Generate R20 Files…. Here are some prompts and solutions which might happen.

most likely you will answer No - generating visualiser files is explained
in Creating vis files from d4 personalities
here it complains about the missing reference for the 2 DMX mode. We left this one empty intentionally. Thus click OK here to continue. You'd click Cancel if you'd decide to add a reference for this mode as well.
now it's getting closer: we are prompted for name and location of the first mode (have a look at this prompt's title bar, it reads Save “8 DMX” (EQFU2608). The location is completely up to you (personally I'd prefer the desktop). The file name is a little special: while for the moment the suggested name would be okay it would be impossible to import this into a real Classic console. Hence I'd recommend to change the file name to the 8 char name which we defined as reference for this mode, in this case EQFU2608.
Here location and name are as suggested.
Pretty much self explanatory: there is a macro defined which uses an attribute which is not included in this mode. Maybe you want to cancel here, go back, and check which macros and attributes are defined. In this case it is 100% correct, and we do not include the macro in this mode: click No.
Now we are about to save the next mode's personality file. Please note that it did not change the suggested filename to the new mode. You need to manually change the filename again, here to EQFU2617.
This is quite common, in particular for attributes like Shutter, Gobo or Colour: in this case e.g. the shutter has a value range from 0~15 for Open, but it is only 0 in the d4 file - and then the strobe range starts at 16, leaving the values 1..15 not defined. This is okay for d4 (Titan) as well as R20 (Classic) files but is a problem for visualiser files. However I'd recommend to adjust the values manually if required (see Creating vis files from d4 personalities).

The Image below shows where the ranges are set in this example.
Here again a Pearl reference is missing - this is the 25ch mode which we cannot export because it contains cells. Hit OK.

Similar prompts may show up for more nodes which you don't need as R20, e.g. the Cell mode.

What you should have learned by now: if a prompt occurs then don't just click OK. Read it, and decide!

If everything goes well then you end up with these files:


7. Finetuning / bugfixing in R20 files

There is a good chance the exported files work and can be used in your Classic console. However sometimes you might need to tweak the R20 files directly. At least now you should have read chapter 14 of the Pearl 2008 and Tiger Manual to get a coarse idea about what is going on. Then load the file into a text editor (I prefer Notepad++) an edit to your liking.

One example of where you need to edit the R20 files directly is a very specific issue with the old software and 16bit dimmers: there are fixtures where not only pan, tilt or e.g. the gobo are controlled in 16bit resolution, but also the dimmer is, taking 2 Dmx channels and allowing a very fine controlling. Unfortunately the classic software has problems handling this: you can e.g. set the dimmer to 0 using the channel menu, but as soon as you hit Clear the dimmer is slightly on again: the Dimmer fine channel (LSB) resets to 254 instead of 0, effectively bringing the dimmer output to approx. 0.4%.

The fix is to make the personality with an 8 bit dimmer, and set the Dimmer fine channel to 0. Example here is the Elation Arena Par Zoom v2 15 DMX - you can use the Titan Personality and export the R20 files as described (hint: references are already in, only two wheels need to be mapped), or you directly check the file ELAPZM26.R20 – this is mode 5 of this fixture, and the channel assignment is this:

Channel Function
1 Red high
2 Red low
3 Green high
4 Green low
5 Blue high
6 Blue low
7 White high
8 White low
9 Colour Macro
10 Dimmer high
11 Dimmer low
12 Shutter
13 Dimmer Speed
14 Zoom high
15 Zoom low

Now in the ELAPZM26.R20 file find the DMX section which looks like this:

;----------------------------------------------------------------------------
; DMX channel description
;
; Column by column description of each DMX channel
; 1. The channels bank number (1..20)
; 2. The upper faders in the bank (1) or the lower faders in the bank (61)
; 3. Channel type (L=LTP, H=HTP, I=Instant LTP, S=16-bit instant LTP,
;    s=16-bit Fadeable LTP
; 4. DMX offset (1..number of DMX channels)
; 5. The output level is proportionally reduced by this level (0..100%)
; 6. The curve number (applicable only to HTP channels), usually set to 1
; 7. Inverted (I) or Normal (N)
; 8. Attribute type (A=Colour Wheel 1, B=Cyan, C=Magenta, D=Yellow,
;         E=Pan, F=Tilt, G=Iris, H=Dimmer, I=Gobo1, J=Gobo2, K=Gobo1 Rotate,
;         L=Focus, M=Gobo2 Rotate, N=Colour Wheel 2, O=Shutter, P=Prism, Q=Zoom,
;         R=Effect Rotate, S=Frost, T=Red, U=Green, V=Blue, 0=uncategorised)
; 9. Checksum channel (Always 1)
;10. Attribute name, must be enclosed in quotes and upto 12 characters allowed
;11. The ON value of this channel (0..255)
;12. The Highlight level of this channel
;13. The Lowlight level of this channel
;
DMX
10    1   s    1   100   1N   T   1   "Red"             255   255     0
0     0   L    2   100   1N   T   1   "Red Low"         255   255     0
10   61   s    3   100   1N   U   1   "Green"           255   255     0
0     0   L    4   100   1N   U   1   "Green Low"       255   255     0
9    61   s    5   100   1N   V   1   "Blue"            255     0   230
0     0   L    6   100   1N   V   1   "Blue Low"        255     0   230
9     1   s    7   100   1N   0   1   "White"             0     0     0
0     0   L    8   100   1N   0   1   "White Low"         0     0     0
4     1   I    9   100   1N   A   1   "Colour Macro"      0     0     0
1     1   H   10   100   1N   H   1   "Dimmer"          255     0     0
0     0   s   11   100   1N   H   1   "Dimmer Low"      255     0     0
2    61   L   12   100   1N   O   1   "Shutter"         255     0     0
8     1   L   13   100   1N   0   1   "Dim Spd"           0     0     0
5     1   s   14   100   1N   Q   1   "Zoom"            127     0     0
0     0   L   15   100   1N   Q   1   "Zoom Low"        127     0     0
END
;
;----------------------------------------------------------------------------

You can easily find the two lines for the dimmer channels:

1     1   H   10   100   1N   H   1   "Dimmer"          255     0     0
0     0   s   11   100   1N   H   1   "Dimmer Low"      255     0     0

While the first line is absolutely okay the second line needs some tweaking: Nick Morris (the personality master) wrote about this

…just change Dimmer Low channel type to 8bit HTP (H), move Dimmer Low to an empty wheel slot (for example … 11 1) and set Dimmer Low attribute type to uncategorised (0).

We change the second line so that it reads

11    1   H   11   100   1N   0   1   "Dimmer Low"      255     0     0

Now having patched the edited personality the dimmer low channel is unaffected by the main dimmer attribute as it is in another category and on page 2:

(Frankly, when pressing clear, the wheel still shows a dimmer value of 0.3% – but if you check the DMX output you'll see it is 0. Chalk it up to another issue…)


8. Transfer R20 files into your console

The way how a personality file can be used very much depends from your console hardware and software. Usually the manual which came with the console should give you valuable hints. out of memory it is something along these lines:

  \
  \AVOLITES
            \FIXTURES
                     \R20
                         \(one folder per manufacturer, e.g.) ROBE (with all the personalities in)
                         \SG.DAT (the shape file)


There is a separate application Copy 2008 available at www.avolites.com/software/downloads/pearl-2008-2010-tiger which creates this structure and adds the shape file.