[OpenSPIM] Problems with OpenSPIM system

Luke Stuyvenberg stuyvenberg at wisc.edu
Fri Jun 27 13:55:11 CDT 2014


Hi everyone,

On 06/27/14, Luke Stuyvenberg wrote:
> I'll report back after fixing/testing and committing/uploading the device adapter.


And so here I am. I've committed the changes to SVN and uploaded the 32-bit version of the DLL to the OpenSPIM update site.


Mark -- Following your suggestion, those lines were removed -- in hindsight, it's not really the correct behavior, and the possible issue with obtaining an invalid serial number shouldn't be common at all. Thanks!


Kieran -- I recently became aware of the homing problem; the stage sometimes resets its internal location (when it loses power, perhaps?), so over time it will be pushed away. The X/Y stage can be homed using the MM Script Panel, running mmc.home("Picard XY Stage") -- the Z stage has no appropriate API call, so for the time being, there is a property "GoHome" that will home that stage when set to 1. It's a workaround until I can submit a more useful patch to the MM team (though, as an API change, that may take a little while).


Ke -- Please let me know if there are any more problems; hope this helps!


Luke


On 06/27/14, Luke Stuyvenberg  wrote:
> Hi Ke, Mark, Johannes,
> 
> 
> On 06/26/14, Mark Tsuchida wrote:
> > Johannes, I also found the cause: OnSerialGeneric() is calling the
> > Initialize() function, which fails. This happens before the Hardware
> > Wizard calls Initialize (actually, when the wizard is trying to get
> > the initial values of the pre-init properties), so the wizard has no
> > chance to display the configuration dialog.
>> > Simply taking out the calls to Initialize (PicardStage.cpp lines
> > 243-245, 258) seems to fix this, but I'm not sure if that is all that
> > needs to be done (since I don't have a Picard stage and cannot figure
> > out what the intent of calling Initialize() at this point was).
> > Johannes, can you take a look at this?
> 
> 
> 
> The intent of the Initialize call was to test the serial number received from the Pi-detector, but I didn't account for the possibility of CPiDetector returning DEFAULT_SERIAL_UNKNOWN, which it does if the requested device hadn't been found. I'm preparing a fix for this that I will submit via SVN as soon as possible.
> 
> 
> The ultimate issue is this: The Pi-detector only tested serial numbers up to 250. I've doubled this for now, but this is a stop-gap measure that causes an ugly pause in the device adding process while it probes the serial numbers; I will need to seek a different approach to detecting the motors.
> 
> 
> I'll report back after fixing/testing and committing/uploading the device adapter.
> 
> 
> Luke
> 
> 
> On 06/26/14, Mark Tsuchida wrote:
> > Hi Ke and Johannes,
> > 
> > On Thu, Jun 26, 2014 at 11:57 AM, Mark Tsuchida <marktsuchida at gmail.com> wrote:
> > > On Wed, Jun 25, 2014 at 10:27:54PM -0400, Ke Li wrote:
> > >> 1. I still can't add the Z stage when I create the hardware configuration.
> > >> I tried both 64-bit and 32-bit Windows system, neither can work. Since the
> > >> problem report doesn't give much info, I'm not sure whether there are other
> > >> ways to solve this problem? And what possible reasons can cause the
> > >> problem?
> > >
> > > Are you sure you have the correct serial number for the Z stage (as
> > > Johannes suggested)? In the problem report you sent us, it looked like
> > > you had not set the serial number when adding the Z stage in the
> > > Hardware Configuration Wizard. This causes the device adapter to use the
> > > serial number "-1", which always results in an error.
> > >
> > > Do you see a field to enter the serial number for the Z stage? If you cannot
> > > get it to work even when entering the correct serial number, could you try
> > > sending another Problem Report?
> > 
> > Sorry, I hadn't seen your reply to Johannes that answered that question of mine.
> > 
> > I can reproduce the problem: with no Picard hardware connected to the
> > computer, no configuration dialog for the pre-initialization settings
> > (including the serial number) is displayed in the hardware
> > configuration wizard. This is the case for the Twister and Z stage,
> > but not the XY stage (at least on my computer).
> > 
> > Johannes, I also found the cause: OnSerialGeneric() is calling the
> > Initialize() function, which fails. This happens before the Hardware
> > Wizard calls Initialize (actually, when the wizard is trying to get
> > the initial values of the pre-init properties), so the wizard has no
> > chance to display the configuration dialog.
> > 
> > Simply taking out the calls to Initialize (PicardStage.cpp lines
> > 243-245, 258) seems to fix this, but I'm not sure if that is all that
> > needs to be done (since I don't have a Picard stage and cannot figure
> > out what the intent of calling Initialize() at this point was).
> > Johannes, can you take a look at this?
> > 
> > Best,
> > Mark
> > 
> > --
> > Mark Tsuchida
> > Micro-Manager Team (UCSF Vale Lab)
> > 
> > _______________________________________________
> > OpenSPIM mailing list
> > OpenSPIM at openspim.org
> > http://openspim.org/mailman/listinfo/openspim
> 
> _______________________________________________
> OpenSPIM mailing list
> OpenSPIM at openspim.org
> http://openspim.org/mailman/listinfo/openspim




More information about the OpenSPIM mailing list