• alexandros

    I don't think you can make a vanilla abstraction, because it has an arbitrary number of outputs, and with abstractions, this is possible only with [zexy/initbang] as [loadbang] won't do it. If you're ok with a fixed number of outlets, I guess it's possible. Below is a screenshot of an abstraction I did with four outlets. For a dynamic number of outlets you would probably have to make an abstraction with the group of objects that repeats in the image below, and use [zexy/initbang] to make all the object/abstraction creations and connections in the main abstraction, but again, this won't be vanilla.
    bucket_vanilla.png

    posted in technical issues read more
  • alexandros

    This information is included in the INSTALL.txt file that comes with the source, but it's not on the top of this document.

    posted in technical issues read more
  • alexandros

    Maybe it has to do with the frequency you're sending the data. In the Max patch. [serial] is being polled every 100ms. Perhaps you have to reduce the frequency of your data. Other than that, [comport] can accept lists of values the way you do it, and these should be readable by the Arduino code.

    posted in technical issues read more
  • alexandros

    Why are you reading the bytes from the serial buffer outside the if (Serial.available() > 0) test? Nothing is happening inside those curly brackets. All Serial.read() should happen within those curly brackets. Though, I guess the bytes will be available after the empty code snippet. Also, in the Pd patch you're using a fan out connection. Use [t b f] connected to every outlet of [route] that connects to a cold inlet of [pack].
    As @ddw_music correctly pointed out, there's no [pack i i i i i]. What you need to do is change it to [pack f f f f f] but make sure you pass those values through an [i ] object before sending them to [pack].
    Lastly, a better version of the code that reads the serial buffer is this:

    int index = 0;
    while (Serial.available()) {
      incoming[index] = Serial.read();
      index++;
      if (index > 4) index = 0;
    }
    

    Or something along these lines.

    posted in technical issues read more
  • alexandros

    Can you share your patch, and the Arduino code?

    posted in technical issues read more
  • alexandros

    Or use a [symbol] object and store the output of [openpanel] in its right inlet, if you don't want to use a GUI symbol box.

    posted in technical issues read more
  • alexandros

    I guess it's better to do this in another language, like Python, which is great in handling text files. Perhaps the new [file] object included in the current test version of Pd will be better than [text], haven't tested it yet though.

    posted in technical issues read more
  • alexandros

    How about this:

    [0 1 2( [1 2 3(
    |       /
    |     /
    [list split 2]
    |
    [unpack]
    |      |
    [== 0] [== 1]
    |      |
    [&&    ]
    |
    [sel 1] <- this will bang when the first value is 0 and the second is 1
    

    You'll need to repeat the [== 0] [== 1] with [== 1] [== 2] and so on, for all possible lists, or something along these lines.

    posted in technical issues read more
  • alexandros

    If you have lists, then you can use [list split 2] and unpack the first two values which you can then compare with [== ]. It's not very elegant, but it does what you want.

    posted in technical issues read more
  • alexandros

    This thread is quite old, and AFAIK, @cuinjune has sort of rewrote the library and now there's only the [ofelia] external, and everything else is either written as a Lua script and loaded to [ofelia], or an abstraction, that includes [ofelia] with a Lua script loaded to it, pretty much the same thing, only the abstraction simplifies things a bit.
    The best way to go would probably be to learn more about openFrameworks and Lua. This way you can really unleash the power of Ofelia!

    posted in pixel# read more

Internal error.

Oops! Looks like something went wrong!