Invoke pause in the sequencer

Hi,
is there a way to invoke the pause function from within the sequencer?
I have the current setup: I have a setup which is rather manual - I have to manually patch a cable to connect to a certain pin on my device or have to change samples in my holder.
Currently, I setup a sequencer that has a hold after each measurement that allows me to change the wire to a new pin and after the last pin on a sample I click pause to swap a sample. Instead of hold I would like to use the pause function of the sequencer. Is there a way to do this?
Best,
Jörn

1 Like

Hi Jörn,

there are two ways to do this:

You can add a “Condition” module that can trigger the action “pause”. As condition you can simply test for True is True to make sure it is always triggered.

The more elegant way is to use the module “UserIO” that can generate a blocking message box with a message like “Please change pin and then press Ok”

You can copy & paste the below json snippet into your sequencer to see the example in SweepMe!. Just make sure you have all modules and drivers activated beforehand.

{
  "child_items": [
    {
      "child_items": [
        {
          "child_items": [],
          "is_checked": true,
          "is_expanded": true,
          "module_details": {
            "module_type": "UserIO",
            "Label": "UserIO1",
            "value": "",
            "Type": "MessageBox (Information)",
            "Message": "Please change the pin and press Ok",
            "Variable": "Var",
            "Unit": "",
            "Maximum": "",
            "Minimum": "",
            "Choices": "",
            "Blocking": true,
            "Autoclose": true,
            "Comment": ""
          }
        },
        {
          "child_items": [
            {
              "child_items": [],
              "is_checked": true,
              "is_expanded": true,
              "module_details": {
                "module_type": "SMU",
                "Label": "SMU1",
                "value": "",
                "Device": "SMU-Simulation_Diode",
                "Channel": "",
                "Port": "",
                "SweepValue": "SweepEditor",
                "SweepMode": "Voltage in V",
                "RouteOut": "Front",
                "4wire": false,
                "Compliance": "0.001",
                "SkipCompliance": false,
                "Speed": "Fast",
                "Range": "Auto",
                "RangeVoltage": "Auto",
                "Average": 1,
                "Configuration": "",
                "PostProcessingResistance": false,
                "PostProcessingConductance": false,
                "PostProcessingPower": false,
                "ShowPulse": false,
                "CheckPulse": false,
                "PulseCount": "1",
                "PulseOffLevel": "0",
                "PulseOnTime": "200e-6",
                "PulseOffTime": "200e-3",
                "PulsePeriod": "1e-3",
                "PulseDelay": "0.0",
                "PulseMeasStart": 50,
                "PulseMeasTime": 30,
                "PulseRiseTime": "100e-9",
                "PulseFallTime": "100e-9",
                "PulseImpedance": "200e-3",
                "SweepEditor": {
                  "sweeps": [
                    {
                      "loop": "1",
                      "start": "-2.0",
                      "end": "2.0",
                      "step_points": "0.02",
                      "scaling": "Step width",
                      "hold": "0.0"
                    }
                  ]
                },
                "ListSweepCheck": false,
                "ListSweepType": "Sweep",
                "ListSweepStart": "0.0",
                "ListSweepEnd": "1.0",
                "ListSweepStepPointsType": "Step width:",
                "ListSweepStepPointsValue": "0.1",
                "ListSweepDual": false,
                "ListSweepCustomValues": "",
                "ListSweepHoldtime": "0.1",
                "ListSweepDelaytime": "0.0",
                "Comment": ""
              }
            }
          ],
          "is_checked": true,
          "is_expanded": true,
          "module_details": {
            "module_type": "MakeFile",
            "Label": "MakeFile1",
            "value": "ID",
            "FileID": "ID",
            "ShowAdvancedOptions": false,
            "BranchIndex": true,
            "FileIndex": true,
            "ModuleLabels": true,
            "Comment": ""
          }
        }
      ],
      "is_checked": true,
      "is_expanded": true,
      "module_details": {
        "module_type": "Switch",
        "Label": "Switch1",
        "value": "",
        "Device": "Switch-Arduino_MCP4728",
        "Channel": "0",
        "Port": "",
        "SweepValue": "SweepEditor",
        "SweepMode": "Voltage in V",
        "Parameters": {
          "I2C Address": "0",
          "Voltage reference": "Internal 2.048 V",
          "External voltage in V": "5.0"
        },
        "Configuration": "",
        "SweepBox": {
          "sweep_values": ""
        },
        "SweepEditor": {
          "sweeps": [
            {
              "loop": "0",
              "start": "0.0",
              "end": "0.0",
              "step_points": "0.1",
              "scaling": "Step width",
              "hold": "0.0"
            }
          ]
        },
        "Comment": ""
      }
    }
  ],
  "data_type": "Sequencer",
  "version": "v1"
}

Best, Axel

2 Likes

Hi Axel,
the “UserIO” works like a charm!
Thanks for the quick response :slight_smile:
Best,
Jörn

2 Likes