Remote Control of Vintage Yamaha Digital Mixers w/ TouchDAW

Audio Related In-House Builds and Pojects
Post Reply
admin
Site Admin
Posts: 173
Joined: 26 Dec 2023 13:05

Remote Control of Vintage Yamaha Digital Mixers w/ TouchDAW

Post by admin »

Originally posted on: Tue Mar 29 2022 22:08:35 GMT-0400 (Eastern Daylight Time)
EDITS/UPDATES Jan 2026

Remote Control of Vintage Yamaha Digital Mixing Consoles with TouchDAW

This post describes a working Wired USB-MIDI cable. Scroll Down for a working Wireless Setup.

Yamaha Digital Mixing Consoles such as the 01V, 02R, 01V96, 02R96, while long since discontinued, were advanced and capable studio mixers for their time.  Due to availability on the secondhand market at low prices, these mixers are now finding thier way into the hands of DJ's, bands, and community playhouses where they serve as a live mixing consoles.

Image
Yamaha 02R96 Digital Mixing Console.  Photo credit: Yamaha USA.

Background:

The Yamaha Digital Mixers can be remotely controlled with Yamaha's proprietary Studio Manager software, however, Studio Manager is not maintained for this mixer anymore, and only had Windows and Mac Versions.

Remote (and preferably wireless) control of theses Vintage Yamaha Mixers from current non-Windows devices would be hugely beneficial in their 2nd careers as live mixers. Can these Vintage Yamaha machines be controlled from an Android Tablet or ChromeOS laptop?  (NOTE:  Android and Chrome OS are based on Linux.  All Android Phones and Tablets are Linuxslates.)

While research continues, the preliminary answer is "Yes".  Read on to find out what we have done and how we did it.

More Backround:

TouchDAW is an Android app (also runs on Chrome OS) that allows control of Digital Audio Workstations (DAW) and other MIDI devices.

Note:  What is detailed here worked on a Yamaha 01V and 02v96, but should work on similar vintage mixers with MIDI connectors.

Some of these devices have a USB Host port or "Remote" port, however the communications for remote control over this port uses Yamaha's proprietary protocols.  The built-in USB cannot be used for standards-based control of the Yamaha mixers mentioned above.  MIDI, however is a standard, so an inexpensive Chinese USB - MIDI interface cable was used to provide a standards-based interface to the Yamaha mixer.

Image
"Generic" USB-MIDI interface.  Photo from Aliexpress vendor listing.  Linuxslate.com is not recommending any particular vendor or retail platform. Other, similar cables should work.

What is needed:
  • Yamaha 02v96 mixer or similar vintage Yamaha digital mixer.
  • Generic USB-MIDI interface cable as shown above.
  • Android Phone, Tablet, or Chrome OS Laptop.
  • If the Android/Chrome device you are using does not have a "Full Size" USB connector (USB-A), you will need a USB OTG cable suitable for the Tablet or Phone you are using (USB-C or USB-Mini OTG cable)
  • TouchDAW Android app from the Google Play Store.  NOTE:  There is a free "Demo" version of TouchDAW available.  I strongly suggest using the Demo version until connectivity is verified. The full version costs $4.95 as of this writing.
Step 1:  Connections:
  • Connect the USB-MIDI interface cable to the Yamaha mixer (DAW).  PLEASE NOTE: MIDI uses the IN-OUT-THRU connection paradigm. The MIDI (DIN) Plug marked IN, must be connected to OUT on the mixer, and vice versa.  The THRU Connector is not used unless you are controlling other devices simultaneously.
  • If the Phone, Tablet or Chromebook does not have a Full size USB connector, plug the USB OTG cable into the Phone, Tablet or Chromebook.
  • Connect the USB-MIDI interface cable USB end to the Full size USB connector on the Phone, Tablet or Chromebook, or to the large end of the OTG Cable.
Article in Work.  Please Check Back.
admin
Site Admin
Posts: 173
Joined: 26 Dec 2023 13:05

Remote Control of Vintage Yamaha Digital Mixers w/ TouchDAW

Post by admin »

NOTE: The intended second post of this article, which documented the TouchDAW and Mixer MIDI settings was never published. I can verify that at one point, I was able to control the Faders and other settings of a Yamaha 02R96 using TouchDAW on an Android Tablet via the wired USB MIDI adapter shown above. I am working on the following:

