# core.openWindows() in 1.84.0 - AttributeError: 'module' object has no attribute 'openWindows'

**URL:** https://discourse.psychopy.org/t/core-openwindows-in-1-84-0-attributeerror-module-object-has-no-attribute-openwindows/919
**Category:** Coding
**Created:** [August 20, 2016, 6:44pm UTC](https://discourse.psychopy.org/t/core-openwindows-in-1-84-0-attributeerror-module-object-has-no-attribute-openwindows/919 "2016-08-20T18:44:39Z")
**Posts on this page:** 10
**Page:** 1

<div class="post-metadata">

### Author: ![dmoracze](https://avatars.discourse-cdn.com/v4/letter/d/4af34b/32.png) [@dmoracze](https://discourse.psychopy.org/u/dmoracze)
#### Post date: [August 20, 2016, 6:44pm UTC](https://discourse.psychopy.org/t/core-openwindows-in-1-84-0-attributeerror-module-object-has-no-attribute-openwindows/919/1 "2016-08-20T18:44:39Z")

</div>

Hello,

I recently upgraded to 1.84.0, though I had been using the beta versions for my experiment because I require microphone access and the newest versions were the only ones I could get to work. I have a few questions about how to make my experiment 1) work and 2) more less buggy.

First of all,  
Out of the box, I tried to run my experiment and I received this:

```
pyo version 0.8.0 (uses single precision)
Traceback (most recent call last):
File "/Users/Dustin/Desktop/TRW_scan_comp/TRW_comp.py", line 69, in <module>
microphone.switchOn()
File "/Users/Dustin/.psychopy2/versions/psychopy/microphone.py", line 1023, in switchOn
sound.initPyo(rate=sampleRate) #will automatically use duplex=1 and stereo if poss
File "/Users/Dustin/.psychopy2/versions/psychopy/sound.py", line 642, in initPyo
core.wait(0.5)#wait for server to boot before starting te sound stream
File "/Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/psychopy/clock.py", line 219, in wait
for winWeakRef in core.openWindows:
AttributeError: 'module' object has no attribute 'openWindows'`

```

I also encountered this error using the previous beta release. As a quick and dirty fix I made these changes to clock.py by referencing previous versions:

```
    # removed lines 219-228
    #for winWeakRef in core.openWindows:
    # win = winWeakRef()
    # if (win.winType == "pyglet" and
    # hasattr(win.winHandle, "dispatch_events")):
    # win.winHandle.dispatch_events() # pump events
    # added:
    try:
        wins = pyglet.window.get_platform().get_default_display().get_windows()
        for win in wins: win.dispatch_events()#pump events on pyglet windows
    except:
        pass #presumably not pyglet

```

I do not know the implications of this change, however, my experiment works for the most part.  
This appears to happen when I turn the microphone on. I have adapted my code from the builder, but I haven’t changed much with regard to how the microphone and audio are handled (other than the filename of the saved wav file).  
Any ideas why this is happening? I can’t recreate this in the previous stable release because i receive an immediate `cannot find library pyo` error.

Also, 2 other questions about the new version:

1. In the release notes it says:

On Mac the 0.8.0 release of `pyo` audio lib, which is being packaged in this version of PsychoPy, is not closing properly with the ‘coreaudio’ backend so you might want to switch that to use ‘portaudio’ instead for now

So my question is how do I do this? I am using the coder view. Every time my experiment finishes, it doesn’t close properly. It saves all the necessary files but I still need to end the experiment manually.

1. Every now and then I receive: `Fatal Python error: (pygame parachute) Segmentation Fault`

What does this mean?

I have attached my code, though it is very similar to the default code output by the builder. Thanks for your help!

Dustin

[TRW\_comp.py](https://us1.discourse-cdn.com/flex002/uploads/psychopy/original/1X/5ee80555a250e9a13d2359a0ece9449d9b377938.py) (33.9 KB)

---

<div class="post-metadata">

### Author: ![jon](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.psychopy.org/jon/32/22_2.png) [@jon](https://discourse.psychopy.org/u/jon)
#### Post date: [August 22, 2016, 11:01am UTC](https://discourse.psychopy.org/t/core-openwindows-in-1-84-0-attributeerror-module-object-has-no-attribute-openwindows/919/2 "2016-08-22T11:01:58Z")

</div>

To the first question I’m puzzled. I wonder whether you’ve got multiple versions of the psychopy library installed on your path. Could you go to the shell panel (bottom of the coder) and let us know the output of these print commands:

```python
>>> from psychopy import core
>>> print core
>>> print dir(core)

