Concept of Reading Barcodes and QR Codes with a Mobile Phone
Reading QR codes with a mobile phone is now a standard practice. This feature is available natively in camera applications, as well as in many payment and other types of apps. Similarly, it is possible to read barcode codes using the same method. For reading QR and barcode codes of many formats, there is no need to install any additional applications - they can be read using regular web applications, such as our code scanner app (simply click on the link and try reading barcodes and QR codes with your phone). A preview of the application can be found below.
"The technology used for recognizing codes in images captured by the phone's camera is the foundation of many of our applications, such as inventory management systems, asset tracking, and more. In short, it is used wherever barcodes and QR codes are utilized.
Advantages of using barcode scanner on a phone compared to specialized devices and data terminals
We'll skip barcode scanners and readers, as they are handheld devices intended solely for scanning barcodes. Such devices do not have a display or the ability to manage anything - they simply transmit the number obtained by scanning the barcode to a computer (the connection can be wired or wireless).
Devices with their own display, keyboard, memory, and processor are more advanced barcode scanning options, resembling mobile phones (or computers):
- Data terminals - used for data collection, data is transferred to the system via physical connection to a PC.
- Wifi terminals - allow real-time data processing and are connected to the system via a Wi-Fi network.
- Terminals with an operating system - rugged devices with barcode scanners (laser for 1D and camera for 2D codes) based on a smartphone. Used for remote management. Utilizes Android / Windows operating system.
It is apparent that in terms of functionality, a mobile phone with an application for reading barcodes is most similar to mobile terminals. However, specialized terminals have an advantage over mobile devices in terms of the specialized laser, CCD, DPM, etc. barcode scanner used. These types of scanners are better suited for scanning barcodes in challenging environments, where there may be interference from factors such as lighting conditions, dust, glare when scanning through film, etc. If we want to expand the capabilities of a regular phone to include this functionality, it is possible to attach a Bluetooth barcode and QR code scanner to the back of the phone. The device costs approximately $100 (without VAT).
In other respects, the comparison between a terminal and a mobile phone with a barcode scanning application depends on the specific phone. A terminal is a device with a rugged construction, but nowadays, it is also possible to purchase mobile phones with similar properties (such as Caterpillar, for example). Both terminals and phones are available with and without buttons. As terminals are essentially phones, they offer similar functions and battery life. However, modern terminals start at a price of ~ $450 (without VAT).
This brings us to the heart of this chapter: which device is suitable for whom. From an economic perspective, using a mobile phone with a barcode reading application makes perfect sense for beginning e-shops, stores, and businesses trying to keep initial costs under control. It is also useful for warehouses dealing with seasonal fluctuations that require temporarily hiring more employees. Everyone has a smart mobile phone nowadays, so it is more efficient to use an existing device (reimbursing the use of their own device during working hours) than to purchase specialized terminals that would otherwise not be fully utilized throughout the rest of the year and become obsolete.
We take into account the technological capabilities of modern mobile phones in reality. Their use is fully compatible with our systems for inventory management, workforce management, and other applications, which is, in fact, the simplest way to use these systems. Our clients and users do not need to worry about any devices or installations; they can simply log into the web application through their mobile phone or tablet (iOS, Android, Windows, Linux...) and start working immediately. As for access management, data protection, and the like, the system administrator (a user with administrative rights) can easily manage these for each logged-in device (user). However, it is also possible to access the system through a computer or to connect to the aforementioned specialized terminals. In practice, a combination can be used: provide terminals to permanent employees and set up a temporary account for part-time workers to access the system (with pre-defined permissions right from a template) via their mobile phones in a matter of seconds.
Let's now turn to the point of the article - introducing barcode and QR code readers through an application on a mobile phone. What types of codes can be read, what connections are possible, what are the potential costs of use, customization options, and so on?
Supported Code Formats
Currently, recognition (conversion to a numerical/text code usable for further processing) is supported for the following 13 types of code formats:
One-dimensional (1D) codes
- EAN_13: The European Article Number (EAN-13) format is used worldwide in trade to identify a specific product. Thirteen-digit EAN-13 codes are assigned worldwide to identify goods at the point of sale. Two-digit and five-digit codes can be added to the code to identify published works. The EAN-13 barcode is used worldwide more than any other barcode. The EAN-13 barcode encodes the GTIN-13 code and is used to identify individual items at the point of retail sale. It can also be used for trade units sold to consumers, such as a case of wine.
- EAN_8: It is a linear barcode derived from the longer EAN-13 (International Article Number) code. It was introduced for use on small packages where the EAN-13 barcode would be too large, such as on cigarettes, pencils, and chewing gum. EAN-8 is also known as European Article Number 8, EAN-8 Supplement 5/Five-digit Add-On, EAN-8 Supplement 2/Two-digit Add-On, EAN-8+5, EAN-8+2, EAN8, EAN8+5, EAN13+2, UPC-8, GTIN-8, GS1-8, EAN/UCC-8.
- UPC_A: The Universal Product Code (UPC) is a barcode symbology used worldwide (especially in North America) to track commercial products in stores. UPC-A is a subset of the EAN (European Article Numbering) system, which means that any system that can read EAN/JAN-13 can also read UPC-A. The UPC A code is the standard version of the UPC code and has 12 digits. It is also called UPC 12 and is very similar to the EAN code. The structure of the UPC A code is as follows: The first digit of the UPC A code indicates what the code contains: 0 - regular UPC code 1 - reserved 2 - variable weight items such as meat. It is used to label consumer goods.
-
UPC_E: It is a variant of the UPC-A symbology that allows for a more compact barcode by removing "unnecessary" zeros. Since the resulting UPC-E barcode is approximately half the size of the UPC-A barcode, UPC-E is typically used on products with very small packaging where the full UPC-A barcode would not reasonably fit.
The UPC-E barcode uses the implicit numbering system 0, which reduces 10 digits to 6 digits. In addition, we also have the numbering system 1.
-
Codabar: This is a simple barcode that does not require a check digit and allows encoding of numbers (0-9), four letters (A-D), and several special characters (-$:/.+).
It was developed by Pitney Bowes Corp in 1972 and is widely used for applications that require serial numbers, such as managing blood banks, books, delivery tickets, and membership cards.
-
Code_39: This is an alphanumeric code that can contain up to 43 characters including numbers, letters, and some symbols.
It is a barcode symbology developed by Intermec Corporation in 1975. Because it can work with letters, the CODE 39 code is essential in industrial sectors and is used, for example, in the automotive industry and electronics. Each character is made up of 9 elements (5 bars and 4 spaces), with 3 thick and 6 thin. This allows self-checking of the code. Code 39 does not require a built-in check digit. The main advantage of Code 39 is its wider range of characters.
- Code_93: This is an alphanumeric symbology with variable length. It was designed by Intermec in 1982 with the aim of increasing the density and security of data in the Code_39 symbology. Code 93 is used in logistics and transportation - for example, the Canadian Post uses it to encode additional delivery information. Each symbol contains two check characters.
- Code_128: This is a linear barcode with high density. It is defined in the ISO/IEC 15417:2007 standard. It is used for alphanumeric or numerical barcodes. It can encode all 128 ASCII characters and, using the extension symbol (FNC4), Latin-1 characters defined in the ISO/IEC 8859-1 standard. Code 128 was developed by Computer Identics Corporation in 1981. GS1-128 (formerly known as UCC/EAN-128) is a subset of the Code 128 code and is widely used in the shipping and packaging industry as a product identification code at the container and pallet level in the supply chain.
- ITF: Interleaved 2 of 5 (ITF) is a continuous, two-width symbology of barcode that encodes digits. It is commercially used on film 135 for ITF-14 barcodes and on cartons of some products, while the products inside are labeled with UPC or EAN codes. The ITF-14 barcode is the most common data carrier used for the GTIN-14 data structure in retail organizations.
Two-dimensional (2D) codes
-
QR code is the most widely used 2D code and is used in many areas.
Quick Response (QR) code is a type of barcode that can be easily read by a digital device and stores information as a series of pixels in a grid of square shape. QR codes are often used to track product information in the supply chain and are frequently used in marketing and advertising campaigns.
QR codes can be scanned using smartphones, which are natively developed to scan/detect QR codes. These codes are generated using an online QR code generator, which displays online information to the scanner after scanning. QR codes are commonly used in advertising, commerce, healthcare, and education today.
-
AZTEC - It is a 2D matrix code that is commonly used for airline tickets, other travel documents, and also for vehicle registration documents. It can also be used in hospitals to identify patients or to identify drugs, samples, or other items related to a specific patient. The name Aztec comes from the search code in the center of the code, which somewhat resembles an aerial view of an Aztec pyramid.
It was patented in 1995 by Andrew Longacre and Robert Hussey. In 1997, it was published by the Association for Automatic Identification and Mobility (AIM) and later became the standard of the International Organization for Standardization and the International Electrotechnical Commission ISO/IEC 24778:2008.
The Aztec code symbol can encode up to 3,832 numeric characters, 3,067 alphabetical characters, or 1,914 bytes of data. It is also suitable for labeling and tracking small items or mobile payment applications.
- PDF_417: This is a linear barcode format used in various applications such as transportation, identification cards, and inventory management. "PDF" stands for Portable Data File. The designation "417" means that each pattern in the code consists of 4 bars and spaces in a pattern that is 17 units (modules) long. PDF417 uses built-in error correction that ensures better readability.
- DATA_MATRIX: Data Matrix is a two-dimensional matrix code consisting of black and white "cells" or dots arranged in a square or rectangular pattern. It is used for product identification and tracking in various industries such as food, automotive, and healthcare. The encoded information can be text or numerical data. The codes are maintained internally in the manufacturer's database and are assigned to each unique product, such as component variants. For each product series, a unique code is supplied by the printer.
Each of these codes has its specific characteristics and uses. For example, some codes are more suitable for labeling consumer goods in stores, while others are primarily used in industrial production, logistics, and transportation. An extension of these are 2D codes, such as Data Matrix or QR codes, which are capable of encoding even more information and are utilized in many areas such as mobile payments, loyalty programs, or tracking of products in the manufacturing process.
Connecting the scanner to other systems
A barcode scanner in a mobile phone is an application. The scanned graphic code itself is converted into a text code by the application, which is then used for communication with external systems, such as:
- International barcode databases - retrieving product information
- Internal databases (inventory management systems, asset management systems, etc.)
- Any API interface
Each system and connection entails certain direct or indirect operating costs. For example, access to international product databases based on scanned codes is a paid service. Similarly, many WMS system operators charge for their API interfaces (in Vrealmatic, we are an exception to this - access to all APIs is free for our clients by default). Also, when external databases come into play, certain work may be required to make them accessible. However, all of this is a matter of willingness, not technological barriers.
In principle, our barcode reading application solution is an open platform that can be connected to any system and on which any services and applications can be built. We use it for both our product applications and client projects - see the customization section.
Customization
Each product has its own unique needs. The software should adapt to those needs, rather than people bending their processes and being limited by them. The barcode scanning function is just a module around which any application with any features can be built. This could be a mobile interface for managing WMS, assets, documents, or a product price comparison tool across stores.
We already have some functionalities available, and we will develop and make available the rest based on agile needs. Let us know what you specifically need, and we will create a system for you without compromises.