====== 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 [[https://www.avolites.com/software/downloads/pearl-2008-2010-tiger|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 * conditions in d4 files (need to be stripped for R20 files) * [[personality:compatibility attributes|]] ---- ===== 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. - 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. - **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. - **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 [[personality:compatibility attributes|]] which attempts to spread out all such attributes onto available attribute banks but this is currently not covered from this explanation. - **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. - **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. - **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. - **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. ---- ===== - 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. ---- ===== - 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/. ---- ===== - 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 {{ :personality:prolight_equinox_fusion_260zr.d4 |Prolight Equinox Fusion 260ZR}}. The PersoBuilder will open with the whole tree collapsed, and the Attributes (top) and Properties (bottom) tabs selected: {{:personality:r20_01_persobuilder.png?600|}} ---- ===== - 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 '[[personality:Compatibility_Attributes|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: {{:personality:r20_02_modes.png?600|}} 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: * the **2 DMX** mode features only Auto and Sound as attributes. You will hardly use this at all. Let's just skip it. * the **8 DMX** and **17 DMX** modes look promising. We'll attempt to export those as R20.\\ {{:personality:r20_03_8_dmx.png?600|}} * the **25 DMX** mode contains the sections ''Cell Master'', ''Cells'', and ''Compatibility Attributes'' (here empty) - this is a mode which uses cells, and thus cannot be exported as R20.\\ {{:personality:r20_04_25_dmx.png?600|}} * finally the **Cell** mode is the one which is only referenced in the 25 DMX mode. proof for this is the ''Hidden'' attributes set to true: left, click on the mode **Cell** itself, and in the properties section (bottom right) you'll find Hidden set to True:\\ {{:personality:r20_05_cell.png?600|}} 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 **EQ**uinox **FU**sion **26**0ZR **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. {{:personality:r20_06_classicpearlreference.png?600|}} Do so for each mode which you plan to export as R20. ---- ===== - 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: {{:personality:r20_07_wheelmapping.png?600|}} 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: {{:personality:r20_08_wheelmapping2.png?600|}} * **Shutter** was moved from ''Unassigned'' to ''Iris/Shutter'', ''Wheel 2'' * **Colour Macro** was moved from ''Unassigned'' to ''Colour'', ''Wheel 2'' * **White** was on page 2. There I moved it to ''Unassigned'', toggled to page 1, and moved it to ''Effect/Yellow'', ''Wheel 1''.\\ {{:personality:r20_09_wheelmapping3.png?600|}} * **Auto** and **Control** are good candidates for page 2, ''Effect/YelloW'' attribute bank. 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!** ---- ===== - 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. |< 100% 50% >| ^ {{:personality:r20_10_generatevis.png}} | most likely you will answer ''No'' - generating visualiser files is explained \\ in [[personality:create_vis_from_d4|]] | ^ {{:personality:r20_11_referencemissing.png}} | 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. | ^ {{:personality:r20_12_savemode.png?600}} | 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''. | ^ {{:personality:r20_14_savemode.png?600}} | Here location and name are as suggested. | ^ {{:personality:r20_15_attributenotincluded.png|}} | 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''.| ^ {{:personality:r20_16_wrongfilename.png?600|}} | 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''.| ^ {{:personality:r20_17_partrangeonly.png|}} {{:personality:r20_18_shutteropen.png?600|}}| 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 [[personality:create_vis_from_d4|]]).\\ \\ The Image below shows where the ranges are set in this example. | ^ {{:personality:r20_19_classicpearlreference.png|}} | 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: * {{ :personality:prolight_equinox_fusion_260zr.d4 |Prolight_Equinox Fusion 260ZR.d4}} * {{ :personality:eqfu2608.r20 |EQFU2608.R20}} * {{ :personality:eqfu2617.r20 |EQFU2617.R20}} ---- ===== - 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 [[https://www.avolites.com/software/downloads/pearl-2008-2010-tiger|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. {{ :personality:r20_20_16bdim.png|}} 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 {{ :personality:elation_arena_par_zoom_v2.d4 |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 {{ :personality:elapzm26.r20 |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: {{:personality:r20_21_8bit_dimmer.png|}} (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...) ---- ===== - 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: * first and foremost: the old consoles use a disk drive in order to transfer data - the very first consoles were restricted to 720k 3.5" floppies, newer ones could handle 1.44M. The 2008 series of consoles - Pearl 2008 and Pearl Tiger - also had USB fitted. However the USB drive needs to be FAT formatted, and iirc must not exceed 2GB in size. * a starting point is to put the personality file into the root of the disk or USB drive, connect/insert this into the desk, and select it when patching. This may or may not work. * For very first Pearls there was no other way than diskettes. This is why there are more than 100 personality disks listed to download at [[https://personalities.avolites.com/]] (select ''Azure, Pearl and Sapphire'' as console type. Note that each disk contains also a file ''SG.DAT'' (the shape file) and a file ''SAPPRL.LST'' - something like the inventory, just a list of fixtures and personalities which are on this disk. Personalities not in this file are not available for the console. There was a separate application ''INDEX.EXE'' which rebuilt this file. * Next was the internal cache: consoles fitted with enough memory could hold the most often used personalities in their internal memory. In order to import personalities into this cache you needed to create a new cache file, and then import this into the console. There was a separate application ''Cache Builder'' (cb.exe) which let you select personalities and then compressed these into a new cache file. * And then there are the 2008 series consoles: Pearl 2008 and Pearl Tiger. As stated above they can handle USB drives if they don't exceed 2GB in size. However it needs to be a special folder structure:\\ \ \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.