```

Your hack to handle the error would potentially cause problems with detecting mouse/keyboard changes but little else (but I’d like to work out why the problem is occurring on your machine, since it isn’t on mine)

To the second part:

> [@dmoracze](#):
>
> 1. In the release notes it says:
> 
> On Mac the 0.8.0 release of pyo audio lib, which is being packaged in this version of PsychoPy, is not closing properly with the ‘coreaudio’ backend so you might want to switch that to use ‘portaudio’ instead for now
> 
> So my question is how do I do this? I am using the coder view. Every time my experiment finishes, it doesn’t close properly. It saves all the necessary files but I still need to end the experiment manually.
> 
> 1. Every now and then I receive: Fatal Python error: (pygame parachute) Segmentation Fault
> 
> What does this mean?
> 
> I have attached my code, though it is very similar to the default code output by the builder. Thanks for your help!

You can change the sound drivers in the preferences of the application. In the General tab there’s an option to set the “audio library” and the “audio driver”. Changing the order of the entries alters the order in which they get used in preference. You could try with adding `'pysoundcard'` to the audio library before pyo to see if that gives you better performance. Or you could use pyo but tell it to use the `'portaudio'` driver instead of the `'coreaudio'` driver.

---

<div class="post-metadata">

### Author: ![dmoracze](https://avatars.discourse-cdn.com/v4/letter/d/4af34b/32.png) [@dmoracze](https://discourse.psychopy.org/u/dmoracze)
#### Post date: [August 22, 2016, 11:37am UTC](https://discourse.psychopy.org/t/core-openwindows-in-1-84-0-attributeerror-module-object-has-no-attribute-openwindows/919/3 "2016-08-22T11:37:26Z")

</div>

Thanks for the help!

Here is the output you requested:

```
from psychopy import core
print core
<module 'psychopy.core' from '/Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/psychopy/core.py'>
print dir(core)
['Clock', 'CountdownTimer', 'FINISHED', 'MonotonicClock', 'NOT_STARTED', 'STARTED', 'StaticPeriod', ' __builtins__', ' __doc__', ' __file__', ' __name__', ' __package__', 'absolute_import', 'checkPygletDuringWait', 'getAbsTime', 'getTime', 'havePyglet', 'logging', 'monotonicClock', 'openWindows', 'print_function', 'pyglet', 'quit', 'runningThreads', 'rush', 'shellCall', 'shlex', 'subprocess', 'sys', 'threading', 'wait']