1. Reproduce the original success on the Yamaha 02R96, and document the Mixer MIDI and TouchDAW settings.
2. Determine if the same hardware and settings combination (or similar) work on a Yamaha 01V.
3. Attempt to use a wireless USB - MIDI adapter for true remote control of either/both mixers.

Note that the appropriate settings should remain configured in my Yamaha 02R96 assuming that it still powers up, and that it has retained the relevant settings.

Please check back for updates soon.
admin
Site Admin
Posts: 173
Joined: 26 Dec 2023 13:05

Re: Remote Control of Vintage Yamaha Digital Mixers w/ TouchDAW

Post by admin »

I have been successful at Wireless Remote Control of my Yamaha 01V Vintage Digital Mixer.

I can also report that the wired USB MIDI interface discussed in the first post, which worked for the 02R96 does also work with the 01V.

To achieve wireless remote control, I purchased an "M-Wave Wireless MIDI Transmission System" from "A certain large online retailer". Cost including shipping was less than $25, so this works well with community or charity organizations with limited funding.

M-Wave Wireless MIDI.png
M-Wave Wireless MIDI.png (140.97 KiB) Viewed 1315 times
Photo from random vendor listing. Linuxslate.com is not recommending any particular vendor or retail platform.


Connections:

Note the nomenclature and arrows on each part of the MIDI interface. For this device, the connector goes to the indicated MIDI connector on the MIDI device. So "OUT -->" Goes to MIDI Out on the Yamaha Mixer, and the plug marked "IN -->" goes to the MIDI In on the mixer. While the arrows serve to indicate what's going on here, it's otherwise the opposite of other MIDI connectors, including the wired USB adapter in the previous post, and general MIDI connections.

While the M-Wave Wireless MIDI Transmission System also supports Bluetooth, I was using the included USB connector on the tablet side. I am controlling the Mixer with an older Android Tablet that includes full size (A) USB ports. If the Android Device you are using does not have full size (A) USB ports, the appropriate OTG adapter will be required.

It does not appear that Bluetooth MIDI hub software is supported on my older tablet. Additionally, using the USB M-Wave"Dongle" eliminates the need for Bluetooth pairing, and may help to reduce lag.

Note that the M-Wave Wireless MIDI device contains a battery, and must be charged via a USB-C connection. A USB-A to C cable is included, but a USB power source is not. The M-Wave Wireless MIDI system can be changed from any USB source. The battery in the M-Wave Wireless MIDI device should last for anything short of a multi-day gig.

MIDI Setup on the Yamaha Mixer:

On Tab 1 of the MIDI Pages, I set Control Change and Parameter Change to on. Settings on the other MIDI pages should be left as their defaults.

Yamaha_01V_MIDI Setup 1.JPG
Yamaha_01V_MIDI Setup 1.JPG (78.18 KiB) Viewed 1315 times


UPDATED -- Now working! TouchDAW Setup:

The Wired or Wireless USB device should be recognized when TouchDAW is launched. If not, try inserting the USB connection first, and then restarting TouchDAW.

In the TouchDAW Setup, Select MIDI Ports --> MIDI Port 2 "Keyboard, XY Pads, MIDI Mixers" and then select USB. Note that the M-Wave USB dongle is identified as "SINCO". The USB device must only be chosen in TouchDAW MIDI Port 2. If USB is not available in MIDI Port 2, select something else (Such as WiFi) in MIDI Port 1, and then USB should be available in MIDI Port 2

Under MIDI Options --> Optional Transports, verify that none of the Optional Transports are selected.

Under DAW Controller --> Sequencer, select Pro Tools.

Setting up the Main TouchDAW "Full" Control Surface for the Yamaha Mixers (Easy GUI way -- No editing of XML files needed)

TouchDAW_tablet_full.png
TouchDAW_tablet_full.png (231.69 KiB) Viewed 1247 times
Select MIDI Mode (Touch the "Shift" button as shown.)

Press the Menu button (3 Lines on the Right). The Menu will now include an "Edit MIDI" Option. Select it.

Touch the first (Left Most) Fader.

Using the Nav Knob and Arrow Keys on the Right, Set the parameters for Fader 1 as follows:

Ch : 1 T: CC D1:1 D2:7F

