# Record responses while the next stimulus is already being presented

**URL:** <https://discourse.psychopy.org/t/record-responses-while-the-next-stimulus-is-already-being-presented/23266>\
**Category:** Coding\
**Tags:** timing\
**Created:** [May 29, 2021, 2:27pm UTC](https://discourse.psychopy.org/t/record-responses-while-the-next-stimulus-is-already-being-presented/23266 "2021-05-29T14:27:56Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![nima](https://avatars.discourse-cdn.com/v4/letter/n/9dc877/32.png) [@nima](https://discourse.psychopy.org/u/nima)\
**Post date:** [May 29, 2021, 2:27pm UTC](https://discourse.psychopy.org/t/record-responses-while-the-next-stimulus-is-already-being-presented/23266/1 "2021-05-29T14:27:56Z")

</div>

Dear Psychopy Community,

I have two questions for you that build on each other

**(1)**  **Description** : I would like to present a series of six green circles in randomly placed locations, one after the other. Only one of these circles is filled with black. Each circle is presented for 0.5 seconds, but I want to give my subjects 1.5 seconds to react to the black filled circle. However, after 0.5 seconds the next circle should already appear.

**Problem:** With my code the attention\_test\_wait variable (1.5) is added to the presentation time of the black filled circle, so that it is presented for 2 seconds.

**(2)**  **Description** : During the 1.5 second period, I want my subjects to confirm that they have seen the black circle using ‘y’.

**Problem:** With the getKeys() function I only get an empty list back. The waitKeys() function works, but it is not appropriate for my task.

**Code:**

```
def run_practice_trials(window_instance,
                        attention_key='y',
                        attention_test_wait=1.5,
                        fixation_dur=0.5,
                        sequence_length=6,
                        pass_threshold=50):

    correct_answers = 0
    
    if correct_answers <= pass_threshold:

        attention_markers = create_attention_test(sequence_length)

        for dot in attention_markers:
            if dot == 1:
                gaze_color = 'black'
            else:
                gaze_color = 'green'
                
            gaze_dot = visual.Circle(
                    window_instance, 
                    radius=0.2, 
                    fillColor=gaze_color, 
                    fillColorSpace='rgb',
                    lineColor='green', 
                    lineColorSpace='rgb',
                    units='deg', 
                    pos=[np.random.normal(0, 3), np.random.normal(0, 3)])

            gaze_dot.draw()
            window_instance.flip()
            
            if dot == 1:
                attention_timer = core.Clock()
                
                while attention_timer.getTime() <= attention_test_wait:
                    attention_response= event.getKeys(keyList=attention_key)
                    
                    if attention_response == attention_key:
                        print('Noice!')
                            
                attention_timer.reset()
            else:
                core.wait(fixation_dur)
            
    return None

```

**Note:**

- attention\_markers is a list of zeros and a one
