Error in Micro-Magellan explore mode

I’m using the latest release of Micro-Magellan with the latest nightly build of Micro-Manager 2.0.0. I’m using the standard Micro-Manager PCO camera and Scientifica stage drivers.

When I enter “explore” mode in Micro-Magellan I get the following error message in the Micro-Manager log. I’m able to select regions (in blue) for imaging, but no images are captured when I click. (I’m also not able to zoom in and out in the explore window, but probably unrelated). Any suggestions?

Thanks,
Max

main.java.org.micromanager.plugins.magellan.json.JSONException: JSONArray[0] not found.
  at main.java.org.micromanager.plugins.magellan.json.JSONArray.get(JSONArray.java:169)
  at main.java.org.micromanager.plugins.magellan.json.JSONArray.getJSONObject(JSONArray.java:260)
  at main.java.org.micromanager.plugins.magellan.acq.MMImageCache.getChannelSetting(MMImageCache.java:242)
  at main.java.org.micromanager.plugins.magellan.acq.MMImageCache.getChannelMax(MMImageCache.java:344)
  at main.java.org.micromanager.plugins.magellan.mmcloneclasses.graph.SingleChannelHistogram.loadDisplaySettings(SingleChannelHistogram.java:348)
  at main.java.org.micromanager.plugins.magellan.mmcloneclasses.graph.SingleChannelHistogram.<init>(SingleChannelHistogram.java:129)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.ContrastMetadataPanel.initialize(ContrastMetadataPanel.java:94)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.DisplayWindow.<init>(DisplayWindow.java:218)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.VirtualAcquisitionDisplay.createWindows(VirtualAcquisitionDisplay.java:585)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.VirtualAcquisitionDisplay.startup(VirtualAcquisitionDisplay.java:274)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.VirtualAcquisitionDisplay.show(VirtualAcquisitionDisplay.java:692)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.DisplayPlus.<init>(DisplayPlus.java:134)
  at main.java.org.micromanager.plugins.magellan.acq.Acquisition.initialize(Acquisition.java:183)
  at main.java.org.micromanager.plugins.magellan.acq.ExploreAcquisition.<init>(ExploreAcquisition.java:63)
  at main.java.org.micromanager.plugins.magellan.acq.MagellanEngine.runExploreAcquisition(MagellanEngine.java:211)
  at main.java.org.micromanager.plugins.magellan.gui.GUI.newExploreWindowButton_ActionPerformed(GUI.java:2212)
  at main.java.org.micromanager.plugins.magellan.gui.GUI.access$3300(GUI.java:99)
  at main.java.org.micromanager.plugins.magellan.gui.GUI$32.actionPerformed(GUI.java:1170)
  at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
  at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
  at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
  at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
  at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
  at java.awt.Component.processMouseEvent(Component.java:6533)
  at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
  at java.awt.Component.processEvent(Component.java:6298)
  at java.awt.Container.processEvent(Container.java:2237)
  at java.awt.Component.dispatchEventImpl(Component.java:4889)
  at java.awt.Container.dispatchEventImpl(Container.java:2295)
  at java.awt.Component.dispatchEvent(Component.java:4711)
  at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4889)
  at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4526)
  at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4467)
  at java.awt.Container.dispatchEventImpl(Container.java:2281)
  at java.awt.Window.dispatchEventImpl(Window.java:2746)
  at java.awt.Component.dispatchEvent(Component.java:4711)
  at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
  at java.awt.EventQueue.access$500(EventQueue.java:97)
  at java.awt.EventQueue$3.run(EventQueue.java:709)
  at java.awt.EventQueue$3.run(EventQueue.java:703)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
  at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
  at java.awt.EventQueue$4.run(EventQueue.java:731)
  at java.awt.EventQueue$4.run(EventQueue.java:729)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
  at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
  at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
  at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
  at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
  at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
  at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
  at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
