Micro-Manager Problems

65 views
Skip to first unread message

Kyle Douglass

unread,
Jun 6, 2016, 11:22:30 AM6/6/16
to pgFocus
Hi all,
Of course now I can't reproduce the bug (I don't know why), but it is in fact something I've encountered before when trying to attach a Runnable to the Multi-D engine with the pgFocus plugin active.

There is, however, another bug related to the pgFocus plugin in MM that I would like to somehow fix. Whenever I keep the pgFocus locked throughout a Multi-D acquisition, every single acquisition ends with the following error message:

Error: Acquisition cleanup failed.
java.lang.Exception: Device failure: pgFocus-Stabilization

I'm using Micro-Manager 1.4.22 2015-07-20 nightly build on Windows 7. pgFocus firmware is version 0.8. We get the same results with our other pgFocus on a different computer as well. The core log output is below, and suggests it's an issue with the pgFocus light sensor readings.

Karl, do you know what the issue is with the clean up failure?

Thanks!
Kyle


Core log:
2016-06-06T17:15:45.429926 tid3732 [IFO,App]
                                   [       ] java.lang.RuntimeException: java.lang.Exception: Property value "46,31,22,21,22,22,23,21,23,21,24,22,21,21,23,22,24,29,22,23,23,21,23,22,22,21,22,21,24,22,22,21,23,21,22,21,23,23,23,21,22,22,23,21,22,22,23,21,22,22,23,21,22,21,23,21,22,21,23,21,22,21,23,23,22,21,23,22,22,21,23,23,24,21,23,22,23,21,23,22,23,21,23,22,24,21,22,21,24,22,22,21,23,22,22,21,22,23,24,21,23,22,23,21,22,22,24,22,22,22,23,22,22,21,23,23,24,21,23,22,24,21,23,22,24,22,23,21" contains reserved characters in Thread[AcquisitionEngine2010 Thread (Clojure),6,main]
                                   [       ]   at clojure.lang.Util.runtimeException(Util.java:165)
                                   [       ]   at clojure.lang.Reflector.invokeInstanceMethod(Reflector.java:35)
                                   [       ]   at org.micromanager.acq_engine$set_property$attempt__813__auto____896.invoke(acq_engine.clj:255)
                                   [       ]   at org.micromanager.acq_engine$set_property$fn__900.invoke(acq_engine.clj:255)
                                   [       ]   at org.micromanager.acq_engine$set_property.invoke(acq_engine.clj:255)
                                   [       ]   at clojure.core$map$fn__3811.invoke(core.clj:2432)
                                   [       ]   at clojure.lang.LazySeq.sval(LazySeq.java:42)
                                   [       ]   at clojure.lang.LazySeq.seq(LazySeq.java:60)
                                   [       ]   at clojure.lang.RT.seq(RT.java:466)
                                   [       ]   at clojure.core$seq.invoke(core.clj:133)
                                   [       ]   at clojure.core$dorun.invoke(core.clj:2723)
                                   [       ]   at org.micromanager.acq_engine$return_config.invoke(acq_engine.clj:528)
                                   [       ]   at org.micromanager.acq_engine$cleanup$fn__1194.invoke(acq_engine.clj:686)
                                   [       ]   at org.micromanager.acq_engine$cleanup.invoke(acq_engine.clj:678)
                                   [       ]   at org.micromanager.acq_engine$run_acquisition.invoke(acq_engine.clj:786)
                                   [       ]   at org.micromanager.acq_engine$run$fn__1412.invoke(acq_engine.clj:944)
                                   [       ]   at clojure.lang.AFn.run(AFn.java:24)
                                   [       ]   at java.lang.Thread.run(Unknown Source)
                                   [       ] Caused by: java.lang.Exception: Property value "46,31,22,21,22,22,23,21,23,21,24,22,21,21,23,22,24,29,22,23,23,21,23,22,22,21,22,21,24,22,22,21,23,21,22,21,23,23,23,21,22,22,23,21,22,22,23,21,22,22,23,21,22,21,23,21,22,21,23,21,22,21,23,23,22,21,23,22,22,21,23,23,24,21,23,22,23,21,23,22,23,21,23,22,24,21,22,21,24,22,22,21,23,22,22,21,22,23,24,21,23,22,23,21,22,22,24,22,22,22,23,22,22,21,23,23,24,21,23,22,24,21,23,22,24,22,23,21" contains reserved characters
                                   [       ]   at mmcorej.MMCoreJJNI.CMMCore_setProperty__SWIG_0(Native Method)
                                   [       ]   at mmcorej.CMMCore.setProperty(CMMCore.java:450)
                                   [       ]   at sun.reflect.GeneratedMethodAccessor80.invoke(Unknown Source)
                                   [       ]   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                   [       ]   at java.lang.reflect.Method.invoke(Unknown Source)
                                   [       ]   at clojure.lang.Reflector.invokeMatchingMethod(Reflector.java:92)
                                   [       ]   at clojure.lang.Reflector.invokeInstanceMethod(Reflector.java:30)
                                   [       ]   at org.micromanager.acq_engine$set_property$attempt__813__auto____896.invoke(acq_engine.clj:255)
                                   [       ]   at org.micromanager.acq_engine$set_property$fn__900.invoke(acq_engine.clj:255)
                                   [       ]   at org.micromanager.acq_engine$set_property.invoke(acq_engine.clj:255)
                                   [       ]   at clojure.core$map$fn__3811.invoke(core.clj:2432)
                                   [       ]   at clojure.lang.LazySeq.sval(LazySeq.java:42)
                                   [       ]   at clojure.lang.LazySeq.seq(LazySeq.java:60)
                                   [       ]   at clojure.lang.RT.seq(RT.java:466)
                                   [       ]   at clojure.core$seq.invoke(core.clj:133)
                                   [       ]   at clojure.core$dorun.invoke(core.clj:2723)
                                   [       ]   at org.micromanager.acq_engine$return_config.invoke(acq_engine.clj:528)
                                   [       ]   at org.micromanager.acq_engine$cleanup$fn__1194.invoke(acq_engine.clj:686)
                                   [       ]   at org.micromanager.acq_engine$cleanup.invoke(acq_engine.clj:678)
                                   [       ]   at org.micromanager.acq_engine$run_acquisition.invoke(acq_engine.clj:786)
                                   [       ]   at org.micromanager.acq_engine$run$fn__1412.invoke(acq_engine.clj:944)
                                   [       ]   at clojure.lang.AFn.run(AFn.java:24)
                                   [       ]   at java.lang.Thread.run(Unknown Source)
