Tim, PsychoPy includes iolab's implementation of an hid driver in
python. You might be able to work out a low-level way to get events
from the joystick.
You'll have to work out what device yours is (keyboards and mice
will be showing up here too) so try connecting you joystick and
checking the existing devices before and after.
Then it looks like these devices have the option to set a function
for a callback when new data appear on the device, so create a
function to use that. I have no idea what the data back will look
like though! The below is untested but should get you going.
Jon
from ioLabs import hid
from psychopy import visual, event
win = visual.Window([800,800])
msg = visual.TextStim(win, msg='nothing yet')
msg.setAutoDraw(True)
def gotNewData(newData):
msg.setText(repr(newData))
#you need to work out what your device is
devs = hid.find_hid_devices()
for this Dev in devs:
print thisDev.vendor, thisDev.product
if thisDev.vendor == joystickVendorID:
joy = thisDev
#now set calllback
joy.set_interrupt_report_callback(gotNewData)
while len(event.getKeys())==0: #press a key to quit
win.flip()