Subject: Re: recommendations for a response box with a knob From: Owen Brimijoin <owen@xxxxxxxx> Date: Wed, 26 Oct 2011 10:05:39 +0100 List-Archive:<http://lists.mcgill.ca/scripts/wa.exe?LIST=AUDITORY>Hi Brian, If you want ultra cheap, then you can use the scroll wheel on a USB mouse. Matlab can capture scrolling events and update a variable if you include a WindowScrollWheelFcn function in your code: %-------------------------------- function dial_plotter_example global dial_value dial_value = 0; h = figure; set(h,'WindowScrollWheelFcn',@xxxxxxxx) while ishandle(h), scatter(dial_value,0,'filled'); axis([-10 10 -10 10]); pause(0.001) end function figScroll(src,evnt) global dial_value dial_value = dial_value + evnt.VerticalScrollCount; %-------------------------------- We went as far as to disassemble the mouse and stick it in a nice project box. We rewired the 3 mouse buttons to buttons on the top, mounted the scroll wheel encoder vertically underneath the lid, and attached a big appealing dial on top. Presto! a 3-button box with a dial and a remarkably low latency response - and how much does a USB mouse cost? all the best, -Owen. ps. this will not work in older versions of Matlab. I don't remember in which version WindowScrollWheelFcn was added. It doesn't work in r14. -- _________________________________ W. Owen Brimijoin MRC Institute of Hearing Research Scottish Section Glasgow Royal Infirmary Glasgow, United Kingdom owen@xxxxxxxx _________________________________