2016-06-06T17:15:45.449928 tid3732 [IFO,App]
                                   [       ] java.lang.RuntimeException: java.lang.Exception: Property value "46,31,22,21,22,22,23,21,23,21,24,22,21,21,23,22,24,29,22,23,23,21,23,22,22,21,22,21,24,22,22,21,23,21,22,21,23,23,23,21,22,22,23,21,22,22,23,21,22,22,23,21,22,21,23,21,22,21,23,21,22,21,23,23,22,21,23,22,22,21,23,23,24,21,23,22,23,21,23,22,23,21,23,22,24,21,22,21,24,22,22,21,23,22,22,21,22,23,24,21,23,22,23,21,22,22,24,22,22,22,23,22,22,21,23,23,24,21,23,22,24,21,23,22,24,22,23,21" contains reserved characters in Thread[AcquisitionEngine2010 Thread (Clojure),6,main]
                                   [       ]   at clojure.lang.Util.runtimeException(Util.java:165)
                                   [       ]   at clojure.lang.Reflector.invokeInstanceMethod(Reflector.java:35)
                                   [       ]   at org.micromanager.acq_engine$set_property$attempt__813__auto____896.invoke(acq_engine.clj:255)
                                   [       ]   at org.micromanager.acq_engine$set_property$fn__902.invoke(acq_engine.clj:255)
                                   [       ]   at org.micromanager.acq_engine$set_property.invoke(acq_engine.clj:255)
                                   [       ]   at clojure.core$map$fn__3811.invoke(core.clj:2432)
                                   [       ]   at clojure.lang.LazySeq.sval(LazySeq.java:42)
                                   [       ]   at clojure.lang.LazySeq.seq(LazySeq.java:60)
                                   [       ]   at clojure.lang.RT.seq(RT.java:466)
                                   [       ]   at clojure.core$seq.invoke(core.clj:133)
                                   [       ]   at clojure.core$dorun.invoke(core.clj:2723)
                                   [       ]   at org.micromanager.acq_engine$return_config.invoke(acq_engine.clj:528)
                                   [       ]   at org.micromanager.acq_engine$cleanup$fn__1194.invoke(acq_engine.clj:686)
                                   [       ]   at org.micromanager.acq_engine$cleanup.invoke(acq_engine.clj:678)
                                   [       ]   at org.micromanager.acq_engine$run_acquisition.invoke(acq_engine.clj:786)
                                   [       ]   at org.micromanager.acq_engine$run$fn__1412.invoke(acq_engine.clj:944)
                                   [       ]   at clojure.lang.AFn.run(AFn.java:24)
                                   [       ]   at java.lang.Thread.run(Unknown Source)
                                   [       ] Caused by: java.lang.Exception: Property value "46,31,22,21,22,22,23,21,23,21,24,22,21,21,23,22,24,29,22,23,23,21,23,22,22,21,22,21,24,22,22,21,23,21,22,21,23,23,23,21,22,22,23,21,22,22,23,21,22,22,23,21,22,21,23,21,22,21,23,21,22,21,23,23,22,21,23,22,22,21,23,23,24,21,23,22,23,21,23,22,23,21,23,22,24,21,22,21,24,22,22,21,23,22,22,21,22,23,24,21,23,22,23,21,22,22,24,22,22,22,23,22,22,21,23,23,24,21,23,22,24,21,23,22,24,22,23,21" contains reserved characters
                                   [       ]   at mmcorej.MMCoreJJNI.CMMCore_setProperty__SWIG_0(Native Method)
                                   [       ]   at mmcorej.CMMCore.setProperty(CMMCore.java:450)
                                   [       ]   at sun.reflect.GeneratedMethodAccessor80.invoke(Unknown Source)
                                   [       ]   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                   [       ]   at java.lang.reflect.Method.invoke(Unknown Source)
                                   [       ]   at clojure.lang.Reflector.invokeMatchingMethod(Reflector.java:92)
                                   [       ]   at clojure.lang.Reflector.invokeInstanceMethod(Reflector.java:30)
                                   [       ]   at org.micromanager.acq_engine$set_property$attempt__813__auto____896.invoke(acq_engine.clj:255)
                                   [       ]   at org.micromanager.acq_engine$set_property$fn__902.invoke(acq_engine.clj:255)
                                   [       ]   at org.micromanager.acq_engine$set_property.invoke(acq_engine.clj:255)
                                   [       ]   at clojure.core$map$fn__3811.invoke(core.clj:2432)
                                   [       ]   at clojure.lang.LazySeq.sval(LazySeq.java:42)
                                   [       ]   at clojure.lang.LazySeq.seq(LazySeq.java:60)
                                   [       ]   at clojure.lang.RT.seq(RT.java:466)
                                   [       ]   at clojure.core$seq.invoke(core.clj:133)
                                   [       ]   at clojure.core$dorun.invoke(core.clj:2723)
                                   [       ]   at org.micromanager.acq_engine$return_config.invoke(acq_engine.clj:528)
                                   [       ]   at org.micromanager.acq_engine$cleanup$fn__1194.invoke(acq_engine.clj:686)
                                   [       ]   at org.micromanager.acq_engine$cleanup.invoke(acq_engine.clj:678)
                                   [       ]   at org.micromanager.acq_engine$run_acquisition.invoke(acq_engine.clj:786)
                                   [       ]   at org.micromanager.acq_engine$run$fn__1412.invoke(acq_engine.clj:944)
                                   [       ]   at clojure.lang.AFn.run(AFn.java:24)
                                   [       ]   at java.lang.Thread.run(Unknown Source)
