Thank you so much for sharing your knowledge. It’s been a challenge trying to learn about midi.
@stevekenny1912
4 жыл бұрын
You are very good at this, I've watched many midi tutorials, this has to be most digestible. You demonstrate you have mastered the subject and deliver your knowledge in a really relaxed manner. Subscribed based on your enthusiasm in the comments section. Inspired. keep it coming. if I could request? I'm interested in some useful functions that can be expressed as midi message, e.g. make note into a chord of choice, arpeggiate, roll midi delay etc. I don't want to have to use a daw if I can use a controller capable of storing midi messages, sysex etc
@shiftedphase
4 жыл бұрын
Thanks for your comment! I’ll see if I can make some examples like you describe.
@stephenhookings1985
3 жыл бұрын
Makes sense now why the Wireshark was displaying 4 etc in the middle of Sysex. I can see this is some continuation status. Time to download that midi spec and get all low level :-)
@OndrejPopp
4 жыл бұрын
Cool tx. Nice device. I am planning to modify the casio LK 280 keyboard with some micro controllers to add advanced features so this video comes in handy.
@shiftedphase
4 жыл бұрын
Sounds cool. Good luck with your project!
@OndrejPopp
4 жыл бұрын
@@shiftedphase I just had a look at the little box, Le croy usb protocol analyzer, but you pay almost 1000 Euros for those.. That's a little bit outside my budget, and for that price you can buy digital storage scopes with logic analyzer modules and protocol decoders, for example from Rigol or Siglent... So I will probably not buy this little box for 1000 Euro's for only USB decoding. If it would have been cheaper, like 100 Euros then I might have...
@shiftedphase
4 жыл бұрын
@@OndrejPopp You don't absolutely need it for USB development, but as I said some tasks are much easier when you can see what's happening. If you are making a product to sell and it has to work with multiple OSs, then the cost is probably something you can budget the first time you need to do it. Check into some of the software solutions... for many purposes they can also be useful. I first used the T2 in my job, and was so happy using it that when I started doing my own USB projects again I saved up and got one.
@OndrejPopp
4 жыл бұрын
Ok. Tx@@shiftedphase
@FindecanorNotGmail
4 жыл бұрын
You don't need to reinvent the wheel. There are open source USB device stacks out there for most popular microcontrollers, that support MIDI among other types of interfaces. For debugging you could use Wireshark on the host to read the MIDI messages, and use a virtual serial interface for printing debug messages.
@VasaMusic438
3 жыл бұрын
what a video !!!!! Thank You !!!
@B3-R
3 жыл бұрын
wanted to how to connect several usb-midi keyboards and sound modules in a kind of host device to merge the data, and then connect to the PC software
@Arthur_Lindemute
4 жыл бұрын
Uhul! Thanks
@rafaelmartineztomas4911
3 жыл бұрын
Hi sorry. Any recommendation for a MIDI analizer (such as MIDI-OX for Windows) but for Linux 64 ? (commandline interface)
@rafaelmartineztomas4911
3 жыл бұрын
I have found `midisnoop` is quite alright , its just working in X-server (not in the console)
@shiftedphase
3 жыл бұрын
You can use amidi which can dump the data to the console. I made my own which does a few special things for my own purposes. Maybe just write one that works how you need it.
@rafaelmartineztomas4911
3 жыл бұрын
@@shiftedphase the one I was looking for , Thanks!!
@tomwawer5714
Жыл бұрын
Hi very interesting video! I try to connect a STM32L476RG nucleo board as a midi device and sadly st is not doing any midi libs. There are some of them in the net but then seem not to work. I plodding on :)
@shiftedphase
Жыл бұрын
MIDI libraries are too domain-specific for a manufacturer like ST. Just read the MIDI spec (available for free at midi.org) and start with what you need. You can add and refine as you go.
@shiftedphase
Жыл бұрын
Also regarding USB MIDI... there is also the USB MIDI spec which is free online. If trying to make a USB MIDI device I started by using the USB CDC example from ST which uses the same sort of bulk endpoints that MIDI needs. Get this working first as a serial port. Then copy the device descriptor of a MIDI interface with similar specs to what you want. (on Linux you can use lsusb) and modify it to make a MIDI device. Might take a while if you're new but you will learn to appreciate (or hate?) USB. The only part you need between normal MIDI messages and the actual USB protocol is a little wrapper that encodes or decodes the 4 byte messages as you can see in my video. If you don't want to buy a hardware USB analyzer you can use something like Wireshark to do many of the same tasks. Hope this helps!
@tomwawer5714
Жыл бұрын
@@shiftedphase Thank you !! All clear i will go this way
@rafaelmartineztomas4911
3 жыл бұрын
Hi , I need to monitor what is going on in the communication of my MIDI Controller and my DAW , the issue is that if I use MIDI-OX.exe my DAW wont properly detect my MIDI device (its as if this program requires of a dedicated port for him) . Is there any program that acts as a man in the middle to see what is going on in this connection? (or just a MIDI re-routing utility so I can create a virtual device with "loopMIDI" from Tobias Erichsen?) Thanks
@shiftedphase
3 жыл бұрын
I don't know of a program to do this in a MIDI-specific way. If your controller connects via USB you might be able to use something like Wireshark to look at the actual USB packets, which if you watched my video you will know contains basically raw MIDI messages. It might be a bit more cryptic to dig into but the information will be there.
@rafaelmartineztomas4911
3 жыл бұрын
@@shiftedphase Yep Wireshark is the way , thank you!
@rafaelmartineztomas4911
3 жыл бұрын
Hi again, just throwing it down in here if you have experience about it. I'm trying to replicate a MIDI hardware device (Behringer BCR2000) with a program (open-stage-control) by just assigning the same CC messages and knobs to the virtual device (the one I create in open-stage-control). The issue is that it has to work seamlessly with a DAW (Ableton Live 10) as I have a Remote Script in which I can handle devices and all the DAW with a single Controller. So far I have made it, the issue is that sometimes the Virtual Device seems to not to receive some values (when changing some banks, specifically the third device bank). I am analizing with MIDI-OX and the real hardware trying to see what it may be wrong, as I can see there are a bunch of System Exclusive Messages been sent at determined points that may be the information my replica "Virtual Midi Device" is missing. But they are system Exclusive messages . I've seen that is possible to translate them with "Bome's Midi Translator" create some rules, it may fix this. But what are the rules?, How am I able to read this System Exclusive messages? (cos MIDI-OX.exe is not really showing the info inside the bytes). I'm just asking you as with your expertise you may have encounter these things already. Shall I take Wireshark? analize byte by byte trying to sort out a rule so I can add on "Bome's MIDI translator?" Thank you!
@MrSmotrelkin
3 жыл бұрын
I wish I had such a protocol sniffer! Seems expensive af though. Gonna look into software alternatives.
@shiftedphase
3 жыл бұрын
If you’re doing this stuff for work it’s easier to justify... but there are probably alternatives that are less expensive.
@MrSmotrelkin
3 жыл бұрын
@@shiftedphase Thanks for replying. I'm a hobbyist. Building a MIDI controller based on STM32F103C8 Blue Pill board. I soldered an external USB type B jack to it but I'm having weird issues with it: the device is recognized and I think even MIDI communication is working properly but for some reason an LCD screen doesn't work (but it works when I plug a USB cable directly to the Blue Pill board). It's such a bizarre issue. I checked continuity on all USB wires but it's so bizarre that USB connection would create such a weird problem (and it's not even failing completely - the USB device is still recognized). Anyway, I'll look into software USB analyzers. May also have to analyze signals on a scope.
@shiftedphase
3 жыл бұрын
@@MrSmotrelkin Maybe there is a software issue when the USB is running. Try just powering through your connection and see if it works. But I bet it’s a code problem.
@MrSmotrelkin
3 жыл бұрын
@@shiftedphase I figured it out! I checked continuity on all 4 USB wires many times and everything was according to the schematic. But I made a silly mistake in the original schematic where I connected USB VCC to the board's 3v3 rail instead of the 5V pin. I'm surprised I didn't permanently damage the microcontroller or the LCD. All right, no need to debug USB connections for now!
@shiftedphase
3 жыл бұрын
@@MrSmotrelkin Wow! If anything else goes weird I would recommend replacing your microcontroller... it’s not good to develop on a chip that might be damaged.
Пікірлер: 35