```

I am running this on the standalone 1.84.0 (PsychoPy2.app), however, I do have the previous beta installed as well: 1.84.0rc5 (PsychoPy\_64bit.app). Since these are both standalone I assumed that they wouldn’t interact.

Ah! After some inspection, I think I found the issue. Awhile ago I played with the idea of installing psychopy on my own python distribution, thus I had a pesky ~/.psychopy directory that was messing with things. I removed this directory and it works much better.

However, I still have some issues with the experiment closing properly. I haven’t changed my code that I attached above, but I did change my audio settings to be:

audio library: [‘pysoundcard’,‘pyo’,‘pygame’]  
audio driver: [‘portaudio’,‘coreaudio’]

After the end of the experiment, I still need to manually end. However, I have all of the output files I need.

Thanks again,

Dustin

---

<div class="post-metadata">

### Author: ![jon](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.psychopy.org/jon/32/22_2.png) [@jon](https://discourse.psychopy.org/u/jon)
#### Post date: [August 22, 2016, 11:48am UTC](https://discourse.psychopy.org/t/core-openwindows-in-1-84-0-attributeerror-module-object-has-no-attribute-openwindows/919/4 "2016-08-22T11:48:51Z")

</div>

OK, so we’ve solved the error with openWindows

To work out what’s happening with your audio settings could you run the auditory stimulus demo in the Coder and let us know what it says. It should report which audio libs it is using (might be that the others aren’t being found properly)

---

<div class="post-metadata">

### Author: ![dmoracze](https://avatars.discourse-cdn.com/v4/letter/d/4af34b/32.png) [@dmoracze](https://discourse.psychopy.org/u/dmoracze)
#### Post date: [August 22, 2016, 11:59am UTC](https://discourse.psychopy.org/t/core-openwindows-in-1-84-0-attributeerror-module-object-has-no-attribute-openwindows/919/5 "2016-08-22T11:59:19Z")

</div>

I ran [soundStimuli.py](http://soundStimuli.py):

```
##### Running: /Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/psychopy/demos/coder/stimuli/soundStimuli.py #####
2016-08-22 07:55:15.690 python[20858:9894337] ApplePersistenceIgnoreState: Existing state will not be touched. New state will be written to /var/folders/6c/tj4p58p128526xzy_hf23zkc0000gn/T/org.psychopy.PsychoPy2.savedState
pyo version 0.8.0 (uses single precision)
Using pyo(with None) for sounds
2016-08-22 07:55:16.969 python[20858:9894337] 07:55:16.969 WARNING: 140: This application, or a library it uses, is using the deprecated Carbon Component Manager for hosting Audio Units. Support for this will be removed in a future release. Also, this makes the host incompatible with version 3 audio units. Please transition to the API's in AudioComponent.h.
1.9244 WARNING pysoundcard audio lib was requested but not loaded: cannot load library /Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/site-packages.zip/_soundcard_data/portaudio.dylib: dlopen(/Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/site-packages.zip/_soundcard_data/portaudio.dylib, 2): no suitable image found. Did find:
/Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/site-packages.zip/_soundcard_data/portaudio.dylib: stat() failed with errno=20
2.4724 INFO sound is using audioLib: pyo
4.0050 EXP Set sound=C
4.0050 DEBUG pyo sound server started
done
4.0071 EXP Set sound=A
4.0071 EXP Sound set volume 0.800
4.0073 EXP Set sound=800.0
4.0074 EXP Set sound=600.0
4.0077 EXP Sound started
4.8093 EXP Sound started
5.2098 EXP Sound started

