Very interesting subject thank you. I recommend you do more. I'm glad that I bought a synth from Dave Smith R.I.P. He was one of the pioneers of synths.
Great series about MIDI. Shed lots more light on it for my understanding of it. Came right on time to understand more about the issue, not getting a sysex from the computer to an Eurorack module. Thank you for the work you do.
Thank you so much for this series. I'm not getting into programming midi interfaces, but I'm definitely getting into more complicated midi setups and gear (including Blokas MidiHub), so this strong foundation helps me grasp what I'm doing a few layers up from the machine language.
GREAT video series, parts 1-7. Thanks! it's nice to take a peek under the hood. I have a suggestion for your next project: USB MIDI. You do such a great job explaining you'd do the field a great service.
Edit...this is meant for your previous video...playlist kept playing while I was typing.* Very interesting! I have 3 modular behringers synced by a minilab 3 and was noticing weird self-correcting tempo offsets or lags. It makes it more interesting in some ways for me as instruments.
Andrew, this video series has been such an enjoyable watch. MIDI has never been so well presented in such a digestible format. For a follow-up video, development of a simple MIDI processing unit or MIDI processing software would be great. Keep up the good work.
As someone who is trying to learn how to preprogram patch changes of outboard effect processors using midi/SysEx saved to Logic X , trigger song selections placed on a timeline in a Logic X project from a Yamaha DM1000 digital mixer and trigger lighting rig scenes - I thank you wholeheartedly! I’ll admit I’m in over my head and I’m wondering if it’s better to make the Yamaha DM1000 or Logic X the trigger device? Both have memory to store information and transfer it to external devices. On the DM1000, there is a scene memory section where I can store 97 scenes. It’s seems that would be optimal; recall a scene, press “enter” and somehow it moves Logic’s Song Pointer Line to the correct position and changes patches on the outboard gear, too. Then I just have to press the space bar on the computer and the sing starts. Is this doable? Thank you again from an abecedarian who is eager and excited to learn.
My gut feeling is that it's easier for a DAW software to trigger hardware than the other way around. Maybe with controller mapping and stuff, but having Logic as your master is probably the easiest way to make sure everything stays in sync.
Shiftedphase I want to thank you for taking the time to respond to my question. Also, I have a pretty complex project I’m working on that requires expertise I don’t have the time to gain. Would you be interested in working for me on it?
This series is tops thank you Andrew really do appreciate you and your midi series. The problem I am working to solve right now has at least one part associated with breaking free from relying on expensive monopolyzing device centric interfacing of both hardware and software. My thoughts are that an arduino with some good scripts or one good script might cover it if the usb devices and probably a home made multiport din array device are plugged into the arduino or raspberry pie; whatever is necessary. So then it gets down to the script. Is there such a script that can be exploited for this purpose what be the question? I am having a problem right now with one midi app for ipad which is very promising especially after deducing how to use it from your 5 year old series Andrew. That app is very good but it blocks the midi messages when you setup the channel for each device. To unblock that I have to pay an extra amount through the app store. When I went to pay it that group refused my debut card and demand I use a credit card. So they refused my Mastercard debut card but accepted it to pay the fee for the original payment for the app just a few days prior. So I clicked the link to the site and found it was down. Makes me wonder if they have been hacked and someone is taking over receiving of the payments. In the meantime I feel ripped off; blocked out of midiflow which is the name of the app which is more like a midiblock but all the same I learned a lot from having it so maybe it was worth the 10AUD I payed for just for that. It really is potentially a very good app and my other apps pick up all the individual names I gave each output and input on each route. Well now I am left wondering what to do so I do not rely on an app and thinking probably I need to setup and external interface with a decent midi file to write in those setups and assign prameters and all. Seems a big job to get this happening which is a great pity because that app was also monitoring each individual channel messaging in a limited way. There are other apps but have not found one yet that does much more than monitoring.
What a well presented and thorough series on the topic of midi and SysEx. Thank you for taking the time. I’ve revisited your videos as I’ve delved deeper and deeper into getting my equipment to be triggered from logic x via SysEx. I have two question though. I read somewhere that SysEx isn’t for triggering. That is for Control Change commands, note on/off commands and program changes. Anything that can be done can be done with those three midi commands and the rest is for patch dumping etc. this confuses me because you CAN trigger program changes, control changes and parameter changes with SysEx and you can do so when some devices don’t even have a way to do it from their HUI or there isn’t a button on the face of the unit to do so. An example is tap tempo. I have a device (TC electronic M3000 effect processor) that can synch to incoming midi clock but you have to press and hold the tap tempo button for three seconds to get it to lock onto midi clock. I learned how to do this with a SysEx message and now I don’t have to do a thing. So I start each song and that is taken care of automatically. I really like that. For things that are controlled by CC, Program, changes and parameter changes easily, I thought I should stick with the traditional midi way of doing things but logic X does some weird things and I think it has to do with active sensing. I get inconsistencies with even the simplest of jobs like bypassing an effect, for example. Anyway, it could be the buffer timing but I’ve decided to do things via SysEx because I read somewhere it’s more consistent and less susceptible to corruptions. What say you to this idea? Next question, and thanks for reading the long post; what is a preset request?
Glad my videos are helpful to you! Firstly I don't know what a preset request is. As for using SYSEX... there is nothing wrong with using it however you like. It's just a message like any other... but it is EXclusive to a certain brand or model... so while a CC message might work across a lot of devices, a SYSEX message is probably only going to work on one instrument. But if it makes things easier to control, I see no reason not to use it. As a performance message though it is longer to send, and also probably can't be as easily automated by a DAW because the format is not standardized. But the way you are using it to enable some mode instead of holding down buttons sounds like the perfect use case!
First of all, I would like to thank you very much for your effort. Second, I think it would be nice if you could explain how to use MIDI to cue and/or control a Light Board.
Hi Karim, Sorry I missed your comment earlier. I've got some colleagues who build and sell lighting gear... I will ask them for some tips on this since it's been a long time since I worked in the theatre. :)
In this age of distancing I am trying to work on electronic music (the band certainly can’t get together at the moment). This has cleared up a lot about how the controller and hardware synth work together. Can you tell me where the software synth fits in all of this?
The software synth can normally be considered as being inside a sequencer or DAW software. Normally the MIDI data is routed internally inside a DAW and fed into plugins on the various tracks.
Andrew - enjoyed all 7 parts but I was hoping to some clues to my scenario: Atari ST (Pro24v3 or Cubase) daisy chained to Roland Juno (master) to MT-32 to Roland JV-1080 to Korg Triton. I understand setting each channel for specific patches BUT the JV1080 and Triton have 'Performance' s which take up ALL 16 Midi channels EACH. How to integrate 'performance patches' with other instruments /patches? Thanks
Other than disabling some of the channels in a specific performance or using a second MIDI port (probably not easy on the Atari?) I don't know a way. Performance modes are really designed to be the "whole band" so to speak. One thing you might consider is using the preset mode instead... they often sound better since they can use all the effects processors in these older synths. But it depends how many voices you need in total of course. Hope this helps.
I watched this episode with great interest! Thank you! I was expecting that in one of the episodes you will look at the midi messages using an oscilloscope (as it was in one of your videos about USB midi ..), it would be very interesting and clear!
Thank you, your videos are outstanding ,would you know the M.M.I. D. for the beat buddy to talk to the roland vs 2480 or the vs 2000 .or any way to help me ...I really need this for my drum tracks.
Hello! Wow, searched for good Workshops, Tutorials for a long time! Is it possible that you can tell me any good specific books to learn Midi? Thanks for your your knowledge!
@@shiftedphase Hello! I come from germany, and there are many of specialist literature for one engineering, electronic music production! Online academies and so on! But no themes, literatur, ...! Thanks for your help!
I’m trying to send Two sysex messages on one pad in Novation SL MKII. Single 9Byte message works on two buttons, but a dual 18 Byte message doesn’t work :( I’m trying to figure out way to send dual sysex string with a SIngle string
Hi Andrew great series well done, I have a q&a ihave a korg X3 synth 90s Era w/no pgm data went to korg downloaded the sysex alldata file it has .exl at the end so itry to dxag it to a daw midi trk tried to import it tried diff. Daws and seems to not recognize the file? I tried renaming fie to sysex and same not recognizing file ? This is after I unzipped also tried both mac/pc any ideas ? And I know a little byte of sysex w/40+yrs. Synthing.away
Man thank you so much for this series.. I've assigned some me-time this morning, notebook on hand specifically to follow this seminar-like crash course on this (I now know) very useful protocol. Content like this make me fall in love with the internet.. I have some questions if you mind, regarding an implementation I'm developing. Basically is a serial-over-bluetooth controller with only clock and control change output, using gyroscope sensors. First of all, would data rate be a problem? If I include active sensing I could prevent the receiver to go on sleep mode I suppose so to not having any crashes on live performances.. I'm thinking of sending a 0xFE byte before every time any output is sent.. Would that be a correct implementation? On the other side, what are your thoughts on Hairless Midi serial-to-midi bridge software? Any known issues? Any suggestions? Whatever kind of input you feel like making would be greatly appreciated! Infinite respect to you, hardware guru.
That's a big question and one that is impossible to answer because it really depends on what you want to accomplish, your existing skills, and the reason why you want to do it. For me it's the ability to use my skills, learn, and create stuff that I'm proud to unleash into the world.
Hi Andrew: is there a way to import Sysex data from a synth to a PC, & then import into Excel? Mainly, I'm wanting to see program/patch data in an Excel sheet I created. Thank you.
I don't know of a specific program to do that but it would be pretty easy to write. Consider making a CSV file which might make things a bit easier since that can easily be imported into a spreadsheet.
But if I was to make a program that updates a piece of hardware (that I made) using SYSEX, couldn’t I just put whatever MMA ID I want in the file, and also use that same number in the hardware for it to compare against? Where does the bit where I need to pay come in?
You can technically use whatever ID you want, but if you are making software or hardware that other people will use, you need to support the MIDI Association and get them to assign you an ID. For hobby projects it's no big deal though... maybe just choose a high number that isn't in use.
I don't have any but it's just like sending any serial data. The normal way to do MIDI would be to fill up a buffer of uint8_t or char and then send it. I'm sure there are some examples out there.
aha, song select sysex, never heard about that one. This sysex paper seems quite easy to read..but i struggle with many other midi charts from Roland and Yamaha. So if i wanted to change the CV 1 to CC would the byte be like this? f0 00 01 72 43 02 02 f7 ? Why is it written like 0xaa? what does the 0x stand for? Now i see why it takes so long to send stuff over sysex...seems so inefficient :) sends the same bits over and over again. But i guess it is a limitation of a seriell tech. A bit off topic, but what are your views on USB for use in audio application? Im quite a noob but it seems really awful to me...as you mentioned it seems flakey when it goes offline. On windows if i loose the USB connection it can be a hell...could need a program reboot or even windows reboot (better implemented on mac, no need for program reboot). sometimes my audio interface is just not found at all when i stick in the USB cable...because i plug it to the "wrong" usb port...switch it around a couple a times and it finds it..why is this? is it just terrible design? or designed for printers? even the physical design is really flappy and loosey goosy, not a looking connection. i see hardware developers must be quite trapped because there are no other common port/interface to use...what are your views on this? i would prefer the old mouse serial jack to usb when it comes to all midi and keyboard and mouse connections. Thanks for all the interesting videos.
Magnus Andersson The 0x notation means hexadecimal, so you write numbers from 0-f or 00-ff. (256 combinations) I use the aa, bb, etc. just to show that the bytes could be any number. Like "??" As for USB... it's just really complicated and has many layers, so developers often don't have access to the lower level details. If a bug in a chip or OS driver exists (they do) there isn't much that can be done from the application layer. But it's the universal connection so we do our best. :)
aha, so that 0x means hexadecimal, didn't know that. But i am aware that sysex use hex. The editor for the Roland Fantom XR i have show every sysex command as soon as i do something in the editor. handy to know a little more what values are what so that i could use them in a ipad editor or program a external controller. The old manuals for some Yamaha stuff is crazyness with the sysex, but today with newer devices i hardly see anything, it is almost as if it is a secret. Yes, i see your point, not many connections left to use :(. I have a feeling firewire was better in every way for audio. If i could decide i would go back to locking SCSI connections, parallel..SOLID!! :D
Dear Sir , appreciating deeply Your esteemable videos , i would now like to ask You whether You would have some tips and tricks for a newbie like me and the approach to access virus control 's Remote software page , from where it appears to be really possible to get functioning ... well reacting midi commands , so as to slowly increase the manual midi and /or system control over this device of Ours , so to say ...Best Regards
@@shiftedphase Thank You for Your kind answer . Being thankful to Your instructional videos , it appears that During the last week I am struggling to achieve a deeper knowledge of the access virus control/Remote page software and the use , for example , of another Generic Remote by cubase, from where it would be possible to get a commanding hardware controlled ( i.e. the Access Virus Ti desktop itself ) . not everything is clear and ready to use : for example : by writing the typical sys ex scripting procedure and its hex number, I tried and managed to get bank changes and program changes: Now :what I would like to obtain is the following : an IMMEDIATE : an INSTANTANEOUS opening of these function abovementioned , while rotating the same rotating knob . Is it possible to obtain OR should I already feel the situation abovementioned ( please : read! Bank Change Program Change ) as the typical functioning event already useable : without expecting further "refined "functional switches ? Waiting for Your kind reply , I salute You with Best Regards
Hey dude, great series. I've noticed there is not one good tutorial on the use of NRPN messages on youtube. If you're up for it, you'd be filling a much-needed gap. Personally, I'm trying to control my OB-6 from Max MSP. CC messages are great, and easy to use, but I can't control some of the more advanced features of the dave smith without NRPN, but the documentation for this, both from Dave, and from the Max people, is sparse at best. from the best I can figure, I think I need to manually create the binary message and send it as raw midi data, but I can't find any working examples, and flailing in the dark is antimotivational. cheers
I think if you put all these to gether and make a video about preset editor for all midi keyboards such as m audio oxygen pro49 or any general thing it makes all your midi tutorial seris more real ideas and makes them out of some boring stoff
If you have specific topics you'd like me to discuss let me know... I've already made videos based on viewer questions. But the series is designed to sort of cover all the details so at least someone can have a full understanding of what is possible with MIDI.
11 หลายเดือนก่อน
“Thank you for explaining SysEx. I have a question: I’m trying to send this SysEx code ( F0 42 7F 60 01 01 10 7D 00 4E 00 00 00 00 00 00 00 00 00 00 00 00 F7) to my Korg Pa via Arduino (USB or MIDI). I’ve tried, but no success. Could you check the message?” Feel free to provide the SysEx code, and I’ll assist you with sending it to your Korg Pa via Arduino.
@@shiftedphase Can keyboards (not midi controllers) send sysex messages to other keyboards? I own a Roland Fantom 6 (new model) and a Roland VR-09. The Fantom 6 is my patch changer. The VR-09 can only switch to organ sounds using sysex (not program change). Trying to figure out if I can send the message from the Fantom.
@@keneokpareke1753 Some products allow you to program in custom messages to send. My digital mixer can do that. But generally different models of product even from the same manufacturer are not likely to automatically know how to talk to each other.
Fantastic. I started here. Now I'll go back and watch the rest... thank you. Great breakdown.
Very interesting subject thank you. I recommend you do more. I'm glad that I bought a synth from Dave Smith R.I.P. He was one of the pioneers of synths.
thank you, thats really cool
Great Information and nice presentation, Thank you
What an amazing video series. Perfect in detail
Great series about MIDI. Shed lots more light on it for my understanding of it. Came right on time to understand more about the issue, not getting a sysex from the computer to an Eurorack module.
Thank you for the work you do.
Glad it helped you!
Marvellous series. You've really helped me in my understanding better than anything I've seen to date. Thank you.
Peter Johnson Glad you liked it!
Sorry I was making you questions in the other video just about this. Now is everything crystal clear for me . Thanks again!! :)
This series helped me understand a lot out of MIDI. Thank you very much for sharing your knowledge!
thanks a lot for all the videos, they gave me a true insight, cheers from Argentina!
Glad you found them useful!
Thank you so much for this series. I'm not getting into programming midi interfaces, but I'm definitely getting into more complicated midi setups and gear (including Blokas MidiHub), so this strong foundation helps me grasp what I'm doing a few layers up from the machine language.
That's exactly why I decided to make these videos. A peek "under the hood" of any technology can help use it better imo. Glad you are here!
Second time through. Good stuff. A bit challenging but that's just me. You are excellent!
Great overview - thanks for sharing it
Thanks for the explanations. They are really clear and the material is well structured.
This was incredibly useful for me to understand how MIDI works! Thanks so much!
Glad you liked it! Good luck with everything!
Thank you! Great information!!
Thank you - great job, learned a lot
Thanks for your explanations. Very helpful indeed 👍
Thank you for taking the time to explain this for us. I has been very useful for me.
Glad you liked it!
Really great lesson series man. Thank you so much! Cheers!
Thanks! I’m glad you like it!
GREAT video series, parts 1-7. Thanks! it's nice to take a peek under the hood. I have a suggestion for your next project: USB MIDI. You do such a great job explaining you'd do the field a great service.
Edit...this is meant for your previous video...playlist kept playing while I was typing.* Very interesting! I have 3 modular behringers synced by a minilab 3 and was noticing weird self-correcting tempo offsets or lags. It makes it more interesting in some ways for me as instruments.
Excellent A-Z Explanation about midi. Thank you. Please advice how to send sysx/initial send messages from yamaha tyros5.
No idea... never used that device.
Thanks for taking the time to compile this series. Sub'd
You're welcome, glad you enjoyed it!
Andrew, this video series has been such an enjoyable watch. MIDI has never been so well presented in such a digestible format.
For a follow-up video, development of a simple MIDI processing unit or MIDI processing software would be great.
Keep up the good work.
Thanks! If I find time I will try to do something like you suggest.
@@shiftedphase thanks for the update. Hopefully we both get some more free time.
Great MIDI tutorial serie. Just finished part 1 thru 7.
Thanks for doing this!
As someone who is trying to learn how to preprogram patch changes of outboard effect processors using midi/SysEx saved to Logic X , trigger song selections placed on a timeline in a Logic X project from a Yamaha DM1000 digital mixer and trigger lighting rig scenes - I thank you wholeheartedly!
I’ll admit I’m in over my head and I’m wondering if it’s better to make the Yamaha DM1000 or Logic X the trigger device? Both have memory to store information and transfer it to external devices. On the DM1000, there is a scene memory section where I can store 97 scenes. It’s seems that would be optimal; recall a scene, press “enter” and somehow it moves Logic’s Song Pointer Line to the correct position and changes patches on the outboard gear, too. Then I just have to press the space bar on the computer and the sing starts. Is this doable? Thank you again from an abecedarian who is eager and excited to learn.
My gut feeling is that it's easier for a DAW software to trigger hardware than the other way around. Maybe with controller mapping and stuff, but having Logic as your master is probably the easiest way to make sure everything stays in sync.
Shiftedphase I want to thank you for taking the time to respond to my question. Also, I have a pretty complex project I’m working on that requires expertise I don’t have the time to gain. Would you be interested in working for me on it?
@@onethousandtwonortheast8848 I'd love to help you but I design gear and make music full time.
Would you please make video or video series talking about Midi file in-depth ?
Thank you for your awesome series for midi world.
This series is tops thank you Andrew really do appreciate you and your midi series. The problem I am working to solve right now has at least one part associated with breaking free from relying on expensive monopolyzing device centric interfacing of both hardware and software.
My thoughts are that an arduino with some good scripts or one good script might cover it if the usb devices and probably a home made multiport din array device are plugged into the arduino or raspberry pie; whatever is necessary. So then it gets down to the script. Is there such a script that can be exploited for this purpose what be the question?
I am having a problem right now with one midi app for ipad which is very promising especially after deducing how to use it from your 5 year old series Andrew. That app is very good but it blocks the midi messages when you setup the channel for each device. To unblock that I have to pay an extra amount through the app store. When I went to pay it that group refused my debut card and demand I use a credit card. So they refused my Mastercard debut card but accepted it to pay the fee for the original payment for the app just a few days prior. So I clicked the link to the site and found it was down. Makes me wonder if they have been hacked and someone is taking over receiving of the payments. In the meantime I feel ripped off; blocked out of midiflow which is the name of the app which is more like a midiblock but all the same I learned a lot from having it so maybe it was worth the 10AUD I payed for just for that. It really is potentially a very good app and my other apps pick up all the individual names I gave each output and input on each route. Well now I am left wondering what to do so I do not rely on an app and thinking probably I need to setup and external interface with a decent midi file to write in those setups and assign prameters and all. Seems a big job to get this happening which is a great pity because that app was also monitoring each individual channel messaging in a limited way. There are other apps but have not found one yet that does much more than monitoring.
What a well presented and thorough series on the topic of midi and SysEx. Thank you for taking the time. I’ve revisited your videos as I’ve delved deeper and deeper into getting my equipment to be triggered from logic x via SysEx. I have two question though.
I read somewhere that SysEx isn’t for triggering. That is for Control Change commands, note on/off commands and program changes. Anything that can be done can be done with those three midi commands and the rest is for patch dumping etc. this confuses me because you CAN trigger program changes, control changes and parameter changes with SysEx and you can do so when some devices don’t even have a way to do it from their HUI or there isn’t a button on the face of the unit to do so. An example is tap tempo. I have a device (TC electronic M3000 effect processor) that can synch to incoming midi clock but you have to press and hold the tap tempo button for three seconds to get it to lock onto midi clock. I learned how to do this with a SysEx message and now I don’t have to do a thing. So I start each song and that is taken care of automatically. I really like that. For things that are controlled by CC, Program, changes and parameter changes easily, I thought I should stick with the traditional midi way of doing things but logic X does some weird things and I think it has to do with active sensing. I get inconsistencies with even the simplest of jobs like bypassing an effect, for example. Anyway, it could be the buffer timing but I’ve decided to do things via SysEx because I read somewhere it’s more consistent and less susceptible to corruptions. What say you to this idea?
Next question, and thanks for reading the long post; what is a preset request?
Glad my videos are helpful to you! Firstly I don't know what a preset request is.
As for using SYSEX... there is nothing wrong with using it however you like. It's just a message like any other... but it is EXclusive to a certain brand or model... so while a CC message might work across a lot of devices, a SYSEX message is probably only going to work on one instrument. But if it makes things easier to control, I see no reason not to use it. As a performance message though it is longer to send, and also probably can't be as easily automated by a DAW because the format is not standardized. But the way you are using it to enable some mode instead of holding down buttons sounds like the perfect use case!
First of all, I would like to thank you very much for your effort.
Second, I think it would be nice if you could explain how to use MIDI to cue and/or control a Light Board.
Hi Karim, Sorry I missed your comment earlier. I've got some colleagues who build and sell lighting gear... I will ask them for some tips on this since it's been a long time since I worked in the theatre. :)
awesome, thank you sir! I have learned a lot from these videos.
In this age of distancing I am trying to work on electronic music (the band certainly can’t get together at the moment). This has cleared up a lot about how the controller and hardware synth work together. Can you tell me where the software synth fits in all of this?
The software synth can normally be considered as being inside a sequencer or DAW software. Normally the MIDI data is routed internally inside a DAW and fed into plugins on the various tracks.
Thank you very much for your time explaining everything! Appreciate it.
You're welcome! I believe we can all make better music if we understand more about what goes on under the hood. :)
Andrew - enjoyed all 7 parts but I was hoping to some clues to my scenario: Atari ST (Pro24v3 or Cubase) daisy chained to Roland Juno (master) to MT-32 to Roland JV-1080 to Korg Triton. I understand setting each channel for specific patches BUT the JV1080 and Triton have 'Performance' s which take up ALL 16 Midi channels EACH. How to integrate 'performance patches' with other instruments /patches? Thanks
Other than disabling some of the channels in a specific performance or using a second MIDI port (probably not easy on the Atari?) I don't know a way. Performance modes are really designed to be the "whole band" so to speak. One thing you might consider is using the preset mode instead... they often sound better since they can use all the effects processors in these older synths. But it depends how many voices you need in total of course. Hope this helps.
@@shiftedphase Tks - off to Google "adding a 2nd Midi Port"...!
hi, if I want one line be on and off bottom (I can't do 2 massege in same bottom) I use m-vave smc mixer its possible?
A pratical example will help a lot.
I watched this episode with great interest! Thank you! I was expecting that in one of the episodes you will look at the midi messages using an oscilloscope (as it was in one of your videos about USB midi ..), it would be very interesting and clear!
It's hard to really see very much, but I can show it on a logic analyzer sometime which might be more interesting.
Hey, amazing data! Would you hand me those sheets you show on the vid? Thanks a lot! Cheers from Argentina
Thanks! Feel free to take screenshots… I don’t have time to publish notes I use in my videos.
Thanks for movies, were very helpfull.
Thank you, your videos are outstanding ,would you know the M.M.I. D. for the beat buddy to talk to the roland vs 2480 or the vs 2000 .or any way to help me ...I really need this for my drum tracks.
Best to check the manual for specific products. There is usually a MIDI implementation published.
Hello! Wow, searched for good Workshops, Tutorials for a long time! Is it possible that you can tell me any good specific books to learn Midi? Thanks for your your knowledge!
No good books I know of which is why I made these videos. Read the spec and write lots of code for music abs audio.
@@shiftedphase Hello! I come from germany, and there are many of specialist literature for one engineering, electronic music production! Online academies and so on!
But no themes, literatur, ...! Thanks for your help!
I’m trying to send Two sysex messages on one pad in Novation SL MKII.
Single 9Byte message works on two buttons, but a dual 18 Byte message doesn’t work :(
I’m trying to figure out way to send dual sysex string with a SIngle string
Hi Andrew great series well done, I have a q&a ihave a korg X3 synth 90s Era w/no pgm data went to korg downloaded the sysex alldata file it has .exl at the end so itry to dxag it to a daw midi trk tried to import it tried diff. Daws and seems to not recognize the file? I tried renaming fie to sysex and same not recognizing file ? This is after I unzipped also tried both mac/pc any ideas ? And I know a little byte of sysex w/40+yrs. Synthing.away
Send me a link to it and I'll have a look at the file and see if I can figure it out.
Man thank you so much for this series.. I've assigned some me-time this morning, notebook on hand specifically to follow this seminar-like crash course on this (I now know) very useful protocol. Content like this make me fall in love with the internet..
I have some questions if you mind, regarding an implementation I'm developing. Basically is a serial-over-bluetooth controller with only clock and control change output, using gyroscope sensors.
First of all, would data rate be a problem?
If I include active sensing I could prevent the receiver to go on sleep mode I suppose so to not having any crashes on live performances.. I'm thinking of sending a 0xFE byte before every time any output is sent.. Would that be a correct implementation?
On the other side, what are your thoughts on Hairless Midi serial-to-midi bridge software? Any known issues? Any suggestions?
Whatever kind of input you feel like making would be greatly appreciated! Infinite respect to you, hardware guru.
Sorry for the late reply. :( If you still need help with this please email me... the link is on my website, check the About page on my channel.
How does one go about successfully creating a midi instrument, complete with both hardware-firmware, & if software?
That's a big question and one that is impossible to answer because it really depends on what you want to accomplish, your existing skills, and the reason why you want to do it. For me it's the ability to use my skills, learn, and create stuff that I'm proud to unleash into the world.
@@shiftedphase You,re right. I need so much direction at times. It's a good idea though..
Hi Andrew: is there a way to import Sysex data from a synth to a PC, & then import into Excel? Mainly, I'm wanting to see program/patch data in an Excel sheet I created. Thank you.
I don't know of a specific program to do that but it would be pretty easy to write. Consider making a CSV file which might make things a bit easier since that can easily be imported into a spreadsheet.
But if I was to make a program that updates a piece of hardware (that I made) using SYSEX, couldn’t I just put whatever MMA ID I want in the file, and also use that same number in the hardware for it to compare against? Where does the bit where I need to pay come in?
You can technically use whatever ID you want, but if you are making software or hardware that other people will use, you need to support the MIDI Association and get them to assign you an ID. For hobby projects it's no big deal though... maybe just choose a high number that isn't in use.
Thank you!! Keep up the good work. If you could it will be great if you do a series on MIDI over ethernet. Awesome work.
Would you please explain about MIDI 2.0?
I’m looking into it and will present a video once I’ve had time to experiment with it.
is there any sample code to send sysex in arduino ide?
I don't have any but it's just like sending any serial data. The normal way to do MIDI would be to fill up a buffer of uint8_t or char and then send it. I'm sure there are some examples out there.
aha, song select sysex, never heard about that one.
This sysex paper seems quite easy to read..but i struggle with many other midi charts from Roland and Yamaha.
So if i wanted to change the CV 1 to CC would the byte be like this?
f0 00 01 72 43 02 02 f7 ?
Why is it written like 0xaa? what does the 0x stand for?
Now i see why it takes so long to send stuff over sysex...seems so inefficient :) sends the same bits over and over again. But i guess it is a limitation of a seriell tech.
A bit off topic, but what are your views on USB for use in audio application? Im quite a noob but it seems really awful to me...as you mentioned it seems flakey when it goes offline. On windows if i loose the USB connection it can be a hell...could need a program reboot or even windows reboot (better implemented on mac, no need for program reboot).
sometimes my audio interface is just not found at all when i stick in the USB cable...because i plug it to the "wrong" usb port...switch it around a couple a times and it finds it..why is this? is it just terrible design? or designed for printers? even the physical design is really flappy and loosey goosy, not a looking connection. i see hardware developers must be quite trapped because there are no other common port/interface to use...what are your views on this? i would prefer the old mouse serial jack to usb when it comes to all midi and keyboard and mouse connections.
Thanks for all the interesting videos.
Magnus Andersson The 0x notation means hexadecimal, so you write numbers from 0-f or 00-ff. (256 combinations) I use the aa, bb, etc. just to show that the bytes could be any number. Like "??"
As for USB... it's just really complicated and has many layers, so developers often don't have access to the lower level details. If a bug in a chip or OS driver exists (they do) there isn't much that can be done from the application layer. But it's the universal connection so we do our best. :)
aha, so that 0x means hexadecimal, didn't know that. But i am aware that sysex use hex. The editor for the Roland Fantom XR i have show every sysex command as soon as i do something in the editor. handy to know a little more what values are what so that i could use them in a ipad editor or program a external controller. The old manuals for some Yamaha stuff is crazyness with the sysex, but today with newer devices i hardly see anything, it is almost as if it is a secret.
Yes, i see your point, not many connections left to use :(. I have a feeling firewire was better in every way for audio. If i could decide i would go back to locking SCSI connections, parallel..SOLID!! :D
Extremely helpful
Dear Sir , appreciating deeply Your esteemable videos , i would now like to ask You whether You would have some tips and tricks for a newbie like me and the approach to access virus control 's Remote software page , from where it appears to be really possible to get functioning ... well reacting midi commands , so as to slowly increase the manual midi and /or system control over this device of Ours , so to say ...Best Regards
@@shiftedphase Thank You for Your kind answer .
Being thankful to Your instructional videos , it appears that During the last week I am struggling to achieve a deeper knowledge of the access virus control/Remote page software and the use , for example , of another Generic Remote by cubase, from where it would be possible to get a commanding hardware controlled ( i.e. the Access Virus Ti desktop itself ) . not everything is clear and ready to use : for example : by writing the typical sys ex scripting procedure and its hex number, I tried and managed to get bank changes and program changes: Now :what I would like to obtain is the following : an IMMEDIATE : an INSTANTANEOUS opening of these function abovementioned , while rotating the same rotating knob .
Is it possible to obtain
OR
should I already feel the situation abovementioned ( please : read! Bank Change Program Change ) as the typical functioning event already useable : without expecting further "refined "functional switches ?
Waiting for Your kind reply , I salute You with
Best Regards
@@shiftedphase oh well : thank Youvery much . Have a nice day !
Best Regards
Hey dude, great series.
I've noticed there is not one good tutorial on the use of NRPN messages on youtube. If you're up for it, you'd be filling a much-needed gap.
Personally, I'm trying to control my OB-6 from Max MSP. CC messages are great, and easy to use, but I can't control some of the more advanced features of the dave smith without NRPN, but the documentation for this, both from Dave, and from the Max people, is sparse at best.
from the best I can figure, I think I need to manually create the binary message and send it as raw midi data, but I can't find any working examples, and flailing in the dark is antimotivational.
cheers
I've got a few extra topics related to MIDI that I might do in additional videos. I can consider discussing NRPN also, thanks for the suggestion.
Thanks for the series
Hope you found it helpful!
thank you so much!
I think if you put all these to gether and make a video about preset editor for all midi keyboards such as m audio oxygen pro49 or any general thing it makes all your midi tutorial seris more real ideas and makes them out of some boring stoff
If you have specific topics you'd like me to discuss let me know... I've already made videos based on viewer questions. But the series is designed to sort of cover all the details so at least someone can have a full understanding of what is possible with MIDI.
“Thank you for explaining SysEx. I have a question: I’m trying to send this SysEx code ( F0 42 7F 60 01 01 10 7D 00 4E 00 00 00 00 00 00 00 00 00 00 00 00 F7) to my Korg Pa via Arduino (USB or MIDI). I’ve tried, but no success. Could you check the message?”
Feel free to provide the SysEx code, and I’ll assist you with sending it to your Korg Pa via Arduino.
Thank you!
Hey Thanks for the videos, it helped a lot. Can you do a video explaining NRPN & RPN? Thanks!
Yes it's on my list. :)
thanks :)
Thanks. Best,
Thx
This did NOT explain sysex at all. An example of using it would have been nice.
Each use is totally different. But some of my other videos show examples.
@@shiftedphase Can keyboards (not midi controllers) send sysex messages to other keyboards? I own a Roland Fantom 6 (new model) and a Roland VR-09. The Fantom 6 is my patch changer. The VR-09 can only switch to organ sounds using sysex (not program change). Trying to figure out if I can send the message from the Fantom.
@@keneokpareke1753 Some products allow you to program in custom messages to send. My digital mixer can do that. But generally different models of product even from the same manufacturer are not likely to automatically know how to talk to each other.
A look at your channel says you're intelligent, and have many interests, but a good communicator you are not.
Sorry that my videos didn't work out for you. Most people seem to like my videos but I guess I can't please everyone.