asyn-gpib

Generate EPICS GPIB/SCPI device support using asyn devGpib framework.

1|1|Updated Apr 14, 2026
One-click install
npx skills add https://github.com/BCDA-APS/opencode-skills --skill asyn-gpib
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: asyn-gpib
Source: https://github.com/BCDA-APS/opencode-skills/tree/main/asyn-gpib
Command: npx skills add https://github.com/BCDA-APS/opencode-skills --skill asyn-gpib

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It helps EPICS developers write correct GPIB/SCPI instrument device support so records can reliably send commands and parse responses through the asyn devGpib framework.

Core Features & Use Cases

  • Build devGpib-based device support: define DSET macros, implement init_ai, and wire a command table (gpibCmd[]) to EPICS record types.
  • Map EPICS records to instrument commands: use gpibCmds[] entries with scanf/printf format strings and optional custom convert routines.
  • Use EFAST enum mapping: define EFAST input/output tables (e.g., GPIBEFASTI, GPIBEFASTO) to translate between human-readable strings and instrument responses.
  • Create DBD and database integration: provide DBD device declarations (*.dbd) and database records using the GPIB_IO link format with zero-based parameter indices.
  • Handle gateway setups: configure VXI-11/LAN-to-GPIB gateways (e.g., vxi11Configure) when the instrument is not directly connected.

Quick Start

Ask the AI to generate a complete devGpib device support skeleton for your instrument by listing the EPICS record types you need, the SCPI/GPIB commands to use for each parameter, and any enumerations that should be handled via EFAST.

Frequently Asked Questions about asyn-gpib

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write EPICS device support for a GPIB instrument using asyn?▼

To write EPICS GPIB device support using asyn, define DSET macros, implement init_ai, and populate the gpibCmd[] table with command types and format/conversion logic to map EPICS records to instrument commands.

How does EFAST enum mapping work with EPICS devGpib device support?▼

EFAST enum mapping translates between human-readable strings and instrument responses by defining GPIBEFASTI and GPIBEFASTO input/output tables within your devGpib device support, allowing EPICS records to handle enumerated values natively.

Can I use SCPI commands with EPICS records through the asyn devGpib framework?▼

Yes, you can use SCPI commands with EPICS records by creating gpibCmds[] entries that use scanf and printf format strings for sending commands and parsing responses, with optional custom convert routines for complex data.

Do I need to configure a VXI-11 gateway for LAN-to-GPIB instrument control in EPICS?▼

You need to configure a VXI-11 gateway using vxi11Configure when your GPIB instrument is not directly connected and must be accessed over the network, enabling LAN-to-GPIB communication for the asyn device support.

What is the best way to generate database records for GPIB_IO parameters in EPICS?▼

The best way to generate GPIB_IO database records is to produce database files using zero-based parameter indices that correspond to your gpibCmd[] array entries, along with DBD device declarations for complete integration.

Why are my EPICS devGpib commands not parsing instrument responses correctly?▼

EPICS devGpib commands fail to parse responses when scanf format strings in the gpibCmd[] entries do not match the instrument's actual output format, or when custom convert routines are missing for non-standard SCPI response data.