Accell Port Devices Driver



USB™ multi-port adapters with Ethernet connectivity and some Ethernet adapters are not compatible at this time (due to IC design). Click here for more information. The display driver does not support Mac® computers with the M1 processor at this time, contact your computer manufacturer to verify if your computer supports the display driver. DisplayPort version available here. Supports 4K HD 4096 x 2160 @ 60Hz The Accell Mini DisplayPort 1.2 to HDMI 2.0 Active Adapter enables your Mini DisplayPort supported computer to connect to an HDMI high-definition display. With HDMI 2.0 throughput up to 18Gbps, the Mini DisplayPort 1.2 to HDMI 2.0 adapter. Example 9: List the driver files of a particular device. The following command uses the DevCon DriverFiles operation to search for the device driver that the mouse device on the local computer uses. It identifies the device by one of its hardware IDs, HIDVid045e&Pid0039&Rev0121. DisplayPort version available here. Supports 4K HD 4096 x 2160 @ 60Hz The Accell Mini DisplayPort 1.2 to HDMI 2.0 Active Adapter enables your Mini DisplayPort supported computer to connect to an HDMI high-definition display. With HDMI 2.0 throughput up to. Bring up drivers. USB Function driver bring-up is only required if you support USB Function mode. If you previously implemented a USB Function driver for a USB micro-B connector, describe the appropriate connectors as USB Type-C in the ACPI tables for the USB Function driver to continue working.

This Technical Note includes information about products that are now Obsolescent.

Communication between a Data Acquisition Processor™ and a PC application is provided by interface software supplied by Microstar Laboratories. This interface software is a device driver called the ACCEL driver. The ACCEL driver is responsible for transfer of data between a PC and a Data Acquisition Processor.

The ACCEL driver establishes a link to the DAP through the OS/2 file system. ACOM.SYS installs a series of devices named ACCEL, ACCEL0, ACCEL1,...ACCEL20. Since DOS and OS/2 treat devices as files, a PC program can read from and write to any of the ACCEL devices as though they were files. Therefore, a PC program opens input files and output files with the device name ACCEL(x). Once the files are opened, the PC program can write data to the Data Acquisition Processor by writing to an output file and read data from the Data Acquisition Processor by reading from an input file.

The OS/2 ACCEL driver from Microstar Laboratories supports versions 2.0 and above of the OS/2 operating system.

Installation

The ACCEL driver is in the file ACOM.SYS. Copy this file from the release diskette to the root directory of the OS/2 boot drive. To install the driver, include a statement in the OS/2 file CONFIG.SYS. The statement syntax is as follows:

The DAP model option can be repeated to support more than one Data Acquisition Processor in the PC. A detailed explanation of the above options can be found in each Data Acquisition Processor Manual. The following example works with a basic DAP 2400a™ system:

Once a device installation statement is placed in the file CONFIG.SYS, the ACCEL driver will be automatically installed when the system is booted.

Driver Initialization

Before using the driver, run the program ACOMINIT with a proper communication configuration file ACOM.DAT. (The communication configuration file is explained in the ACCEL driver chapter of the Data Acquisition Processor Systems Manual.)

Running ACOMINIT can be automated by placing a statement in the OS/2 file STARTUP.CMD. The statement is:

[PATH] is the path name of the directory where the two files are located.

If a RAM-based DAP is used in the system, STARTUP.CMD also should include the following line after the driver initialization statement to automate the initialization of the Data Acquisition Processor:

where D*.STD is the downloadable operating system for the Data Acquisition Processor.

Using the OS/2 ACCEL Driver

The OS/2 driver supports DAPview™ and DAPview for Windows running in DOS compatibility boxes, and native 32-bit OS/2 applications running under OS/2. OS/2 applications must be written in the C programming language. Microstar Laboratories supplies two sets of C libraries for use with either Borland C++ for OS/2 or IBM C++ Tools. These files are included on the release diskette.

Compiling C/C++ programs

There are no special requirements involved in compiling C/C++ programs that will make calls to the driver. Function prototypes are provided in the file dapio.h. Somewhat more extensive driver support can be found in the file c_lib.c, which can be used as an include file. When linking, the library appropriate to the compiler model should be used (IBM_CDAP.LIB for IBM C++ and BC_CDAP.LIB for Borland C++). Applications that use multiple threads should also be linked to the multi-thread libraries from the compiler manufacturers: DDE4MBS for IBMC++ and C2MT for Borland C++.

A typical compilation command line for IBM C/C++ Tools has the syntax:

The macro definition /DIBM32BIT is required to switch to some IBM C/C++ Tools specific syntax to compile the Data Acquisition Processor example programs.

A typical compile/link sequence for Borland C++ for OS/2 has the syntax:

Accell Port Devices Driver

The macro definition /DBC32BIT is required to switch to some Borland C/C++ specific syntax to compile the Data Acquisition Processor example programs.

Examples

Three application examples are included on the release diskette. The same source files can be used to compile 32-bit applications using Borland C++ for OS/2 or the IBM C/C++ Tools compiler. The examples include:

  1. DISPLAY.C -- Reads data from the Data Acquisition Processor and writes to the screen.
  2. DLOG.C -- Reads data from the Data Acquisition Processor and writes to disk.
  3. DTERM.C -- Puts Data Acquisition Processor in terminal mode and allows interactive input.

DLOG.C Example

Multi-tasking Under OS/2

More than one Data Acquisition Processor application can run in the OS/2 multi-tasking operating system, and multiple threads can run independently within a single process. However, several guidelines should be observed to ensure correct operation of the data acquisition system.

