Jump to content

Korg Wavedrum MIDIfied


MidiSaron
 Share

Recommended Posts

Hi all,

 

here's my first MIDIbox project:

http://www.midibox.org/dokuwiki/doku.php?id=korg_wavedrum_midification

 

I built a LPCXpresso board into my Korg Wavedrum WD-X, to MIDIfy it, and perhaps to enhance its user interface.

 

The source code is very much work in progress (in other words, it's a mess :rolleyes: ), but if anyone is interested, just drop me a line and I'll send it.

 

Comments welcome!

 

Ingo

Link to comment
Share on other sites

@TK:

Hi Thorsten, thanks for the warm welcome! A have a few older projects, most of them running an 8051 and written in assembly language. I will port some of them to MIOS for sure.

 

@Duggle:

Yes, it's based on MIOS of couse.

Link to comment
Share on other sites

  • 1 year later...

Wow! Your documentation makes a fantastic read!

It leaves me wondering though, why did you use a Wavedrum at all?

What's left of its original functionality rather looks like a burden than a benefit, at your current point.

Wouldn't it be easier to use a common drum with some pickups?

Link to comment
Share on other sites

Hi MidiSaron,

I find in your dokuwiki that you use the AN10913 DSP library, i need it too.

How did you add it? in details, please...

BR

 

Got me! I promised to publish the code including the FFT handling as soon as I had tidied it up. But still haven't :sleep:

First, you need to add the DSP library to the makefile as described in the Wiki. Then, the header file has to be included in each C file which contains calls to the library functions:

#include "cr_dsplib.h"

I just copied the files cr_dsplib.h and libcr_dsplibFFT_cm3.a into the folder where my source files are.

Since the input signal for the FFT is real in my case (i. e. the imaginary part is always zero), every other number of the input array is zero:

	static s16 psi_Input[128];
	static s16 psi_Output[128];
	
	//fill input buffer for FFT
	for(i=0, j=0; i<BUF_SIZE; i++)
	{
		psi_Input[j] = buffer[i];	//real part
		j++;
		psi_Input[j] = 0;		//imaginary part
		j++;
	}

Then the FFT is computed just by calling:

	vF_dspl_fftR4b16N64(psi_Output, psi_Input);		//FFT is calculated HERE

Since I had a real (read: non-complex) input signal, only the first 33 bins psi_Output[0]...psi_Output[32] contain useful information.

 

Hope it's clearer now. If you have more questions, just ask.

 

Ingo

Link to comment
Share on other sites

Wow! Your documentation makes a fantastic read!

It leaves me wondering though, why did you use a Wavedrum at all?

What's left of its original functionality rather looks like a burden than a benefit, at your current point.

Wouldn't it be easier to use a common drum with some pickups?

Thank you for your kind words.

I used a Wavedrum because I had one :smile: .

What makes the Wavedrum a great instrument is that the sound created by physical modeling can be layered with the internal samples. But the choice of internal samples is quite limited, at least for the WD-X (Wavedrum Silver). But I have to confess, I haven't done much layering of the Wavedrum's internal sound with external samples (yet).

 

I too thought of building a stand-alone MIDI drum, maybe out of conga hardware, and adding a few cheap piezo disks...

 

Ingo

Link to comment
Share on other sites

I tried it but without result, for now my processus cycle don't need it, but i'm ears too for later.

I think we've got to manage ADC the request, ADC as source, Mem as destinations with some others obscurs parameters.

First, DMA configuration depends on the source, Extenal ADC (I2S, SPI) or Internal ADC...
Mine is internal ADC. For you?

I configure and run under DMA but my problem is that i don't understand the request system, i just understand that bust mode is to read ADC Channels sequencially in opposition of single mode...
Someone?

 

Link to comment
Share on other sites

  • 1 month later...
  • 3 years later...

Hi,

I am willing to pay a fair price for the talented engineer who would enhance it with midi. the wavedrum seemed to me as the only drum synth with the right feel, only that the synth engine is chemical. i'd like to connect it to my DSI Tempest. 

please contact me.

Edited by yonatan
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...