Virus Ti2 Definition

Can someone help? I’ll pay money. I use 4 tracks at the most for virus via the hapax and use the aura stand alone plugin. Do I need 4 files or 1? I can’t get it to work. Help please.

This is the one I’m using? I have project B with virus, and hapax works on all 4 tracks I have different instruments assigned to, but definition file is not doing shit.

VERSION 1 # Currently, this should only be 1.

Supports all alphanumeric ASCII, and ’ ', ‘_’, ‘-’, ‘+’ - can also be NULL

TRACKNAME virus ti

Can be POLY, DRUM, MPE, or NULL

TYPE POLY

Can be A, B, C, D, USBD, USBH, CVGx (x between 1&4), CVx, Gx, or NULL

OUTPORT NULL

Can be x (between 1-16), or NULL – this is ignored if output port is not MIDI

OUTCHAN NULL

Can be NONE, ALLACTIVE, A, B, USBH, USBD, CVG, or NULL

INPORT NULL

Can be x (between 1-16), ALL, or NULL. This definition will be ignored if INPORT is NONE, ALLACTIVE or CVG

INCHAN NULL

This defines the default ‘MAX RATE’ for automation lanes.

Can be NULL, 192, 96, 64, 48, 32, 24, 16, 12, 8, 6, 4, 3, 2, 1

MAXRATE 24

DRUMLANES

Syntax: ROW:TRIG:CHAN:NOTENUMBER NAME

ROW must be between 1 and 8

TRIG can be between 0 and 127, or NULL

CHAN can be a number between 1 and 16, Gx, CVx, CVGx (x between 1 and 4), or NULL

NOTENUMBER can be between 0 and 127, or NULL

NAME supports all alphanumeric ASCII, and ’ ', ‘_’, ‘-’, ‘+’ - can also be NULL

Please note this section will be discarded for tracks which are not DRUM tracks

[DRUMLANES]
[/DRUMLANES]

PC

Syntax: NUMBER NAME

number must be either:

- A number (for simple PC)

- Three numbers, delimited by ‘:’, which represent PC:MSB:LSB. You can put ‘NULL’ to not set the MSB/LSB.

PC must be between 1…128

MSB/LSB must be between 0…127

[PC]
1:0:0 RAM-A 0 - 127
1:0:1 RAM-B 0 - 127
1:0:2 RAM-C 0 - 127
1:0:3 RAM-D 0 - 127
1:0:4 ROM-A 0 - 127
1:0:5 ROM-B 0 - 127
1:0:6 ROM-C 0 - 127
1:0:7 ROM-D 0 - 127
1:0:8 ROM-E 0 - 127
1:0:9 ROM-F 0 - 127
1:0:10 ROM-G 0 - 127
1:0:11 ROM-H 0 - 127
1:0:12 ROM-I 0 - 127
1:0:13 ROM-J 0 - 127
1:0:14 ROM-K 0 - 127
1:0:15 ROM-L 0 - 127
1:0:16 ROM-M 0 - 127
1:0:17 ROM-N 0 - 127
1:0:18 ROM-O 0 - 127
1:0:19 ROM-P 0 - 127
1:0:20 ROM-Q 0 - 127
1:0:21 ROM-R 0 - 127
1:0:22 ROM-S 0 - 127
1:0:23 ROM-T 0 - 127
1:0:24 ROM-U 0 - 127
1:0:25 ROM-V 0 - 127
1:0:26 ROM-W 0 - 127
1:0:27 ROM-X 0 - 127
1:0:28 ROM-Y 0 - 127
1:0:29 ROM-Z 0 - 127
[/PC]

CC

Syntax: CC_NUMBER NAME or CC_NUMBER:DEFAULT=xx NAME

DEFAULT_VALUE must be a valid number between 0 and 127

