A QR (Quick Read) code is a 2D matrix code designed for use in the labeling and identifying of automotive parts. It's gained immense popularity through commercial use, due to its ability to be scanned and read by smartphones. Advertisers can include their code on almost anything, either printed or digital, and smartphone users can scan it to decode the message, often giving them a special offer or discount.
Specifications: A QR code can be either very simple or very complex, and can vary in size. It's a square shape that includes both black and white cells. The top two corners and the bottom left corner each contain a small finder pattern, displayed as a square within a square.
Advantages: It can be read very quickly and has an enormous storage capacity, making it superior to UPC bar codes in just about every way. It can encode both numeric and alphanumeric characters, as well as binary characters and even Chinese logographic characters.
Disadvantages: It has a high storage capacity, as well as error correction for damaged codes, but it's a tradeoff between the two. The higher the error correction, the lower the storage capacity. Also, since it can contain executable files, there's a risk of putting your device's contents at risk if you're not careful. The risk is low, however.
Related bar codes:
Data Matrix - Encodes information in a similar way, with black and white cells and finder patterns. A data matrix code has a fixed limit on the amount of data it can encode, though.