qudi icon indicating copy to clipboard operation
qudi copied to clipboard

New trigger interface

Open kay-jahnke opened this issue 3 years ago • 4 comments

New tool chain for sending simple digital triggers. These triggers are software timed and therefore are not recommended for time sensitive triggering.

Description

An interface was written including a dummy hardware. Also a logic and gui module were created for demonstration. As the most common use case of triggers is automation, the triggers will probably most often be fired from a notebook and not by the gui.

Motivation and Context

Sometimes an external controller needs to be reset or a state change needs to be triggered.

How Has This Been Tested?

tested with dummy on Linux 5.9.1-1-MANJARO

Screenshots:

very simple GUI with push buttons: image

Types of changes

  • [ ] Bug fix (non-breaking change which fixes an issue)
  • [x] New feature (non-breaking change which adds functionality)
  • [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

  • [x] My code follows the code style of this project.
  • [x] I have documented my changes in the changelog (documentation/changelog.md)
  • [ ] My change requires a change to the documentation.
  • [ ] I have updated the documentation accordingly.
  • [x] I have added/updated for the module the config example in the docstring of the class accordingly.
  • [x] I have checked that the change does not contain obvious errors (syntax, indentation, mutable default values).
  • [x] I have tested my changes using 'Load all modules' on the default dummy configuration with my changes included.
  • [ ] All changed Jupyter notebooks have been stripped of their output cells.

kay-jahnke avatar Nov 12 '20 11:11 kay-jahnke

When starting the dummy version on Windows 10, Windows has problems with the geometry of the application window. Loading the trigger module results in:

QWindowsWindow::setGeometry: Unable to set geometry 105x86+907+483 on QWidgetWindow/'MainWindowWindow'. Resulting geometry: 120x86+907+483 (frame: 8, 31, 8, 8, custom margin: 0, 0, 0, 0, minimum size: 50x86, maximum size: 16777215x16777215). QWindowsWindow::setGeometry: Unable to set geometry 105x117+907+483 on QWidgetWindow/'MainWindowWindow'. Resulting geometry: 120x117+907+483 (frame: 8, 31, 8, 8, custom margin: 0, 0, 0, 0, minimum size: 50x117, maximum size: 16777215x16777215). QWindowsWindow::setGeometry: Unable to set geometry 105x148+907+483 on QWidgetWindow/'MainWindowWindow'. Resulting geometry: 120x148+907+483 (frame: 8, 31, 8, 8, custom margin: 0, 0, 0, 0, minimum size: 56x148, maximum size: 16777215x16777215). QWindowsWindow::setGeometry: Unable to set geometry 105x179+907+483 on QWidgetWindow/'MainWindowWindow'. Resulting geometry: 120x179+907+483 (frame: 8, 31, 8, 8, custom margin: 0, 0, 0, 0, minimum size: 56x179, maximum size: 16777215x16777215).

GRexBayer avatar Nov 24 '20 13:11 GRexBayer

Besides the Geometry problem by Windows 10, the dummy version seems to run without problems. Pressed all the buttons and they act as expected. OS info: OS Name Microsoft Windows 10 Pro Version 10.0.19041 Build 19041

GRexBayer avatar Nov 24 '20 14:11 GRexBayer

@GRexBayer fixed the warnings by reworking the gui. Please test again.

kay-jahnke avatar Nov 27 '20 10:11 kay-jahnke

Found no warnings, the window is displayed with an appropriate size! Checked hopefully thoroughly enough. Pressed all buttons, deactivated the module and restarted QuDi.

GRexBayer avatar Nov 27 '20 11:11 GRexBayer