I typically set up with my Musignal FJ1 DJ Player/Mixer on the 13/14 input, and I reserve 15/16 for a Phone, iPod, or backup player connected to 2TR IN via RCA connections. So for now, I am setting the 8 available Faders of the Mixer section of the default TouchDAW Panel as Channels 1, 2, 3, 4, 5, 13/14,15/16, Master ST. Note that the 9th slider is not available for use without a custom display.

Note: All settings will be set as Ch: 1. We are communicating over MIDI Channel 1. Do not confuse MIDI Channel 1 with the Audio Input Channels on the Mixer.

Note: MIDI Parameter 0 is set to "NO ASSIGN" by default on the 01V (I recall the 02R96 behaving the same way). So the first Fader is set to D1: 1, not D1: 0.

Note: The Yamaha Manual provides MIDI control assignments in Decimal. TouchDAW uses Hex. Conversion will be necessary.

Faders 2 - 5:
Ch : 1 T: CC D1:2 D2:7F
Ch : 1 T: CC D1:3 D2:7F
Ch : 1 T: CC D1:4 D2:7F
Ch : 1 T: CC D1:5 D2:7F

Note: Even with remote control limited to the first 5 channels, values after this would be different for devices other than the 01V.

I set Faders 6 and 7 for the 2 Stereo Input Channels, 13/14 and 15/16:
Ch : 1 T: CC D1:D D2:7F
Ch : 1 T: CC D1:E D2:7F

Note that lead 0's are not required or preserved.

Set the last available Fader to the Master ST:

Ch : 1 T: CC D1:1B D2:7F

When done editing, press the Save button (Floppy Disk Icon), and give the settings a name. To exit editing without saving, just presss the Menu button (3 lines) again.

For Now, the only other functionality that I set up was the Channel ON buttons for the first 5 inputs (By default, called Mute in TouchDAW). [I purposely did not set 13/14, 15/16, or Master ST as this would cause sudden silence if touched accidentally.] Edit: See Below.

The Mute Button (ON) settings are as follows:

Ch : 1 T: CC D1:1C D2:7F Ti: ON M: Tog
Ch : 1 T: CC D1:1D D2:7F Ti: ON M: Tog
Ch : 1 T: CC D1:1E D2:7F Ti: ON M: Tog
Ch : 1 T: CC D1:1F D2:7F Ti: ON M: Tog
Ch : 1 T: CC D1:21 D2:7F Ti: ON M: Tog

Note: Parameter 32 (Hex 0x20) is NO ASSIGN, thus the skip from 1F to 21.

Note: Update: I have added the remaining ON functions, as well as PAN for 1 - 5 and Master (Balance). I have also added Titles for each Channel.

When saving the XML file, It seems to add changes over the Default.xml MIDI Map, so my current XML file is a bit of a mess, and will not be shared at this time. I will at some point clean it up and/or paste individual lines here.

The basic functionality achieved so far is helpful for in-audience mixing of Mic levels, and the Stereo Inputs and Master output. Further, and more practical functionality can be achieved with some work with TouchDAW editing, however I will note that the TouchDAW GUI editing is extremely awkward, and what is on the https://xmmc.de website is not particularly user-friendly either.

Note: With MIDI transmit and receive enabled in the Mixer's MIDI page 1, two way control is functional. Moving a fader on the actual mixer, will also move the virtual fader on the phone or tablet and vice-versa. The indications for Channel ON (mute) could be clearer, but they do reflect the status of the channel. Unfortunately, there is no initial "sync" between the mixer and TouchDAW, so each control must be operated before they are in agreement. Beware of possible sudden sound changes -- especially if connected to a high power audio system.

I am working on a more specific screen and configuration for the Yamaha Mixers. The basic 12 channels of the 01V, the 13/14, 15/16 pairs, Master ST, and at least some control of the Pan and EQ settings would make this a more usable solution. I am not working on remote program changes at the current time. If I am successful, I may share XML files as follow-up posts in this thread.

If you have questions or XML files you would like to share, please email John at this domain, and I will create an account for you or I will post files you wish to share.
admin
Site Admin
Posts: 173
Joined: 26 Dec 2023 13:05

Re: Remote Control of Vintage Yamaha Digital Mixers w/ TouchDAW

Post by admin »

