Instructables

Make a portable barcode scanner with an arduino and a cuecat

Picture of Make a portable barcode scanner with an arduino and a cuecat
Around the turn of the century, there was a company whose business model included giving away free barcode scanners that emulate keyboards.    A relatively easy mod to these cuecat scanners removed the encryption and made them suitable for scanning the barcodes on books and the like.

One thing that kept me from ever seriously using it to catalog all my books was the fact that being a keyboard emulator, a cuecat required me to lug a laptop around to read the output.  A recent conversation with a friend about the daunting task of inventorying hundreds of books made me think, "wouldn't it be nice to have a smaller device that would would store all the data for later transfer to a computer?"

So I built this device, an arduino and waveshield based box that the cuecat can plug into that will store scanned data on an SD card.  The SD card can then be popped out and mounted onto a computer.  The scanned data will appear as text files on the card.

For extra fun, it plays a goofy^H^H^H^H^H impressive startup sound to let you know it has successfully been turned on, and meows (it is a cueCAT after all) to let you know when it has successfully read a barcode.



 
Remove these adsRemove these ads by Signing Up
Really great job! I liked your approach of merging devices to get to the design target. Nice intro to bar codes. Especially liked you mods, clean, simple and more than just ingenious. I second your use of Google or ...whatever, to research the device using serial numbers as well as model numbers. Manufacturing changes are frequent during the life of a product, making mods a crap shoot without these checks.
mkanoap (author)  cobourgdave1 year ago
Thanks!
jones1111 year ago
great!!
here, I just leaned something about several kinds of barcode scanners . just share with you, I hope you will like it.
geraldkrug3 years ago
This is such a great thing you made.
Here is a blue tooth device that may work for you...
http://www.sumlung.com/en/index.php?option=com_content&view=article&id=94

Please let me know if the blue tooth could work with your device.

I have a barcode database online now and the cuecat would be so cool to
get people to use barcodes.
http://boughtupcom.freeservers.com/cgi/CRcode/acqcode.pl
TheWanderer4 years ago
I was wondering, is there a way to make it play a specific noise for a specific bar code?
mkanoap (author)  TheWanderer4 years ago
Absolutely.

The code stores incoming characters into a buffer. When it receives an "enter" character it saves the buffer to the disk, clears the buffer, and then plays a random sound.

It wouldn't be too hard to include a check before the "clear the buffer" step to compare the string with whatever code you wanted to trigger the sound. I was kind of thinking of printing a few barcodes on the box and doing just that.

The limiting factor would be the memory on the arduino. If you were storing the strings to compare it with in the code and you had a lot of them, you would eat up program memory pretty fast. One way around that might be to save sounds with the name of the number to compare against and do something like:

if (play.sound (buffer+".wav") then
# horray, it worked
else
# play random beep because the play sound routine returned an error


(that is not a real code example)
yoyology4 years ago
I wonder. Would it be possible to make a CueCat look like a bluetooth keyboard?  Then you could scan anything within 10 meters and the numbers would appear on your computer as if typed. No need for the SD card (as long as everything's happening inside your home).

What I'd love would be if I could get a CueCat to communicate with my BlackBerry.  That's what I use to keep track of my reading, and scanning would make it much quicker.

Plus, I could call it a BlackCat.  How could that not be cool?  :-)
mkanoap (author)  yoyology4 years ago
I have no experience with them, but there are bluetooth arduinos.  They are not cheap, but are slightly less then bluetooth scanners.

Since the code I have prints the number to the serial port in addition to writing it to the card, it wouldn't have to be modified much to work in the way you describe.  The trickiest part would be getting the blackberry to store the output of the serial BT connection.

Since in this config you wouldn't even need the SD card, you could omit the wave shield entirely and cut out all the parts of the code that refer to it.  The only downside is you would lose the ridiculous sound feedback.
gradof6b4 years ago
I don't get it. So you scan the book and it tells you what it is, but what if you lend it to someone and scan it again does it just take it back out of the list?
mkanoap (author)  gradof6b4 years ago
My device is not doing any of the lookups itself.

All this thing is doing is storing the numbers on a text file for use with other things.  I'm using the numbers stored to build a catalog of books using the library thing service (http://www.librarything.com/) which will look up the numbers to find out what books go with them.  But you could use the data in other ways.

Normally, you add your books to library thing one at a time, but if you happen to have a text file with a couple of hundred ISBN numbers it, it will import them all at once.

gmoon4 years ago
Ah, neat stuff!

I have two cuecats myself--one "declawed" (ha) and one "stock," as a backup. They are an excellent (and cheap) way to get into barcoding.

FYI for other builders: It should be noted that there are USB cuecats, too, which wouldn't work with this project...
mkanoap (author)  gmoon4 years ago
Thanks!  I had been meaning to use mine for 10 years now, but was put off by the logistics of carrying a laptop around my library.  But I always thought it was cool.

I talked about not using a USB model at the bottom of the requirements page, but you are right, that's not obvious enough.  I'll edit to make it a little more plain.
mkanoap (author)  mkanoap4 years ago
I wonder if http://www.circuitsathome.com/products-page/arduino-shields couldn't be used to make USB version.

It's not obvious to me which arduino pins it is using, so I'm not sure if it could be stacked with a wave shield.
gmoon mkanoap4 years ago
Yeah--who knows?

I'm not sure anyone's reverse engineered the USB version (the driver / software part.) But I know next-to-nothing about the USB cuecats...
skifter224 years ago
Cool project!

FYI - I did a quick Google Search for "Female PS2 Connector" and turned up a variety of sources, among them:

http://www.pacificcable.com/Picture_Page.asp?DataName=MD6F

10 pack for $8 - not bad!
mkanoap (author)  skifter224 years ago
Nice.    I'm not sure what I would do with the other 9, probably make one that accepted input from 5 or 6 different inputs at once. :)

It looks like that connector might be mounted directly in your enclosure (space permitting) allowing it to be a little sleeker without the protruding tail.
Given my luck with fine soldering I'd prolly need at least 4 or 5 to burn up before I got one right... LOL

Also found these with a bit more digging:

http://www.datapro.net/products/ps2-panel-mount-to-pcb-motherboard.html

and

http://www.datapro.net/products/ps2-panel-mount-extension-cable.html

Should make chassis mounting on the enclosure purely academic...

=)