main.java.org.micromanager.plugins.magellan.json.JSONException: JSONArray[0] not found.
  at main.java.org.micromanager.plugins.magellan.json.JSONArray.get(JSONArray.java:169)
  at main.java.org.micromanager.plugins.magellan.json.JSONArray.getJSONObject(JSONArray.java:260)
  at main.java.org.micromanager.plugins.magellan.acq.MMImageCache.getChannelSetting(MMImageCache.java:242)
  at main.java.org.micromanager.plugins.magellan.acq.MMImageCache.getChannelMin(MMImageCache.java:335)
  at main.java.org.micromanager.plugins.magellan.mmcloneclasses.graph.SingleChannelHistogram.loadDisplaySettings(SingleChannelHistogram.java:352)
  at main.java.org.micromanager.plugins.magellan.mmcloneclasses.graph.SingleChannelHistogram.<init>(SingleChannelHistogram.java:129)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.ContrastMetadataPanel.initialize(ContrastMetadataPanel.java:94)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.DisplayWindow.<init>(DisplayWindow.java:218)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.VirtualAcquisitionDisplay.createWindows(VirtualAcquisitionDisplay.java:585)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.VirtualAcquisitionDisplay.startup(VirtualAcquisitionDisplay.java:274)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.VirtualAcquisitionDisplay.show(VirtualAcquisitionDisplay.java:692)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.DisplayPlus.<init>(DisplayPlus.java:134)
  at main.java.org.micromanager.plugins.magellan.acq.Acquisition.initialize(Acquisition.java:183)
  at main.java.org.micromanager.plugins.magellan.acq.ExploreAcquisition.<init>(ExploreAcquisition.java:63)
  at main.java.org.micromanager.plugins.magellan.acq.MagellanEngine.runExploreAcquisition(MagellanEngine.java:211)
  at main.java.org.micromanager.plugins.magellan.gui.GUI.newExploreWindowButton_ActionPerformed(GUI.java:2212)
  at main.java.org.micromanager.plugins.magellan.gui.GUI.access$3300(GUI.java:99)
  at main.java.org.micromanager.plugins.magellan.gui.GUI$32.actionPerformed(GUI.java:1170)
  at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
  at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
  at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
  at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
  at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
  at java.awt.Component.processMouseEvent(Component.java:6533)
  at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
  at java.awt.Component.processEvent(Component.java:6298)
  at java.awt.Container.processEvent(Container.java:2237)
  at java.awt.Component.dispatchEventImpl(Component.java:4889)
  at java.awt.Container.dispatchEventImpl(Container.java:2295)
  at java.awt.Component.dispatchEvent(Component.java:4711)
  at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4889)
  at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4526)
  at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4467)
  at java.awt.Container.dispatchEventImpl(Container.java:2281)
  at java.awt.Window.dispatchEventImpl(Window.java:2746)
  at java.awt.Component.dispatchEvent(Component.java:4711)
  at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
  at java.awt.EventQueue.access$500(EventQueue.java:97)
  at java.awt.EventQueue$3.run(EventQueue.java:709)
  at java.awt.EventQueue$3.run(EventQueue.java:703)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
  at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
  at java.awt.EventQueue$4.run(EventQueue.java:731)
  at java.awt.EventQueue$4.run(EventQueue.java:729)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
  at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
  at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
  at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
  at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
  at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
  at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
  at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
main.java.org.micromanager.plugins.magellan.json.JSONException: JSONArray[0] not found.
  at main.java.org.micromanager.plugins.magellan.json.JSONArray.get(JSONArray.java:169)
  at main.java.org.micromanager.plugins.magellan.json.JSONArray.getJSONObject(JSONArray.java:260)
  at main.java.org.micromanager.plugins.magellan.acq.MMImageCache.getChannelSetting(MMImageCache.java:242)
  at main.java.org.micromanager.plugins.magellan.acq.MMImageCache.getChannelGamma(MMImageCache.java:353)
  at main.java.org.micromanager.plugins.magellan.mmcloneclasses.graph.SingleChannelHistogram.loadDisplaySettings(SingleChannelHistogram.java:353)
  at main.java.org.micromanager.plugins.magellan.mmcloneclasses.graph.SingleChannelHistogram.<init>(SingleChannelHistogram.java:129)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.ContrastMetadataPanel.initialize(ContrastMetadataPanel.java:94)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.DisplayWindow.<init>(DisplayWindow.java:218)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.VirtualAcquisitionDisplay.createWindows(VirtualAcquisitionDisplay.java:585)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.VirtualAcquisitionDisplay.startup(VirtualAcquisitionDisplay.java:274)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.VirtualAcquisitionDisplay.show(VirtualAcquisitionDisplay.java:692)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.DisplayPlus.<init>(DisplayPlus.java:134)
  at main.java.org.micromanager.plugins.magellan.acq.Acquisition.initialize(Acquisition.java:183)
  at main.java.org.micromanager.plugins.magellan.acq.ExploreAcquisition.<init>(ExploreAcquisition.java:63)
  at main.java.org.micromanager.plugins.magellan.acq.MagellanEngine.runExploreAcquisition(MagellanEngine.java:211)
  at main.java.org.micromanager.plugins.magellan.gui.GUI.newExploreWindowButton_ActionPerformed(GUI.java:2212)
  at main.java.org.micromanager.plugins.magellan.gui.GUI.access$3300(GUI.java:99)
  at main.java.org.micromanager.plugins.magellan.gui.GUI$32.actionPerformed(GUI.java:1170)
  at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
  at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
  at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
  at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
  at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
  at java.awt.Component.processMouseEvent(Component.java:6533)
  at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
  at java.awt.Component.processEvent(Component.java:6298)
  at java.awt.Container.processEvent(Container.java:2237)
  at java.awt.Component.dispatchEventImpl(Component.java:4889)
  at java.awt.Container.dispatchEventImpl(Container.java:2295)
  at java.awt.Component.dispatchEvent(Component.java:4711)
  at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4889)
  at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4526)
  at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4467)
  at java.awt.Container.dispatchEventImpl(Container.java:2281)
  at java.awt.Window.dispatchEventImpl(Window.java:2746)
  at java.awt.Component.dispatchEvent(Component.java:4711)
  at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
  at java.awt.EventQueue.access$500(EventQueue.java:97)
  at java.awt.EventQueue$3.run(EventQueue.java:709)
  at java.awt.EventQueue$3.run(EventQueue.java:703)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
  at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
  at java.awt.EventQueue$4.run(EventQueue.java:731)
  at java.awt.EventQueue$4.run(EventQueue.java:729)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
  at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
  at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
  at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
  at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
  at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
  at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
  at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