[CC]
1 mod wheel
2 breath ctl
4 foot ctl
5 glide time
7 volume
8 balance
10 Pan
11 expression
17 osc1 shape
18 osc1 pulsewidth
19 osc1 wave select
20 osc1 semitone
21 osc1 kybd
22 osc2 shape
23 osc2 pulsewidth
24 osc2 wave select
25 osc2 semitone
26 osc2 detune
27 osc2 fm amount
28 osc2 sync
29 osc2 fltr eg amt
30 fltr fm eg amt
31 osc2 kybd
32 bank select
33 osc balance
34 subosc volume
35 subosc Shape
36 osc mainvolume
37 noise volume
38 ringmod volume
39 noise color
40 fltr1 cutoff
41 fltr2 cutoff
42 fltr1 resonance
43 fltr2 resonance
44 fltr1 eg amt
45 fltr2 eg amt
46 fltr1 kybd amt
47 fltr2 kybd amt
48 fltr balance
49 saturation curve
51 fltr1 mode
52 fltr2 mode
53 fltr routing
54 fltr eg attack
55 fltr eg decay
56 fltr eg sustain
57 fltr eg sus time
58 fltr eg release
59 amp eg attack
60 amp eg decay
61 amp eg sustain
62 amp eg sus time
63 amp eg release
64 hold pedal
65 glide pedal
66 sostenuto pedal
67 lfo1 rate
68 lfo1 shape
69 lfo1 eg mode
70 lfo1 mode
71 lfo1 symmetry
72 lfo1 kybd
73 lfo1 restart
74 osc1 lfo1 amt
75 osc2 lfo1 amt
76 pw lfo1 amt
77 reso lfo1 amt
78 fltrgain lfo1 amt
79 lfo2 rate
80 lfo2 shape
81 lfo2 eg mode
82 lfo2 mode
83 lfo2 symmetry
84 lfo2 kybd
85 lfo2 restart
86 osc shp lfo2 amt
87 fm lfo2 amt
88 fltr1 lfo2 amt
89 fltr2 lfo2 amt
90 pan lfo2 amt
91 volume
93 transpose
94 key mode
97 unison mode
98 unison detune
99 unison spread
100 unis lfo phase
101 input mode
102 input select
105 chorus mix
106 chorus rate
107 chorus depth
108 chorus delay
109 chor feedback
110 chor lfo shape
112 delay-verb mode
113 effect send
114 delay time
115 delay feedback
116 delay-verb time
117 delay-verb size
118 delay lfo shape
119 delay color
122 kybd local
123 all notes off
[/CC]

NRPN

Syntax: “MSB:LSB:DEPTH NAME” or “MSB:LSB:DEPTH:DEFAULT=xx NAME”

Lsb & msb should be between 0 and 127

Note: LSB can be over 127 ONLY if MSB is 0 or omitted

e.g. ‘0:1026:7 FOO’, or ‘:2000:7 BAR’

the examples above would be equivalent to ‘8:2:7 FOO’ and ‘15:80:7 BAR’ respectively

DEPTH can be 7 or 14

For NRPN: DEFAULT_VALUE must be a valid number, either between 0 and 127 (for 7 bit NRPNs) or between 0 and 16383 (for 14bit NRPNs)

[NRPN]
[/NRPN]

ASSIGN

Syntax: POT_NUMBER TYPE:VALUE or POT_NUMBER TYPE:VALUE DEFAULT=DEFAULT_VALUE

POT_NUMBER must be between 1 and 8

TYPE can be “CC”, “PB” (pitchbend), “AT” (aftertouch), “CV”, “NRPN”, or “NULL” (this won’t assign the pot).

Non explicitly-defined pots will be considered “NULL”

VALUE VALIDATION

For CC: Value must be a valid number between 0 and 119

For PB and AT, any text after the TYPE will be ignored

For CV, value must be between 1 and 4

For NRPN, value must be MSB:LSB:DEPTH, with both lsb & msb bebtween 0 and 127, and DEPTH being either 7 or 14

DEFAULT VALUE

For CC: DEFAULT_VALUE must be a valid number between 0 and 127

For PB: DEFAULT_VALUE must be a valid number between 0 and 16383

For NRPN: DEFAULT_VALUE must be a valid number, either between 0 and 127 (for 7 bit NRPNs) or between 0 and 16383 (for 14bit NRPNs)

For CV: DEFAULT_VALUE must be either a valid number between 0 and 65535, or a voltage between -5V and 5V, e.g. “-4.25V” or “1.7V”

Please note default value will be ignored for PB and AT messages.

[ASSIGN]
[/ASSIGN]

AUTOMATION

Syntax: TYPE:VALUE

TYPE can be “CC”, “PB” (pitchbend), “AT” (aftertouch), “CV”, or “NRPN”

VALUE VALIDATION

