Barcode scanners are fun, got my hand on one of these to catalog my book collection on librarything.com. Its easier to create the collection by scanning off the ISBNs off of books.
The one I use is iBall CS-153 Linear Barcode Scanner
Here is a random list of barcodes I scanned off of various products around my bedroom.
Bar codes can be used to encodes lots of different kinds of data, Universal Product Codes being one of them. http://www.upcdatabase.com is a good source to figure out what each Universal Product Code Stands for:
This is a Bookland ISBN code, which means it's an ISBN number encoded as an EAN/UCC-13. You can tell this by the first three digits of the EAN/UCC-13 (978). The numbers after that are the ISBN. You'll notice the last digits differ, though -- EAN/UCC-13 and ISBN calculate their check digits differently (in fact, the check 'digit' on an ISBN can be a digit or the letter X).
Here are the innards of iBall CS-153:
The microcontroller is AT91SAM7S64
It seems to be a camera based bar code reader.
Here is the iball Linear Barcode Scanner User Manual and Configuration Leaflet. This barcode scanner does not have any buttons on it and neither is it supplied with any application/device driver software. The bar code scanner emulates a standard USB HID Keyboard. All data read from a bar code is sent to the computer as key presses. The user manual has various bar codes printed in it. To change the settings of the barcode scanner, one has to scan the bar code associated with that configuration change and voila! the new setting will take effect immediately (of course you have to scan bar codes for "start configuration" and "stop configuration" too and you may need to power cycle the device too)
Barcode Scanner from ZXing Team is a nice Android app which uses your cell phone's camera to read barcodes off of products and then fetches their description and price from the internet and displays the data on the screen.
Can you share the source code for the linear-barcodes example.