```

I am using a Macbook Pro with OS X 10.11.6, if that helps.

---

<div class="post-metadata">

### Author: ![dmoracze](https://avatars.discourse-cdn.com/v4/letter/d/4af34b/32.png) [@dmoracze](https://discourse.psychopy.org/u/dmoracze)
#### Post date: [August 29, 2016, 1:33pm UTC](https://discourse.psychopy.org/t/core-openwindows-in-1-84-0-attributeerror-module-object-has-no-attribute-openwindows/919/6 "2016-08-29T13:33:21Z")

</div>

Bump, any idea on closing the experiment properly?

---

<div class="post-metadata">

### Author: ![jon](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.psychopy.org/jon/32/22_2.png) [@jon](https://discourse.psychopy.org/u/jon)
#### Post date: [August 29, 2016, 5:08pm UTC](https://discourse.psychopy.org/t/core-openwindows-in-1-84-0-attributeerror-module-object-has-no-attribute-openwindows/919/7 "2016-08-29T17:08:04Z")

</div>

Yes, it is the use of pyo to play sounds.

From the error message you’ve got there it’s clear that the request to use pysoundcard is not working because pysoundcard has failed to load. It isn’t managing to load the portaudio library from inside site-packages.zip. I guess I haven’t seen this crop up because I have that manually installed. So _probably_ you could do one of these to get that sound library working:

- install port audio yourself using home-brew  
or
- extract the files from site-packages.zip (you could use the finder menu item “Go…” to find /Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/ and extract the zip file from there)

In the longer run I should be able to repackage this with the portaudio lib outside that zip file and it should work in future.

---

<div class="post-metadata">

### Author: ![dmoracze](https://avatars.discourse-cdn.com/v4/letter/d/4af34b/32.png) [@dmoracze](https://discourse.psychopy.org/u/dmoracze)
#### Post date: [September 6, 2016, 1:26am UTC](https://discourse.psychopy.org/t/core-openwindows-in-1-84-0-attributeerror-module-object-has-no-attribute-openwindows/919/8 "2016-09-06T01:26:53Z")

</div>

Hi Jon, thanks for the suggestions.

I unzipped site-packages.zip, but this still does not fix the problem.

Here is the output from [soundStimuli.py](http://soundStimuli.py)

```
pyo version 0.8.0 (uses single precision)
Using pyo(with None) for sounds
2016-09-05 21:20:07.114 python[908:71334] 21:20:07.114 WARNING: 140: This application, or a library it uses, is using the deprecated Carbon Component Manager for hosting Audio Units. Support for this will be removed in a future release. Also, this makes the host incompatible with version 3 audio units. Please transition to the API's in AudioComponent.h.
1.8470 WARNING pysoundcard audio lib was requested but not loaded: cannot load library /Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/site-packages.zip/_soundfile_data/libsndfile.dylib: dlopen(/Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/site-packages.zip/_soundfile_data/libsndfile.dylib, 2): no suitable image found. Did find:
/Applications/PsychoPy2.app/Contents/Resources/lib/python2.7/site-packages.zip/_soundfile_data/libsndfile.dylib: stat() failed with errno=20
2.3801 INFO sound is using audioLib: pyo
3.8863 EXP Set sound=C
3.8863 DEBUG pyo sound server started
done
3.8894 EXP Set sound=A
3.8894 EXP Sound set volume 0.800
3.8897 EXP Set sound=800.0
3.8898 EXP Set sound=600.0
3.8901 EXP Sound started
4.6916 EXP Sound started
5.0924 EXP Sound started

```

There is no /site-packages/\_soundfile\_data directory, should there be?  
I also tried to install port audio on my systems using brew in my terminal, but the problem persists.

---

<div class="post-metadata">

### Author: ![jon](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.psychopy.org/jon/32/22_2.png) [@jon](https://discourse.psychopy.org/u/jon)
#### Post date: [September 6, 2016, 12:15pm UTC](https://discourse.psychopy.org/t/core-openwindows-in-1-84-0-attributeerror-module-object-has-no-attribute-openwindows/919/9 "2016-09-06T12:15:38Z")

</div>

OK, looks like the loading of pysoundcard wasn’t finding one of the libs. That should be fixed in new version just released:

> **[psychopy/psychopy](https://github.com/psychopy/psychopy/releases/tag/1.84.1)**
>
> For running psychology and neuroscience experiments - psychopy/psychopy

---

<div class="post-metadata">

### Author: ![dmoracze](https://avatars.discourse-cdn.com/v4/letter/d/4af34b/32.png) [@dmoracze](https://discourse.psychopy.org/u/dmoracze)
#### Post date: [September 6, 2016, 5:19pm UTC](https://discourse.psychopy.org/t/core-openwindows-in-1-84-0-attributeerror-module-object-has-no-attribute-openwindows/919/10 "2016-09-06T17:19:11Z")

</div>

Thank you, Jon! This fixed the library problem. However, this line of investigation brought me to another, tangential problem. I am marking this issue as solved, but I want to create a new thread with a more informative title with respect to the new problem.
