mimas

Mimas is the graphical interface for rubyk and any oscit (open sound control it) enabled devices. The source code for the application is released under the MIT license but the application as a whole is GPL (GNU General Public License) since we are using the excellent juce framework.

The application will run on Mac OS X, Windows and Linux but currently only compiles on Mac OS X.

downloads

We have not released any version of mimas yet.

Source code

The source code can be retrieved with git on github.com/rubyk/oscit.

Bug tracking

If anything seems wrong with this library, please open a ticket (if this seems too much, sent an email to the mailing-list).

mimas name ?

Mimas crater

The name comes from the smallest natural satellite in the solar system that is spherical (looks like a moon).

Mimas has a big crater which makes it look like some sort of giant eye, and that’s what the graphical interface is about: “see and master it all”.

latest blog entries

  • rubyk / iPhone app first steps

    As you can see on the screenshot below, “minimas” (oscit controller for iPhone) now also has little sliders magically appearing when an oscit enabled device is connected to the network.

    And yes, this works on my iPhone through wifi and it’s super cool !

    Now I just have to implement the same ”.views” parser as in Mimas (view is provided by the remote application as xml).

    iphone with mimas

  • ProxyFactory

    To start building the GUI for rubyk, I decided to first implement an iPhone remote because:

    1. I know objective C and iPhone development is very well documented (not like juce).
    2. It will raise all the problems of a remote gui without involving the full complexity of a desktop application
    3. It’s network based and fun

    add device

    The first problem I fell upon was how to build the proxy tree and manage the asynchronous calls (update and change value). It took me some time but I finally wrapped my head around the idea of a ProxyFactory that you sub-class in your specific gui environment, providing the necessary hooks to build the gui widgets.

    add_device

    Add a device (part of the ProxyFactory pattern).

    sync

    Here is the list of commands (part of oscit protocol) that are used to build the proxy tree.

    sync

    Sync states between a remote and a proxy.

    change value

    And finally, this is what happens when values are changed:

    change_value

    Value change notifications between a remote and a proxy.

    coding time

    I started writing the tests for this setup. The code will be part of the liboscit library.

    2009-10-03 - tagged: gui, ioscit, oscit - comments (0)