User Tools

Site Tools


biac:experimentalcontrol:biac6hardware

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
biac:experimentalcontrol:biac6hardware [2022/02/23 18:44]
cmp12
biac:experimentalcontrol:biac6hardware [2024/04/16 14:21] (current)
cmp12 [BIAC6 Screen Configuration]
Line 17: Line 17:
     * USB - Tethyx     * USB - Tethyx
     * after use switch back to button box with above settings     * after use switch back to button box with above settings
 +  * Current Design Trackball 2 ( shared between 2 scanners )
 +    * autoconfigure
 +    * HID HHSC-TRK-2 ( track 2 and comp seem to do the exact same thing )
 +    * roll ball around to calibrate
 +    * after use switch back to button box with above settings
 + 
 +
  
   * E-Prime SR box (no button box, just scanner trigger) (COM1: 19200 baud, 8 bits, no parity)   * E-Prime SR box (no button box, just scanner trigger) (COM1: 19200 baud, 8 bits, no parity)
Line 83: Line 90:
 |  DA6 |  D14| |  DA6 |  D14|
 |  DA7 |  D15| |  DA7 |  D15|
 +
 +
 +===== BIAC6 Screen Configuration =====
 +
 +  * BIAC6 is equipped with NordicNeuroLab ( NNL ) [[https://www.nordicneurolab.com/product/visualsystem-hd|VisualSystemHD]] goggles for stereoscopic display
 +  * The individual eyes of the NNL headset are hard-wired to the graphics card on the display computer and not routed through the switcher
 +  * because of this setup, the stimulus computer appears to have 4 monitors
 +  * monitor 1,2 are connected to the switcher and can be switched around to all the different displays at the scanner suite
 +  * 3,4 are directly connected to the googles and can only output there
 +  * when configuring your tasks to display, please take account of which monitor you are sending the outputs since 3,4 will always be the googles only. 
 +
 +  * the best way to control the monitor configuration on BIAC6 is with [[https://www.displayfusion.com/HelpGuide/WorkingWithDisplayFusionMonitorProfiles/|DisplayFusion]] 
 +  * there are several pre-configured profiles automatically loaded on BIAC6 to choose from:
 +    * 1024x768, 1280x1024, 1920x1080 cloned displays ( on monitors 1,2 )
 +    * 1920x1080 extended desktop ( across 1,2 )
 +    * 1920x1080 cloned displays with the NNL goggles as individual display 3,4
 +    * 1920x1080 extended ( across 1,2 ) with the NNL goggles as individual displays 3,4 
 +    * more default profiles can be added, but you can also configure and save your own profiles
 +
 +{{ :biac:experimentalcontrol:df2.png?600 |}}
 +
 +If you do not use the NNL goggles, then it's probably in your interest to leave them disabled.
 +
 +The DisplayFusion monitor configuration is accessible from the Desktop icon, from the Start Menu, by Right clicking on the desktop, from the system panel at the bottom Right.
 +
 +{{ :biac:experimentalcontrol:df4.png?400 |}}
 +
 +A couple of the 1920x1080 profiles are accessible directly from most of the system's Apps by clicking the profile on the upper right hand corner.
 +
 +{{ :biac:experimentalcontrol:df3.png?600 |}}
 +
 +The "Reset Video" desktop icon will now just revert to 1920x1080 cloned displays, with the goggles disabled.
 +
 +Because of the variable nature of the display configuration, its best to login and select your preferred display profile, to always start the experiment session with a known configuration.
 +
 +A **CLONED** configuration with goggles off, will result in a single monitor to programs like PsychToolbox and PsychoPy.
 +
 +PTB:
 +<code matlab>
 +
 +>> run SetupPsychtoolbox.m
 +>> screens = Screen('Screens')
 +ans =
 +     0
 +     
 +  % there is only a single screen
 +
 +  % you can use the first index, or min / max functions because there is only 1 option     
 +>> screens(1)
 +ans =
 +     0
 +>> min(screens)
 +ans =
 +     0
 +>> max(screens)
 +ans =
 +     0
 +
 +
 +
 +</code>
 +
 +PsychoPy:
 +<code python>
 +
 +import pyglet
 +
 +display = pyglet.canvas.get_display()
 +screens = display.get_screens()
 +screens
 +>>[Win32Screen(x=0, y=0, width=1920, height=1080)]
 +
 + # screens[0] is the one and only screen
 +
 +</code>
 +
 +
 +Any **EXTENDED** configuration, or configuration with goggles will result in multiple monitors being available.
 +  
 +PTB:
 +<code matlab>
 +
 +>> run SetupPsychtoolbox.m
 +>> screens = Screen('Screens')
 +ans =
 +             2
 +          
 +   %in this case
 +   % 0 - the full extended display across the desktop
 +   % 1 - screen #1 only
 +   % 2 - screen #2 only
 +   
 +   % because matlab is indexed a 1, you need to select the correct index to get to screen #1
 +>> screens(2)
 +ans =
 +     1
 +     
 +     
 +</code>
 +
 +PsychoPy:
 +<code python>
 +
 +import pyglet
 +
 +display = pyglet.canvas.get_display()
 +screens = display.get_screens()
 +screens
 +>>[Win32Screen(x=0, y=0, width=1920, height=1080), Win32Screen(x=1920, y=0, width=1920, height=1080)]
 +
 + # screens[0] is the first screen
 + # screens[1] is the second screen because python is zero indexed
 +
 +</code>
 +
 +You need to code your tasks to send to the specific screen you want your subjects to see.  If they are viewing the projector, then they can only single a screen at a time.  The default is to send the first display to the projector. 
 +  * screen 0 in matlab **only** if its a **cloned** display, or screen 1 if it is extended/goggles
 +  * screen 0 in PTB
 +
 +
 +One of the best ways to account for a variable to setup in matlab would be to code the task to work with either.
 +
 +Matlab:
 +<code matlab>
 +screens=Screen('Screens');
 +
 +%if there is only 1 entry
 +if (length(screens) == 1)
 +    %use it
 +    S.screenNumber = min(screens);
 +%but if there are more, use #1 explicitely
 +elseif (length(screens) > 1)
 +    S.screenNumber = screens(2);
 +    %same as S.screenNumber = 1;
 +end 
 +
 +[S.Window, S.screenRect]=Screen('OpenWindow',S.screenNumber, S.screenColor,[],[],2,[],[]);
 +</code>
 +
  
 [[biac:experimentalcontrol:biac5hardware|BIAC5 Scanner]]\\ [[biac:experimentalcontrol:biac5hardware|BIAC5 Scanner]]\\
 [[biac:experimentalcontrol:inventory|Back]] [[biac:experimentalcontrol:inventory|Back]]
  
biac/experimentalcontrol/biac6hardware.1645641871.txt.gz · Last modified: 2022/02/23 18:44 by cmp12