For CC: Value must be a valid number between 0 and 119

For PB and AT, any text after the TYPE will be ignored

For CV, value must be between 1 and 4

For NRPN, value must be MSB:LSB:DEPTH, with both lsb & msb bebtween 0 and 127, and DEPTH being either 7 or 14

NOTE: You are limited to 64 automation lanes

[AUTOMATION]
[/AUTOMATION]

This section will be readable from Hapax.

[COMMENT]
this will work for ti2 as well
[/COMMENT]

I don’t know what to set this to. I’m using tracks 1-4 over usb. not sure what to modify the file like.

virus must be connected via midi din5

ti is the same as ti2

I have a Ti2. I’m not using 5 pin but USB from hapax to Mac virus stand alone plugin Mac out to Virus Ti2 via USB

din5 is the only way it will work. or at least the only way that wont require you to troubleshoot or jump through a bunch of hoops

Well that stinks, now I have no way of using the virus plugin with the hapax over USB and using CC

The OUTPORT should be set to “USBD” which is USB Device. Your DAW should see a “HAPAX” usb midi device that you can route into the track(s) with the plugin.

On the Hapax, you would load the same instrument def and just change the midi channel for each track.

This would take a bit of work, but I’m assuming you are getting usb audio into the daw from the Virus and when you have usb connected the DIN midi stops working. I could see having the convenience of controlling the synth through the plugin.

Well I’m not using a DAW, but an Aura plugin. Everything works. Hapax > Mac via usb Mac > Virus via usb and 1/4" outs to mixer.
I have 3 channels on the Hapax using USB and port 1, 2, 3 and this works with the virus and plugin which is stand alone. I’m not using an audio interface either.

So with the definition file, do I need to set an outchannel? Problem is there’s a few Virus files on this site and I don’t know which one to use. As of now Do I need to set outchannel to 1 then have another file for track 2 set to outchannel 2?

VERSION 1 # Currently, this should only be 1.

Supports all alphanumeric ASCII, and ’ ', ‘_’, ‘-’, ‘+’ - can also be NULL
TRACKNAME virus ti

Can be POLY, DRUM, MPE, or NULL
TYPE POLY

Can be A, B, C, D, USBD, USBH, CVGx (x between 1&4), CVx, Gx, or NULL
OUTPORT USBD

Can be x (between 1-16), or NULL – this is ignored if output port is not MIDI
OUTCHAN NULL

Can be NONE, ALLACTIVE, A, B, USBH, USBD, CVG, or NULL
INPORT NULL

Can be x (between 1-16), ALL, or NULL. This definition will be ignored if INPORT is NONE, ALLACTIVE or CVG
INCHAN NULL

This defines the default ‘MAX RATE’ for automation lanes.
Can be NULL, 192, 96, 64, 48, 32, 24, 16, 12, 8, 6, 4, 3, 2, 1
MAXRATE 24

DRUMLANES
Syntax: ROW:TRIG:CHAN:NOTENUMBER NAME
ROW must be between 1 and 8
TRIG can be between 0 and 127, or NULL
CHAN can be a number between 1 and 16, Gx, CVx, CVGx (x between 1 and 4), or NULL
NOTENUMBER can be between 0 and 127, or NULL
NAME supports all alphanumeric ASCII, and ’ ', ‘_’, ‘-’, ‘+’ - can also be NULL
Please note this section will be discarded for tracks which are not DRUM tracks
[DRUMLANES]
[/DRUMLANES]

