Skip to content

Autoread with unidirectional communication

Use case

  • You want to read a number from the card.
    (For all other read operations, use VHL & Autoread.)
  • You don't want to actively retrieve read results.
  • You don't need to control reader feedback (e.g. LED and beeper) via the host.
  • You don't need to update the firmware or configuration via the host.

Implementation overview

What is Autoread?

The reader scans for cards and reads them autonomously (learn more).

How it works

  • Configure the reader for your cards type(s). You can use our GUI tools in BALTECH ToolSuite to conveniently create and deploy the configuration (including wireless deployment options).
  • The reader autonomously polls for cards and reads them.
  • Once it has read a card, it actively forwards the read result to the host.
  • Define the feedback to the card holder as part of the reader configuration.
Diagram showing a BALTECH reader in Autoread mode with unidirectional communication

Supported interfaces

  • RS-232/UART
  • USB virtual COM port (recommended when not using the SDK, required for RDP)
  • USB keyboard emulation

    Keyboard emulation is only recommended if your productive devices have neither keyboard nor mouse. Otherwise you run the risk of having the keyboard input unintentionally directed to applications other than yours as the reader output can be fed into any editor.

Alternatives

Use Autoread via BRP if:

  • You want to use Ethernet.
  • You want to control reader feedback (e.g. LED and beeper) via the host.
  • You want to update the firmware or configuration via the host.
  • You want the option to "upgrade" to VHL later.

Your workflow

Configure the reader

To prepare readers for access from your application, please create a configuration. Alternatively, you can order a configuration from us.

Required equipment

  • A Windows computer with BALTECH ToolSuite installed
  • A test reader you can connect to your computer.
    If the productive reader type doesn't provide a USB connection, we recommend you use an ID-engine ZB to create and test the configuration.

To configure the reader:

  1. Create a configuration.
  2. Configure the test reader to later test your application.

    Once you deploy a configuration with a Virtual COM Port - Unidirectional or RS-232/UART - Unidrectional component to the reader, a new virtual COM port device will be registered with the computer. However, HID is still used for the connection with BALTECH ToolSuite applications.

Retrieve results via keyboard emulation

Test the host interface using any text editor, e.g. Notepad. When placing a card in front of a test reader, the card's number is returned in ASCII (hex) format with a carriage return line feed at the end.

Retrieve results via RS-232/UART or virtual COM port

Identify the COM port associated with the reader

Open the port. The filename is as follows depending on your operating system:

  • Windows: \\.\COMx
  • macOS: /dev/cu.usbmodem*
  • Linux: /dev/ttyACMx
    If your process isn't running as root, assign the process permissions to access the reader.

To find out if a BALTECH reader is connected to this port, iterate through the COM ports of the system as follows:

This feature requires firmware 1100 v1.23.00 or above

  1. Send the ASCII character ? (0x3F) to the device.
  2. Wait 100 ms for a response.
  3. If the device is a BALTECH reader, the response starts with
    BALTECH Reader\n, followed by the reader firmware string.

Example: BALTECH Reader\n1100 IDE Z 1.22.00 05/18/20 40020212\n

If you get no response or a different one, repeat the process with the next COM port.

You can try this using a terminal software. Here's how it works with Tera Term:

  1. Open Tera Term and select Serial.
    Screenshot: New serial connection in Tera Term

  2. Go to Setup > Serial Port and make sure the settings match those in the reader configuration.
    Screensot: Tera Term serial port setup and connection

  3. In the terminal, type ?.

  4. A BALTECH reader will respond as shown in the screenshot below.
    Screenshot: BALTECH reader response to the command '?' in Tera Term

  5. If you get no response or a different one, try the next port. To do so, click Setup > Serial Port... and select a different port.
    Screenshot: Select a different serial port in Tera Term

Test the host interface

Again, you can use a terminal software such as Tera Term.
When placing a card in front of a test reader, the card's number is returned in ASCII (hex) format with a carriage return line feed at the end.

Read the card number with your host application

You can read the number using a terminal software or an application that can read data via a serial interface. Only numbers with a maximum length of 64 bytes can be read.

Make sure you open the RS-232/UART interface or virtual COM port respectively. The reader will send data via both RS-232/UART and virtual COM port. Thus, it's theoretically possible to connect a reader to 2 applications at the same time.

What's next?

That's it for the development part. The next step is to integrate the readers with your application. For the full workflow, please refer to this step-by-step guide.

Is this done by someone else?

Then please hand them your configuration if you've created one. Make sure you release the configuration first.

Troubleshooting & support

Got stuck somewhere along the way? Don't worry, we'll help you troubleshoot:

Title