Bug in ctlin?? (10 bits)


    Nov 16 2007 | 7:16 pm
    hi
    i recently asked how to receive all 10 bits from a midi (actually
    USB, but it's the same) controller
    I received several answers ( see
    http://www.cycling74.com/forums/index.php?t=msg&goto=115390&rid=0&S=0284fdca49317dfd1e3646e850467d65&srch=10+bits#msg_115390
    ) but none worked for me, so i thought my unit was faulty.
    when i use it (it is a USB expression pedal) it sends CC numbers
    (values) on controller number 1.
    I used ctlin, and when rightmost output did ouput the values, the
    middle out (controller number) always ouput 1
    now when i used a midiin, it did output a serie of numbers (such as
    176 1 1 176 64 7 176 etc...)
    I think 176 means CC, the next one is the controller number and then its value
    so I made a ctlin 64 - hoping to receive there the second part of the
    10 bits message - it does not receive anything
    but when i use a midiin -> midiparse and at the 5th from right out
    of midiparse (control Change) i connect a [route 1 64] i receive
    values at both outs (and am able to have more or less my 1024 values
    (instead of 127)
    (I hope my explaination was clear)
    my question is - why ctlin does not see values on controller 64,
    which midiin and midiparse do see???
    is there any reason??
    thanks
    best
    kasper
    --
    Kasper T. Toeplitz
    noise, composition, bass, computer

    • Nov 16 2007 | 10:14 pm
      Is this an available controller?
      Which one?
      b
      On Nov 16, 2007, at 11:16 AM, Kasper T Toeplitz wrote:
      > hi
      >
      > i recently asked how to receive all 10 bits from a midi (actually
      > USB, but it's the same) controller
      >
      > I received several answers ( see http://www.cycling74.com/forums/
      > index.php?
      > t=msg&goto=115390&rid=0&S=0284fdca49317dfd1e3646e850467d65&srch=10
      > +bits#msg_115390 ) but none worked for me, so i thought my unit was
      > faulty.
      >
      > when i use it (it is a USB expression pedal) it sends CC numbers
      > (values) on controller number 1.
      >
      > I used ctlin, and when rightmost output did ouput the values, the
      > middle out (controller number) always ouput 1
      >
      > now when i used a midiin, it did output a serie of numbers (such as
      > 176 1 1 176 64 7 176 etc...)
      >
      > I think 176 means CC, the next one is the controller number and
      > then its value
      >
      > so I made a ctlin 64 - hoping to receive there the second part of
      > the 10 bits message - it does not receive anything
      >
      > but when i use a midiin -> midiparse and at the 5th from right
      > out of midiparse (control Change) i connect a [route 1 64] i
      > receive values at both outs (and am able to have more or less my
      > 1024 values (instead of 127)
      >
      > (I hope my explaination was clear)
      >
      > my question is - why ctlin does not see values on controller 64,
      > which midiin and midiparse do see???
      >
      > is there any reason??
      >
      > thanks
      >
      > best
      >
      > kasper
      > --
      > Kasper T. Toeplitz
      > noise, composition, bass, computer
      > http://www.sleazeArt.com
      >
      > http://www.myspace.com/sleazeart
      >
      Barry Threw
      Media Art and Technology
      San Francisco, CA Work: 857-544-3967
      Email: bthrew@gmail.com
      IM: captogreadmore (AIM)
      http:/www.barrythrew.com
    • Nov 16 2007 | 10:42 pm
      >Is this an available controller?
      >
      >Which one?
      >
      euhhhhh
      you mean the actual physical controller (the hardware) or are you
      talking about a max message???
      best
      kasper
      --
      Kasper T. Toeplitz
      noise, composition, bass, computer
    • Nov 16 2007 | 10:44 pm
      ooops
      >>
      >>
      >>when i use it (it is a USB expression pedal) it sends CC numbers
      >>(values) on controller number 1.
      >>
      >>I used ctlin, and when rightmost output did ouput the values, the
      >>middle out (controller number) always ouput 1
      >>
      of course it's the LEFTmost which outputs the values......
      k
    • Nov 16 2007 | 10:57 pm
      Sorry.
      I mean, the hardware controller. Is it custom, or something commercial?
      b
      On Nov 16, 2007, at 2:42 PM, Kasper T Toeplitz wrote:
      >> Is this an available controller?
      >>
      >> Which one?
      >>
      >
      >
      > euhhhhh
      >
      > you mean the actual physical controller (the hardware) or are you
      > talking about a max message???
      >
      > best
      >
      > kasper
      > --
      > Kasper T. Toeplitz
      > noise, composition, bass, computer
      > http://www.sleazeArt.com
      >
      > http://www.myspace.com/sleazeart
      >
      Barry Threw
      Media Art and Technology
      San Francisco, CA Work: 857-544-3967
      Email: bthrew@gmail.com
      IM: captogreadmore (AIM)
      http:/www.barrythrew.com
    • Nov 16 2007 | 11:04 pm
      >Sorry.
      >
      >I mean, the hardware controller. Is it custom, or something commercial?
      >
      actually it is a custom design which became the prototype of a new
      commercial hardware
      done by MESI
      http://www.modularsquare.com/fr/index.php (on the right..... no links -yet?-)
      i highly recommend it (a simple "volume" or expression pedal that you
      connect with a USB cable to your computer. Plug and play. great)
      best
      kasper
      --
      Kasper T. Toeplitz
      noise, composition, bass, computer
    • Nov 17 2007 | 7:13 am
    • Nov 17 2007 | 12:23 pm
      >On 16-nov.-07, at 20:16, Kasper T Toeplitz wrote:
      >
      >>my question is - why ctlin does not see values on controller 64,
      >>which midiin and midiparse do see???
      >
      >Salut Kasper,
      >
      >there were already a couple of discussions about this. All
      >abstractions I know (for the bcf2000 for exemple) to get 7+ bits
      >controllers use [midiin] instead of a couple of [ctlin]...
      >
      >I think that with the bcf2000, 2 [ctlin] worked when using the MIDI
      >out plug, but not the USB plug...
      >
      ah???
      sorry for not following the bcf2000 thread...
      so it's a known issue......
      well I can live with midiin and midiparse, no problem.
      just a little strange
      thanks patrick
      best
      kasper
    • Nov 17 2007 | 12:29 pm
      Kasper T Toeplitz schrieb:
      > my question is - why ctlin does not see values on controller 64,
      > which midiin and midiparse do see???
      how do you look at them? with a number box or with print?
      If its a number box its just too fast...
      The Midi specs are clear about the LSB controler number. Its simply the
      MSB cc + 32...
      Patrick Delges schrieb:
      > All abstractions I know (for the bcf2000 for exemple) to get 7+ bits
      > controllers use [midiin] instead of a couple of [ctlin]...
      You didn't look at my abhaXions, including the one I sent in this
      thread... ;-)
      You just have to think about the order of bytes you might receive, but
      thats true for midiin as well... It works for me, but if the box doesn't
      follow the rules of Midi it might not...
      Stefan
      --
      Stefan Tiedje------------x-------
      --_____-----------|--------------
      --(_|_ ----|-----|-----()-------
      -- _|_)----|-----()--------------
      ----------()--------www.ccmix.com
    • Nov 17 2007 | 12:59 pm
      thanks stefan
      >
      >>my question is - why ctlin does not see values on controller 64,
      >>which midiin and midiparse do see???
      >
      >how do you look at them? with a number box or with print?
      both
      >If its a number box its just too fast...
      well [ctlin 64] has only this to receive, and it does not receive
      anything.... what would be too fast there??
      >>
      >
      >You didn't look at my abhaXions, including the one I sent in this
      >thread... ;-)
      you mean
      "If you replace the ctlin with the below patch (name it ctl.in) and
      attach a float to the output, you will receive a higher precision if it
      sends them between 0. and 128..."
      to be honest I did not understand how to use the patch you send me -
      and looking at it again i still don't (yeah, shame on me!!)
      ok, i saved the patch you send me as ctl.in, but what then??
      replacing ctlin by this does not produce anything, and since i do not
      understand what it is supposed to do........ yeah, sorry, my fault
      here
      >You just have to think about the order of bytes you might receive,
      >but thats true for midiin as well... It works for me, but if the box
      >doesn't follow the rules of Midi it might not...
      the pedal sends on CC 1 and CC 64....
      using midiin->midiparse it works
      are those midi rules or not, i could not tell
      thanks & best
      kasper
      --
      Kasper T. Toeplitz
      noise, composition, bass, computer
    • Nov 17 2007 | 2:53 pm
    • Nov 19 2007 | 10:45 am
      On 17 nov. 07, at 13:29, Stefan Tiedje wrote:
      > Patrick Delges schrieb:
      >> All abstractions I know (for the bcf2000 for exemple) to get 7+ bits
      >> controllers use [midiin] instead of a couple of [ctlin]...
      >
      > You didn't look at my abhaXions, including the one I sent in this
      > thread... ;-)
      You're right, I didn't at that time, because I though I was clever
      enough to find a solution by myself (and getting 2 controllers in the
      right order is normally something I can do).
      But now I did (I didn't find the right abhaXion in your huge folder,
      but tried the patch you sent: ctl.in), and my conclusion remains the
      same: your patch doesn't work with my bcf2000 when it's plugged as a
      USB interface (mode u-3, the most common mode), it works only when the
      bcf2000 is used as a MIDI device plugged to a "real" MIDI interface (in
      my case, a FF400) with a MIDI cable.
      > You just have to think about the order of bytes you might receive, but
      > thats true for midiin as well... It works for me, but if the box
      > doesn't follow the rules of Midi it might not...
      Probably the bcf2000 is just like any other Behringer product I know: a
      cheap piece of sh*t.
      But if you want your abhaXion to work in many contexts, maybe you
      should adapt it and make use of [midiin].
      _____________________________
      Patrick Delges
      Centre de Recherches et de Formation Musicales de Wallonie asbl
    • Nov 19 2007 | 7:26 pm
      Kasper T Toeplitz schrieb:
      > ok, i saved the patch you send me as ctl.in, but what then?? replacing
      > ctlin by this does not produce anything, and since i do not understand
      > what it is supposed to do........ yeah, sorry, my fault here
      any error message when loading th ctl.in? maybe some subpatcher is
      missing? It supposed to do the same as ctlin, but will add the input on
      CC + 32 as fractional part...
      > the pedal sends on CC 1 and CC 64....
      As its custom made, tell your friend to change the behaviour. It should
      send on CC 1 and CC 33. (or CC 0 and CC 32, CC 7 and 39...)
      Then usual 14-bit patches will work. Its just not the specs what he
      decided...
      Stefan
      --
      Stefan Tiedje------------x-------
      --_____-----------|--------------
      --(_|_ ----|-----|-----()-------
      -- _|_)----|-----()--------------
      ----------()--------www.ccmix.com
    • Nov 19 2007 | 9:44 pm
      Quote: Patrick Delges wrote on Mon, 19 November 2007 23:45
      ----------------------------------------------------
      > same: your patch doesn't work with my bcf2000 when it's
      > plugged as a USB interface (mode u-3, the most common mode)
      > Probably the bcf2000 is just like any other Behringer product
      > I know: a cheap piece of sh*t.
      Nope, it's one of the better things they make. The problem is in ctlin.
      The Mac OS X built-in USB MIDI driver (used by the class-compliant BCF2000 and many other devices) outputs the paired CC messages in a single MIDIPacket, and ctlin isn't handling that, even though it's perfectly legal.
      When used via other MIDI drivers, you'll most likely get the CC messages in separate MIDIPackets, and ctlin works as expected.
    • Nov 19 2007 | 10:19 pm
      >
      >
      >The Mac OS X built-in USB MIDI driver (used by the class-compliant
      >BCF2000 and many other devices) outputs the paired CC messages in a
      >single MIDIPacket, and ctlin isn't handling that, even though it's
      >perfectly legal.
      >
      >When used via other MIDI drivers, you'll most likely get the CC
      >messages in separate MIDIPackets, and ctlin works as expected.
      >
      AAAAAAAAAHHHHHHHHHHHHH!!!
      thank you for explainig it !!
      best
      kasper
      --
      Kasper T. Toeplitz
      noise, composition, bass, computer
    • Nov 20 2007 | 8:53 am
      On 19 nov. 07, at 22:44, John Pitcairn wrote:
      > The Mac OS X built-in USB MIDI driver (used by the class-compliant
      > BCF2000 and many other devices) outputs the paired CC messages in a
      > single MIDIPacket, and ctlin isn't handling that, even though it's
      > perfectly legal.
      >
      > When used via other MIDI drivers, you'll most likely get the CC
      > messages in separate MIDIPackets, and ctlin works as expected.
      This makes sense. Thanks John for this clarification. So, should we
      send a bug report to Cycling74?
      _____________________________
      Patrick Delges
      Centre de Recherches et de Formation Musicales de Wallonie asbl
    • Nov 20 2007 | 10:02 am
      Patrick Delges schrieb:
      > it works only when the bcf2000 is used as a MIDI device plugged to a
      > "real" MIDI interface (in my case, a FF400) with a MIDI cable.
      That's odd. Did you look at the difference of the two methods?
      I'd be curious what the difference is. In theory the USB connection
      should produce the same results as the Midi option. (I guess its not
      just a question of the correct Midi port choosen...)
      > Probably the bcf2000 is just like any other Behringer product I know:
      > a cheap piece of sh*t. But if you want your abhaXion to work in many
      > contexts, maybe you should adapt it and make use of [midiin].
      I'd only do that if I find evidence that there is any difference. I
      don't have a Behringer, so I can't test it myself...
      (And who knows in Max 5 all the bugs are probably gone anyway... ;-)
      Stefan
      --
      Stefan Tiedje------------x-------
      --_____-----------|--------------
      --(_|_ ----|-----|-----()-------
      -- _|_)----|-----()--------------
      ----------()--------www.ccmix.com
    • Nov 20 2007 | 10:47 am
      Patrick Delges schrieb:
      > This makes sense. Thanks John for this clarification. So, should we send
      > a bug report to Cycling74?
      Yes, unfortunately though they claim to read the list, we rarely get a
      feedback which just claims the issue as "filed". Not more than that.
      Then we know they are dealing with it.
      To the support team of c74:
      Isn't this an easy to do rule? It would not add to the traffic, because
      it will lower the follow up posts to a question...
      (If there is no response to this mail from the support team we know they
      don't read it, or miss too much of the list...)
      Stefan
      --
      Stefan Tiedje------------x-------
      --_____-----------|--------------
      --(_|_ ----|-----|-----()-------
      -- _|_)----|-----()--------------
      ----------()--------www.ccmix.com
    • Nov 20 2007 | 8:26 pm
      Hi All,
      Sorry we haven't been very interactive with this thread, but we've been
      waiting to see if something resembling a bug report started to take
      form. If anyone would like to take the information gathered in this
      thread and send us a proper bug report, we will be happy to look deeper
      into it.
      For now, it sounds like midiin is your fix.
      Best,
      Andrew B.
    • Nov 20 2007 | 8:51 pm
      (also sent to support@cycling74.com)
      Issue:
      When receiving data from a class-compliant USB MIDI device that uses the OS X built-in USB MIDI driver, ctlin may not output the second and subsequent messages of a multipart CC message.
      Reproduction:
      The Behringer BCF2000 and BCR2000 connected via USB both exhibit this problem with ctlin when sending 14-bit CC messages, RPN or NPRN.
      Analysis:
      The OS X USB MIDI driver places MIDI messages received at the same time into a single MIDIPacket in a single MIDIPacketList. This is legal within the CoreMIDI spec. ctlin does not handle this correctly.
      Workaround:
      Attach the device to a MIDI interface that uses a 3rd-party driver. These will generally send a single MIDI message per MIDIPacket and MIDIPacketList. ctlin will work as expected. Or use midiin and midiparse.