PC
Syntax: NUMBER NAME
number must be either:

  • A number (for simple PC)
  • Three numbers, delimited by ‘:’, which represent PC:MSB:LSB. You can put ‘NULL’ to not set the MSB/LSB.
    PC must be between 1…128
    MSB/LSB must be between 0…127
    [PC]
    1:0:0 RAM-A 0 - 127
    1:0:1 RAM-B 0 - 127
    1:0:2 RAM-C 0 - 127
    1:0:3 RAM-D 0 - 127
    1:0:4 ROM-A 0 - 127
    1:0:5 ROM-B 0 - 127
    1:0:6 ROM-C 0 - 127
    1:0:7 ROM-D 0 - 127
    1:0:8 ROM-E 0 - 127
    1:0:9 ROM-F 0 - 127
    1:0:10 ROM-G 0 - 127
    1:0:11 ROM-H 0 - 127
    1:0:12 ROM-I 0 - 127
    1:0:13 ROM-J 0 - 127
    1:0:14 ROM-K 0 - 127
    1:0:15 ROM-L 0 - 127
    1:0:16 ROM-M 0 - 127
    1:0:17 ROM-N 0 - 127
    1:0:18 ROM-O 0 - 127
    1:0:19 ROM-P 0 - 127
    1:0:20 ROM-Q 0 - 127
    1:0:21 ROM-R 0 - 127
    1:0:22 ROM-S 0 - 127
    1:0:23 ROM-T 0 - 127
    1:0:24 ROM-U 0 - 127
    1:0:25 ROM-V 0 - 127
    1:0:26 ROM-W 0 - 127
    1:0:27 ROM-X 0 - 127
    1:0:28 ROM-Y 0 - 127
    1:0:29 ROM-Z 0 - 127
    [/PC]

CC
Syntax: CC_NUMBER NAME or CC_NUMBER:DEFAULT=xx NAME
DEFAULT_VALUE must be a valid number between 0 and 127
[CC]
1 mod wheel
2 breath ctl
4 foot ctl
5 glide time
7 volume
8 balance
10 Pan
11 expression
17 osc1 shape
18 osc1 pulsewidth
19 osc1 wave select
20 osc1 semitone
21 osc1 kybd
22 osc2 shape
23 osc2 pulsewidth
24 osc2 wave select
25 osc2 semitone
26 osc2 detune
27 osc2 fm amount
28 osc2 sync
29 osc2 fltr eg amt
30 fltr fm eg amt
31 osc2 kybd
32 bank select
33 osc balance
34 subosc volume
35 subosc Shape
36 osc mainvolume
37 noise volume
38 ringmod volume
39 noise color
40 fltr1 cutoff
41 fltr2 cutoff
42 fltr1 resonance
43 fltr2 resonance
44 fltr1 eg amt
45 fltr2 eg amt
46 fltr1 kybd amt
47 fltr2 kybd amt
48 fltr balance
49 saturation curve
51 fltr1 mode
52 fltr2 mode
53 fltr routing
54 fltr eg attack
55 fltr eg decay
56 fltr eg sustain
57 fltr eg sus time
58 fltr eg release
59 amp eg attack
60 amp eg decay
61 amp eg sustain
62 amp eg sus time
63 amp eg release
64 hold pedal
65 glide pedal
66 sostenuto pedal
67 lfo1 rate
68 lfo1 shape
69 lfo1 eg mode
70 lfo1 mode
71 lfo1 symmetry
72 lfo1 kybd
73 lfo1 restart
74 osc1 lfo1 amt
75 osc2 lfo1 amt
76 pw lfo1 amt
77 reso lfo1 amt
78 fltrgain lfo1 amt
79 lfo2 rate
80 lfo2 shape
81 lfo2 eg mode
82 lfo2 mode
83 lfo2 symmetry
84 lfo2 kybd
85 lfo2 restart
86 osc shp lfo2 amt
87 fm lfo2 amt
88 fltr1 lfo2 amt
89 fltr2 lfo2 amt
90 pan lfo2 amt
91 volume
93 transpose
94 key mode
97 unison mode
98 unison detune
99 unison spread
100 unis lfo phase
101 input mode
102 input select
105 chorus mix
106 chorus rate
107 chorus depth
108 chorus delay
109 chor feedback
110 chor lfo shape
112 delay-verb mode
113 effect send
114 delay time
115 delay feedback
116 delay-verb time
117 delay-verb size
118 delay lfo shape
119 delay color
122 kybd local
123 all notes off
[/CC]

NRPN
Syntax: “MSB:LSB:DEPTH NAME” or “MSB:LSB:DEPTH:DEFAULT=xx NAME”
Lsb & msb should be between 0 and 127
Note: LSB can be over 127 ONLY if MSB is 0 or omitted
e.g. ‘0:1026:7 FOO’, or ‘:2000:7 BAR’
the examples above would be equivalent to ‘8:2:7 FOO’ and ‘15:80:7 BAR’ respectively
DEPTH can be 7 or 14
For NRPN: DEFAULT_VALUE must be a valid number, either between 0 and 127 (for 7 bit NRPNs) or between 0 and 16383 (for 14bit NRPNs)
[NRPN]
[/NRPN]

