MWorks with ViewPixx monitors

Yasmine El-Shamayleh's Avatar

Yasmine El-Shamayleh

20 Nov, 2019 03:24 PM

Hi Christopher -

I'm a new faculty member at Columbia University - and a close colleague of Najib Majaj (I did my PhD work with Tony Movshon at NYU).

I'm setting up my lab - and very interested in using MWorks (in combination with Blackrock, Eyelink and a ViewPixx3D monitor).

I know that the Movshon lab already uses MWorks with Blackrock and Eyelink - but I don't know if anyone is using it to display images on a ViewPixx monitor.

Any reason this is not possible? Thought I should ask before buying very expensive monitors!

Many thanks,
Yasmine

  1. Support Staff 1 Posted by Christopher Sta... on 20 Nov, 2019 03:51 PM

    Christopher Stawarz's Avatar

    Hi Yasmine,

    While I have no experience with VPixx monitors myself, some other folks have reported using them with MWorks, so I guess it's possible. As long as you can connect it to a Mac via DVI/HDMI/DisplayPort/etc., there shouldn't be any issue.

    However, MWorks won't have access to any of the VIEWPixx's integrated I/O functions, so any signals you want to capture from the VIEWPixx will need to be conveyed to an I/O device that MWorks does support. It sounds like it may be possible to implement direct communication between MWorks and the VIEWPixx (the data sheet mentions a "low-level ANSI C API", which sounds promising), but I'm not aware of any MWorks users who have done this. If it is possible, I could create an MWorks plugin that provides this integration, but I would need access to the actual VIEWPixx device to do so.

    I hope that helps. If you have any other MWorks-related questions, please don't hesitate to ask!

    Cheers,
    Chris Stawarz

  2. 2 Posted by Yasmine El-Sham... on 20 Nov, 2019 04:05 PM

    Yasmine El-Shamayleh's Avatar

    Thanks for this quick response!

    Looking forward to working with you on all this!

    Cheers,
    Yasmine

  3. Christopher Stawarz closed this discussion on 22 Nov, 2019 04:02 PM.

  4. Christopher Stawarz re-opened this discussion on 10 Mar, 2020 03:48 PM

  5. Support Staff 3 Posted by Christopher Sta... on 10 Mar, 2020 03:48 PM

    Christopher Stawarz's Avatar

    Hi Yasmine,

    Two quick questions regarding the MWorks/ViewPixx integration:

    1. Are you planning on using a RESPONSEPixx box with your VIEWPixx?
    2. Do you need support for analog input and/or output?

    Thanks,
    Chris

  6. 4 Posted by Yasmine El-Sham... on 10 Mar, 2020 05:07 PM

    Yasmine El-Shamayleh's Avatar

    Hi Chris -

    Hope you're well - and here are two quick answers to your questions:

    Are you planning on using a RESPONSEPixx box with your VIEWPixx?

    NO

    Do you need support for analog input and/or output?

    I would like to get the values for pixel refresh out of the monitor (so that it can be used to sync data) - but I believe that's all digital not analog, correct? Any idea what people use analog input/output for?

    Thank you!
    Yasmine

  7. Support Staff 5 Posted by Christopher Sta... on 10 Mar, 2020 05:54 PM

    Christopher Stawarz's Avatar

    Hi Yasmine,

    Thanks for the quick answers!

    I would like to get the values for pixel refresh out of the monitor (so that it can be used to sync data) - but I believe that's all digital not analog, correct?

    Correct. You can output either the VSYNC signal (on digital output pin 23) or the RGB value of the upper left pixel on the screen (presumably using all 24 digital output bits). Either way, it's all digital.

    Any idea what people use analog input/output for?

    They can be useful for general purpose I/O tasks. For example, some folks in the Jazayeri lab use analog levers as an input device (like a pressure/force sensor, I think), and they record that signal as an analog input. Another lab uses analog output to drive a laser.

    Chris

  8. Support Staff 6 Posted by Christopher Sta... on 09 Apr, 2020 01:38 PM

    Christopher Stawarz's Avatar

    Hi Yasmine,

    Support for DATAPixx and VIEWPixx devices is now in the MWorks nightly build. Digital and analog input and output are supported, as well as pixel and VSYNC output. Also, digital output via the input port is supported, so you can use digital outputs even if you've enabled pixel output mode.

    Here's an example of how you'd configure a VIEWPixx device with pixel mode and a single digital output line (e.g. to control a juice pump):

    var output = false
    
    datapixx viewpixx (
        update_interval = 3ms
        enable_dout_pixel_mode = true
        ) {
        datapixx_bit_output (
            bit_number = 7
            value = output
            use_input_port = true
            )
    }
    

    I can provide more specific examples, if that would be helpful.

    I imagine that, given the current circumstances, it may be a while before you're able to try the new interface, which is fine. I'll just note that it would be very helpful if I could hold on to the device you loaned me until you've had a chance to test things thoroughly. That way, if/when issues come up, I'll be able to quickly debug and fix them.

    Cheers,
    Chris

  9. 7 Posted by Yasmine El-Sham... on 09 Apr, 2020 04:52 PM

    Yasmine El-Shamayleh's Avatar

    Hi Chris -

    I hope you and all your colleagues at MIT are healthy and safe - and
    thanks for the follow-up! I've been meaning to email you but you beat me to
    it!

    This all sounds good - and yes, as expected I won't be able to
    trouble-shoot much in the next few weeks so let's hold off till I can. And
    yes - you can hold on to the device until we know that everything is up and
    running smoothly!

    Take care!
    Yasmine

    PS - what's the status of MWorks doing closed-loop type experiments? For
    example, evolving visual stimuli on the fly based on a neuron's
    response strength?

  10. Support Staff 8 Posted by Christopher Sta... on 10 Apr, 2020 01:59 PM

    Christopher Stawarz's Avatar

    Hi Yasmine,

    what's the status of MWorks doing closed-loop type experiments? For example, evolving visual stimuli on the fly based on a neuron's response strength?

    The only issue is getting the neural data in to MWorks. If/how that's possible depends on the recording system you're using and its ability to send out the relevant information in a format that MWorks can use.

    What system will you be using to record neural data?

    Chris

  11. 9 Posted by Yasmine El-Sham... on 12 Apr, 2020 04:37 PM

    Yasmine El-Shamayleh's Avatar

    Hi Chris -

    Thank you for elaborating on this! I plan to use MWorks with Blackrock and
    Eyelink. I was under the impression from talking to my close colleague
    Najib Majaj that Blackrock plays well with MWorks which is why I went with
    them for neural recordings.

    For my work, I think it would be really cool to evolve 2D shapes (along the
    domain of contour curvature). Definitely doesn't have to be the first
    experiment we do - but will come in handy in the near term.

    In terms of experimental priorities, however, it would be incredibly
    important for me to be able to have a paradigm that would allow me to map
    visual receptive fields manually in real time, as we discussed briefly
    before. For this, I'd like to be able to use mouse and keyboard commands to
    change the size, orientation, position and type of stimulus on the fly (ie
    to draw from a battery of stimuli in memory and to manipulate
    their displayed properties).

    Could you please give me a sense of how feasible that would be? I know my
    PhD mentor Tony Movshon has also expressed interest in this functionality -
    so it could be a win for him too.

    Cheers - and stay safe!
    Yasmine

  12. Support Staff 10 Posted by Christopher Sta... on 15 Apr, 2020 01:43 PM

    Christopher Stawarz's Avatar

    Hi Yasmine,

    I was under the impression from talking to my close colleague Najib Majaj that Blackrock plays well with MWorks which is why I went with them for neural recordings.

    As far as I know, Najib uses only one-way communication between MWorks and the Blackrock system. Specifically, his experiment uses an intermediate I/O device (e.g. a NIDAQ or Firmata device) to send synchronization words from MWorks to Blackrock.

    What you're asking about is two-way communication, where the Blackrock system analyzes the neural data and communicates the results back to MWorks. While that may be possible (I'm not familiar with Blackrock's software), I'm not aware of any labs that do this currently.

    In terms of experimental priorities, however, it would be incredibly important for me to be able to have a paradigm that would allow me to map visual receptive fields manually in real time, as we discussed briefly before. For this, I'd like to be able to use mouse and keyboard commands to change the size, orientation, position and type of stimulus on the fly (ie to draw from a battery of stimuli in memory and to manipulate their displayed properties).

    Could you please give me a sense of how feasible that would be?

    As I've noted previously, MWorks has built-in interfaces for both keyboard and mouse input, so this should be entirely feasible. If you provide me with the specifics of how things should work, I can help you implement it in an MWorks experiment.

    Cheers - and stay safe!

    You, too!

    Chris

Reply to this discussion

Internal reply

Formatting help / Preview (switch to plain text) No formatting (switch to Markdown)

Attaching KB article:

»

Attached Files

You can attach files up to 10MB

If you don't have an account yet, we need to confirm you're human and not a machine trying to post spam.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac