PinSet

In short

Manually set pinouts on attached FPGA.

Settings

Global:

  • Module_Name - String:Set this to PinSet to load this page's module.
  • Command_Name - String:The command that will trigger this module when called by a user or script.
  • Warner - String:What system will be used to alert of a failure by this Driver. There are a few keywords here: default will use the systems default (set in the .ChamberConfig file), and if empty it will not attempt an alert at all.
  • Checker - String:This feature is still in development!

Advanced:

  • DebugMode - Boolean: Print usage details to standard out. Leave this on by default.
  • Forbidden - Comma-delimited-string-array: Forbidden pin patterns, seperated by commas. 'x' represents a 1 OR 0 Example: xxxxxx1xxxxx001xxxxxxxxxxxxxxxxx

Disclaimer

Pin setting is an advanced feature, you should always test outputs with the proper equipment prior to usage on live hardware.

Usage

PinSet is called with a literal 32 length string made up of x, 0, and 1. Each character represents one pin on the FPGA. 1 turns it on, 0 off, and x leaves it as is. Spaces are ignored.

Example usage

Here we define 3 functions to set pins 15, 16, and 17 respectively.

Defining pinset calls

function set15(value) {
  if (value)
    set('pin', 'xxxxxxxxxxxxxxx 1xx xxxxxxxxxxxxxx')
  else
    set('pin', 'xxxxxxxxxxxxxxx 0xx xxxxxxxxxxxxxx')
}

function set16(value) {
  if (value)
    set('pin', 'xxxxxxxxxxxxxxx x1x xxxxxxxxxxxxxx')
  else
    set('pin', 'xxxxxxxxxxxxxxx x0x xxxxxxxxxxxxxx')
}

function set16(value) {
  if (value)
    set('pin', 'xxxxxxxxxxxxxxx xx1 xxxxxxxxxxxxxx')
  else
    set('pin', 'xxxxxxxxxxxxxxx xx0 xxxxxxxxxxxxxx')
}

Calling pinset

set15(1)
set16(1)
set17(1)

wait('5s')

set15(0)
set16(0)
set17(0)

Template configuration

#####################
#   Basic Settings  #
#####################

# The name of the module to load. This might be SmartLight or LegacyI2C_DoubleRail.
Module_Name=PinSet

# The command that will trigger this module when called by a user or script.
Command_Name=STRING

# What system will be used to alert of a failure by this Driver. There are a few
#   keywords here: <code>default</code> will use the systems default (set in the
#   .ChamberConfig file), and if empty it will not attempt an alert at all.
Warner=STRING

# This feature is still in development!
Checker=STRING


#####################
# Advanced Settings #
#####################

# Print usage details to standard out. Leave this on by default.
DebugMode=BOOLEAN

# Forbidden pin patterns, seperated by commas. 'x' represents a 1 OR 0
# Example: xxxxxx1xxxxx001xxxxxxxxxxxxxxxxx
Forbidden=COMMA-DELIMITED-STRING-ARRAY

Normal configurations

  • Universal

    #####################
    #   Basic Settings  #
    #####################
    
    # The name of the module to load. This might be SmartLight or LegacyI2C_DoubleRail.
    Module_Name=PinSet
    
    # The command that will trigger this module when called by a user or script.
    Command_Name=STRING
    
    # What system will be used to alert of a failure by this Driver. There are a few
    #   keywords here: <code>default</code> will use the systems default (set in the
    #   .ChamberConfig file), and if empty it will not attempt an alert at all.
    Warner=default
    
    # This feature is still in development!
    Checker=
    
    
    #####################
    # Advanced Settings #
    #####################
    
    # Print usage details to standard out. Leave this on by default.
    DebugMode=true
    
    # Forbidden pin patterns, seperated by commas. 'x' represents a 1 OR 0
    # Example: xxxxxx1xxxxx001xxxxxxxxxxxxxxxxx
    Forbidden=