def verify_current_pulse_settings(spike_safe_socket):
    spike_safe_socket.send_scpi_command('SOUR1:PULS:WIDT?')
    pulse_width = spike_safe_socket.read_data()
    log_and_print('Updated Pulse Width: {}s'.format(pulse_width))

    spike_safe_socket.send_scpi_command('SOUR1:PULS:DCYC?')
    duty_cycle = spike_safe_socket.read_data()
    log_and_print('Updated Duty Cycle: {}%'.format(duty_cycle))

    spike_safe_socket.send_scpi_command('SOUR1:PULS:PER?')
    pulse_period = spike_safe_socket.read_data()
    log_and_print('Updated Pulse Period: {}s'.format(pulse_period))

    log_all_events(spike_safe_socket)

    # space out the log and terminal output for clarity
    log_and_print('')
                    format='%(asctime)s, %(levelname)s, %(message)s',
                    datefmt='%m/%d/%Y %I:%M:%S',
                    level=logging.INFO)

### start of main program
try:
    log.info("MeasuringDcStaircaseVoltages.py started.")

    # instantiate new TcpSocket to connect to PSMU
    tcp_socket = TcpSocket()
    tcp_socket.open_socket(ip_address, port_number)

    # reset to default state and check for all events,
    # it is best practice to check for errors after sending each command
    tcp_socket.send_scpi_command('*RST')
    log_all_events(tcp_socket)

    # set Channel 1's mode to DC Dynamic mode and check for all events
    tcp_socket.send_scpi_command('SOUR1:FUNC:SHAP DCDYNAMIC')
    log_all_events(tcp_socket)

    # set Channel 1's voltage to 10 and check for all events
    tcp_socket.send_scpi_command('SOUR1:VOLT 10')
    log_all_events(tcp_socket)

    # set Channel 1's Auto Range to On and check for all events
    tcp_socket.send_scpi_command('SOUR1:CURR:RANG:AUTO 1')
    log_all_events(tcp_socket)

    # set Channel 1's current to start current and check for all events
    tcp_socket.send_scpi_command('SOUR1:CURR {}'.format(start_current_A))