Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Supported by

Problems with running OpenSesame on MacOS Mojave

We have recently received many reports that OpenSesame does not run smoothly any longer on the latest MacOS version 10.14: Mojave. I've looked into some of the issues and can tell you the following:

  • The expyriment and psychopy backend do not work well, because Apple has deprecated (or dropped support for) OpenGL from MacOS Mojave onwards. OpenGL is the 'system' that is used to draw all stimuli to the screen, and both Expyriment and Psychopy heavily rely on it. Apple dropped OpenGL in favor of their own system Metal, so it doesn't look like proper official support for OpenGL will return anytime soon, unless it is picked up by the community. There appear to be some workarounds to fix the current issues, but we depend on the developers of Expyriment and Psychopy to solve these before they work in OpenSesame again.
  • Many issues with the GUI of OpenSesame are hopefully fixed by an update of the PyQT library, which OpenSesame uses to build its interface. We hope to include an updated version of PyQT in the next version of OpenSesame for Mac.

For now, I advise against using MacOS for running experiments. You can still create or build the experiments on MacOS, and test them using the legacy backend, which should still work. This backend however does not provide a reliable timing when collecting responses or displaying stimuli, so it's unwise to run real experiments with it.

Comments

  • I just saw this post. For PsychoPy, the only issue I'm aware of (and I'm sure Expyriment will be affected by the same) is that there is a 1-frame delay in visual stimulus rendering. That isn't a Mojave thing though - it's been there since Mac OS 10.13. It is a constant lag though - it will add 16ms to your apparent reaction time but not change anything else. You shouldn't see any problems in "smoothness" with PsychoPy under Mojave as far as I know.

  • I've just update OS to 3.2.7 on mojave 10.14.3. I'm not sure if it's gotten even slower.

    Starting an experiment in quickstart (regardless of backend) will freeze my system for 40-45 seconds (even the most simple experiment) before it runs it. From then on, the experiment runs just fine. Just debugging becomes very time consuming.

    Is there maybe some package I should really update?

  • @robbertmijn If you look at the debug window, what do you see before and after freezing? That might help pinpoint where the delay comes from.

    There's much bigger issues in the world, I know. But I first have to take care of the world I know.
    cogsci.nl/smathot

  • edited April 4

    @JonPeirce you're right. Both Psychopy and Expyriment work well again now on my Mojave installation. They really didn't at first and I just got to see a black screen after starting an experiment, so maybe Apple fixed something in one of their patch releases of MacOS. Good work and congrats with releasing psychopy 3 by the way. We're going to try if we can internally upgrade to this version in OS soon, but for now we have some problems with the coordinate system (everything that should be rendered in the center is shown at the top-right corner of the window). We probably have to correct for some breaking changes that came with the 3.x release.

    @robbertmijn I don't experience this, but let's see if we can reproduce this. You can also try to run OpenSesame in debug mode by executing

    /Applications/OpenSesame.app/Contents/MacOS/OpenSesame --debug

    from a terminal and then keep in eye on the output there to pinpoint the delay.

    Thanked by 1robbertmijn
  • @Daniel

    It's not just running experiments that freezes my system. Also just opening a saved experiment will freeze my system for up to 40 seconds.

    Strangely, running the app in debug mode (like you suggested) completely eliminates the problem. Is there a reason why I wouldn't want to use the debug mode?

  • edited April 16

    @robbertmijn

    > Strangely, running the app in debug mode (like you suggested) completely eliminates the problem. Is there a reason why I wouldn't want to use the debug mode?

    That is very weird. What happens if you start OpenSesame from the terminal, but without the `--debug` flag? So simply, `/Applications/OpenSesame.app/Contents/MacOS/OpenSesame`. Does the problem still occur then? Apps from finder are started with different environmental variables/settings than the terminal (see https://apple.stackexchange.com/questions/118598/macos-differences-between-running-a-bundled-app-and-running-the-bundles-execut), so the problem may lie there somewhere.

  • @Daniel

    > What happens if you start OpenSesame from the terminal, but without the `--debug` flag? 

    It also runs the app without problems :-)

    According to the stackexchange page you mentioned it may have something to do with the "Info.plist" file that is contained in the "package content" of the app.

    I'll just run it from the terminal for now.

Sign In or Register to comment.