2016-06-06T17:15:45.470930 tid3732 [IFO,App] Acquisition cleanup failed.
                                   [       ] java.lang.RuntimeException: java.lang.Exception: Device failure: pgFocus-Stabilization in Thread[AcquisitionEngine2010 Thread (Clojure),6,main]
                                   [       ]   at clojure.lang.Util.runtimeException(Util.java:165)
                                   [       ]   at clojure.lang.LazySeq.sval(LazySeq.java:51)
                                   [       ]   at clojure.lang.LazySeq.seq(LazySeq.java:60)
                                   [       ]   at clojure.lang.RT.seq(RT.java:466)
                                   [       ]   at clojure.core$seq.invoke(core.clj:133)
                                   [       ]   at clojure.core$dorun.invoke(core.clj:2723)
                                   [       ]   at org.micromanager.acq_engine$return_config.invoke(acq_engine.clj:528)
                                   [       ]   at org.micromanager.acq_engine$cleanup$fn__1194.invoke(acq_engine.clj:686)
                                   [       ]   at org.micromanager.acq_engine$cleanup.invoke(acq_engine.clj:678)
                                   [       ]   at org.micromanager.acq_engine$run_acquisition.invoke(acq_engine.clj:786)
                                   [       ]   at org.micromanager.acq_engine$run$fn__1412.invoke(acq_engine.clj:944)
                                   [       ]   at clojure.lang.AFn.run(AFn.java:24)
                                   [       ]   at java.lang.Thread.run(Unknown Source)
                                   [       ] Caused by: java.lang.Exception: Device failure: pgFocus-Stabilization
                                   [       ]   at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
                                   [       ]   at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
                                   [       ]   at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
                                   [       ]   at java.lang.reflect.Constructor.newInstance(Unknown Source)
                                   [       ]   at clojure.lang.Reflector.invokeConstructor(Reflector.java:183)
                                   [       ]   at org.micromanager.acq_engine$throw_exception.invoke(acq_engine.clj:71)
                                   [       ]   at org.micromanager.acq_engine$set_property.invoke(acq_engine.clj:255)
                                   [       ]   at clojure.core$map$fn__3811.invoke(core.clj:2432)
                                   [       ]   at clojure.lang.LazySeq.sval(LazySeq.java:42)
                                   [       ]   at clojure.lang.LazySeq.seq(LazySeq.java:60)
                                   [       ]   at clojure.lang.RT.seq(RT.java:466)
                                   [       ]   at clojure.core$seq.invoke(core.clj:133)
                                   [       ]   at clojure.core$dorun.invoke(core.clj:2723)
                                   [       ]   at org.micromanager.acq_engine$return_config.invoke(acq_engine.clj:528)
                                   [       ]   at org.micromanager.acq_engine$cleanup$fn__1194.invoke(acq_engine.clj:686)
                                   [       ]   at org.micromanager.acq_engine$cleanup.invoke(acq_engine.clj:678)
                                   [       ]   at org.micromanager.acq_engine$run_acquisition.invoke(acq_engine.clj:786)
                                   [       ]   at org.micromanager.acq_engine$run$fn__1412.invoke(acq_engine.clj:944)
                                   [       ]   at clojure.lang.AFn.run(AFn.java:24)
                                   [       ]   at java.lang.Thread.run(Unknown Source)

