A response handler element that records subject response by button press on a Cedrus response pad. At default waits for one press of any button, then records response and ends on its own.

Response values generated are button numbers (1–8). Response times are measured by the pad.

You can also use cedrusPress elements to listen for trigger signals received by a pad from an external device like a scanner. To do this set registerTrigger = <cd>true<cd> to register inputs as triggers instead of responses from subject. You can set elements in the same trial to start/end from either responses or triggers (element properties start/end). However, for triggers you can also set later trials to start at fixed times from trigger with zero drift (trial object property start).

If you want to set options for the pad, you can use pb_prefs → "Other" tab. Or to set for only the current experiment, you can make an object of type cedrusPad and set its properties. Typically you don't need to.

Note according to Psychtoolbox documentation, opening a Cedrus pad might be unreliable. If you get an error, it might help to just retry. You can also try reducing the baud rate by setting cedrusPad object property fullBaud = <cd>false<cd>. See http://psychtoolbox.org/docs/CedrusResponseBox.

▸ Object ends on its own?

By default yes, when it records one response. You can change number of responses to wait for in property maxNumResponses. If you set maxNumResponses = <cd>inf<cd>, records responses indefinitely until a condition you set in property end.

If an element can end on its own, you don't need to set end conditions for it in property end (unless you want it to maybe end earlier).

No—runs until a condition you set in property end.

Input properties

Adjustable properties

You can vary or allow the subject to adjust the following input properties of an object of this type in real time when it's running. If you need to make other properties adjustable, you can edit the element type code—see Element Type Programming Manual.





Default: set port name at the Cedrus pad

A string that is name of the serial port the pad is attached to, as accepted by Psychtoolbox IOPort('OpenSerialPort'). From Psychtoolbox documentation: On Windows this could be, e.g. <cds>"COM1"<cds>, <cds>"COM2"<cds>, etc.; on Mac it is a path to a BSD device file, e.g. <cds>"/dev/cu.usbserial-FT3Z95V5"<cds> for a serial-over-USB device with unique ID FT3Z95V5; on Linux e.g. <cds>"/dev/ttyS0"<cds> for the first real serial port, <cds>"/dev/ttyUSB0"<cds> for the first serial-over-USB device, etc.

If you leave this property at default, set port name at the pad itself instead: Make a cedrusPad object using cedrusPadObject, set its property portName, and add it to the experiment using addToExperiment. You could do this if it's more convenient than setting port name in every cedrusPress element. You can also set other options for the pad at the cedrusPad object. This default doesn't work if you have more than one Cedrus pad in the experiment.


Default: listen to all buttons

A row vector of button numbers to listen to (1–8). <cd>[]<cd> = all.

Input properties all visual elements have


Input properties all adjuster elements have


Input properties all objects have


Record properties

PsychBench uses record properties to record information during experiments. You can't set record properties but you can see them in experiment results by listing them input property report.