Category: microscopy

  • Starlyte Nebula Driver FAQ

    Starlyte Nebula Driver FAQ

    TL:DR

    Live Debugging

    Get a Full list of Supported Drivers

    Testing a Specific Driver File

    Testing Host and Sub Devices

    Live Debugging

    Due to the open nature of our driver system, it’s relatively straightforward to write a new driver file for almost any imaginable device in Nebula. However, driver development can be a pain, so I though I’d share some debugging tricks.

    For all commands, we will navigate to the command line using windows Command prompt or powershell. Here I show command prompt syntax. Nebula is commonly installed under program files. So in the windows start bar type “cmd” and press enter. This should open the command prompt. The commands below navigate to the install location.

    cd
    
    c:>cd "Program Files"
    
    c:Program Files>cd Nebula
    
    c:Program FilesNebula>

    First, is the use of logging to the command line. When Nebula is launched from the command line, a series of optional switches can be used to report logged output. By opening this alongside the app, it’s very fast to figure out what or where something is going wrong. To see log output, use –printlog.

    c:Program FilesNebula>Nebula.exe --printlog

    This launches the app, but shows a live log output on the console at the same time.

    Get a full list of Supported Drivers

    This command will return a complete list of drivers found in the Nebula supported list. To print this list, use:

    c:Program FilesNebula>Nebula.exe --listdrivers

    Here is live example of that command and the expected result. A list of drivers is shown, press enter to close the listing.

    Testing a specific Driver File

    Next, let’s load up one of these drivers in the test utility. Now, this is where things get cool! The test utility can load a host device driver, inspect it’s shown devices, attempt to connect them, and even test every sub-device!

    So, let’s assume we have a new camera driver we want to work on. The camera should do things like snap an image, show various properties etc. In my example I use a real UVC (web) camera, and inspect the driver. The driver actually pulls the real camera info and even snaps a test image. The goal of this function is twofold, first to validate a given driver, and second to validate the device itself.

    For this command we will use –testdriver *drivername* and optionally –port *portname*, for example, COM5

    c:Program FilesNebula>Nebula.exe --testdriver --driver UVC_Camera

    Here we can watch the expected output in real time. Note a new window is spawned to show us the results for these tests.

    Testing Host and Sub Devices

    Let’s say we have a controller, for example, an ASI or Marzhauser box, which has a Z motor attached. In Nebula, the controller can be thought of as the Host (the resident controlling brain), and the device can be considered an appendage attached to the host. So all drivers must have a Host, but a Host may only have one device. In this example, we use a demo Focus device. First the host is loaded and analyzed, and then, you ca select to test any device provided by that host. I choose option # 1 (focus) and the test runs, even showing my driver has a small error I missed!

    Obviously, if you have a driver which isn’t behaving, please contact us – yet I hope these options provide a first-line of interface for power users, so simple things can be corrected and analyzed quickly!

    -Austin

    The post Starlyte Nebula Driver FAQ appeared first on AustinBlanco.com.

  • Touptek Cameras Supported in Nebula

    Recently, I had two different requests to support the cameras manufactured by Touptek. Ash from Scientific Imaging was kind enough to let me borrow one for in-house integration and testing.

    These cameras support Sony IMX-174 sensors, use a USB 3.1 (locking!) cable, and are straightforward to hook up and use. A GPIO connection is provided for I/O, and some models also have opto-isolated IO as well.

    Binning, ROI and bit depth readout modes are also supported.

    The camera I had hands on had a color version of the sensor, and while today has been a lot of rain, I was able to get a gloomy scene outside for my demo video below.

    For questions on running this camera in Nebula, please contact us at www.starlyteimaging.com

    If you are interested in these cameras, please contact Scientific Imaging.

    Here is a brief video demo of the camera in Starlyte Nebula!

    The post Touptek Cameras Supported in Nebula appeared first on AustinBlanco.com.

  • Starlyte Nebula – Open Microscopy Control Software

    Starlyte Nebula – Open Microscopy Control Software

    A few months back, I started promoting a new software application called Nebula. As I introduced it to people I realized that I’d not explained the development or release of it on my website, and so here I’ll take a minute to explain that.

    The Why

    20 years ago I fell into a career in the life science imaging industry, working for an integration and microscope dealer in southern California. One of my first jobs was installing a copy of software application called MetaMorph. This was an interesting thing to me, having a background in building computers from the days of ISA cards and DOS boot menus.

    Metamorph could move things like a filter wheel (then a Sutter Instrument 10-2), and capture images from a camera like the then-new Photometrics 1300 YHS.

    It fascinated me to watch the camera snap images with it’s mechanical shutter as the filter wheel switched positions, compiling images into a singular display. I was intrigued by this ability and also how it was used in research.

    As time went on, I eventually moved from building the basic systems to maintaining them in-field, and then to offering complete hardware and software systems as a direct rep for the company who made this software, Universal Imaging Corporation.

    The Need

    What made MetaMorph appealing was the wide array of devices it could control at speed – from stages, to microscopes, to illuminators, basically anything. The company had no specific lockout, and would integrate device drivers for any product.

    Over time, UIC was acquired by Molecular Devices, and after a long run ceased offering product sales in 2023. By that time, the industry was somewhat locked into the major microscope companies selling brand-specific products. Further, these companies would refuse support (understandably) for specific competing devices. Yet, this posed a genuine challenge for users:

    Once invested into an automated microscope, I am forced to use proprietary software with restrictions, or use open-source software alternatives like MicroManager.

    Now, MicroManager is an exceptional suite of software with device drivers, but for customers who want a simplified approach to control, with minimal hands-on configuration, and someone to call when things go wrong, there really aren’t many commercial applications filling the need. This situation led me to conclude that a new company was needed in the industry to:

    • Provide Custom Integration Support for existing microscopes
    • Offer hardware driver support for smaller and newer companies excluded by the major brands.
    • Wrap device control into a simple, easy to use interface
    • Provide exceptional support for products.

    With this in mind, I engaged with my friend and colleague Jacob Gewerth, to launch Starlyte Imaging, and build our core product, Nebula. It’s been a long development process, but what Nebula does is something very special:

    The What

    We imagined, and have released, a software application geared to capture, and capture alone:

    • We are dedicated to controlling devices as the priority – it’s all about getting data
    • Our drivers are completely developed in Python, and our driver standard is open – meaning YOU or any company who wants to, can write device drivers for our software.
    • Our pricing is approachable and fair – no huge budget outlay for software – we offer fixed licenses, or service-based pricing.
    • We can support old as well as new devices – many older microscopes are perfectly suitable as a chassis to perform any modern study, they just need to be tied into the capture control scheme.
    • We also can support data collection and metadata recording from perfusion systems, peristaltic pumps, or any other environmental control device you want to talk to.
    • More than anything else, I wanted to bring the simple, fair and honest product support I’ve enjoyed providing to this industry for my career. Things fail, mistakes happen, but what makes the difference to me, is the dedication to see projects through, supporting your research, and seeing the project through.

    In keeping with our vision, we have teamed up with Zaber technologies to showcase our software at this years Society for Neuroscience convention in San Diego. We will be at Booth # 2711 controlling the Zaber Nucleus MVR inverted modular microscope, and are looking forward to seeing you there!

    www.starlyteimaging.com

    Austin

    The post Starlyte Nebula – Open Microscopy Control Software appeared first on AustinBlanco.com.