Sign up Calendar Latest Topics
 
 
 


Reply
  Author   Comment   Page 10 of 10     «   Prev   7   8   9   10
Jaewon

Administrator
Registered:
Posts: 727
Reply with quote  #226 
* Changes in NIMH MonkeyLogic 2 (Jul 20, 2018)

 + The z-order of the subject screen is adjusted so that the subject screen can
   cover the whole screen when NIMH ML is run with only one monitor.

 - An error related to resizing gray images is fixed. (Thanks to Peter Schade)
0
Jaewon

Administrator
Registered:
Posts: 727
Reply with quote  #227 
Hi pschade,

NIMH ML is developed for two-monitor systems. The extra window that you see when you run NIMH ML with one monitor is for the purpose of testing. However, I guess, by making the subject screen cover the control screen, it may be possible to run NIMH ML as you want. I had to adjust the z-order of the subject screen for this, so please download the latest NIMH ML from the above links before you try the following tip.

On the NIMH ML main menu, change the [Fallback screen rect.] option, according to the Window coordinates of your monitor screen. The format of the field is [LEFT TOP RIGHT BOTTOM]. Then check on the [Forced use of fallback screen] option.

For the problem in loading gray images, I didn't think the possibility of someone resizing gray images. I changed something in the new package. Thanks for reporting it and please let me know if it works.
0
pschade

Junior Member
Registered:
Posts: 6
Reply with quote  #228 
Thanks Jaewon for adding those functions to ML. 

I am having an issue aligning signals that are on different clocks. Is there a function available that allows me send send analog/digital pulses similar to that of goodmonkey?
0
Jaewon

Administrator
Registered:
Posts: 727
Reply with quote  #229 
You can declare TTL objects in your conditions file and toggle them on/off with toggleobject(). Please refer to the manuals in the doc directory of your ML installation path.

ftp://helix.nih.gov/lsn/monkeylogic/ML2_doc/taskobjects.html
0
Jaewon

Administrator
Registered:
Posts: 727
Reply with quote  #230 
* Changes in NIMH MonkeyLogic 2 (Jul 27, 2018)

 - When the ITI recording option is chosen, the AbsoluteTrialStartTime is
   supposed to be the beginning of the ITI. However, a change that was made in
   Feb 16, 2018 reverted it to the beginning of the trial, while the analog
   data still included the samples acquired during the ITI. This made it
   difficult to find data positions corresponding to event times (you need to
   concatenate the analog data of all trials and cut it again based on the
   AbsoluteTrialStartTime). This error is fixed. (Thanks to Danial Hahnke)

 + Now TimingFileByCond is stored in the data file.

    [data,MLConfig,TrialRecord] = mlread;
    TrialRecord.TaskInfo.TimingFileByCond

0
Jaewon

Administrator
Registered:
Posts: 727
Reply with quote  #231 
* Changes in NIMH MonkeyLogic 2 (Aug 10, 2018)

 + A new example task, preferential viewing, and new adapters are added.

* Changes in NIMH MonkeyLogic 2 (Aug 2, 2018)

 - A problem with USB joystick buttons is fixed.

 - The initial state of showcursor() is fixed correctly.

0
aoa

Junior Member
Registered:
Posts: 1
Reply with quote  #232 
Quote:
Originally Posted by Jaewon
It is because the structure of MLConfig is changed in the new version, but the ones saved in the config file are not. The warning will disappear once you save the configuration again in the new version.


Hi, I had a similar problem. I saved the configuration again in the new version, but the warning is still displayed.   Could you suggest any other solution?
0
Jaewon

Administrator
Registered:
Posts: 727
Reply with quote  #233 
The warning is just a warning that doesn't affect anything. One config file can contain many subject profiles, but you might not overwrite all of them. The warning is suppressed in the latest ML version, so try the new package.
0
Jaewon

Administrator
Registered:
Posts: 727
Reply with quote  #234 
* Changes in NIMH MonkeyLogic 2 (Aug 21, 2018)

 + A new example task, grating receptive field mapper, is added.
   (See the task\runtime v2\15 grating receptive field mapper directory.)

