Software

Open-Source & Gitlab Access

Open Tools for the WaveMe Ecosystem

Starting today, we are moving WaveMe templates and all open-source code to a self-hosted Gitlab environment. Senslogic is an optics consulting company with extensive experience in software development and physical optics simulations. While much of the code we develop is proprietary, some of it is better suited for educational purposes or as coding examples for our platform.

To that end, the WaveMe templates are being released under the Creative Commons Zero (CC0) license. These templates are designed specifically for use with WaveMe, but by adopting this license, we want to ensure that it is absolutely clear that WaveMe customers are free to use, modify, and distribute code derived from these templates without restriction.

Camera Isolation Library

With the introduction of the Gitlab environment, Senslogic is also releasing its camera-isolation library. This source is currently only useful under Linux. The purpose of it was, originally, to allow us to use runtime checks using tools like AddressSanitizer (ASAN).

We want WaveMe to never be in your way and offer as much flexibility as possible. To do that, WaveMe does a lot of things in the background. For example, when you move the Shack-Hartmann sensor along a diverging beam, WaveMe optimizes its spot detection. It checks if you changed something that needs to be saved, and it also determines where the light comes from to generate the best calibration. It is a tool made to free your mind to concentrate on your own work.

This does come with some side effects for us, like an application that cannot be developed with traditional debugging tools. Without the camera isolation library and address sanitizers, WaveWe would never be able to reach release-quality status.

WaveMe platform is using Basler cameras and its library Pylon. Basler offers excellent products at fantastic prices. What not to like about that. Well, there’s one thing, which is that one cannot use address sanitizers with Pylon. Pylon takes full internal symbol control and that prevents address sanitizers to do what they need.

To get around that, the client mimcs the Pylon interface and communicates with the server using shared memory. It also offers multiple simulataneus connections to support the Pylon interface without restrictions.

This architecture was intended for code development but since it’s released under the BSD (3-clause) licence, Senslogic even encourages developers to do commercial closed-source derivate work based on it.

Sign Up

If you want to get access to the source, send an email to contact@senslogic.de with your preferred user name. You will receive a one-time password after I’ve added your email and preferred username to the gitlab server.

jarek

Recent Posts

Physical Modeling and OSS

Introduction Wtih this tech talk, I would like to offer some perspective on building a physical modeling framework with Open…

1 month ago

Distortion Mapping – An SVD HowTo

In this tech-talk, I would like to discuss how (and probably how not to) develop an optical distortion correction. It…

2 months ago

The Challenge of Simplifying Precision

Introduction This tech-talk is about why simple isn't always easy and what the Shack-Hartmann (SH) module in WaveMe must do…

3 months ago

Senslogic – Unleash the Power of the Generalist

Why choose Senslogic? A very reasonable question indeed. There is no shortage of established companies offering customized services that can…

3 months ago

HowTo: Spatial Light Modulators

About This Tech-Talk Spatial light modulators (SLMs) are active optical components that can alter a light beam’s amplitude, phase, or…

3 months ago

Ti DLP – The Workhorse of Maskless Lithography

DLP9000XUV Spatial Light Modulator

3 months ago