RESET_T3DSO1XXX
 
 Resets an T3DSO1000(A)-2000 oscilloscope. This is the same as pressing [Default] on the front panel.
Requires a CONNECT_T3DSO1XXX block at the start of the app to connect with
the instrument. The VISA address will then be listed under 'connection'.
This block should work with any Teledyne LeCroy T3DSO1000(A)-2000 series oscilloscope.  Params:    connection : VisaConnection  The VISA address (requires the CONNECT_T3DSO1XXX block).     Returns:    out : Optional[DataContainer]  None    
   Python Code
from flojoy import flojoy, DataContainer, VisaConnection
from typing import Optional
from time import sleep
import logging
@flojoy(inject_connection=True)
def RESET_T3DSO1XXX(
    connection: VisaConnection,
    default: Optional[DataContainer] = None,
) -> Optional[DataContainer]:
    """Resets an T3DSO1000(A)-2000 oscilloscope.
    This is the same as pressing [Default] on the front panel.
    Requires a CONNECT_T3DSO1XXX block at the start of the app to connect with
    the instrument. The VISA address will then be listed under 'connection'.
    This block should work with any Teledyne LeCroy T3DSO1000(A)-2000 series oscilloscope.
    Parameters
    ----------
    connection: VisaConnection
        The VISA address (requires the CONNECT_T3DSO1XXX block).
    Returns
    -------
    Optional[DataContainer]
        None
    """
    scope = connection.get_handle()
    scope.write("*RST")
    try_nb = 0
    # Wait for the scope to reset
    while True:
        logging.info("Waiting for scope to reset ...")
        try:
            scope.query("INR?")
        except Exception as e:
            if "VI_ERROR_IO (-1073807298)" in str(e) and try_nb < 10:
                sleep(2)
                try_nb += 1
                continue
            else:
                raise e
        break
    sleep(1)  # Extra time to make sure the scope is ready
    return None
Example
Having problems with this example app? Join our Discord community and we will help you out!
This app shows how to use the blocks for a T3DSO1000(A)-2000 oscilloscope.
Blocks used:
- CONNECT_T3DSO1XXX
- RESET_T3DSO1XXX
- AUTO_SETUP_T3DSO1XXX
- DISPLAY_ON_OFF_T3DSO1XXX
- SET_HORIZONTAL_SCALE_T3DSO1XXX
- SET_VERTICAL_SCALE_T3DSO1XXX
- EXTRACT_TRACE_T3DSO1XXX
- MEASUREMENT_T3DSO1XXX
- SCREENSHOT_T3DSO1XXX
- 2x BIG_NUMBER
- SCATTER
- IMAGE
The blocks were connected as shown, and the app was run. The result displayed the trace of the signal, the frequency, and the amplitude of the signal, along with a screenshot of the oscilloscope screen for verification.