The physical ACCEL driver is logically installed as numbered ACCEL devices with the device names ACCEL0 through ACCEL20, each of which is associated with a corresponding numbered communication pipe if that communication pipe has been defined in the file ACOM.DAT. Each ACCEL device can only be opened by one OS/2 process. If two different processes attempt to open the same ACCEL device, the driver will report and error and the second process will be unable to run.

The directed ACCEL device (named ACCEL) is also installed. It can be used for I/O to and from any of the communication pipes. The currently active pipe is set by C library function calls. Multitasking is not allowed if the directed ACCEL device is used. Since the directed ACCEL device has access to all numbered pipes, any process that opens the directed ACCEL device has the potential to interact with any other process that opens a numbered ACCEL device. To eliminate such conflicts, only one process will be allowed to open ACCEL devices if the directed ACCEL is one of the devices opened.

The device protection mechanisms described above not allow more than one application to have an open handle to the PC com pipe connected to SYSIN. Since DAPL commands can only be sent to the DAP over SYSIN, only one application can control the DAP at a time. Other applications can affect the DAP's operation by changing modes, which is accomplished by IOCTL calls to the driver (see the ACCEL driver section of the Systems Manual). C programs that access the DAP are often critically dependent on a particular mode. Thus no mode changes should occur when multitasking DAP-related applications. Because the driver does not enforce this rule, programmers should be especially aware of the consequences of mode changes.

ACCEL Driver File Handles

The ACCEL Driver does not allow its file handles to be duplicated. If the ACCEL file handles are opened in the current OS/2 session, and the current OS/2 session tries to spawn another OS/2 or DOS session, a system error will occur. This is because the operating system tries to duplicate the ACCEL file handles when it spawns another session, and since we do not allow this, a system error occurs. An example error message would be 'The ACCEL0 device is not functioning'.

You need to use the O_NOINHERIT option to open the ACCEL file handles if the OS/2 session with the ACCEL file handles has to spawn other sessions. The example C program below shows how to do this. The example uses the C function system to spawn a DOS session and execute a DOS batch file. It also reads text and binary data from the Data Acquisition Processor.

Please note that this example was written for the Borland C/C++ compiler for OS/2. It may or may not work with the IBM C/C++ Tools compiler.

Below are the necessary files to run the NINHERIT.C example.

2. NINHERIT.DAP

3. NINHERIT.BAT

Text or Binary File Streams

When a file is opened in text mode, line feed (n) is converted to carriage return and line feed (rn) by the operating system. However, when a file is opened in binary mode, that conversion does not take place and rn should be used instead.

In DLOG.C, DapTextOut (called DapOut in DTERM.C and C_LIB.C) was opened as a text file. However, in NINHERIT.C, DapTextOut was opened as a binary file. You will notice that DLOG.C uses n but NINHERIT.C uses rn when used with DapTextOut.

Example in DLOG.C

Accell Displaylink Driver

Example in NINHERIT.C

View other Technical Notes.

© 1994-2021, Microstar Laboratories, Inc. All Rights Reserved.
webmaster@mstarlabs.com888-678-2752 (US/Canada) or +1-425-453-2345

-->

This section describes the class-of-device (CoD) registry subkeys and entries that apply to the Bluetooth driver stack.

'COD Major' and 'COD Type' Values

Original equipment manufacturer (OEMs) can use the COD Major and COD Type values to indicate the Class of Device for a Bluetooth-enabled Windows device. After the Bluetooth class installer sets the Class of Device based on these registry values, a remote device can determine whether it is connecting to a portable computer, a desktop computer, a phone, and so on.

The registry path to the COD Major and COD Type values is:

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesBTHPORTParameters

Note that setting these values changes the Bluetooth Class of Device for the system, regardless of which Bluetooth radio may be attached. You can set the COD Major and COD Type to DWORD values as defined for the Class of Device field values in the Bluetooth SIG Assigned Numbers.

The Bluetooth profile driver, BthPort.sys, reads the COD Major and COD Type values to determine how it should respond to a device inquiry. These values affect only the COD_MAJOR_XXX and COD_XXX_MINOR_XXX bits of the Class of Device. The COD_SERVICE_XXX bits are not affected by this registry entry.

If the COD Major and COD Type values are not set or are set to invalid values, the Bluetooth class installer will set these values to COD_MAJOR_COMPUTER and COD_COMPUTER_MINOR_DESKTOP, respectively.

Accell Connect

Scanning Parameterization Settings

Driver

Profile drivers can specify scanning parameters settings for their device(s) in their profile driver's INF file to tailor to the specific needs of a given device scenario.

You can override the default system scanning parameters by providing one or more of the following scanning parameters listed below into the AddReg directive. More information on how to use this directive can be found in INF AddReg Directive.

Value NameTypeMin ValueMax Value
HighDutyCycleScanWindowDWORD 0x100010x00040x4000. Shall be equal or smaller than the HighDutyCycleScanInterval parameter
HighDutyCycleScanIntervalDWORD 0x100010x00040x4000
LowDutyCycleScanWindowDWORD 0x100010x00040x4000. Shall be smaller than the LowDutyCycleScanInterval parameter
LowDutyCycleScanIntervalDWORD 0x100010x00040x4000
LinkSupervisionTimeoutDWORD 0x100010x000A0x0C80
ConnectionLatencyDWORD 0x100010x00000x01F4
ConnectionIntervalMinDWORD 0x100010x00060x0C80. Shall be smaller or equal to ConnectionIntervalMax
ConnectionIntervalMaxDWORD 0x100010x00060x0C80

Note

Changes to scanning parameters make a global impact on the performance of the Bluetooth stack. Making changes to scanning parameters programmatically is not permitted. Using Low Duty Cycle scanning parameters that are too aggressive can not only have a negative impact to the available bandwidth for other Bluetooth Low Energy connections, but also for Bluetooth BR/EDR connections.