Organelle is arm, so externals will work... but as the discussion between @giuliomoro and I above, they may not be optimised for bela.

Ive recently acquired an Organelle, so for patches/externals I'm working on, I'm planning to do Bela builds/versions, and also making a 'bela mother patch' that will be compatible with Organelle, using 4 analog pots, encoder and an oled display... this might seem odd (as I have an organelle), but it would give me something like Organelle but has very low latency, also of course, I can then do extended versions with more analog pots etc.

    Ok thanks that is heartening and something to get my teeth into. The control side of the hacking is not too much of a problem, it is more the compiling and getting any externals to work.
    thetechnobear Will you be sharing the oled display and pots info as I would love something similar. For now I will get about getting these patches working...

    Thanks again for your time.
    Best. S

      thetechnobear

      So how is the Organelle? I have been thinking if getting one as they look so cute, it's just the price that us a little galling. Is the quality up to the price?

        AndyCap I'm enjoying it more than I expected... the form factor is very enjoyable, and there some interesting patches out there.
        Given Ive got Bela and Axoloti - I was concerned it would be a bit too similar, but the immediacy of its interface (and its limitations) has actually been quite inspiring.... I've got a lot of ideas for it still brewing 🙂
        Quality seems good so far. Yeah, Id agree its quite pricey, but it is made in small volumes - so its probably a bit unfair to judge it merely on 'price of components'.

        as I said, I'm also looking forward to partnering it up with Bela/Axoloti, I think they will be nice companions.

        a couple of things id wish on an 'organelle v2', would be
        - the 4 pots should also be endless encoders... makes much more sense with the oled
        - battery power 🙂

        Smuff sure once I finally get around to building it fully - the main thing I keep stumbling over with Bela though, is sorting out some kind of enclosure/mounting - every time I try, I end up binning it and starting again!
        ( I guess, why I like the fact Organelle was already finished 😉)

          thetechnobear

          Thanks for all the info, I think I may have to get one. I do like the look of them.

          8 days later

          thetechnobear I would like some kind of CV connections as well as your suggestions especially the rotary encoders. That is why I am hanging on hoping for the Bela CV module. This is all good I still have a way to go understanding PD patches in Bela but that is my issue. Good luck on making yours...

          7 months later

          Hi,

          I've been trying to compile an external to use with the Bela. The instructions I've been able to parse from above don't seem to work, first of all because there doesn't seem to a libpd file in the include directory:

          alt text

          Is there a new process for this? I haven't been able to find anything else recent in the forum about making externals on the board.

          Thanks,
          Colin

          Yeah sorry the include folder is now in /usr/local/include/libpd

          I updated the posts above to reflect this.

            so if you are cross-compiling, you will need to copy those files from the board on to your computer (or mount the filesystem remotely)

            I'm trying to build the external on the Bela, so no cross compiling. Just looking for a proper Makefile now.

            5 days later

            giuliomoro
            I have an external that seems to have compiled ok, but doesn't seem to be functioning properly on the Bela. It works fine on all other systems - I've tested it on OSX, Windows 10, and Ubuntu. For some reason, I can't get proper values when I run it on the Bela. I'm wondering if I could send you the files and have you double check them. I totally understand if this is a pain, though. In case it's not and you have a spare moment... The object does a cross correlation on two audio signals and writes the result to an array (first outlet), as well as provides the index from the center of the array (second outlet), and gives the peak value (third outlet). The first two inlets are for the audio signal, and the third is for a calibration input (which doesn't seem to be working, hence the expr~ object). Here is a link to all the necessary files to compile and run if you do have the inclination: https://www.dropbox.com/s/g5wtmicokn1r1xg/xcorr.zip?dl=0

            Thanks!
            Colin

            Hi Colin,
            the difference between platforms could be due to the fact that on Bela Pd's internal blocksize is 16, while in Pd it defaults to 64. Your code does an FFT of the size of the incoming buffer, so maybe mayer_reallfft() does not like an FFT of size 16?

            Note that you cannot change this parameter at runtime: you would need to recompile libpd editing

            #define DEFDACBLKSIZE 16

            to

            #define DEFDACBLKSIZE 64

            in

            libpd/pure-data/src/s_stuff.h

            To recompile libpd:

            git clone https://github.com/BelaPlatform/libpd.git
            git submodule init
            git submodule update --recursive
            .... do your change to pure-data/src/s_stuff.h
            make -f Makefile-Bela
            make -f Makefile-Bela install

            PS: I like the comments to the Pd API in your xcorr~.cfile: very instructive.

            EDIT: using https for git clone

            I was thinking it could be a block size issue and changed the block size in the project settings, but I'll go ahead and recompile libPd. I'll let you know if that works.

            Thanks as always!

            Hi Giulio,

            I tried cloning the repository, but got:
            '''
            root@bela:~# git clone git@github.com:BelaPlatform/libpd.git
            Cloning into 'libpd'...
            Permission denied (publickey).
            fatal: Could not read from remote repository.

            Please make sure you have the correct access rights
            and the repository exists.
            '''
            Is that the right address, or do I need access or something?

            it means you don't have an ssh key stored on github, or if you do, you don't have enabled key forwarding to your Bela. You can clone via https:

            git clone https://github.com/BelaPlatform/libpd.git

              giuliomoro
              When I try to update the submodule, I get:

              root@bela:~/Robut/libpd# git submodule update --recursive
              Fetched in submodule path 'pure-data', but it did not contain 5d1f09c51390f073f671121842b402f55531eebf. Direct fetching of that commit failed.

              and then there's nothing in the pure-data folder - no src/s_stuff.h file.

              oh I see: the pure-data repo was still pointing at Miller's one. I updated the libpd repo now to point to my pure-data fork, try again.

              Awesome! That seems to have done it! I'm getting predictable values from the [xcorr~] object now.

              Thank you!!!

              Great. There were talks at some point in the Pd mailing list about making that #define a run-time variable, but nothing came out of it I think.

              4 months later

              I'm working on a project where some existing externals would come in really handy. I have to confess that I'm struggling a bit trying to work out a method to compile and install based on the above discussion, has anyone got a set of instructions that I could try to follow?

              Also seems worth asking: has anyone had any luck with the cyclone objects? I noticed mention of a compatibility issue on another thread https://forum.bela.io/d/374-reading-jpeg-or-video-from-sd-card-to-bela-as-arrays