Dropsdriver
DropsDriver
Attributes
Classes
myClient
Source code in dod/DropsDriver.py
Attributes
supported_ends_handler
instance-attribute
Functions
__del__
auto_drop
Runs the particular task that is linked to the UI button. Its name is ‘AutoDropDetection’. In principalm this endpoint is not needed. ‘ExecuteTask’ can be used instead.
Source code in dod/DropsDriver.py
close_dialog
In situations of “Status” = “Dialog” the endpoint Status provides the dialog’s reference, message text and button labels. (If the response of ‘Button2’ is empty, there is only one selection available, typically with the label ‘OK.). This endpoint allows to close the dialog by specifying the reference and t he selection (“1” or “2”). The reference is individual, incrementing integer for each occurrence of a dialog, it starts a “1” when the device is initialized.
In case of more than one open dialogs “Status” reports the last one, which is typically the first to be closed. But the remote control can try to close the earlier dialog.
Source code in dod/DropsDriver.py
connect
disconnect
The client can end the connection with access to ‘Do’ requests. Clicking the button ‘Disable API Control’ on the UI has the same effect.
dispensing
Switches between the dispensing states ‘Trigger’ (includes ‘Stat Continuous Dispensing’), ‘Free’ (‘Continuous Dispensing’ without trigger) and ‘Off’. Returns a reject if the value is not one of the three strings.
(Some tasks can set the state to ‘Off’ without restarting dispensing afterwards.)
Source code in dod/DropsDriver.py
execute_task
Runs a task from the list of ‘TaskName’. This operation is safe in general. It simulates the analog action on the UI.
Source code in dod/DropsDriver.py
get_current_positions
Returns the name and properties of the last selected position, together with the real current position coordinates. (The drives can have been stepped away from the stored position or they include small dispenser related offsets.)
Source code in dod/DropsDriver.py
get_drive_range
get_nozzle_status
Returns the activated and selected nozzles an the parameters for all activated nozzles. The parameter ‘Trigger’ (true/false) is not linked to a nozzle.
Note: Nozzle parameters ‘ID’ (number), ‘Volt’, ‘Pulse’ (name or number), ‘Freq’ , ‘Volume’ appear as an array of strings (JSON).
Source code in dod/DropsDriver.py
get_position_names
get_pulse_names
get_response
get_status
get_task_details
Returns the content of the tasks that is specified be ‘TaskName’.
get_task_names
middle_invocation_wrapper
Define a decorator function to adorn all of these 'high' middleware calls Logs what functions is being called and returns the response.
Source code in dod/DropsDriver.py
move
Moves the drive to a position taken from the list of 'PositionNames'
move_to_interaction_point
The moving to the predefined position of the interaction point corresponds to the use of the endpoint ‘Move’. But only with this endpoint the UI elemts for the dispensers’ position adjustment become visible on the UI. The request simulates the button (beam simbol) on the UI.
Source code in dod/DropsDriver.py
move_x
The X drive can be sent to any coordinate (the value’s unit is µm) within the allowed range.
NOTE: This does not include a Z move up to the safe height nor any other safety feature checking whether the move from the current position to the selected coordinate can lead to collision or breaking of a dispenser Tip.
Source code in dod/DropsDriver.py
move_y
move_z
reset_error
This endpoint is needed if after closing all (error) dialogs the status “Error” persists and “ErrorMessage” (header) is not “NA”.
select_nozzle
Set the selected nozzle for dispensing and task execution etc. Returns a reject if the channel value is not one of the ‘Activated Nozzles’ (see ‘NozzleStatus’).
Source code in dod/DropsDriver.py
send
setLED
Sets the two strobe LED parameters ‘Delay’ (0 to 6500) and Duration (1 to 65000). Returns a reject if one of the values is out of range.
Source code in dod/DropsDriver.py
set_cooling_temp
Sets the temperature of the cooling device. Besides the setting of a °C value (float), there is the option to send the string “dewpoint”, which enables an automatic adjustment.
Source code in dod/DropsDriver.py
set_humidity
set_ip_offest
This endpoint uses the current coordinates for the currently selected nozzle (SelectNozzle) to set the IP position (Nozzle 1) or calculates and sets the IP offsets (Nozzles 2, …). (Note: The ‘Nozzle Offset’ values in the nozzle parameter table are always considered. Changing these would require a readjustment of the IP offsets.) Offsets are rejected if they exceed a maximum of 2 mm. Thus, the selected nozzle must be moved to the IP (InteractionPoint) before requesting SetIPOffset.
Source code in dod/DropsDriver.py
set_nozzle_parameters
set_nozzle_parameters(active_nozzles: str, selected_nozzles: str, volts: int, pulse: str, frequency: int)
Sets the list of activate nozzles and of the selected nozzles for operations that work with more than one nozzle. (This overwrites and is overwritten by SelectNozzle, which only sets one nozzle channel.) Both values are strings with commas separating the channel numbers (e.g. “1,2,3”). ‘Volt’ and ‘Freq’ are integers. ‘Pulse’ is read as a string. It is either a integer number or the pulse shape name for sciPULSE channels (from PulseNames).
Source code in dod/DropsDriver.py
stop_task
take_probe
This endpoint requires the presence of the task ‘ProbeUptake’ (attached). If that is not given, the return is not a reject, but nothing happens. The parameters are
‘Channel’ (number of nozzle, includes effect as ‘SelectNozzle’), ‘ProbeWell’ (e.g. A1), Volume (µL). Returns a reject if ‘Channel’ is not among ‘Active Nozzles’, Volume is > 250 or ‘ProbeWell’ is not one of the allowed wells for the selected nozzle.