UPDATE:

I have installed the current version of TouchDAW from the Play Store on my Android 13 phone.

Screenshot_sm.png
Screenshot_sm.png (164.2 KiB) Viewed 486 times

With some effort, and with the use of an USB-C OTG adapter and the M-WAVE USB adapter, I was able to get my phone to connect to the Yamaha 01V.

I set up the 8 faders (Ch 1-5, 13/14, 15/16, and STEREO Master) as indicated in the previous post. This was done from the TouchDAW GUI editor, and as of this post, I have not edited the .xml file. I have not added other functions such as the "ON" (Mute) buttons, nor added the labels. I plan to do this shortly, and will update this thread once I do. SEE NEXT POST IN THIS THREAD.

When using the M-WAVE USB adapter, it does work, and I can control the listed faders on the Yamaha 01V.

I also attempted to pair the M-WAVE MIDI adapter using Bluetooth (Without the USB "dongle"). While the phone paired directly with the M-WAVE MIDI adapter, and it was recognized as a MIDI device in both the phone's Bluetooth Settings and in TouchDAW, I was not successful in actually controlling the Yamaha 01V via Bluetooth.

Carrying my 10 inch Intel Tablet to each gig is not convenient, and while my eyes may not be as good as they once were, I don't need a 10 inch tablet to adjust 8 faders. The phone is far more convenient, and I will probably be using it for most gigs.
admin
Site Admin
Posts: 173
Joined: 26 Dec 2023 13:05

Re: Remote Control of Vintage Yamaha Digital Mixers w/ TouchDAW

Post by admin »

XML File for Yamaha 01V

