Inconsistent/missing logging of last trial in loop, builder vs. pavlovia

URL of experiment:
demo experiment

Description of the problem:
I recently noticed that the csv output from an experiment I’ve been running does not include the final trial of some trial loops (last row is missing), even though all trials are in fact displayed.

I recreated this problem with a new experiment that just shows 11 pictures and quits. In builder the csv output has all 11 rows. In Pavlovia, only 10 rows are in the csv, although the script does display all images, so it’s just a logging issue from what I can tell.

I added in a key_resp to the trials, resynced, and now all 11 trial rows appear both locally and in the online output. Then I deleted the key_resp, resynced, and now it’s back to missing the last row from the online csv.

Any ideas about what’s going on? Thanks!

Local data, all rows

Pavlovia data missing last row/trial

Pavlovia data, all rows with key_press

I am having the exact same issue: in some of the blocks (sets of 3 images), the stimuli are displayed fully on both Pavlovia/Psychopy, but the .csv file only shows 2 out of the 3 expected rows, dropping the last row. The .log file shows that three images were presented, so I agree that the issue may be with logging.
Any idea on how to fix this? Thank you!

Hi, unfortunately I never did figure this out and just relied on the fact that I knew which trials was not being logged. Interesting that you’re having the problem too–I’m surprised it’s not more common since it was easy to reproduce in my test experiment… would be nice to find a resolution.

1 Like

I think I may have fixed it, even if I still don’t know why it happened - I added a mouse response in my routine that lasts less than the picture and for which any clicks do not automatically end the routine. On the tests I’ve done so far all outputs were logged fully, but then again for me the problem didn’t always occur - hope it helps though.

For anyone having a similar issue… In my case I had an excel sheet with 100 word stimuli to be presented in random order to participants. No action was required from participants hence the only element in that routine was just text stimuli.

I spotted a problem when analyzing data output (excel form).
When the experiment was run locally (from Psychopy builder) there were no problems… all 100 stimuli were displayed and recorded in the output sheet.
However, when it was run via Pavlovia all 100 items were displayed but 99 items were recorder in the output sheet with the last element being the one that was missing from the sheet.

Solution: in the builder inserted a keyboard element (similar to ‘ade_mh’ solution) below the existing text element. Set the start/end time in such a way that it overlapped with individual stimuli, deleted all content in ‘all allowed keys’ so that it was blank and ticked ‘force end of routine’ box. Saved & updated the online version. Now the output sheet generated by Pavlovia is accurate- all stimuli is showing and every one of them is recorded in the output sheet. The keyboard does not interfere with the stimuli/experiment in any way either.