<?php
	include 'modsynthhead.php';
?>
			<br/>
			<div class="center">
				<img alt="" src="usb2cv_illustration.jpg"/>
			</div>
			<div class="intro"> - - - - - - U S B - t o - C V -</div>
			<div class="justify">
				This module came to life because we figured we wanted some way to sequence the synthesizer,
				and building a hardware sequencer seemed like overkill.
				<br/><br/>
				<a href=""><img alt="" class="left small" src="pictures/u2c_panel_front_warm.jpg" onclick="showpicx('pictures/u2c_panel_front_warm.jpg')" /></a>
				After realizing there were no game ports on my fairly new laptop a USB->MIDI was necessary.
				This seemed like money, and money we didn't have.
				<br/><br/>
				The new microchip PICs with USB had seemed pretty interesting for a while in any case, so
				we got a few PIC18F2455s. After trying to read up on USB, checking the microchip forums,
				talking to various people and
				pulling hairs forever this module *finally* came to life.
				<br/><br/>
				The functionality is really simple, it outputs one CV and two GATEs. It's currently hard-coded
				to generate CV and GATE#1 from midi-channel #1 and GATE#2 from midi-channel #2. It's also supposed
				to take MIDI-IN when USB is not connected.
				<br/><br/>
				It's a really simple module, a PIC, a D/A and a couple of OP.AMPs.
				<br/><br/>
				<a href=""><img alt="" class="left small" src="pictures/u2c_circuit_top.jpg" onclick="showpicx('pictures/u2c_circuit_top.jpg')" /></a>
				Unfortunately, the MIDI-IN part of this module doesn't work yet. This has partially to do with
				the fact that there's a silicon bug in the 18F2455 that supposebly prevents its USART to work for
				MIDI purposes. I added a PIC18F628 to take care of that, but it became unstable and i never had
				the time to fix it. 
				<br/><br/>
				Anyhow, schematics and really crappy, non-tidied firmware below:<br/>
				<br/><br/><div class="botdotted"></div><br/>
				<a href="usb2cv/usbtocv.gif">Schematic</a><br/>
				<a href="usb2cv/usb2cv.rar">Firmware</a><br/>
				<br/>
				The code is an edited version of Microchip's CDC code i got from Thorsten Klose, i've removed most
				of his original editions and inserted what's necessary to do midi out on one port. 
				<div class="red">
				Since i don't understand much of american legal mumbo-jumbo i'd just like to say that this code is for
				testing *only*, no commercial applications can use this code. Also, if there's any copyright issues
				towards Microchip by releasing this code, tell me an i'll remove it.</div>
				<br/>
				The Schematic is based on Thorsten
				Klose's <a href="http://www.ucapps.de/mbhp_usb_pic.html">USB PIC Module</a> and the
				<a href="http://www.create.ucsb.edu/~dano/CUI/">CREATE USB Interface</a> by Dan Overholt.<br/>
				<br/>
				This device should work without drivers on all USB capable systems, though it's only tested on Windows XP so far.
				Making use of the general MIDISTREAMING interface driver under Windows is a pain, i pulled hairs for a long
				time to make it work. The main problem i had - and that many has had before me it seems - was that the 
				device enumerated and installed fine but didn't show any midi in or out ports.
				I read somewhere that USB Filter applications can prevent windows from understanding
				what's going on, so after trying and trying i finally - without any changes in hardware or software - 
				hooked the module up to another laptop to see what happened. I got perfect response so i removed the LibUSB 
				USB filter and did a general clean-up of the registry on my laptop and made it work there aswell.
				<br/><br/>
				<div class="botdotted"></div><br/>
				I can't really say that i recommend anyone building this, sure it works but after searching
				the forums it seems like Microchip doesn't really give any support/help on their products.
				<br/><br/>
				It was due to the help of Ryan Williams, Thorsten Klose and - as always - the rest
				of the team at the Synth-DIY list that i was able to do this.
				<br/><br/>
				So simply..
				<br/>
				<h3>THANKS</h3>
			</div>					
<?php
	include $myroot . 'footer.html';
?>