bg

Process data from a barcode scanner

Download a Free Trial Version. It allows you to try all features! Data logger plugins

Task:

We are receiving barcodes (EAN-13) from a serial port. We have some barcode scanners connected. Each one sends data when read. Data contains an identification number (the first character) and barcode information (thirteen digits). When the Data Logger receives the information from the serial port, he adds a date and time stamp. This information is registered in a log file correctly, but we should create another ASCII file with different structure in the CSV format.

Barcode data view

Fig.1. Barcode scanner data captured by the serial data logger software

Requirements:

It is assumed that:

You've configured communication parameters (baud rate, the number of data bits, flow control, etc.) in the data logger and can receive any data without communication errors.

Solution:

The figure above shows that the data flow is very simple. Each record has a fixed size and a fixed position of each item. We need to recognize the ending characters of each data record. Please, enable display output for non-printable characters with a character code below than 0x20h. Please, set the following options.

Barcode data view setup

Fig.2. Data view setup

Then click the "OK" button and try to receive data from a port. You should receive the data as in the figure below.

Barcode scanner data with an ending character

Fig.3. Barcode scanner data logger. Data received.

It is another view of the received data. All non-printable characters were replaced with their code like #0D. Now, it is clear that a data packet (in a green rectangle) ends with #0D (underlined by red).

Now, we are ready for configuring modules. First, please, select the "ASCII data parser and query" plug-in (fig.4a, pos.1) from a drop-down list. Then, enable a parsing option for data received (fig. 4a, pos. 2) and select necessary data export plug-ins. The DDE server (fig.4b, pos.3) will help us check that the data packet is parsed and exported. The "Local database" plug-in will write data to an ASCII file with the CSV format.

Barcode scanner data logger. Plugins setup

Pic.4a. Barcode scanner data logger. The data parser plug-in.

Barcode scanner data logger. Data export plugins

Pic.4b. Barcode scanner data logger. Data export plug-ins.

Now, please, open a configuration window of the ASCII parser and query plug-in (click the "Setup" button near a drop-down box fig.4a, pos.1). The dialog window will appear on the desktop (fig.5).

Barcode scanner data logger. Parser configuration window

Fig.5. Barcode scanner data logger. The configuration window of the parser.

The configuration process will be very simple if you've examined your data flow in the data logger window (fig.3). You should type in the same as in the data logger window in fields 1 and 2. Field #1 marks the beginning of the data block, and field #2 marks the end. In the example, our data block does not contain a start marker. You should type a value from figure 3, which is underlined by red. Field #3 is empty because our data packet doesn't contain characters, which should be ignored.

Ok. We are going to the next page. It is a very important part of the parser configuration. The parser uses this information to extract parser items (variables) from a data packet. Our data packet contains two data items, which should be split into different variables. Later, these variables will be used in the data export and data filter plug-ins. In our case, variables' values will be placed on different columns of a target CSV file.

Barcode scanner data logger. Parser items

Fig.6. Barcode scanner data logger. Parser items.

You should add two new items by clicking the "Add item" button (fig.6, pos.7). Before adding an item, the program will ask you about an item description. You can type any characters here, which will help you to remember a variable's content. We've added all variables with corresponding descriptions on the fig.6

Each parser item has few properties:

  1. Item name - this name will be bound to a column in the data export plug-in. It is a limited text description and cannot contain spaces and a few other characters;
  2. Parser's type - it is a method, which the program will use for data extraction. Our parser has few methods from simple to most powerful. In our case, where data is placed in a fixed place, we can use the simple method - "fixed position." This method allows extracting any number of characters from any fixed position of the data packet;
  3. Data type - it is the data type of the extracted value. If you specify a data type other than the "STRING" data type, then the module will try to convert the string value to the specified data type. The module allows you to configure several options that will be used at the conversion (see the "Data format" tab);
  4. Default value - this value will be used when data can't be extracted from a data packet (or can't be converted to the specified data type);
  5. Fixed position - is the position of the first variable's character in our data block. The minimum value is 1;
  6. Fixed length - is the number of characters, which will be transferred to a variable. The minimum value is 1.

The second item has the same parameters, just the position and the length are different.

On the next page (fig.7), you can specify basic format options. Because we've specified the "String" data type for both parser variables, then the first two options allow removing blank spaces from a value. Other options are not applicable in our case.

Barcode scanner data logger. Format of items

Fig.7. Barcode scanner data logger. Format options.

Please, click the "OK" button and close the configuration window and then click the "OK" button again in the options window.

Now, our parser is ready, and we can test it. Connect your device and power it on and try to receive a data packet from a port. If the parser is configured correctly, then the DDE server window will display our variables name and value (fig.8).

Barcode scanner data logger. DDE server window

Fig.8. Barcode scanner data logger. The DDE server window.

How to write data to a log file with the necessary format is described in the second part.

To put the codes into an Excel sheet instead of a file, see barcode scanner to Excel. A USB scanner in keyboard mode is captured the same way by USB HID Logger.

Video transcript

Narration of the video "Barcode scanner with a COM port" (September 2026).

Many barcode scanners can work as a serial port instead of a keyboard: USB scanners in COM port emulation mode, and scanners with an RS232 cable. Then nothing is typed into the window in front. Advanced Serial Data Logger reads the port, stamps every scan, and writes it to a file, a database or Excel.

The port. Click the green plus. One configuration is one port: the scanner's. Tick the port the scanner appears on - Device Manager lists it under Ports - and set the speed to what the scanner's manual says. Nine thousand six hundred, eight, none, one is the usual default. On Data view the data is shown before parsing, and the end-of-line character the scanner sends after each code splits the screen into lines: one line per scan. OK.

Scanning. Scan a few codes. Each one appears as a line the moment it arrives, and nothing is typed anywhere, so any program can stay in front. The status bar counts the bytes.

The log file. Ctrl+L opens the log file settings. Enable the log file, choose a folder you may write to, keep a new file per day, and switch on the date and time stamp before every line. OK. Two more scans. The stamp in front of every line, the moment it arrived, now goes into the file as well.

Into a file, into Excel. The file grows with every scan: the moment it arrived, then the code, one line each. Excel opens it as a table with a time column and a code column, and a new file starts every day. For a live sheet, the Excel export writes every code into the next row of an open workbook, and DDE serves it to a formula. MS SQL, MySQL and ODBC take the codes into a database, and the parser can split a code into fields first. The written guide with the scanner settings and the free trial are on aggsoft.com. Thanks for watching.

Related articles: Process data from a barcode scanner