Please do your part first before asking that kind of question. Take a look at the provided example tasks and manuals.by Jaewon - Questions and Answers
There are so many ways to detect such a behavior. You need to use a little imagination. For example, you can repeat the scene until the subject touches the target.by Jaewon - Questions and Answers
You description is confusing. What is the difference between two separate inputs and the dual screen? Are you talking about duplicating the same screen on two monitors? Then, you should set it up in the Windows Display settings.by Jaewon - Questions and Answers
I am posting your email reply here so that we can continue our discussion here. ------- Thank you very much for your response, but the monitor setup manual page is just about two separate inputs, not the dual screen I am looking for, which is two monkeys can play on two different touch screens at the same time.by Jaewon - Questions and Answers
Have you tried the trick introduced in the monitor setup manual page? https://monkeylogic.nimh.nih.gov/docs_MonitorSetup.html#MoreThanTwoMonitorsby Jaewon - Questions and Answers
No, there isn't. You can try modifying mlpayer though.by Jaewon - Questions and Answers
I do not understand the purpose of your state machine. TDT can store the numbers sent via digital lines and their timestamps. Why do you need to build a state machine? Eventmarkers are not sent at the same time. As I said, all assigned digital lines are used together to represent one number, so there is no way to send more than one number at a time.by Jaewon - Questions and Answers
I think you misunderstood something. It appears that what the screenshot shows is the traces of single digital bits. An eventmarker is a multi-digit number, not a single bit. All assigned digital lines are used at the same time whenever an eventmarker is sent out.by Jaewon - Questions and Answers
You did not provide any information about your monitors and movies. Try a refresh rate of 60 Hz, instead of 120 Hz. The size of your movies (width & height) may be so large that your system cannot process them in time. As for preloading, see the userloop example (2 movie preloading) in the task directory of your NIMH ML installation path. It has nothing to do with skipped frames though.by Jaewon - Questions and Answers
To use different thresholds per target, put them in columnar order, like a n-by-1 or n-by-2 matrix. n is the number of targets. mul = MultiTarget(touch_); mul.Target = [-5 0; 0 0; 5 0]; mul.Threshold = [1; 2; 3]; % a column vector mul.WaitTime = 5000; mul.HoldTime = 500; scene = create_scene(mul); run_scene(scene);by Jaewon - Questions and Answers
Call the setCursorPos method of the mouse tracker before your Likert scale scene starts. https://monkeylogic.nimh.nih.gov/docs_RuntimeFunctions.html#Trackers ... scene = create_scene(con); mouse_.setCursorPos([0 0]); run_scene(scene); ...by Jaewon - Questions and Answers
You should have told me that information first. Then, we could reach this conclusion earlier. The conclusion is that I cannot help you with this issue of yours. NIMH ML receives touch input from Windows via standard APIs. There is nothing that makes NIMH ML any different from other applications. So, you should look for the reason of malfunction in your Windows or hardware, especially when it wby Jaewon - Questions and Answers
What is your touchscreen model? When you touch the monitor outside MonkeyLogic, do you see the mouse cursor under your fingertip?by Jaewon - Questions and Answers
I cannot tell whether it was an appropriate test, since I have not seen the task code. Please try the menu as shown in the following link. When the subject screen is touched, a hand icon will appear on the corresponding position of the control screen. https://monkeylogic.nimh.nih.gov/docs_IOTest.htmlby Jaewon - Questions and Answers
How did you figure out that the touches are not registered?by Jaewon - Questions and Answers
Did you check on the option in the menu? https://monkeylogic.nimh.nih.gov/docs_MainMenu.html#OtherDeviceSettings You also need to choose how many touches you want to track, if the monitor supports multi-touch.by Jaewon - Questions and Answers
It is just a matter of designing/building the pump circuit and writing the code for it. Do not touch reward_function.m or anything. See this for the DAQ setup. https://monkeylogic.nimh.nih.gov/docs_MainMenu.html#DAQSettings Then, call goodmonkey() in your timing script. It will internally call reward_function.m and send out TTL pulses for your reward pumps. https://monkeylogic.nimh.nih.goby Jaewon - Questions and Answers
* Changes in 2.2.48 (Sep 27, 2024) - The AnalogInputMonitor adapter can display signals from the voice recording and the high frequency sampling device as well. - The Stimulator adapter can turn off the output at the end of the scene. - Minor fixesby Jaewon - News
Assigning a TaskObject to a different variable does not create a copy of the TaskObject but another variable that points to the same TaskObject. You should create two TaskObjects of the same movie, one at (0,0) and the other at (5,0), or change the position of TaskObject(3) to (5,0) with reposition_object() before presenting it again.by Jaewon - Questions and Answers
MoreInfo and Scale are the properties of TaskObjects, but CurrentPosition is just a field of MoreInfo, not part of TaskObjects. You are supposed to use rewind_object() to change the playback position of MOV or SND. To manipulate the properties of TaskObjects, use one of the following timing script functions. reposition_object() rescale_object() rotate_object()by Jaewon - Questions and Answers
Why did you fail to set the playback position of TaskObjects? How did you do it?by Jaewon - Questions and Answers
The built-in photodiode trigger is not that much flexible. It is toggled when toggleobject() is called in Timing Script v1 or run_scene() is called in Timing Script v2. In Timing Script v2, it can also be toggled every frame or when an eventcode is sent out within a scene, by including the PhotoDiode adapter to the scene. I guess you can try some manual method, if you really want to flash theby Jaewon - Questions and Answers
I think you could figure out the cause if you opened and looked at the generated conditions file. generate_condition() does not work perfectly, but I have no intention to do anything about it. It is not part of NIMH ML and will not be included in the future versions. If you want a flexible way to select stimuli, see the userloop function. https://monkeylogic.nimh.nih.gov/docs_CreatingTask.htmby Jaewon - Questions and Answers
Sound cards do not provide enough voltages to trigger reward devices, so it is not possible. You can use a parallel port, if you want a cheap solution. https://monkeylogic.nimh.nih.gov/docs_ParallelPortPinout.htmlby Jaewon - Questions and Answers
You made a mistake (actually three of the same mistake) in your script indeed, but I am not going to tell you what it is. You are supposed to fix a problem that you created yourself.by Jaewon - Questions and Answers
You might install multiple NIMH ML versions and have the search path messed up. Try cleaning the search path with the following commands and reinstalling the latest NIMH ML. delete(which('startup.m')) restoredefaultpath matlabrc savepath exit The stimulus size changed probably because the screen size was set differently between the config files.by Jaewon - Questions and Answers
You did not provide enough information to make a guess.by Jaewon - Questions and Answers
The bus type matters only to you and your computer, since there can be some price difference and your computer may not support some bus types. NIMH ML does not care, as long as the board is supported by the current NI-DAQmx driver.by Jaewon - Questions and Answers
Obviously, the stimulus test and the task execution are not the same. You don't just display one video when you run a task, so the real test for you is to press the "RUN" button. If you see skipped frames at lower screen resolution like 1024 x 768, you may need a faster computer, too.by Jaewon - Questions and Answers
What do you mean by "run fine"? You said there were many skipped frames.by Jaewon - Questions and Answers