def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ core device " "RTIO analysis tool") verbosity_args(parser) parser.add_argument("--device-db", default="device_db.pyon", help="device database file (default: '%(default)s')") parser.add_argument("-r", "--read-dump", type=str, default=None, help="read raw dump file instead of accessing device") parser.add_argument("-p", "--print-decoded", default=False, action="store_true", help="print raw decoded messages") parser.add_argument("-w", "--write-vcd", type=str, default=None, help="format and write contents to VCD file") parser.add_argument("-d", "--write-dump", type=str, default=None, help="write raw dump file") return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ master") group = parser.add_argument_group("network") group.add_argument( "--bind", default="::1", help="hostname or IP address to bind to") group.add_argument( "--port-notify", default=3250, type=int, help="TCP port to listen to for notifications (default: %(default)d)") group.add_argument( "--port-control", default=3251, type=int, help="TCP port to listen to for control (default: %(default)d)") group = parser.add_argument_group("databases") group.add_argument("-d", "--ddb", default="ddb.pyon", help="device database file") group.add_argument("-p", "--pdb", default="pdb.pyon", help="parameter database file") group = parser.add_argument_group("repository") group.add_argument( "-g", "--git", default=False, action="store_true", help="use the Git repository backend") group.add_argument( "-r", "--repository", default="repository", help="path to the repository (default: '%(default)s')") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ core device " "packet capture tool") verbosity_args(parser) parser.add_argument("-H", "--host", metavar="HOST", type=str, default="lab.m-labs.hk", help="SSH host where the development board is located") parser.add_argument( "-D", "--device", metavar="DEVICE", type=str, default="kc705.lab.m-labs.hk", help="address or domain corresponding to the development board") parser.add_argument("-f", "--file", metavar="PCAP_FILE", type=str, default="coredevice.pcap", help="Location to retrieve the pcap file into") parser.add_argument("command", metavar="COMMAND", type=str, default=[], nargs=argparse.REMAINDER, help="command to execute while capturing") return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ core device " "development tool") verbosity_args(parser) parser.add_argument("-H", "--host", metavar="HOST", type=str, default="lab.m-labs.hk", help="SSH host where the development board is located") parser.add_argument("-D", "--device", metavar="DEVICE", type=str, default="kc705.lab.m-labs.hk", help="address or domain corresponding to the development board") parser.add_argument("-s", "--serial", metavar="SERIAL", type=str, default="/dev/ttyUSB_kc705", help="TTY device corresponding to the development board") parser.add_argument("-t", "--target", metavar="TARGET", type=str, default="kc705_dds", help="Target to build, one of: " "kc705_dds kc705_drtio_master kc705_drtio_satellite") parser.add_argument("-c", "--config", metavar="TARGET_CFG", type=str, default="openocd-kc705.cfg", help="OpenOCD configuration file corresponding to the development board") parser.add_argument("actions", metavar="ACTION", type=str, default=[], nargs="+", help="actions to perform, sequence of: " "build reset boot boot+log connect hotswap clean") return parser
def get_argparser(): default_db_file = os.path.join(get_user_config_dir(), "artiq_browser.pyon") parser = argparse.ArgumentParser(description="ARTIQ Browser") parser.add_argument("--db-file", default=default_db_file, help="database file for local browser settings " "(default: %(default)s)") parser.add_argument("--browse-root", default="", help="root path for directory tree " "(default %(default)s)") parser.add_argument("-s", "--server", default="::1", help="hostname or IP of the master to connect to " "when uploading datasets") parser.add_argument("--port", default=3251, type=int, help="TCP port to use to connect to the master") parser.add_argument("select", metavar="SELECT", nargs="?", help="directory to browse or file to load") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ core device " "log download tool") verbosity_args(parser) parser.add_argument("--device-db", default="device_db.pyon", help="device database file (default: '%(default)s')") return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ Dashboard") parser.add_argument("-s", "--server", default="::1", help="hostname or IP of the master to connect to") parser.add_argument("--port-notify", default=3250, type=int, help="TCP port to connect to for notifications") parser.add_argument("--port-control", default=3251, type=int, help="TCP port to connect to for control") parser.add_argument("--port-broadcast", default=1067, type=int, help="TCP port to connect to for broadcasts") parser.add_argument( "--db-file", default=None, help="database file for local GUI settings, " "by default in {} and dependant on master hostname".format( get_user_config_dir())) verbosity_args(parser) return parser
def get_argparser(): default_db_file = os.path.join(get_user_config_dir(), "artiq_dashboard.pyon") parser = argparse.ArgumentParser(description="ARTIQ Dashboard") parser.add_argument("-s", "--server", default="::1", help="hostname or IP of the master to connect to") parser.add_argument("--port-notify", default=3250, type=int, help="TCP port to connect to for notifications") parser.add_argument("--port-control", default=3251, type=int, help="TCP port to connect to for control") parser.add_argument("--port-broadcast", default=1067, type=int, help="TCP port to connect to for broadcasts") parser.add_argument("--db-file", default=default_db_file, help="database file for local GUI settings " "(default: %(default)s)") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ core device " "log tool") verbosity_args(parser) parser.add_argument("--device-db", default="device_db.py", help="device database file (default: '%(default)s')") subparsers = parser.add_subparsers(dest="action") p_clear = subparsers.add_parser("clear", help="clear log buffer") p_set_level = subparsers.add_parser( "set_level", help="set minimum level for messages to be logged") p_set_level.add_argument( "level", metavar="LEVEL", type=str, help="log level (one of: OFF ERROR WARN INFO DEBUG TRACE)") p_set_uart_level = subparsers.add_parser( "set_uart_level", help="set minimum level for messages to be logged " "to UART") p_set_uart_level.add_argument( "level", metavar="LEVEL", type=str, help="log level (one of: OFF ERROR WARN INFO DEBUG TRACE)") return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ controller for TTI QL355P (TP) single (triple) channel power supplies") simple_network_args(parser, 4006) parser.add_argument("-d", "--device", default=None, help="serial device. See documentation for how to " "specify a USB Serial Number.") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ Browser") parser.add_argument( "--db-file", default="artiq_browser.pyon", help="database file for local browser settings") parser.add_argument("PATH", nargs="?", help="browse path or file") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="""HUT2 controller. Use this controller for Anel HUT2 power distribution devices.""") parser.add_argument("-d", "--device", default=None, help="Device host name or IP address.") simple_network_args(parser, 3271) verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="""PICam controller. Use this controller for PICam cameras (Princeton Instruments).""") simple_network_args(parser, 3258) parser.add_argument("--simulation", action="store_true", help="use demo camera") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ controller for the Rohde&Schwarz SMA100A synthesiser") parser.add_argument("-i", "--ipaddr", default=None, help="IP address of synth") parser.add_argument("--simulation", action="store_true", help="Put the driver in simulation mode, even if " "--ipaddress is used.") simple_network_args(parser, 4004) verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ controller for the Thorlabs MDT693B or MDT694B 3 (1) channel open-loop piezo controller") simple_network_args(parser, 4002) parser.add_argument("-d", "--device", default=None, help="serial device. See documentation for how to " "specify a USB Serial Number.") parser.add_argument("--simulation", action="store_true", help="Put the driver in simulation mode, even if " "--device is used.") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser( description="ARTIQ controller for the Novatech 409B 4-channel DDS box") simple_network_args(parser, 3254) parser.add_argument("-d", "--device", default=None, help="serial port.") parser.add_argument( "--simulation", action="store_true", help="Put the driver in simulation mode, even if --device is used.") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="NI PXI 6733 controller") simple_network_args(parser, 3256) parser.add_argument("-C", "--channels", default=None, help="List of channels (e.g. Dev1/ao0, Dev1/ao1:3).") parser.add_argument("-c", "--clock", default="PFI5", help="Input clock pin name (default: PFI5)") parser.add_argument("--simulation", action='store_true', help="Put the driver in simulation mode, even if " "--channels is used.") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser( description="ARTIQ controller for the Novatech 409B 4-channel DDS box") simple_network_args(parser, 3254) parser.add_argument( "-d", "--device", default=None, help="serial port.") parser.add_argument( "--simulation", action="store_true", help="Put the driver in simulation mode, even if --device is used.") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser() parser.add_argument("-d", "--device", default=None, help="serial device. See documentation for how to " "specify a USB Serial Number.") parser.add_argument("--simulation", action="store_true", help="Put the driver in simulation mode, even if " "--device is used.") simple_network_args(parser, 4001) verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser( formatter_class=argparse.RawDescriptionHelpFormatter, description="ARTIQ flashing/deployment tool", epilog="""\ Valid actions: * gateware: write gateware bitstream to flash * bootloader: write bootloader to flash * storage: write storage image to flash * firmware: write firmware to flash * load: load gateware bitstream into device (volatile but fast) * start: trigger the target to (re)load its gateware bitstream from flash Prerequisites: * Connect the board through its/a JTAG adapter. * Have OpenOCD installed and in your $PATH. * Have access to the JTAG adapter's devices. Udev rules from OpenOCD: 'sudo cp openocd/contrib/99-openocd.rules /etc/udev/rules.d' and replug the device. Ensure you are member of the plugdev group: 'sudo adduser $USER plugdev' and re-login. """) verbosity_args(parser) parser.add_argument("-n", "--dry-run", default=False, action="store_true", help="only show the openocd script that would be run") parser.add_argument("-H", "--host", metavar="HOSTNAME", type=str, default=None, help="SSH host where the development board is located") parser.add_argument("-J", "--jump", type=str, default=None, help="SSH host to jump through") parser.add_argument("-t", "--target", default="kc705", help="target board, default: %(default)s, one of: " "kc705 kasli sayma") parser.add_argument("-V", "--variant", default=None, help="board variant") parser.add_argument("-I", "--preinit-command", default=[], action="append", help="add a pre-initialization OpenOCD command. " "Useful for selecting a development board " "when several are connected.") parser.add_argument("-f", "--storage", help="write file to storage area") parser.add_argument("-d", "--dir", help="look for files in this directory") parser.add_argument("--srcbuild", help="look for bitstream, bootloader and firmware in this " "ARTIQ source build tree") parser.add_argument("action", metavar="ACTION", nargs="*", default="gateware bootloader firmware start".split(), help="actions to perform, default: %(default)s") return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ core device " "configuration tool") verbosity_args(parser) parser.add_argument("--device-db", default="device_db.py", help="device database file (default: '%(default)s')") subparsers = parser.add_subparsers(dest="action") subparsers.required = True p_read = subparsers.add_parser("read", help="read key from core device config") p_read.add_argument("key", metavar="KEY", type=str, help="key to be read from core device config") p_write = subparsers.add_parser("write", help="write key-value records to core " "device config") p_write.add_argument("-s", "--string", nargs=2, action="append", default=[], metavar=("KEY", "STRING"), type=str, help="key-value records to be written to core device " "config") p_write.add_argument("-f", "--file", nargs=2, action="append", type=str, default=[], metavar=("KEY", "FILENAME"), help="key and file whose content to be written to " "core device config") p_delete = subparsers.add_parser("delete", help="delete key from core device config") p_delete.add_argument("key", metavar="KEY", nargs=argparse.REMAINDER, default=[], type=str, help="key to be deleted from core device config") subparsers.add_parser("erase", help="fully erase core device config") return parser
def get_argparser(): parser = argparse.ArgumentParser( description= "ARTIQ controller for TTI QL355P (TP) single (triple) channel power supplies" ) simple_network_args(parser, 4006) parser.add_argument("-d", "--device", default=None, help="serial device. See documentation for how to " "specify a USB Serial Number.") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ core device debug tool") verbosity_args(parser) parser.add_argument("--device-db", default="device_db.py", help="device database file (default: '%(default)s')") subparsers = parser.add_subparsers(dest="action") p_allocator = subparsers.add_parser("allocator", help="show heap layout") return parser
def get_argparser(): default_db_file = os.path.join(get_user_config_dir(), "artiq_dashboard.pyon") parser = argparse.ArgumentParser(description="ARTIQ Dashboard") parser.add_argument("-s", "--server", default="::1", help="hostname or IP of the master to connect to") parser.add_argument("--port-notify", default=3250, type=int, help="TCP port to connect to for notifications") parser.add_argument("--port-control", default=3251, type=int, help="TCP port to connect to for control") parser.add_argument("--port-broadcast", default=1067, type=int, help="TCP port to connect to for broadcasts") parser.add_argument( "--db-file", default=default_db_file, help="database file for local GUI settings " "(default: %(default)s)" ) verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser() parser.add_argument("--trapDacDevice", default=None, help="Trap DC Dac serial device") parser.add_argument("--trapRFDevice", default=None, help="Trap RF serial device") parser.add_argument("--simulation", action="store_true", help="Put the driver in simulation mode, even if " "--device is used.") simple_network_args(parser, 4005) verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ core device " "RTIO analysis tool") verbosity_args(parser) parser.add_argument("--device-db", default="device_db.pyon", help="device database file (default: '%(default)s')") parser.add_argument( "-r", "--read-dump", type=str, default=None, help="read raw dump file instead of accessing device" ) parser.add_argument("-p", "--print-decoded", default=False, action="store_true", help="print raw decoded messages") parser.add_argument("-w", "--write-vcd", type=str, default=None, help="format and write contents to VCD file") parser.add_argument("-d", "--write-dump", type=str, default=None, help="write raw dump file") return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ core device " "development tool") verbosity_args(parser) parser.add_argument("-H", "--host", metavar="HOST", type=str, default="lab.m-labs.hk", help="SSH host where the development board is located") parser.add_argument( "-D", "--device", metavar="DEVICE", type=str, default="kc705.lab.m-labs.hk", help="address or domain corresponding to the development board") parser.add_argument( "-s", "--serial", metavar="SERIAL", type=str, default="/dev/ttyUSB_kc705", help="TTY device corresponding to the development board") parser.add_argument("-t", "--target", metavar="TARGET", type=str, default="kc705_dds", help="Target to build, one of: " "kc705_dds kc705_drtio_master kc705_drtio_satellite") parser.add_argument( "-c", "--config", metavar="TARGET_CFG", type=str, default="openocd-kc705.cfg", help="OpenOCD configuration file corresponding to the development board" ) parser.add_argument("actions", metavar="ACTION", type=str, default=[], nargs="+", help="actions to perform, sequence of: " "build reset boot boot+log connect hotswap clean") return parser
def get_argparser(): parser = argparse.ArgumentParser(description="PDQ2 controller") simple_network_args(parser, 3252) parser.add_argument( "-d", "--device", default=None, help="serial port.") parser.add_argument( "--simulation", action="store_true", help="Put the driver in simulation mode, even if --device is used.") parser.add_argument( "--dump", default="pdq2_dump.bin", help="file to dump pdq2 data into, for later simulation") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser() parser.add_argument("-P", "--product", required=True, help="type of the Thorlabs T-Cube device to control", choices=["TDC001", "TPZ001"]) parser.add_argument("-d", "--device", default=None, help="serial device. See documentation for how to " "specify a USB Serial Number.") parser.add_argument("--simulation", action="store_true", help="Put the driver in simulation mode, even if " "--device is used.") simple_network_args(parser, 3255) verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser( description="ARTIQ core device development tool", formatter_class=argparse.ArgumentDefaultsHelpFormatter) verbosity_args(parser) parser.add_argument("-t", "--target", metavar="TARGET", type=str, default="kasli", help="target to build, one of: " "kc705 kasli sayma") parser.add_argument("-V", "--variant", metavar="VARIANT", type=str, default=None, help="variant to build, dependent on the target") parser.add_argument("-g", "--gateware", default=False, action="store_true", help="build/flash gateware, not just software") parser.add_argument("--args", metavar="ARGS", type=shlex.split, default=[], help="extra arguments for gateware/firmware build") parser.add_argument("-H", "--host", type=str, default="lab.m-labs.hk", help="SSH host where the development board is located") parser.add_argument("-J", "--jump", type=str, default=None, help="SSH host to jump through") parser.add_argument("-b", "--board", type=str, default="{board_type}-1", help="board to connect to on the development SSH host") parser.add_argument("-B", "--board-file", type=str, default="/var/lib/artiq/boards/{board}", help="the board file containing the openocd initialization commands; " "it is also used as the lock file") parser.add_argument("-s", "--serial", type=str, default="/dev/ttyUSB_{board}", help="TTY device corresponding to the development board") parser.add_argument("-d", "--device", type=str, default="{board}", help="address or domain corresponding to the development board") parser.add_argument("-w", "--wait", action="store_true", help="wait for the board to unlock instead of aborting the actions") parser.add_argument("actions", metavar="ACTION", type=str, default=[], nargs="+", help="actions to perform, sequence of: " "build clean reset flash flash+log load connect hotswap") return parser
def get_argparser(): parser = argparse.ArgumentParser( formatter_class=argparse.RawDescriptionHelpFormatter, description="ARTIQ flashing/deployment tool", epilog="""\ Valid actions: * gateware: write gateware bitstream to flash * bootloader: write bootloader to flash * storage: write storage image to flash * firmware: write firmware to flash * load: load gateware bitstream into device (volatile but fast) * start: trigger the target to (re)load its gateware bitstream from flash Prerequisites: * Connect the board through its/a JTAG adapter. * Have OpenOCD installed and in your $PATH. * Have access to the JTAG adapter's devices. Udev rules from OpenOCD: 'sudo cp openocd/contrib/99-openocd.rules /etc/udev/rules.d' and replug the device. Ensure you are member of the plugdev group: 'sudo adduser $USER plugdev' and re-login. """) verbosity_args(parser) parser.add_argument("-n", "--dry-run", default=False, action="store_true", help="only show the openocd script that would be run") parser.add_argument("-H", "--host", metavar="HOSTNAME", type=str, default=None, help="SSH host where the development board is located") parser.add_argument("-t", "--target", default="kc705", help="target board, default: %(default)s, one of: " "kc705 kasli sayma") parser.add_argument("-V", "--variant", default=None, help="board variant") parser.add_argument("-I", "--preinit-command", default=[], action="append", help="add a pre-initialization OpenOCD command. " "Useful for selecting a development board " "when several are connected.") parser.add_argument("-f", "--storage", help="write file to storage area") parser.add_argument("-d", "--dir", help="look for files in this directory") parser.add_argument("--srcbuild", help="look for bitstream, bootloader and firmware in this " "ARTIQ source build tree") parser.add_argument("action", metavar="ACTION", nargs="*", default="gateware bootloader firmware start".split(), help="actions to perform, default: %(default)s") return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ master") parser.add_argument("--bind", default="::1", help="hostname or IP address to bind to") parser.add_argument("--port-notify", default=3250, type=int, help="TCP port to listen to for notifications") parser.add_argument("--port-control", default=3251, type=int, help="TCP port to listen to for control") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="""PDQ controller. Use this controller for PDQ stacks that are connected via USB.""") simple_network_args(parser, 3252) parser.add_argument("-d", "--device", default=None, help="serial port") parser.add_argument("--simulation", action="store_true", help="do not open any device but dump data") parser.add_argument("--dump", default="pdq_dump.bin", help="file to dump simulation data into") parser.add_argument("-r", "--reset", default=False, action="store_true", help="reset device [%(default)s]") parser.add_argument("-b", "--boards", default=3, type=int, help="number of boards [%(default)s]") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser( description="""Laser SDK client controller. Use this controller for a TOPTICA DLC Pro. This exposes a low-level client (i.e. without knowledge of the parameter tree structure and types) as an ARTIQ device controller. Note: The param_type arguments to the get() method need to be passed as strings, not as types.""") parser.add_argument("-d", "--device", default=None, help="Device host name or IP address.") simple_network_args(parser, 3272) verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ GUI client") parser.add_argument( "-s", "--server", default="::1", help="hostname or IP of the master to connect to") parser.add_argument( "--port-notify", default=3250, type=int, help="TCP port to connect to for notifications") parser.add_argument( "--port-control", default=3251, type=int, help="TCP port to connect to for control") parser.add_argument( "--db-file", default="artiq_gui.pyon", help="database file for local GUI settings") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser( description="ARTIQ core device profiling tool") verbosity_args(parser) parser.add_argument("--device-db", default="device_db.py", help="device database file (default: '%(default)s')") subparsers = parser.add_subparsers(dest="action") subparsers.required = True p_start = subparsers.add_parser("start", help="start profiling") p_start.add_argument("--interval", metavar="MICROS", type=int, default=2000, help="sampling interval, in microseconds") p_start.add_argument("--hits-size", metavar="ENTRIES", type=int, default=8192, help="hit buffer size") p_start.add_argument( "--edges-size", metavar="ENTRIES", type=int, default=0, help="edge buffer size (edge profiling not implemented)") p_stop = subparsers.add_parser("stop", help="stop profiling") p_save = subparsers.add_parser("save", help="save profile") p_save.add_argument("output", metavar="OUTPUT", type=argparse.FileType("w"), help="file to save profile to, in Callgrind format") p_save.add_argument("firmware", metavar="FIRMWARE", type=str, help="path to firmware ELF file") p_save.add_argument("--no-compression", default=False, action='store_true', help="disable profile compression") return parser
def get_argparser(): parser = argparse.ArgumentParser( description="ARTIQ core device development tool", formatter_class=argparse.ArgumentDefaultsHelpFormatter) verbosity_args(parser) parser.add_argument("-t", "--target", metavar="TARGET", type=str, default="kc705", help="target to build, one of: " "kc705 kasli sayma") parser.add_argument("-V", "--variant", metavar="VARIANT", type=str, default=None, help="variant to build, dependent on the target") parser.add_argument("-g", "--build-gateware", default=False, action="store_true", help="build gateware, not just software") parser.add_argument("--args", metavar="ARGS", type=shlex.split, default=[], help="extra arguments for gateware/firmware build") parser.add_argument("-H", "--host", type=str, default="lab.m-labs.hk", help="SSH host where the development board is located") parser.add_argument("-b", "--board", type=str, default="{board_type}-1", help="board to connect to on the development SSH host") parser.add_argument("-B", "--board-file", type=str, default="/var/lib/artiq/boards/{board}", help="the board file containing the openocd initialization commands; " "it is also used as the lock file") parser.add_argument("-s", "--serial", type=str, default="/dev/ttyUSB_{board}", help="TTY device corresponding to the development board") parser.add_argument("-d", "--device", type=str, default="{board}.{host}", help="address or domain corresponding to the development board") parser.add_argument("-w", "--wait", action="store_true", help="wait for the board to unlock instead of aborting the actions") parser.add_argument("actions", metavar="ACTION", type=str, default=[], nargs="+", help="actions to perform, sequence of: " "build clean reset flash flash+log connect hotswap") return parser
def get_argparser(): parser = argparse.ArgumentParser( description= "ARTIQ controller for the Thorlabs MDT693B or MDT694B 3 (1) channel open-loop piezo controller" ) simple_network_args(parser, 4002) parser.add_argument("-d", "--device", default=None, help="serial device. See documentation for how to " "specify a USB Serial Number.") parser.add_argument("--simulation", action="store_true", help="Put the driver in simulation mode, even if " "--device is used.") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser( description="ARTIQ controller for the Lab Brick Digital Attenuator") parser.add_argument("-P", "--product", default="LDA-102", help="product type (default: %(default)s)", choices=["LDA-102", "LDA-602"]) simple_network_args(parser, 3253) parser.add_argument("-d", "--device", default=None, help="USB serial number of the device. " "The serial number is written on a sticker under " "the device, you should write for example " "-d \"SN:03461\". You must prepend enough 0s for " "it to be 5 digits. If omitted, the first " "available device will be used.") parser.add_argument("--simulation", action="store_true", help="Put the driver in simulation mode.") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="""PDQ2 client. Evaluates times and voltages, interpolates and uploads them to the controller.""") parser.add_argument("-s", "--server", default="::1", help="hostname or IP of the controller to connect to") parser.add_argument("--port", default=3252, type=int, help="TCP port to use to connect to the controller") parser.add_argument("-c", "--channel", default=0, type=int, help="channel: 3*board_num+dac_num [%(default)s]") parser.add_argument("-f", "--frame", default=0, type=int, help="frame [%(default)s]") parser.add_argument("-t", "--times", default="np.arange(5)*1e-6", help="sample times (s) [%(default)s]") parser.add_argument("-u", "--voltages", default="(1-np.cos(t/t[-1]*2*np.pi))/2", help="sample voltages (V) [%(default)s]") parser.add_argument("-o", "--order", default=3, type=int, help="interpolation (0: const, 1: lin, 2: quad," " 3: cubic) [%(default)s]") parser.add_argument("-e", "--free", default=False, action="store_true", help="software trigger [%(default)s]") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ GUI client") parser.add_argument("-s", "--server", default="::1", help="hostname or IP of the master to connect to") parser.add_argument("--port-notify", default=3250, type=int, help="TCP port to connect to for notifications") parser.add_argument("--port-control", default=3251, type=int, help="TCP port to connect to for control") parser.add_argument("--db-file", default="artiq_gui.pyon", help="database file for local GUI settings") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ core device boot tool") verbosity_args(parser) parser.add_argument("--device-db", default="device_db.py", help="device database file (default: '%(default)s')") subparsers = parser.add_subparsers(dest="action") p_reboot = subparsers.add_parser("reboot", help="reboot the currently running firmware") p_hotswap = subparsers.add_parser("hotswap", help="load the specified firmware in RAM") p_hotswap.add_argument("image", metavar="IMAGE", type=argparse.FileType("rb"), help="runtime image to be executed") return parser
def get_argparser(): parser = argparse.ArgumentParser() parser.add_argument("-P", "--product", required=True, help="type of the Thorlabs T-Cube device to control", choices=["tdc001", "tpz001"]) parser.add_argument("-d", "--device", default=None, help="serial device. See documentation for how to " "specify a USB Serial Number.") parser.add_argument("--simulation", action="store_true", help="Put the driver in simulation mode, even if " "--device is used.") simple_network_args(parser, 3255) verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser() parser.add_argument('-d', '--device', default="LDA-102", choices=["LDA-102", "LDA-602", "sim"]) parser.add_argument('--bind', default="::1", help="hostname or IP address to bind to") parser.add_argument('-p', '--port', default=3253, type=int, help="TCP port to listen to") parser.add_argument('-s', '--serial', default=None, help="USB serial number of the device") verbosity_args(parser) return parser
def get_argparser(): default_db_file = os.path.join(get_user_config_dir(), "artiq_browser.pyon") parser = argparse.ArgumentParser(description="ARTIQ Browser") parser.add_argument("--db-file", default=default_db_file, help="database file for local browser settings " "(default: %(default)s)") parser.add_argument("--browse-root", default="", help="root path for directory tree " "(default %(default)s)") parser.add_argument( "-s", "--server", default="::1", help="hostname or IP of the master to connect to " "when uploading datasets") parser.add_argument( "--port", default=3251, type=int, help="TCP port to use to connect to the master") parser.add_argument("select", metavar="SELECT", nargs="?", help="directory to browse or file to load") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="PDQ2 controller") parser.add_argument("--bind", default="::1", help="hostname or IP address to bind to") parser.add_argument("-p", "--port", default=3252, type=int, help="TCP port to listen to") parser.add_argument("-s", "--serial", default=None, help="device (FT245R) serial string [first]") parser.add_argument("-d", "--debug", default=False, action="store_true", help="debug communications") verbosity_args(parser) return parser
def get_argparser(): if os.name == "nt": default_db_file = os.path.expanduser("~\\artiq_browser.pyon") else: default_db_file = os.path.expanduser("~/.artiq_browser.pyon") parser = argparse.ArgumentParser(description="ARTIQ Browser") parser.add_argument("--db-file", default=default_db_file, help="database file for local browser settings " "(default: %(default)s)") parser.add_argument("--browse-root", default="", help="root path for directory tree " "(default %(default)s)") parser.add_argument("select", metavar="SELECT", nargs="?", help="directory to browse or file to load") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ Dashboard") parser.add_argument( "-s", "--server", default="::1", help="hostname or IP of the master to connect to") parser.add_argument( "--port-notify", default=3250, type=int, help="TCP port to connect to for notifications") parser.add_argument( "--port-control", default=3251, type=int, help="TCP port to connect to for control") parser.add_argument( "--port-broadcast", default=1067, type=int, help="TCP port to connect to for broadcasts") parser.add_argument( "--db-file", default=None, help="database file for local GUI settings, " "by default in {} and dependant on master hostname".format( get_user_config_dir())) verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ core device " "packet capture tool") verbosity_args(parser) parser.add_argument("-H", "--host", metavar="HOST", type=str, default="lab.m-labs.hk", help="SSH host where the development board is located") parser.add_argument("-D", "--device", metavar="DEVICE", type=str, default="kc705.lab.m-labs.hk", help="address or domain corresponding to the development board") parser.add_argument("-f", "--file", metavar="PCAP_FILE", type=str, default="coredevice.pcap", help="Location to retrieve the pcap file into") parser.add_argument("command", metavar="COMMAND", type=str, default=[], nargs=argparse.REMAINDER, help="command to execute while capturing") return parser
def get_argparser(): parser = argparse.ArgumentParser(description="""PDQ2 client. Evaluates times and voltages, interpolates and uploads them to the controller.""") parser.add_argument("-s", "--server", default="::1", help="hostname or IP of the controller to connect to") parser.add_argument("--port", default=3252, type=int, help="TCP port to use to connect to the controller") parser.add_argument("-c", "--channel", default=0, type=int, help="channel: 3*board_num+dac_num [%(default)s]") parser.add_argument("-f", "--frame", default=0, type=int, help="frame [%(default)s]") parser.add_argument("-t", "--times", default="np.arange(5)*1e-6", help="sample times (s) [%(default)s]") parser.add_argument("-u", "--voltages", default="(1-np.cos(t/t[-1]*2*np.pi))/2", help="sample voltages (V) [%(default)s]") parser.add_argument("-a", "--aux", default=False, action="store_true", help="axiliary digital output [%(default)%s]") parser.add_argument("-o", "--order", default=3, type=int, help="interpolation (0: const, 1: lin, 2: quad," " 3: cubic) [%(default)s]") parser.add_argument("-p", "--plot", help="plot to file [%(default)s]") parser.add_argument("-r", "--reset", default=False, action="store_true", help="do reset before") parser.add_argument("-m", "--dcm", default=False, action="store_true", help="100MHz clock [%(default)s]") parser.add_argument("-n", "--disarm", default=False, action="store_true", help="disarm group [%(default)s]") parser.add_argument("-e", "--free", default=False, action="store_true", help="software trigger [%(default)s]") parser.add_argument("-x", "--demo", default=False, action="store_true", help="demo mode: pulse and chirp, 1V*ch+0.1V*frame" " [%(default)s]") parser.add_argument("-b", "--bit", default=False, action="store_true", help="do bit test") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser( description="ARTIQ data to InfluxDB bridge") group = parser.add_argument_group("master") group.add_argument( "--server-master", default="::1", help="hostname or IP of the master to connect to") group.add_argument( "--port-master", default=3250, type=int, help="TCP port to use to connect to the master") group.add_argument( "--retry-master", default=5.0, type=float, help="retry timer for reconnecting to master") group = parser.add_argument_group("database") group.add_argument( "--baseurl-db", default="http://localhost:8086", help="base URL to access InfluxDB (default: %(default)s)") group.add_argument( "--user-db", default="", help="InfluxDB username") group.add_argument( "--password-db", default="", help="InfluxDB password") group.add_argument( "--database", default="db", help="database name to use") group.add_argument( "--table", default="lab", help="table name to use") group = parser.add_argument_group("filter") group.add_argument( "--bind", default="::1", help="hostname or IP address to bind to") group.add_argument( "--bind-port", default=3248, type=int, help="TCP port to listen to for control (default: %(default)d)") group.add_argument( "--pattern-file", default="influxdb_patterns.pyon", help="file to save the patterns in (default: %(default)s)") verbosity_args(parser) return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ core device " "configuration tool") verbosity_args(parser) parser.add_argument("--device-db", default="device_db.pyon", help="device database file (default: '%(default)s')") subparsers = parser.add_subparsers(dest="action") subparsers.required = True p_read = subparsers.add_parser("read", help="read key from core device config") p_read.add_argument("key", type=str, help="key to be read from core device config") p_write = subparsers.add_parser("write", help="write key-value records to core " "device config") p_write.add_argument("-s", "--string", nargs=2, action="append", default=[], metavar=("KEY", "STRING"), type=str, help="key-value records to be written to core device " "config") p_write.add_argument("-f", "--file", nargs=2, action="append", type=str, default=[], metavar=("KEY", "FILENAME"), help="key and file whose content to be written to " "core device config") p_delete = subparsers.add_parser("delete", help="delete key from core device config") p_delete.add_argument("key", nargs=argparse.REMAINDER, default=[], type=str, help="key to be deleted from core device config") subparsers.add_parser("erase", help="fully erase core device config") return parser
def get_argparser(): parser = argparse.ArgumentParser(description="ARTIQ core device " "log tool") verbosity_args(parser) parser.add_argument("--device-db", default="device_db.py", help="device database file (default: '%(default)s')") subparsers = parser.add_subparsers(dest="action") p_clear = subparsers.add_parser("clear", help="clear log buffer") p_set_level = subparsers.add_parser("set_level", help="set minimum level for messages to be logged") p_set_level.add_argument("level", metavar="LEVEL", type=str, help="log level (one of: OFF ERROR WARN INFO DEBUG TRACE)") p_set_uart_level = subparsers.add_parser("set_uart_level", help="set minimum level for messages to be logged " "to UART") p_set_uart_level.add_argument("level", metavar="LEVEL", type=str, help="log level (one of: OFF ERROR WARN INFO DEBUG TRACE)") return parser