Holcombe:VerifyTiming

From OpenWetWare
Revision as of 18:48, 1 January 2009 by Alex O. Holcombe (talk | contribs)
Jump to navigationJump to search

Recent members

Alex Holcombe
• Ryo Nakayama



Technical

Skills Checklist
Python Programming
Psychopy/VisionEgg Installation Notes
R analysis,plot,stats
Statistics
Buttonbox
Buttonbox with photocell
Programming Cheat Sheets


Visual

To create custom resolutions and refresh rate modes for the screen if not available in System Preferences->Displays, use DisplayConfigX

Ideally, your program synchronizes drawing of the stimulus with the refresh of the CRT. To do this, you have to use particular techniques for drawing. There is more information about this, and also data on timing of sounds and the button box when properly done, at the Holcombe:Programming page. Once you think you've done it properly, you'll need to verify that stim drawing is synchronized with the CRT.

  • Use the tachometer
    • It lives in a box on the shelf of the lab
  • Use an oscilloscope
  • Visually verify that no screen refreshes are missed
    • e.g. my screenRefreshTest.py program exchanges the location of a black and white circle, one off screen and one on screen, every frame. Viewing the display, if any frames are missed, screen flicker should visibly stutter. Fortunately even at 160 Hz 800 by 600, frames are never missed until I try to draw about 10 circles every frame

Precautions for consistent timing

  • Presence of USB external hard drive for TimeMachine takes about 3 ms every 10-20 trials
  • Connection of second screen?

Sound

Here Media:AudioAndUSBnotesWithPython.oo3 is the file with all my notes on different ways to play a sound in Python and the associated latencies and standard deviations of the latencies--Alex O. Holcombe 05:15, 25 June 2008 (UTC)