Introduction: PCB Ruler Level W/ BeagleBone Black

This instructable will walk you through how to take a PCB Ruler and make it into a simple level using LabVIEW 2014. When the ruler is held level the LED on the end will light up.

Step 1: Materials

Below is the list of materials used for this project:


PCB Ruler

BeagleBone Black


LED (of any color)

Soldering Iron

(2) 4.7 kohm resistors


LabVIEW 2014

LINX 3.0

Step 2: Circuit Setup

The PmodGYRO runs using I2C communication protocol. All you need is one column on the J2 pin out on the PmodGYRO - VCC, GND, SDA and SCL. The Pmod is powered with 3.3V, and I use two, 4.7Kohm pull-up resistors to pull the SDA and SCL lines to 3.3V.

Follow the Fritzing diagram above for a visualization of how this is done.

The Pmod VCC is wired into pin 49 (3.3V), GND into pin 47 (GND), SDA into pin 66, SCL into pin 65.

The LED VCC is wired into pin 7 (DIO 7) and GND into pin 2 (GND).

First, I soldered the LED and two resistors into place. Then, cut the wires that span just the PCB board to length, and soldered those in place. I cut the wires that reach from the ruler to the BeagleBone about an arms length in size (for ease of use, no other particular reason). Next, solder the wires into place according to the diagram, and then solder the Pmod in place.

I placed heat shrink in two separate places along the length of the excess wire just to ensure there wouldn't be a ton of tug on any one place.

Step 3: Software Setup

Using LabVIEW 2014 and LINX 3.0, I can target the BeagleBone Black. If you're unfamiliar with LINX 3.0 or need help doing the firmware installation on your BeagleBone, these tutorial videos walk you through the entire process.

After you have it all up and running, the PmodGYRO has its own vi library. I use a digital write to write to the LED and I use three separate filters to filter the gyro values for smoother x, y and z values.

If the gyro deviates from its zero by 50 increments in any direction, the LED will shut off. This number can be changed to anything larger or smaller - it just depends on how sensitive you want the level/LED signaling to be.

Step 4: Thank You!

Thanks for viewing my instructable. Please comment or message me if you have any questions, and if you need any of the hardware and software for this project, feel free to visit