====== Hooking up Pixy to a Beaglebone Black ====== ====== 1. Introduction ====== The following procedure outlines steps to build the 'hello_pixy' example on a BeagleBone Black using the Debian Linux Distribution (Debian Image 2014-05-14). The 'hello_pixy' example is a simple program that demonstrates how to read blocks and send commands to the Pixy over USB like the PixyMon application. You will need: * BBB with Debian Linux Distribution installed to the eMMC * USB Hub with at least three ports * Pixy updated to the latest firmware (1.0.2) * libpixyusb version is 0.2 The Debian Linux distribution for the BeagleBone Black is available from the BeagleBoard website here: http://beagleboard.org/latest-images/\\ A procedure for flashing the BeagleBone Black can be found here: https://learn.adafruit.com/beaglebone-black-installing-operating-systems/flashing-the-beaglebone-black ====== 2. Procedure ====== ===== 2.1. BeagleBone Black Hardware Setup ===== ==== 2.1.1. Using a USB hub, connect your keyboard, mouse, and Pixy to the BeagleBone Black. Using an Ethernet cable, connect your BeagleBone Black to the internet. Connect a video display to the BeagleBone Black using an HDMI cable. Power up the BeagleBone Black using either a USB cable or the 5V barrel connector. ==== {{wiki:img:8fbcbba901d7a1526f2c8be21352636239a4425c.png?400}} ===== 2.2. Software Dependency Installation ===== From the main menu, start the LXTerminal application. In the terminal window type: ''%%sudo apt-get update%%'' ==== 2.2.1. Install libusb ==== In the terminal window type: ''%%sudo apt-get install libusb-1.0-0.dev%%'' ==== 2.2.2. Install libboost ==== In the terminal window type: ''%%sudo apt-get install libboost-all-dev%%'' ==== 2.2.3. Install cmake ==== In the terminal window type: ''%%sudo apt-get install cmake%%'' ===== 2.3. Install Pixy Source Code ===== In the terminal window type: ''%%git clone https://github.com/charmedlabs/pixy.git%%'' ===== 2.4. Build and install libpixyusb ===== ==== 2.4.1. Build the library ==== In the terminal window type: ''%%cd pixy/scripts%%''\\ ''%%./build_libpixyusb.sh%%'' ==== 2.4.2. Install the library ==== In the terminal window type: ''%%sudo ./install_libpixyusb.sh%%'' ===== 2.5. Running the 'hello_pixy' example ===== ==== 2.5.1. Build the example ==== In the terminal window type: ''%%./build_hello_pixy.sh%%'' ==== 2.5.2. Run the example ==== In the terminal window type: ''%%cd ../build/hello_pixy%%''\\ ''%%sudo ./hello_pixy%%'' The output should look like something below: ''%%Hello Pixy:%%''\\ ''%% Example Version: 0.3%%''\\ ''%% Pixy Firmware Version: 1.0.2%%''\\ ''%%Detecting blocks...%%''\\ ''%%[sig: 1 w: 11 h: 17 x:149 y: 46]%%''\\ ''%%[sig: 1 w: 9 h: 21 x:148 y: 46]%%''\\ ''%%[sig: 1 w: 14 h: 21 x:151 y: 45]%%''\\ ''%%[sig: 1 w: 10 h: 19 x:149 y: 47]%%''\\ ''%%[sig: 1 w: 8 h: 16 x:148 y: 49]%%''\\ ''%%[sig: 1 w: 9 h: 19 x:148 y: 45]%%''\\ ''%%[sig: 1 w: 12 h: 6 x:150 y: 54]%%''\\ ''%%[sig: 1 w: 15 h: 18 x:151 y: 46]%%''\\ ''%%[sig: 1 w: 11 h: 5 x:149 y: 54]%%''\\ ''%%[sig: 1 w: 9 h: 7 x:148 y: 49]%%''\\ ''%%[sig: 1 w: 11 h: 5 x:149 y: 50]%%''\\ ''%%[sig: 1 w: 8 h: 6 x:148 y: 47]%%''\\ ''%%[sig: 1 w: 10 h: 7 x:149 y: 51]%%'' The example does the following - Connects to Pixy using USB - Displays firmware version installed on Pixy - Block information is displayed if color signatures have been set and if the signatures are currently being detected by Pixy.