0
kaciedougherty

Junior Member
Registered:
Posts: 12
Reply with quote  #235 
Thank you so much, Jaewon! The new rf mapper is super nice! We will start using it in recordings right away.  

Thanks again, 
Kacie 
0
Jaewon

Administrator
Registered:
Posts: 727
Reply with quote  #236 
* Changes in NIMH MonkeyLogic 2 (Sep 10, 2018)

 - The 'Fallback screen rect.' menu now accepts negative numbers.

 - Now there are two options how to handle the skipped frames.

    TrialRecord.DiscardSkippedFrames = true;  % default value

   When TrialRecord.DiscardSkippedFrames is true, ML will discard the frames
   of which presentation times are passed by and the next frame number will be
   recalculated from the current trial time. In this way, movies can keep up
   with the elapse of the time, regardless of the occurrence of skipped frames,
   but you may not be able to track which frame is presented at what time.

   If TrialRecord.DiscardSkippedFrames is false, every single frame of a movie
   is presented in due order, even if ML misses the right presentation timing.
   You must set TrialRecord.DiscardSkippedFrames false, if you need to know
   which frame is presented when.

 - The SkippedFrameTimeInfo is modified to have more intuitive meanings.

    SkippedFrameTimeInfo(:,1) - trialtime that the frame was supposed to be presented
    SkippedFrameTimeInfo(:,2) - trialtime that the frame was actually presented
    SkippedFrameTimeInfo(:,3) - The number of frames skipped
    SkippedFrameTimeInfo(:,4) - Frame length (msec)
    SkippedFrameTimeInfo(:,5:end) - Additional time information
0
Jaewon

Administrator
Registered:
Posts: 727
Reply with quote  #237 
* Changes in NIMH MonkeyLogic 2 (Sep 14, 2018)

 - The editable window is scrollable now, when there are many (>20) variables.

 - The WaitThenHold and FreeThenHold adapters are modified to be friendly with
   multiple tracking sources aggregated with AndAdapter or OrAdapter.
0
Jaewon

Administrator
Registered:
Posts: 727
Reply with quote  #238 
* Changes in NIMH MonkeyLogic 2 (Sep 28, 2018)

 - The new adapters, SineGrating & ImageChanger, are added.

 - Minor fixes
0
Jaewon

Administrator
Registered:
Posts: 727
Reply with quote  #239 
* Changes in NIMH MonkeyLogic 2 (Oct 4, 2018)

 + New adapters: TriggerTimer

 + The timing script function manual is updated for all recently added adapters.
   See the doc directory.

    ftp://helix.nih.gov/lsn/monkeylogic/ML2_doc/runtimefunctions.html


* Changes in NIMH MonkeyLogic 2 (Oct 1, 2018)

 + New adapters: Concurrent, ImageGraphic, MovieGraphic, AudioSound, Stimulator,
   TTLOutput

 + Presentation of stimuli created by adapters can be triggered later by
  another adapter.

 + Graphic adapters can present multiple objects from one adapter.

 - A problem related with the initialization of AndAdapter and OrAdapter is
   fixed. (Thanks to yzeyang from the ML forum)

0
Jaewon

Administrator
Registered:
Posts: 727
Reply with quote  #240 
* Changes in NIMH MonkeyLogic 2 (Oct 15, 2018)

 + The inheritance structure of adapters is revised so that the adapters can be
   grouped easily according to their types.

 + The timing script function manual is revised for new contents and error
   corrections.

 + The parallel port is enabled in the DAQ toolbox.  If you have a parallel
   port, you may be asked to install the driver.  The installer is in the
   daqtoolbox directory.

ftp://helix.nih.gov/lsn/monkeylogic/NIMH_MonkeyLogic_2_(Oct-15-2018).mlappinstall

ftp://helix.nih.gov/lsn/monkeylogic/NIMH_MonkeyLogic_2_(Oct-15-2018).zip

 
Attached Files
mlappi NIMH_MonkeyLogic_2_(Oct-15-2018).mlappinstall (30.97 MB, 6 views)
zip NIMH_MonkeyLogic_2_(Oct-15-2018).zip (29.96 MB, 5 views)