ASSIGN
Syntax: POT_NUMBER TYPE:VALUE or POT_NUMBER TYPE:VALUE DEFAULT=DEFAULT_VALUE
POT_NUMBER must be between 1 and 8
TYPE can be “CC”, “PB” (pitchbend), “AT” (aftertouch), “CV”, “NRPN”, or “NULL” (this won’t assign the pot).
Non explicitly-defined pots will be considered “NULL”
VALUE VALIDATION
For CC: Value must be a valid number between 0 and 119
For PB and AT, any text after the TYPE will be ignored
For CV, value must be between 1 and 4
For NRPN, value must be MSB:LSB:DEPTH, with both lsb & msb bebtween 0 and 127, and DEPTH being either 7 or 14
DEFAULT VALUE
For CC: DEFAULT_VALUE must be a valid number between 0 and 127
For PB: DEFAULT_VALUE must be a valid number between 0 and 16383
For NRPN: DEFAULT_VALUE must be a valid number, either between 0 and 127 (for 7 bit NRPNs) or between 0 and 16383 (for 14bit NRPNs)
For CV: DEFAULT_VALUE must be either a valid number between 0 and 65535, or a voltage between -5V and 5V, e.g. “-4.25V” or “1.7V”
Please note default value will be ignored for PB and AT messages.
[ASSIGN]
[/ASSIGN]

AUTOMATION
Syntax: TYPE:VALUE
TYPE can be “CC”, “PB” (pitchbend), “AT” (aftertouch), “CV”, or “NRPN”
VALUE VALIDATION
For CC: Value must be a valid number between 0 and 119
For PB and AT, any text after the TYPE will be ignored
For CV, value must be between 1 and 4
For NRPN, value must be MSB:LSB:DEPTH, with both lsb & msb bebtween 0 and 127, and DEPTH being either 7 or 14
NOTE: You are limited to 64 automation lanes
[AUTOMATION]
[/AUTOMATION]

This section will be readable from Hapax.
[COMMENT]
this will work for ti2 as well
[/COMMENT]

syntax error line 3. OMG this is brutal

Where have the # gone that rule out comment lines?

Line 3 would normally be your Trackname because the line above is ignored when hashed out. From what I can see your line 3 starts with “Supports” because it’s missing the # to rule it out.

The Trackname looks fine but, if you don’t rule out the comment line above the Hapax thinks it’s part of the definition file and error.

That looks like the right file (I did the last upload with the PC section), but be careful how you are working with it. It should look exactly like the quoted version in the thread where you found it except for your change.

As for multiple files, you only need one file and then the only thing you need to change on each track is the midi channel. You could also have a template project with the tracks already loaded. If you really want, you could have seperately named files and the only thing different would be the midi channel.

So outchannel should be NULL then just load the same file in each track and change the midi channel manually correct?

That’s right.

You don’t technically need to use instrument definitions. If you are just setting the port and channel, that is easy.

The defs are useful if you want a text name for a CC or to pre-assign the knobs with CCs.

Trying to get my Hapax to work with the Ti2 over USB using the Aura plugin over USB. My mac has been screwing up the files using text edit, removing the #'s

Goal is to be able to use the Hapax and CC’s over USB, but solibsvs says it will not work only will work with 5 pin midi.

I only use my virus with din, so I can’t be much help there. I’m not sure why it wouldn’t work but it could take a lot of trial and error to get it working. Up to you to decide if you want to go through all of the effort.

Correct

it wont work without a lot of troubleshooting and i personally have no interest. im unaware if you can send cc to the track youre hosting the plugin and have them automate parameters. seems simple enough tho. you let us know if it works, cool?

I only use my Virus TI2 with DIN MIDI as well, and sequence it only from the Hapax.

That said, perhaps there is a way to achieve the OP’s desired outcome:

Hapax → Mac via either USB, or DIN via an adapter, of which there are many
Mac → Virus via USB

In your DAW route MIDI between Hapax and the synth. Virus must connect directly to the Mac for the Aura plugin to work. There is no need to directly connect Hapax to Virus, so route MIDI via the Mac.

I’m curious to hear thoughts about this approach.

thats what i just said. do you know if you can send cc to ti2 in this scenario? i dont. i said that too.