[PD] sysex messages

mario buoninfante mario.buoninfante at gmail.com
Thu Feb 22 23:27:08 CET 2018


Hi Ryan,


Circuit is sending MIDI via USB, while I'm routing Pd via Jack on Linux.


cheers


On 02/22/2018 10:25 PM, Ryan Smith wrote:
> Are you using the hardware midi ports on the Circuit or all through
> USB? The USB midi specs are slightly different when it comes to sysex
> messages if I recall and maybe the Circuit is using that style while
> Pd doesn't so the interface just sees the messages as bytes instead of
> grouping it.
>
> On Thu, Feb 22, 2018 at 2:05 PM, mario buoninfante
> <mario.buoninfante at gmail.com> wrote:
>> yap, I know that at the end of the day MIDI is dealing with 1 byte at time.
>> I was wondering why there's a difference between 2 different piece of code
>> that generates MIDI (Pd and Hardware synth).
>>
>> for example I just monitored (via USB) my Novation Circuit (a groovebox) and
>> Gmidimonitor receives messages 81 bytes long. with Pd as I said is always 1
>> byte.
>>
>> now my question would be, how is this possible?
>>
>> I'm sure Circuit sends sysex 81 bytes long, so I know that this is correct,
>> but still I don't know why Pd doesn't allow something like that.
>>
>>
>> cheers,
>>
>> Mario
>>
>>
>> On 02/22/2018 09:58 PM, Alex wrote:
>>
>> MIDI is a serial protocol, individual bits running down a single line, we
>> now also have USB midi which is a little bit different than that but usually
>> that is abstracted for you.
>> The software monitor you're using likely groups these for you but in reality
>> you simply have a stream of individual bits on the hardware line..
>> PD's object let you do bytes at a time instead of individual bits :)
>>
>> On Thu, Feb 22, 2018 at 1:47 PM, mario buoninfante
>> <mario.buoninfante at gmail.com> wrote:
>>> Hi Alex,
>>>
>>>
>>> thanks for your reply. I think that also using your abstraction Pd will
>>> spit out 1 byte per time (I didn't check it, but I assume that cause it's
>>> not an external in C).
>>>
>>> about MIDI if I'm not wrong, bytes are grouped in accord with the type of
>>> message, ie Note on/off and CC are 3 bytes messages, channel pressure and
>>> program change are 2 bytes, sysex have variable length and so on. and I
>>> presume they're sent out in group.
>>>
>>> in fact when I monitor MIDI messages coming for certain applications (I'm
>>> on Linux and I'm using Gmidimonitor) the console tells me the sysex size in
>>> bytes. so, with Pd the size is always 1 byte, but with other programming
>>> languages and softwares is variable and goes in accord with the sysex I
>>> generated.
>>>
>>>
>>> cheers,
>>>
>>> Mario
>>>
>>>
>>> On 02/22/2018 09:34 PM, Alex wrote:
>>>
>>> I haven't tested in a while but I wrote an abstraction to take a list,
>>> wrap it in the sysex start and end and output it as individual bytes:
>>> https://github.com/x37v/pure_data
>>>
>>> midi is a byte oriented protocol..
>>>
>>> On Thu, Feb 22, 2018 at 1:24 PM, mario buoninfante
>>> <mario.buoninfante at gmail.com> wrote:
>>>> Hi,
>>>>
>>>>
>>>> do you guys know if there's a way to send a list of sysex messages (or 1
>>>> complete message, let's say 8 bytes long) rather then 1 byte per time?
>>>>
>>>> if not, do you know if there's a particular reason why it's not possible?
>>>>
>>>>
>>>> cheers,
>>>>
>>>> Mario
>>>>
>>>>
>>>> _______________________________________________
>>>> Pd-list at lists.iem.at mailing list
>>>> UNSUBSCRIBE and account-management ->
>>>> https://lists.puredata.info/listinfo/pd-list
>>>
>>>
>>
>>
>> _______________________________________________
>> Pd-list at lists.iem.at mailing list
>> UNSUBSCRIBE and account-management ->
>> https://lists.puredata.info/listinfo/pd-list
>>




More information about the Pd-list mailing list