I want to modify a spectrometer driver of a setup we have. There I want to have an additional GUI parameter which should be changeable by the user (in this case a integer). How can I do this?
What I already tried (with the help of the SweepMe Support AI) :
adding the new paramter in the get_GUIparameter() and set_GUIparameter() functions
adding the functions get_GUIparameter_type(self) and get_GUIparameter_description(self) with the new parameter
adding extra self.GUIparameter in _init_ and updating gui parameter in the set_GUIparameter function with GUIparameter.update(self.GUIparameter)
Could it be that this is not possible as the GUI parameters are set within the Module Spectrometer?
so far only modules with a Parameter Box can have their own custom parameters. We had introduced this at the beginning for Logger and Switch, the two generic modules that anyway need custom parameters. Later, we rolled it out for the modules like Robot and Wafer Prober that often need custom parameters.
Recently, we added the Parameter Box also to modules like SMU or Signal and add it now on demand when requested.
If the option you like to add for the Spectrometer is something general that all spectrometers have, you can also tell us and we add this particular parameter to the UI of the module. This ensures greater adaptability when switching between two different instruments as the GUI parameter key used in the driver is the same. Custom parameters are more likely to differ between two drivers so that a configuration breaks.
Let me know what you prefer or plan and we can update the Spectrometer module accordingly.
this is related to this topic: Inconsistent spectra within loop .
I want to add a parameter which then takes X spectra without saving before doing the actual measurement. I’m unsure whether this is something that occurs in other spectrometers as well.
Thanks for the link to the other post. In this case it is for sure something more custom.
Still, I am not sure whether it is the best solution at all. I guess it is so far the best workaround as I also proposed to test it. But it also indicates that the spectrometer does not reliably return a spectrum.
If the user can change the parameter, it also means that it is unreliable how many spectras need to be read out in the beginning before a good spectra can be taken.
Wouldn’t it be better to identify a fixed number of spectras to be read out before a good measurement can be safely taken?
It is of course free to every user to modify and customize the drivers in order to fulfill custom requirements or test further configurations, but I also like to mention that every forking introduces additional maintenance work for you and the future coworkers.
If you anyway are about forking the driver, also consider creating a new driver in the Version Manager with a new name, indicating that you fixed a problem. This way you can better differentiate between the official server version and your own development.
Another solution could be to add the Spectrometer module multiple times to the sequencer and check whether the problem can be solved as well if you read out a number of spectra in a first branch without saving them. This way you can effectively move your desired parameter to a configuration of Loop module in the sequencer.
In case you used a published driver from our server, feel free to tell us the model and we can add a Known issues section to the driver webpage to inform other users.
Maybe it is also worth to contact the manufacturer and ask whether there are any known configurations to solve the problem.
We will now add a Parameter Box to the Spectrometer module and inform you here when it is done.
And let us know if you need any service from us with improving the spectrometer driver.
So yes it would be nice to have an optimal number of spectra however this varies when multiple instances of the spectrometer are used. In such a case the first spectrum should have maybe 5 spectra skipped where the second spectrum is stable after the first measurement.
The driver is probably a very old version from 2010 customized over several iterations.
I will try to contact the manufacturer, but it could also be that the spectrometer is just old and thus has this weird property.
you can update the Spectrometer Module via the version manager. The module now contains a Parameter Box that is shown when a driver adds a custom GUI parameter.