<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.extremist.software/index.php?action=history&amp;feed=atom&amp;title=Resources%2FLibrary%2FDead_Tree%2FScanner</id>
	<title>Resources/Library/Dead Tree/Scanner - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.extremist.software/index.php?action=history&amp;feed=atom&amp;title=Resources%2FLibrary%2FDead_Tree%2FScanner"/>
	<link rel="alternate" type="text/html" href="https://wiki.extremist.software/index.php?title=Resources/Library/Dead_Tree/Scanner&amp;action=history"/>
	<updated>2026-04-06T15:23:29Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.13</generator>
	<entry>
		<id>https://wiki.extremist.software/index.php?title=Resources/Library/Dead_Tree/Scanner&amp;diff=47951&amp;oldid=prev</id>
		<title>Patrickod: Initial scanner page.</title>
		<link rel="alternate" type="text/html" href="https://wiki.extremist.software/index.php?title=Resources/Library/Dead_Tree/Scanner&amp;diff=47951&amp;oldid=prev"/>
		<updated>2015-05-25T06:59:30Z</updated>

		<summary type="html">&lt;p&gt;Initial scanner page.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Problem&amp;#039;&amp;#039;&amp;#039;: Noisebridge has a lot of dead tree books. We don&amp;#039;t have a definitive list&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Solution&amp;#039;&amp;#039;&amp;#039;: Scanning the UPC barcodes on each of the books and creating a catalog&lt;br /&gt;
&lt;br /&gt;
== Hardware == &lt;br /&gt;
&lt;br /&gt;
I&amp;#039;ve purchased an [http://www.amazon.com/gp/product/B00IOGSZ04/ref=oh_aui_search_detailpage?ie=UTF8&amp;amp;psc=1 Inateck 2.4GHz USB barcode scanner] which presents itself as a regular HID to the kernel. &lt;br /&gt;
&lt;br /&gt;
The scanner operates as a normal keyboard when connected over the 2.4GHz USB connection. While the scanner is out of range of the USB receiver you may continue scanning, as it has an internal memory capable of storing 2600 barcodes. When the scanner is reconnected next after this it&amp;#039;ll write out each of the codes in rapid succession. &lt;br /&gt;
&lt;br /&gt;
== Software ==  &lt;br /&gt;
&lt;br /&gt;
I&amp;#039;ve written a small Rust program to read the key events from the scanner using [https://wiki.freedesktop.org/www/Software/libevdev/ libevdev], a library for interacting with input devices in userspace. &lt;br /&gt;
&lt;br /&gt;
The source code can be found on [https://github.com/patrickod/barcode-rust Github]. As of time of writing the code outputs the UPC codes to STDOUT as it receives them, but I&amp;#039;m working on instead writing out ISBN codes.&lt;br /&gt;
&lt;br /&gt;
== Setup ==&lt;br /&gt;
&lt;br /&gt;
The intended setup is to have this running as a daemon on [[Pegasus]] where it&amp;#039;ll log each new barcode to a file. Another daemon (yet to be written / sourced) will read new lines of this file and search for the ISBN, then adding them to whatever catalog software we choose.&lt;/div&gt;</summary>
		<author><name>Patrickod</name></author>
	</entry>
</feed>