main.java.org.micromanager.plugins.magellan.json.JSONException: JSONArray[0] not found.
  at main.java.org.micromanager.plugins.magellan.json.JSONArray.get(JSONArray.java:169)
  at main.java.org.micromanager.plugins.magellan.json.JSONArray.getJSONObject(JSONArray.java:260)
  at main.java.org.micromanager.plugins.magellan.acq.MMImageCache.getChannelSetting(MMImageCache.java:242)
  at main.java.org.micromanager.plugins.magellan.acq.MMImageCache.getChannelHistogramMax(MMImageCache.java:362)
  at main.java.org.micromanager.plugins.magellan.mmcloneclasses.graph.SingleChannelHistogram.loadDisplaySettings(SingleChannelHistogram.java:354)
  at main.java.org.micromanager.plugins.magellan.mmcloneclasses.graph.SingleChannelHistogram.<init>(SingleChannelHistogram.java:129)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.ContrastMetadataPanel.initialize(ContrastMetadataPanel.java:94)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.DisplayWindow.<init>(DisplayWindow.java:218)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.VirtualAcquisitionDisplay.createWindows(VirtualAcquisitionDisplay.java:585)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.VirtualAcquisitionDisplay.startup(VirtualAcquisitionDisplay.java:274)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.VirtualAcquisitionDisplay.show(VirtualAcquisitionDisplay.java:692)
  at main.java.org.micromanager.plugins.magellan.imagedisplay.DisplayPlus.<init>(DisplayPlus.java:134)
  at main.java.org.micromanager.plugins.magellan.acq.Acquisition.initialize(Acquisition.java:183)
  at main.java.org.micromanager.plugins.magellan.acq.ExploreAcquisition.<init>(ExploreAcquisition.java:63)
  at main.java.org.micromanager.plugins.magellan.acq.MagellanEngine.runExploreAcquisition(MagellanEngine.java:211)
  at main.java.org.micromanager.plugins.magellan.gui.GUI.newExploreWindowButton_ActionPerformed(GUI.java:2212)
  at main.java.org.micromanager.plugins.magellan.gui.GUI.access$3300(GUI.java:99)
  at main.java.org.micromanager.plugins.magellan.gui.GUI$32.actionPerformed(GUI.java:1170)
  at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
  at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
  at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
  at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
  at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
  at java.awt.Component.processMouseEvent(Component.java:6533)
  at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
  at java.awt.Component.processEvent(Component.java:6298)
  at java.awt.Container.processEvent(Container.java:2237)
  at java.awt.Component.dispatchEventImpl(Component.java:4889)
  at java.awt.Container.dispatchEventImpl(Container.java:2295)
  at java.awt.Component.dispatchEvent(Component.java:4711)
  at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4889)
  at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4526)
  at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4467)
  at java.awt.Container.dispatchEventImpl(Container.java:2281)
  at java.awt.Window.dispatchEventImpl(Window.java:2746)
  at java.awt.Component.dispatchEvent(Component.java:4711)
  at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
  at java.awt.EventQueue.access$500(EventQueue.java:97)
  at java.awt.EventQueue$3.run(EventQueue.java:709)
  at java.awt.EventQueue$3.run(EventQueue.java:703)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
  at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
  at java.awt.EventQueue$4.run(EventQueue.java:731)
  at java.awt.EventQueue$4.run(EventQueue.java:729)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
  at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
  at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
  at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
  at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
  at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
  at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
  at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

This looks like it came from a very old version of Magellan. Is it possible you have two copies of Magellan.jar? Maybe one in the “mmplugins” folder and one in the “acquistiontools/mmplugins”?

Hi Henry, thanks for the suggestion. I don’t believe I have two copies – I downloaded Magellan.jar and DT1.2-.jar from here and copied them into the mmplugins folder. I actually don’t see an acquisitiontools folder in the Micro-Manager directory.

Thanks,
Max

Yes that is indeed a very old version. You should upgrade to the most recent micromanager nightly build, which will come with the newest magellan