-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
support Toptica iChrome multi-laser engine #71
Comments
One idea for this (and similar devices) involves a top-level device that exposes multiple subdevices over Pyro, e.g.
This could be implemented with minor changes to the device server and base Device class.
|
I have been looking at this and experimenting with Pyros autoproxying. I think we should avoid having each line as a separate device because they are not separate devices. We can't for example have two of them on at the same time, and we can't shutdown one without shutdown the whole engine. I'm thinking they should be some other class. It may make sense to have a Laser interface, something that non device class can also implement. It would be nice if we could avoid mixing limitations of the device server on the device classes. I f we make use of autoproxying, after device creation we can register each of laser line instance with the pyro daemon. If we do this, a method of the device that would return the laser line instance will automatically return a Pyro proxy instead if being used via the device server. For example:
And on the client side:
|
Carnë Draug <notifications@github.com> writes:
I have been looking at this and experimenting with Pyros autoproxying.
I think we should avoid having each line as a separate device because
they are not separate devices. We can't for example have two of them
on at the same time, and we can't shutdown one without
You can definitely have two lines on simultaneously. In the Toptica
software anyway.
Ian
|
Ian Dobbie wrote:
I read that there were four lasers but one output line and just assumed that there would only be only one laser emitting at a time. Makes sense that you could have all on the same line. |
'One output' here means the combined beam, rather than four individual
beams.
…On Tue, 25 Jun 2019 at 23:03, Carnë Draug ***@***.***> wrote:
Ian Dobbie wrote:
Carnë Draug writes:
We can't for example have two of them
on at the same time
You can definitely have two lines on simultaneously. In the Toptica
software anyway.
I read that there were four lasers but one output line and just assumed
that there would only be only one laser emitting at a time. Makes sense
that you could have all on the same line.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<https://github.com/MicronOxford/microscope/issues/71?email_source=notifications&email_token=ABHGTL26OYV4J37UZQLZUL3P4KIZ7A5CNFSM4HBYRES2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYRXH4A#issuecomment-505639920>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABHGTLZRQL2TL2ZTNTFOSM3P4KIZ7ANCNFSM4HBYRESQ>
.
--
________________________________
Mick Phillips
________________________________
|
I have implemented a toptica single laser device for the new 640 laser we have. Appears to work fine for the laser we have. Haven't done any work on the mock device or test suite. pull from https://github.com/iandobbie/microscope/tree/toptica-laser |
Turns out the MLE uses Scheme and not the simple text console of the iBeam laser. I will implement this as a separate class in the same module. Will do a bit of renaming too so don't pull the exisiting code yet. |
Implementing support for the multi-laser engine is delayed until we sort out an interface for this multi-devices device which we will try with the Prior ProScanIII (see issue #62). The reason is that we already have something for the Prior, and it mixes devices of different types (stages, filterwheel, and light sources) instead of only lasers as is the case with the iChrome MLE. |
Since version we have controller devices and we have multi line light sources such as the lumencor spectra and CollLED. Really the only issue left is actually doing the work of writing it and dealing with the Scheme interface (which hopefully won't be too hard). |
There is an official Python SDK which can do the heavy lifting. |
@VroniPfann also needs support for the Toptica iChrome MLE. |
I wrote an initial implementation, without testing on real hardware, on my branch named "71-toptica-ichrome". I gave a quick look at the official Python SDK from toptica but our needs are so simple, it seemed simpler to do it ourselves. Can someone with access to the hardware test the code? |
I have tested @carandraug code on our Toptica iChromeMLE. It only needed small fixes and seems to work fine now. I have uploaded them to my branch named "Toptica_iChromeMLE". There is still a bug that creates lasers that do not really exist, I try to fix that as well. |
Thanks for testing @VroniPfann. I have merged your changes, and added a check that a laser line does exist. I have rebased all changes into master and pushed. This will be part of the next release. Closing as fixed. |
Need to add support for Toptica Chrome multi-laser engines. used in our PALM-TIRF system for example.
The text was updated successfully, but these errors were encountered: