= CueCat Barcode Scanner Support Alexandria now supports the use of unmodified CueCat barcode scanners for scanning ISBN barcodes. == What is a CueCat? The CueCat is a wand-style barcode scanner, available with either a PS/2 keyboard connector (and a PS/2 keyboard pass-through), or with a standard keyboard-type USB connector. You scan a barcode by placing the 'nose' of the scanner on one side of the barcode, in the clear area before the first black bar, and waiting until the flashing red light stops flashing and illuminates the surface brightly, then swiftly passing the scanner across the barcode and into the clear area on the far side. The scan data is then input into your computer as if through a keyboard. You can test the operation of your CueCat by placing your keyboard cursor inside any text editor and scanning a barcode. By default the scan data is scrambled. There are instructions, widely available on the Internet, detailing how to modify the circuit board to disable scrambling, but some barcode scanning applications, including Alexandria, can automatically decode scrambled data from a CueCat. == The History of CueCat? Millions of CueCat scanners were distributed free of charge by their creator the Digital Convergence Corporation in the late 1990s and early 2000s. The intention was that customers would use the scanners to scan special barcodes in magazine advertisments and articles, and software would take the customers to a related web page. Dozens of eager hackers, upon recieving these barcode scanners, immediately set about finding a way to use them for a wider variety of purposes, such as book cataloging. They decoded the very simple scrambling of the scanner output data (it was a form of Base64 encoding), and even reported on how to lift a single microchip pin to circumvent the scrambling in hardware. They also discovered that each CueCat has a unique serial number (which could have allowed DigitalConvergence to build up profiles of the products customers were interested in) and showed how to zero-out or avoid the serial number. Digital Convergence attempted to restrict such activities, but eventually the company went bust, leaving several electronics warehouses to buy up hundreds of thousands of unshipped CueCats in the ensuing liquidation sale. Today, PS/2 and USB CueCat scanners are available cheaply over the internet (about US$12 in 2007). Apart from the slight inconvenience caused by the data scrambling, they are eminently usable as cheap, robust, wand-style barcode scanners. == The Old Linux Driver A kernel driver for the CueCat was developed as a patch for the 2.4 Linux kernel series. This provided decoding of the scrambled input, and made input data available from /dev/scanners/cuecat. Since this driver is currently unmaintained and does not work with 2.6 kernels, support for this has been dropped from Alexandria. However, since Alexandria 0.6.2, there is so-called 'userland' support for the CueCat, which simply means that modifications to the kernel are not necessary. Instead, the decoding of the simple data scrambling is done by the application software.