mySoftware [Updates]

Once you create a user profile on Motifator and update with the appropriate information, the updates shown here will be specific to you.

newProducts [YOK]

rssFeeds [Syndicate]


forumforum
 

Old Motifator threads are available in the Archive.

Viewing topic "MOXF with DIY ribbon controller"

     
Posted on: March 25, 2015 @ 05:37 PM
agentaero
Total Posts:  9
Joined  02-02-2015
status: Newcomer

Hi all,

I am looking to add on a ribbon controller to my fairly newly purchased MOXF. I am pretty new to the whole world of synth/MIDI so I’m not too sure how complex this might be or of the obstacles I might be facing, so any insight or knowledge to add on the subject would be really appreciated.

My plan is to use a softpot (eg. https://www.sparkfun.com/products/8681) with a microcontroller board like an Arduino. I’ve already got it all setup so that my microcontroller can transduce the touches on my softpot from -64 to +63, ready to send over serial(ie. MIDI). I believe this is the range expected by the MOXF for a ribbon controller. What’s left is getting these values, via MIDI message, to my MOXF.

As far as hardware goes, all the circuit stuff is done, based on the MIDI spec. I’m confident voltages, baud rate, etc are all good. My microcontroller will connect its serial port to the MOXF’s midi in port.

Now what I am wondering is sending a ribbon controller message as simple as just firing controller change messages? That is, referencing p. 120 in the MOXF data list manual, can I just fire the following message to my MOXF on midi channel 1 over and over again B1H 16H 0vvvvvvv where V would be the values from the ribbon controller between 0 and 127 and the MOX would interpret these to be between -64 to +63. Or is this too simplistic and incorrect? Getting this to work just on voice mode for now would be fine to start.

If it is too simplistic, what other things do I need to consider? Do I need to sync my messages to a clock on the MOXF and make sure everything is timed. I guess I’m too new to MIDI to know and have been having difficulty finding more info at this low of a level so thought I’d start here.

Thanks for any help in advance!

  [ Ignore ]  

Posted on: March 25, 2015 @ 06:51 PM
5pinDIN
Avatar
Total Posts:  11891
Joined  09-16-2010
status: Legend
agentaero - 25 March 2015 05:37 PM

[...]can I just fire the following message to my MOXF on midi channel 1 over and over again B1H 16H 0vvvvvvv where V would be the values from the ribbon controller between 0 and 127 and the MOX would interpret these to be between -64 to +63. Or is this too simplistic and incorrect?[...]

You’ve got the general idea.

Three points…
1) MIDI Channel 1 would have a status byte of B0H (B1H is Channel 2)

2) The ribbon should not produce any MIDI output when not touched. It should output values in the range 00H ~ 7FH (0~127D) when touched, and should output a single mid-value 40H (64D) when released.

3) Pace the messages. You could probably “fire” them faster than they can be processed. An algorithm to throw away some values should be considered, otherwise you can develop a bottleneck unless the ribbon is swept slowly.

Of course, the Voice should be programmed to respond to Controller 22 messages.

  [ Ignore ]  

Posted on: March 25, 2015 @ 07:28 PM
agentaero
Total Posts:  9
Joined  02-02-2015
status: Newcomer

Awesome. Thanks for the points 5din! I’ll try to finish implementing this in the next few days.

Is there any harm sending MIDI messages faster than my MOXF can handle them? Would the Moxf just respond to the messages its receiving at a time it is able to respond? Or would it keep storing them in a buffer until its buffer is full…

In any event, I’ll pace my messages.

Much appreciated

  [ Ignore ]  

Posted on: March 25, 2015 @ 08:12 PM
5pinDIN
Avatar
Total Posts:  11891
Joined  09-16-2010
status: Legend
agentaero - 25 March 2015 07:28 PM

Awesome. Thanks for the points 5din! I’ll try to finish implementing this in the next few days.

Is there any harm sending MIDI messages faster than my MOXF can handle them? Would the Moxf just respond to the messages its receiving at a time it is able to respond? Or would it keep storing them in a buffer until its buffer is full…

In any event, I’ll pace my messages.

Much appreciated

You’re welcome.

Buffer overflow is one possibility. Even if that doesn’t happen, the events could be late enough to be musically somewhat out of time. That’s why I mentioned throwing away some values if necessary.

When you’re doing initial testing, try just tapping on the ribbon (SoftPot). That should generate just two messages - one related to the position you’ve tapped, followed by the mid-value. Doing that initially should allow you to determine if things are working, without concern about handling excessive data.

  [ Ignore ]  

Posted on: March 26, 2015 @ 05:55 AM
5pinDIN
Avatar
Total Posts:  11891
Joined  09-16-2010
status: Legend

I forgot to mention Running Status.
See http://www.blitter.com/~russtopia/MIDI/~jglatt/tech/midispec/run.htm

