Saturday, September 17, 2011

CardMe + Barcodes

CardMe: Location Aware Wallet is an iPhone app that stores location tagged images of membership and loyalty cards on your iPhone so you can remove the cluttered mess of cards from your wallet or purse.   The newly released version 1.1  adds automatic barcode processing that is easier and more convenient than before.  This tutorial demonstrates the barcode scanning feature of CardMe version 1.1.

Acknowledgment
Barcode scanning in CardMe is implemented using the open source ZBar barcode reader library.  As noted on the CardMe open source page, ZBar is licensed under the GNU LGPL 2.1.

Scanning + Encoding
Many loyalty card barcodes are encoded in a format known as EAN-13 [see http://en.wikipedia.org/wiki/International_Article_Number_(EAN) for nitty-gritty details].   Note: the common UPC format [see http://en.wikipedia.org/wiki/Universal_Product_Code] is part of EAN-13.  CardMe can use ZBar to decode an EAN-13 barcode to a 13 digit number.  CardMe can then generate a clean image of the barcode for that number.

Here are instructions for scanning an EAN-13 loyalty card into CardMe.

Step 1: Click the Add Card button, and drag the red pin to the location of store.




Step 2: Click the expansion arrow to display the card details screen.   On the card details screen click the camera icon.    Select Scan Barcode from the action sheet.  That will bring up the ZBar scanning screen, and you'll see a live preview image generated by your iPhone's camera.  When the camera is focused on a barcode, ZBar will draw a green box around the code and automatically take the image.  CardMe will then return to the card details screen, and show the generated barcode image.







Step 3: Fill in the name field, and click the Save icon.  The loyalty card and card number are now ready to be displayed.  For best results, ask your sales clerk or cashier to scan the barcode image with a handheld barcode scanner.






Scanning Only
While UPC/EAN-13 are the most popular formats for barcodes, some loyalty programs use other formats like Code 39 [see http://en.wikipedia.org/wiki/Code_39] and Code 128 [see http://en.wikipedia.org/wiki/Code_128].  CardMe, through ZBar, has excellent support for scanning these codes.  However, CardMe cannot currently generate clean images from these codes.

Follow Step 1 and Step 2 above to create a new card and use the Scan Barcode option to acquire the barcode image.  CardMe will learn the card number from the barcode, and will be able to display that card number with the photograph of the barcode.



This tutorial showed how to use the automatic barcode processing features of CardMe: Location Aware Wallet to manage your loyalty cards.  CardMe can automatically recognize and decipher the barcode on a loyalty card.  For barcodes in the popular UPC and EAN-13 formats, CardMe can generate a clean image of the barcode that can be read in-store by a handheld barcode reader.  For barcodes in other formats, CardMe can keep a photograph of the loyalty card in your location aware wallet.

Saturday, August 13, 2011

CardMe + Jonathan's Card

Jonathan's Card was a recent social experiment where Jonathan Stark made his Starbucks mobile payment image public to see how people would react to the opportunity to receive free coffee and/or "pay it forward" for a stranger.    To use Jonathan's Card to receive free coffee you would save the image to your mobile and then present the image to the cashier as payment when you purchased your coffee.

Purchasing with the card sounds simple enough, but there is a problem here that CardMe can solve.  We tend to take a lot of pictures with our iPhones.   As you take more and more pictures you bury the Jonathan's Card image in the middle of your camera roll making it harder to find at checkout time.  During the experiment, we used the CardMe location aware wallet to show Jonathan's Card at the neighborhood Starbucks.

This tutorial shows you how to configure CardMe to show a mobile payment image at your favorite Starbucks.  This assumes that you have an iPhone, you have already downloaded CardMe from the iTunes App Store, and you have saved the card image to your iPhone.

Step 1: Click the Add Card button, and drag the red pin to the location of your favorite Starbucks.   You can use the standard pinching gestures to zoom the map to a scale where you can find your  Starbucks.

Hint: The red pin starts at your current location, so if you do this steps at Starbucks, it is even easier.


Step 2: Click the expansion arrow to display the card details screen.  Type Starbucks as the place name at the top of the screen.  Then bring in the card image by tapping the camera button at the bottom of the screen and selecting Choose Existing to choose the image from your camera roll.  Then click Save.  Now you are all set.  When you run CardMe at that Starbucks it will show you the payment card in the main tab.







Troubleshooting:  Here are some tips to follow if the wrong card image is displayed on the main screen.    Try double-tapping the image to "wake up" the GPS and give CardMe another chance to display the correct image.  You have two options for browsing through your cards if that does not fix the problem.  On the main screen you can use the left and right swiping gestures to cycle through full screen images of your cards.   You can also use the My Cards screen to browse through a list of your cards.  Tapping the Starbucks entry on the My Cards list brings up a menu from which you can choose to View the image on the main screen.  



Hint: On My Cards you can choose to sort the cards by proximity to your current location or by name.  Sorting by name is a great way to find your Starbucks card when you are at a different location than the one you normally visit.

This tutorial showed how the CardMe location aware wallet was used to display a Starbucks  mobile payment card.   As more and more of your favorite vendors offer their own payment cards and apps, the location aware wallet becomes increasingly valuable, and hunting for the right payment app becomes increasingly inconvenient.

CardMe -- Location Aware Wallet

CardMe is a location aware wallet for iPhone available for free download from the iTunes App Store.

CardMe associates images of your membership cards with the real-world locations where they need to be shown. Once it is loaded with images of your cards, the default CardMe screen will show the image whose assoicated place is closest to your current location.