Below is the current TouchDAW XML file that I am using with my phone for remote control of my Yamaha 01V via the M-Wave Wireless MIDI adapter.

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
	<touchdaw_midi_map version="251">
		<mixer>
			<!-- Example mapping for the mixer part of the app's main screen in MIDI mode.Note that the "id" attributes are required. "name" is optional and only in here to make clear which control is referred to.Controls without a "midi" attribute will be disabled.You can set static text for both textfields on a channel by adding 'title' and 'subtitle' attributes to the channel node (see channel id 8 below).If 'title' and / or 'subtitle' are set to 'MCU' the app will accept and display dynamic text received in Mackie Control formatted sysex.        -->
			<channel id="0"title="1">
				<control id="0" name="v_pot" midi="0xB0,0x02,0x7F"/>
				<control id="1" name="v_pot_press" midi="0x90,0x20,0x41"/>
				<control id="2" name="arm" title="M 1" midi="0x90,0x21,0x41"/>
				<control id="3" name="solo" title="M 2" midi="0x90,0x22,0x41"/>
				<control id="4" name="mute" midi="0xB0,0x1C,0x7F" mode="1" title="ON"/>
				<control id="5" name="edit" title="M 4" midi="0x90,0x24,0x41"/>
				<control id="6" name="fader" midi="0xB0,0x01,0x7F"/>
				<control id="7" name="meter" midi="0xD0,0x0B"/>
			</channel>
			<channel id="1"title="2">
				<control id="0" midi="0xB1,0x02,0x7F"/>
				<control id="1" midi="0x91,0x20,0x41"/>
				<control id="2" title="M 1" midi="0x91,0x21,0x41"/>
				<control id="3" title="M 2" midi="0x91,0x22,0x41"/>
				<control id="4" name="mute" midi="0xB0,0x1D,0x7F" mode="1" title="ON"/>
				<control id="5" title="M 4" midi="0x91,0x24,0x41"/>
				<control id="6" midi="0xB0,0x02,0x7F"/>
				<control id="7" midi="0xB1,0x01,0x7F"/>
			</channel>
			<channel id="2"title="3">
				<control id="0" midi="0xB2,0x02,0x7F"/>
				<control id="1" midi="0x92,0x20,0x41"/>
				<control id="2" title="M 1" midi="0x92,0x21,0x41"/>
				<control id="3" title="M 2" midi="0x92,0x22,0x41"/>
				<control id="4" name="mute" midi="0xB0,0x1E,0x7F" mode="1" title="ON"/>
				<control id="5" title="M 4" midi="0x92,0x24,0x41"/>
				<control id="6" midi="0xB0,0x03,0x7F"/>
			</channel>
			<channel id="3"title="4">
				<control id="0" midi="0xB3,0x02,0x7F"/>
				<control id="1" midi="0x93,0x20,0x41"/>
				<control id="2" title="M 1" midi="0x93,0x21,0x41"/>
				<control id="3" title="M 2" midi="0x93,0x22,0x41"/>
				<control id="4" name="mute" midi="0xB0,0x1F,0x7F" mode="1" title="ON"/>
				<control id="5" title="M 4" midi="0x93,0x24,0x41"/>
				<control id="6" midi="0xB0,0x04,0x7F"/>
			</channel>
			<channel id="4"title="5">
				<control id="0" midi="0xB4,0x02,0x7F"/>
				<control id="1" midi="0x94,0x20,0x41"/>
				<control id="2" title="M 1" midi="0x94,0x21,0x41"/>
				<control id="3" title="M 2" midi="0x94,0x22,0x41"/>
				<control id="4" name="mute" midi="0xB0,0x21,0x7F" title="ON" mode="1"/>
				<control id="5" title="M 4" midi="0x94,0x24,0x41"/>
				<control id="6" midi="0xB0,0x05,0x7F"/>
			</channel>
			<channel id="5" title="13/14">
				<control id="0" midi="0xB5,0x02,0x7F"/>
				<control id="1" midi="0x95,0x20,0x41"/>
				<control id="2" title="M 1" midi="0x95,0x21,0x41"/>
				<control id="3" title="M 2" midi="0x95,0x22,0x41"/>
				<control id="4" name="mute" midi="0xB0,0x29,0x7F" title="ON" mode="1"/>
				<control id="5" title="M 4" midi="0x95,0x24,0x41"/>
				<control id="6" midi="0xB0,0x0D,0x7F" inv="false"/>
			</channel>
			<channel id="6" title="15/16">
				<control id="0" midi="0xB6,0x02,0x7F"/>
				<control id="1" midi="0x96,0x20,0x41"/>
				<control id="2" title="M 1" midi="0x96,0x21,0x41"/>
				<control id="3" title="M 2" midi="0x96,0x22,0x41"/>
				<control id="4" name="mute" midi="0xB0,0x2A,0x7F" title="ON" mode="1"/>
				<control id="5" title="M 4" midi="0x96,0x24,0x41"/>
				<control id="6" midi="0xB0,0x0E,0x7F"/>
			</channel>
			<channel id="7" title="Master">
				<control id="0" midi="0xB7,0x02,0x7F"/>
				<control id="1" midi="0x97,0x20,0x41"/>
				<control id="2" title="M 1" midi="0x97,0x21,0x41"/>
				<control id="3" title="M 2" midi="0x97,0x22,0x41"/>
				<control id="4" name="mute" midi="0xB0,0x37,0x7F" title="ON" mode="1"/>
				<control id="5" title="M 4" midi="0x97,0x24,0x41"/>
				<control id="6" midi="0xB0,0x1B,0x7F"/>
			</channel>
			<!-- MIDI mode can have more than eight channels defined, but adding and removing channels can not be done 'in app'.You would need to do it in the xml. -->
			<channel id="8" title="Next" subtitle="Bank">
				<control id="0" midi="0xB8,0x02,0x7F"/>
				<control id="1" midi="0x98,0x20,0x41"/>
				<control id="2" title="M 1" midi="0x98,0x21,0x41"/>
				<control id="3" title="M 2" midi="0x98,0x22,0x41"/>
				<control id="4" title="M 3" midi="0x98,0x23,0x41"/>
				<control id="5" title="M 4" midi="0x98,0x24,0x41"/>
				<control id="6" midi="0xB8,0x07,0x7F"/>
			</channel>
			<!-- Master channel can also be set to MIDI mode (no NRPN though). Without this it willcontinue to operate as a DAW controller.Depending on device type and orientation not all buttons may be visible in the UI.-->
			<master>
				<control id="2" name="smpte" title="M 1" midi="0x9F,0x21,0x41"/>
				<control id="3" name="name" title="M 2" midi="0x9F,0x22,0x41"/>
				<control id="4" name="flip" title="M 3" midi="0x9F,0x23,0x41"/>
				<control id="5" name="edit" title="M 4" midi="0x9F,0x24,0x41"/>
				<control id="6" name="fader" midi="0xBF,0x07,0x7F"/>
			</master>
		</mixer>
		<userscales>
			<!--Additional scales for the keyboard and the Turmoil controller. 'steps' lists the number of semitones from the base-key for included notes. The key itself is set in the UI -->
			<scale name="Lydian Dominant" steps="0,2,4,6,7,9,10"/>
			<scale name="Persian" steps="0,1,4,5,6,8,11"/>
		</userscales>
		<emulation/>
		<bigtime>
			<controller width="-1" height="-1" orientation="1" color="0xFF000000">
				<control type="group" weight=".15" visibility="0x4000001" id="rc" align="0x31">
					<control type="space" weight=".1" visibility="0x10"/>
					<control type="space" weight=".1" visibility="0x2010"/>
					<control type="button" weight=".1" title="Ⓐ" color="0,0xFF991111" midi="0xFF,0x10,0x3E"/>
					<control type="button" weight=".1" title="Ⓐ" color="0,0xFF991111" midi="0xFF,0x10,0x43"/>
					<control type="button" weight=".1" title="Ⓐ" color="0,0xFF991111" midi="0xFF,0x10,0x48"/>
					<control type="button" weight=".1" title="Ⓐ" color="0,0xFF991111" midi="0xFF,0x10,0x4D"/>
					<control type="button" weight=".1" title="Ⓐ" color="0,0xFF991111" midi="0xFF,0x10,0x52"/>
					<control type="button" weight=".1" title="Ⓐ" color="0,0xFF991111" midi="0xFF,0x10,0x57"/>
					<control type="button" weight=".1" title="Ⓐ" color="0,0xFF991111" midi="0xFF,0x10,0x5C"/>
					<control type="button" weight=".1" title="Ⓐ" color="0,0xFF991111" midi="0xFF,0x10,0x61"/>
					<control type="space" weight=".1" visibility="0x2010"/>
					<control type="space" weight=".1" visibility="0x10"/>
				</control>
				<control type="streamer" width="-1" height="10" margin="10,0" midi="0xE0,0x7F,0x7F" color="0,0xFF00AA00"/>
				<control type="timecode" weight=".7" width="-1" midi="0xFF,0x15,0x00" midi_1="0xFF,0x10,0x00"/>
				<control type="streamer" width="-1" height="10" margin="10,0" midi="0xE1,0x7F,0x7F" color="0,0xFFAA0000" mode="0x1"/>
				<control type="group" weight=".15" visibility="0x4000001" id="rc" align="0x51">
					<control type="space" weight=".22" visibility="0x2010"/>
					<control type="space" weight=".22" visibility="0x30"/>
					<control type="button" weight=".112" title="&amp;#xF04A;" midi="0xFF,0x10,0x33" color="0,0xFFa76f00"/>
					<control type="button" weight=".112" title="&amp;#xF04D;" midi="0xFF,0x10,0x35" color="0,0xFFC0B000"/>
					<control type="button" weight=".112" title="&amp;#xF04B;" midi="0xFF,0x10,0x36" color="0,0xFF007700"/>
					<control type="button" weight=".112" title="&amp;#xF111;" midi="0xFF,0x10,0x37" color="0,0xFF991111"/>
					<control type="button" weight=".112" title="&amp;#xF04E;" midi="0xFF,0x10,0x34" color="0,0xFFa76f00"/>
					<control type="space" weight=".22" visibility="0x30"/>
					<control type="space" weight=".22" visibility="0x2010"/>
				</control>
			</controller>
		</bigtime>
	</touchdaw_midi_map>
	
Cut and paste this into a plain text file, and name it Yamaha.xml (or similar)

This file must then be copied to your phone or tablet at the following location:
Internal Storage/Android/data/de.humatic.tdaw/files/midi_maps

Note that the easiest way to do this is by connecting your phone or tablet to your PC, and then connecting as File Transfer.

Some file managers may not allow you to copy an .xml file to Android/data/de.humatic.tdaw/files/midi_maps

Note that as of right now, I did not set up the pan pots. I generally do not need to adjust channel pans remotely. If I add pan pot settings, the XML above will be updated.

This does not provide a custom "Workshop" for the Yamaha mixers. This is intended to be used with the default TouchDAW screen.
Post Reply