Error in device "IL-Turret": This turret is not installed in this Leica microscope

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Error in device "IL-Turret": This turret is not installed in this Leica microscope

centswu
Hi folks,

My Leica microscope is DM6B

After using there latest version of mm2 , the Leica DMI interface failed with DM6B
It looks like that the patches of date 3/28/2018 involved this issue.

After Copy old mmgr_dal_LeicaDMI.dll to install folder, or build LeicaDMI source with committed date 1/12/2018 ,d the LeicaDMI can work well with old version with DM6B

Thanks,
Cents

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general
Reply | Threaded
Open this post in threaded view
|

Re: Error in device "IL-Turret": This turret is not installed in this Leica microscope

Mark Tsuchida-3
Hi Cents,

On Thu, Apr 26, 2018 at 3:26 AM, cents wu <[hidden email]> wrote:
My Leica microscope is DM6B

After using there latest version of mm2 , the Leica DMI interface failed with DM6B
It looks like that the patches of date 3/28/2018 involved this issue.

After Copy old mmgr_dal_LeicaDMI.dll to install folder, or build LeicaDMI source with committed date 1/12/2018 ,d the LeicaDMI can work well with old version with DM6B

I believe I made the change that caused this and would like to fix it, but will need more info.

What was the error message you got?

If you have (or can collect) any debug logs, that would be very useful, too (please send me them off-list).

Best,
Mark

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general
Reply | Threaded
Open this post in threaded view
|

Re: Error in device "IL-Turret": This turret is not installed in this Leica microscope

centswu
Hi Mark,

After patching some lines of LeicaDMI, it can work with DM6B now.
But I not sure this is the right modification or not.

diff --git a/DeviceAdapters/LeicaDMI/LeicaDMIModel.cpp b/DeviceAdapters/LeicaDMI/LeicaDMIModel.cpp
index efb1bb26a..c65661424 100644
--- a/DeviceAdapters/LeicaDMI/LeicaDMIModel.cpp
+++ b/DeviceAdapters/LeicaDMI/LeicaDMIModel.cpp
@@ -397,6 +397,7 @@ int LeicaAFCModel::SetLEDIntensity(int LEDintensity)
 LeicaDMIModel::LeicaDMIModel() :
    usesMethods_(false),
    availableDevices_(maxNrDevices_, false),
+   codedDevices_(maxNrDevices_, false),
    availableMethods_(maxNrMethods_, false),
    methodNames_(maxNrMethods_ + 1)
 {
diff --git a/DeviceAdapters/LeicaDMI/LeicaDMIScopeInterface.cpp b/DeviceAdapters/LeicaDMI/LeicaDMIScopeInterface.cpp
index f961b333b..bce8e27e8 100644
--- a/DeviceAdapters/LeicaDMI/LeicaDMIScopeInterface.cpp
+++ b/DeviceAdapters/LeicaDMI/LeicaDMIScopeInterface.cpp
@@ -770,16 +770,17 @@ int LeicaScopeInterface::GetDevicesPresent(MM::Device& device, MM::Core& core)
          ss >> stand;
          int devId;
          while (ss >> devId) {
+            scopeModel_->SetDeviceAvailable(devId);
             std::ostringstream cmd2;
             cmd2 << devId << "001";
             int ret = core.SetSerialCommand(&device, port_.c_str(), cmd2.str().c_str(), "\r");
             if (ret != DEVICE_OK)
-               return ret;
+               return DEVICE_OK;
             char resp2[RCV_BUF_LENGTH] = "";
             unsigned long respLen2 = RCV_BUF_LENGTH;
             ret = core.GetSerialAnswer(&device, port_.c_str(), respLen2, resp2, "\r");
             if (ret != DEVICE_OK)
-               return ret;
+               return DEVICE_OK;
             std::istringstream iss2;
             std::string word;
             iss2 >> word;
@@ -791,8 +792,6 @@ int LeicaScopeInterface::GetDevicesPresent(MM::Device& device, MM::Core& core)
                continue;
             else if (word.find("CODED") == 0)
                scopeModel_->SetDeviceCoded(devId);
-            else
-               scopeModel_->SetDeviceAvailable(devId);
          }
       }
    }


2018-04-27 3:24 GMT+08:00 Mark Tsuchida <[hidden email]>:
Hi Cents,

On Thu, Apr 26, 2018 at 3:26 AM, cents wu <[hidden email]> wrote:
My Leica microscope is DM6B

After using there latest version of mm2 , the Leica DMI interface failed with DM6B
It looks like that the patches of date 3/28/2018 involved this issue.

After Copy old mmgr_dal_LeicaDMI.dll to install folder, or build LeicaDMI source with committed date 1/12/2018 ,d the LeicaDMI can work well with old version with DM6B

I believe I made the change that caused this and would like to fix it, but will need more info.

What was the error message you got?

If you have (or can collect) any debug logs, that would be very useful, too (please send me them off-list).

Best,
Mark

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general