0
aboharbf

Member
Registered:
Posts: 68
Reply with quote  #241 
Hey Jaewon,

I'm having some issues with mlconcatenate. Getting this error:

"Error using vertcat

Number of fields in structure arrays being concatenated do not match. Concatenation of structure arrays requires that these arrays have
the same set of fields.

Error in mlconcatenate (line 47)
val.(m{1}) = vertcat(data.(m{1}));"

File is a bhv2.

Also, for some reason, data.UserVars aren't saved with failed trials. Is this intended? 

0
Edward

Administrator
Registered:
Posts: 251
Reply with quote  #242 
Hello aboharbf,

It's an error produced from a Matlab built-in function. If you can send me the data file and the code that produced this error privately I'll be happy to take a look at it.
0
Edward

Administrator
Registered:
Posts: 251
Reply with quote  #243 
Hey Jaewon,

I took a look at the data aboharbf  sent me and we had some private discussions. His bhv2 data file had trouble with mlconcatenate because for some reason, the 'UserVars' field of failed trial only have the 'SkippedFrameTimeInfo' field, whereas the 'UserVars' field in other trails will have all seven fields: 'clipStartTime', 'clipDuration', 'rewardTimeMean', 'rewardSD', 'gridHole', 'recordingDepth' and 'SkippedFrameTimeInfo'. Since the 'UserVars' field contain a different set of fields, vertcat does not like it and gives the error message. I sent aboharbf a modified mlconcatenate.m to temporarily help with his problem, but this issue probably needs to be addressed in a future update.
0
Jaewon

Administrator
Registered:
Posts: 727
Reply with quote  #244 
My guess is that aboharbf's script skips the bhv_variable functions when trials fail, so he has to fix his script.

It is MATLAB's limitation not being able to combine structs with different fields. So, if he doesn't want to fix his code, he can read data trial by trial rather than use mlread. One way to do it is to read with mlbhv2.

-----
bhv2 = mlbhv2(filename);
trial1 = bhv2.read('Trial1');
...
trial100 = bhv2.read('Trial100');
...
bhv2.close();
-----

Or he can convert *.bhv2 to *.mat with the bhv2mat script and read the mat files.
0
Edward

Administrator
Registered:
Posts: 251
Reply with quote  #245 
Thanks for the insight Jaewon!
0
aboharbf

Member
Registered:
Posts: 68
Reply with quote  #246 
Indeed, Thanks Jaewon. I didn't realize the bhv_variables function had to be in a specific spot in the code. I'd imagined that it was read once and used everytime. For the trials I've already run and would like to analyze this way, I'll have to move them to .mat, fill in the error trials, save it, then run mlconcatenate.

Thanks for the help you two.
0
Jaewon

Administrator
Registered:
Posts: 727
Reply with quote  #247 
* Changes in NIMH MonkeyLogic 2 (Nov 30, 2018)

 + The vertical direction of the USB joystick is inverted so that the cursor
   moves up and down to the direction of the handle without calibration.

 + USB joysticks work in the I/O test now. Also their device names are
   displayed correctly on the menu.

 + The reading speed of BHV2 is significantly improved (for new files).

 + All modal dialogs can be closed with the ESC key now.

ftp://helix.nih.gov/lsn/monkeylogic/NIMH_MonkeyLogic_2_(Nov-30-2018).mlappinstall

ftp://helix.nih.gov/lsn/monkeylogic/NIMH_MonkeyLogic_2_(Nov-30-2018).zip

-----

Dec 6, 2018 - An error in the non-DAQ device settings dialog is fixed.

 
Attached Files
mlappi NIMH_MonkeyLogic_2_(Nov-30-2018).mlappinstall (31.03 MB, 1 views)
zip NIMH_MonkeyLogic_2_(Nov-30-2018).zip (30.01 MB, 4 views)

0
Previous Topic | Next Topic
Print
Reply

Quick Navigation:

Easily create a Forum Website with Website Toolbox.