Barcode file transfer


Jump to: navigation, search

This page is about 2-Dimensional Barcodes (square or rectangular arrays of dots), and how people use them to transfer a few Kilobytes of information from place to place, or to publish machine-readable information in books and magazines.

In areas where information cannot be sent via the internet, 2D Barcodes in printed material could be used by teachers, children, national governments or the One Laptop Per Child project, to send an email message to another school. They could also send small files with information/software/game-data/MIDI music/etc. It could be at the end of a printed paper-letter, in a newsletter, circular, etc. The recipient reads the messages into their computer via a scanner or digital camera plus 2D barcode-reader software.



People are already familiar with 1-Dimensional barcodes, as used on products in supermarkets and stores. These store a few dozen bytes of information as a row of thick and thin stripes, with error-check information.

Some people may not have heard of 2-Dimensional barcodes, which can store far more data (over 2000 bytes) in a square or rectangular pattern of black and white square dots.

This page is about 2-Dimensional, square or rectangular barcodes, and how they can be, and already, are used to transfer a few Kilobytes of information from place to place or publish that information. The method could be used by the One Laptop Per Child schools to send an email message, some information or a small program in a 2-D Barcode, printed on a paper-letter, newsletter or circulars, etc. The recipient reads the messages into their computer via a scanner or digital camera and 2D barcode decoding software.

What do they look like?

They look like a square or rectangular block of random black and white dots. The shape, size and appearance depends on the particular Barcode Standard.

Example 2D Barcode in Data Matric format Data Matrix format, containing the message 'Welcome to OLPCWiki'.

Example 2D Barcode in PDF417 format PDF417 format, containing the message, 'This laptop belongs to school X'.

For more details, see Wikipedia: PDF417 (a 2D Barcode Standard with rectangular barcodes), Wikipedia: Data Matrix (another 2D Barcode Standard with square barcodes). For more formats, see Wikipedia: Barcode, 2D Barcode section.

How big are they?

Various sizes, some about 1 inch x 1 inch, or 2.5cm x 2.5cm. It depends on how much information is needed. Large ones could be printed, so that cheaper low-resolution cameras and scanners can read them.

How are they created?

They can be created in several ways :-

  1. Enter your message into a form on a 2d Barcode website, click a button and create an image, which you can cut and paste into letters, magazines, etc. See for example 2D Barcode creation demo.
  2. Use 2D Barcode software to read any kind of file and produce an equivalent barcode picture file. The information can also come from text you type into a form.
  3. Install a 2D Barcode font or a printer driver, so that any program, such as your word processor can print your text file as if it were being sent to a normal printer, but it creates a barcode image instead. You then copy the image file into letters or other documents and print them out.

How does the message get to its recipient

  1. By mail (to the intended recipient or to be read and passed on by email)
  2. By hand delivery of letters between schools (a paper 'Sneakernet')
  3. By publishing a magazine, newsletter, book, etc.

How does the recipient read the information?

  1. Using a scanner (which people often have as part of a printer-scanner combo)
  2. Using a camera-phone
  3. Using a digital camera

2D-barcode software is needed to decode them and write the information to a file or display it.

How much information can be transferred?

Just over 2000 bytes per 2D-Barcode (half a page of text), but you can print several barcodes on a page.

Existing Uses

  1. Printed in magazines to give details of pop-bands, website-addresses, special offers, software, ring-tones, games, etc.
  2. Printed on stickers and stuck on notice-boards, lampposts, bus shelters, etc, then people can take a picture with their camera phone. Software previously downloaded into the camera phone can decode it and display the message on the camera's screen, or display a web-address, photo or play some MIDI ring-tone/music. The software comes from a mobile phone service or via the internet and a PC USB cable, bluetooth or infra-red link. Some people are attracted to stickers by the fact that they don't know what stickers without text-labels contain until they photograph them and decode them.

Potential uses

  1. For schools with no internet-access, they could add a barcode to the end of a printed letter, to send any information which needs to be in machine-readable form. For example, where they want the recipient of the letter to email a message to a whole group of people or upload a small web-page to a website.
  2. When a local education authority sends out memos to schools, they could include files.
  3. Stickers on the back of OLPC laptops, servers and other equipment could give information about the owner, to identify the owner of an item sent away for repair.
  4. To identify items which could become lost property.
  5. Schools could strike a deal with local newspapers to print some information of interest to schools every day/week as 2D-barcodes. It benefits the schools and may benefit newspaper sales.
  6. Books about programming often contain listings of programs. The book could have 2D-barcodes to save people typing in the programs, having to buy a CD or getting them from the internet.
  7. Books or articles about educational activities could contain programs, music files, text files, web-pages, photos, etc within 2D-barcodes.
  8. I leave it to you to think of other uses.

Intellectual property rights and open-source

There are several standards for 2D-barcodes. Some are clearly the commercial property of one company or organization and covered by patents and licenses. I don't know whether there are any open-source standards and software.

Submitted for review: Data Matrix barcodes are public domain, royalty free, and unencumbered by patents. libdmtx is one open source solution that can both generate and scan Data Matrix barcodes.

Which OLPC schools can use it?

Printing and sending barcodes

The sender must have a printer and the recipient must have a camera or scanner and software. This limits which OLPC schools can use it. Not everyone will have this equipment, but some might. I'm just putting 2D-barcodes here so you can think about whether they would be useful or not.

Using information from 2D barcodes in mass publications

By camera-phone

Mobile phones are more common in some developing countries than landline phones. Anyone with a camera phone can take a photo of a 2D barcode in a magazine/book/newletter/sticker, decode it in software and send the info by USB cable to a computer. Alternatively, they can send the photo to the computer and software in the computer can decode it. They could also send the photo to someone else's mobile-phone.

By digital camera

Same as camera-phone, but using a digital camera.

How do I know the information is valid?

2D-barcodes include extra error-detection and correction bits, so the software knows whether a barcode is valid or unreadable. It means you can be sure any message that you send will be read without any errors or changes. This is a good thing when sending names, addresses, phone numbers, email-addresses, web-addresses, product part-numbers, ISBN book numbers, etc.

Further info

This field is changing so fast, to find further info, it's best to just do searches for terms like PDF417, Data Matrix, 2d barcode software, 2d barcode fonts, pdf417 freeware, etc, and see what turns up.

Here's a few items that I found :-

Wikipedia: Barcode - 2D barcodes List of different formats.

Wikipedia: PDF417 One common form of 2D Barcode.

Wikipedia: Data Matrix Another common form.

Wikipedia: Semapedia German company that links 2D barcodes from camera-phone pictures to wikipedia articles.

Source Forge: Search for PDF417 projects - open source s/w to write and read/decode PDF417 2D-barcodes, Java software, etc. : 2D Barcode Creation Demo

Wikipedia: Microsoft's - Windows Live Barcode

From wikipedia - Windows Live Barcode is a part of Microsoft's Windows Live services. It allows users to transfer information between various media (PCs, billboards, magazines etc.) and handsets via Quick Response Code (QR Code), a two-dimensional matrix barcode. It provides a new method for people to exchange information and enjoy various online services on handsets. ...It will be integrated with the Windows Mobile platform.

3GVision A system to read 2D barcodes on adverts using a camera-phone and go straight to the web-address they contain. A single click on the camera-shutter button is like clicking a hyperlink.

--Ricardo 02:41, 3 September 2007 (EDT)

Personal tools
  • Log in
  • Login with OpenID
About OLPC
About the laptop
About the tablet
OLPC wiki