Capturing USB HID input, HTTP POSTing that data to a server

I have a barcode scanner connected to the USB port of a Beaglebone White. The scanner acts like a keyboard, in that, the barcode scanned is output as if someone typed it. My goal is to have an application that starts on boot, which uses bash (or ruby, or python) to capture input from this device, parse it, then issue a HTTP POST request via curl (or net/http, or urllib2).

I can monitor output of my USB scanner with the following command. However, hexidecimal output of keypress events isn’t so useful:

$ cat /dev/input/event1 | hexdump

evtest also lets me monitor the output, but is also isn’t in a useful format:


$ apt-get update
$ apt-get install evtest

$ evtest /dev/input/event1



  1. Is there a linux utility to get the string output of a USB HID device, continuously, one line at a time?
  2. Is this “keyboard device” attached to a terminal? Like, when I scan a barcode, is it dumping the output to a command prompt?
  3. How would I make this “app” start on boot.