Karl Bellve

unread,
Jun 7, 2016, 9:10:52 AM6/7/16
to Kyle Douglass, pgFocus
On Mon, Jun 6, 2016 at 11:22 AM Kyle Douglass <kyle.m....@gmail.com> wrote:
Hi all,
Of course now I can't reproduce the bug (I don't know why), but it is in fact something I've encountered before when trying to attach a Runnable to the Multi-D engine with the pgFocus plugin active.

There is, however, another bug related to the pgFocus plugin in MM that I would like to somehow fix. Whenever I keep the pgFocus locked throughout a Multi-D acquisition, every single acquisition ends with the following error message:

Error: Acquisition cleanup failed.
java.lang.Exception: Device failure: pgFocus-Stabilization

I'm using Micro-Manager 1.4.22 2015-07-20 nightly build on Windows 7. pgFocus firmware is version 0.8. We get the same results with our other pgFocus on a different computer as well. The core log output is below, and suggests it's an issue with the pgFocus light sensor readings.

Karl, do you know what the issue is with the clean up failure?

Thanks!
Kyle



This happens after every MDA or after you close µManager?

I am wondering if this is a thread issue. I recall asking Mark T. about closing/starting threads issues. For example, the pgFocus plugin thread has no way of knowing of the pgFocus Hub thread is active. There are so many dependencies in pgFocus due to its asynchronous design...and if one of them gets closed before something else, it can present problems. But, I don't think MDA should be closing/creating devices...but I could be wrong.

Cheers Karl


Kyle Douglass

unread,
Jun 8, 2016, 6:25:05 AM6/8/16
to pgFocus, kyle.m....@gmail.com


On Tuesday, June 7, 2016 at 3:10:52 PM UTC+2, Karl Bellve wrote:
On Mon, Jun 6, 2016 at 11:22 AM Kyle Douglass <kyle.m....@gmail.com> wrote:
Hi all,
Of course now I can't reproduce the bug (I don't know why), but it is in fact something I've encountered before when trying to attach a Runnable to the Multi-D engine with the pgFocus plugin active.

There is, however, another bug related to the pgFocus plugin in MM that I would like to somehow fix. Whenever I keep the pgFocus locked throughout a Multi-D acquisition, every single acquisition ends with the following error message:

Error: Acquisition cleanup failed.
java.lang.Exception: Device failure: pgFocus-Stabilization

I'm using Micro-Manager 1.4.22 2015-07-20 nightly build on Windows 7. pgFocus firmware is version 0.8. We get the same results with our other pgFocus on a different computer as well. The core log output is below, and suggests it's an issue with the pgFocus light sensor readings.

Karl, do you know what the issue is with the clean up failure?

Thanks!
Kyle



This happens after every MDA or after you close µManager?


Hi Karl,
Yes, we always receive this error after every single MDA finishes in which the pgFocus plugin was active. It's a problem because we want to run multiple MDA's back-to-back in a script (rather than one single MDA) but the error dialog requires us to manually click OK to close it and move on to the next MDA. The only solution I can think of for now is to use the stand-alone pgFocus software; it's just too bad because I like to have all my hardware control in one place, i.e. Micro-Manager.

Is there some other piece of information I could provide you to help you track down the source of the problem?

Cheers,
Kyle

Karl Bellve

unread,
Jun 8, 2016, 10:10:38 AM6/8/16
to Kyle Douglass, pgFocus
On Wed, Jun 8, 2016 at 6:25 AM Kyle Douglass <kyle.m....@gmail.com> wrote:


Is there some other piece of information I could provide you to help you track down the source of the problem?

Cheers,
Kyle 

I think I should be ok and I should be able to replicate it easily. I never use MDA. 

I assume it is a threading issue....

Cheers Karl
Reply all
Reply to author
Forward
0 new messages