Good MIDI spec info in general:
http://www.blitter.com/~russtopia/MIDI/~jglatt/tech/midispec.htm

Also, if the ribbon is being touched but the finger isn’t moving, don’t repeat the value. That is, a message should only be sent if the value has changed.

  [ Ignore ]  

Posted on: March 26, 2015 @ 11:36 AM
agentaero
Total Posts:  9
Joined  02-02-2015
status: Newcomer

Awesome, I think I have a pretty clear picture of what I need to program at this point. All this info has cleared things up immensely.

Once again, thank you 5pin!!! I’m not sure what your background is, but you do know a heck of a lot, and if you aren’t getting paid to support these forums, maybe you should.

If anyone is interested, I may post what I end up making and make my code available if anyone would like to implement/expand on what I end up making. Once I get something I’m happy with of course.

Cheers,

  [ Ignore ]  

Posted on: March 26, 2015 @ 01:05 PM
pjd
Total Posts:  63
Joined  11-16-2013
status: Experienced

Hi—

I used an Arduino plus a Sparkfun Dangershield to build a small MIDI controller. Links to design info and source code are included below. Should work OK with MOXF.

Best of luck with your hack!

-- pj

http://sandsoftwaresound.net/arduino/arduino-dangershield-drawbars/

http://sandsoftwaresound.net/source/arduino-project-source/dangershield-drawbars-code/

  [ Ignore ]  

Posted on: March 26, 2015 @ 02:00 PM
agentaero
Total Posts:  9
Joined  02-02-2015
status: Newcomer

PJD, that is awesome! That’s a sweet project!! I’ve definitely already picked up a few things from your code just having a first quick read.

Off-topic: Also, love your site. I’ll keep an eye out for any RPi2 articles :)

Again, thanks guys, your help has been awesome.

  [ Ignore ]  

Posted on: March 26, 2015 @ 02:31 PM
5pinDIN
Avatar
Total Posts:  11891
Joined  09-16-2010
status: Legend
agentaero - 26 March 2015 11:36 AM

Awesome, I think I have a pretty clear picture of what I need to program at this point. All this info has cleared things up immensely.

Once again, thank you 5pin!!!

You’re welcome - I hope your efforts will fully pay off.

 

agentaero -

I’m not sure what your background is, but you do know a heck of a lot, and if you aren’t getting paid to support these forums, maybe you should.

Thanks. My background is an education and typically lots of years of experience in the areas I post about. I enjoy sharing what I know, and I actually don’t want to receive compensation for forum participation. If nothing else, that leaves me free to post what I really believe, without obligation to anyone.

 

agentaero -

If anyone is interested, I may post what I end up making and make my code available if anyone would like to implement/expand on what I end up making. Once I get something I’m happy with of course.

I’m sure there are folks who would be grateful to have that information.

  [ Ignore ]  

Posted on: March 26, 2015 @ 03:29 PM
nbadesign
Avatar
Total Posts:  994
Joined  08-20-2007
status: Guru

As a ribbon controller I’m using nanoPad2. It has one larger X-Y pad that is suitable for that purposes and 16 pads for triggering sounds or playing drums. I thought that is a toy when I first read about it, but when I saw and heard David ‘Finger’ Haynes playing it like a real drums, I have changed my opinion.

Alex

  [ Ignore ]  

Posted on: March 26, 2015 @ 03:59 PM
agentaero
Total Posts:  9
Joined  02-02-2015
status: Newcomer

Hah, that guy is bad ass, sounds so great! That’s a cool device, I have and will definitely consider purchasing it at some point.

FWIW, my intent of this project is as much an education as it is to have a ribbon controller. Being a recent electrical eng. grad and a casual musician, I felt it would be a small crime not to combine the two :)

  [ Ignore ]  

Posted on: March 27, 2015 @ 10:17 AM
nbadesign
Avatar
Total Posts:  994
Joined  08-20-2007
status: Guru

agentaero - 26 March 2015 03:59 PM

Hah, that guy is bad ass, sounds so great! That’s a cool device, I have and will definitely consider purchasing it at some point.

FWIW, my intent of this project is as much an education as it is to have a ribbon controller. Being a recent electrical eng. grad and a casual musician, I felt it would be a small crime not to combine the two :)

Yes, guy is definitely genius, I have realized why he has that nickname (’Fingers’). You should also check his other sessions on YouTube with keyboard player and bass player.

Welcome to the Club! I’m also an electrical engineer and casual player/composer. I think that it could be a good combination, since some engineering knowledge (which is not mandatory) helps with understanding interfaces, computers, etc. But, electronic instruments should be considered as a good tools, not musician replacement.

Alex

  [ Ignore ]  


 
     


Previous Topic:

‹‹ Download failure
Next Topic:

    axxe ››