How to get started with bbg, grove, and linux?

I have some BBG devices, and a selection of grove sensors and LEDs.

My BBG is running Ubuntu 14.04.3 LTS, the BBG flasher version from Robert Nelson as described on elinux.

Now I’m trying to figure out how to detect and access any of the grove sensors. I’d like to do this from C++. Where do I need to start looking?

I found the onboard LEDs at /sys/devices/platform/leds/leds/beaglebone:green:usrX/ and can turn them on and off at will, which was a nice start.

But where do I find documentation on how to access “grove” sensors?


We have few example projects using Grove on BBG (Please see here. These are written using Python.

Our technical team is working to bring few examples in other programming languages as well.

Thanks and Warm Regards.

I didn’t find anything useful at that link. Is it the correct one?

Where is the entire Python library code? Is it on Github, or some other place where I can download the latest version?

Is there a central location where all the Grove io addresses are documented, or where the communication protocol is documented?


The link is correct. Please use the “Make It Now” buttons to take to the description page (where links to source code are also provided) eg: link.

We do not have python library for every module. The I2C addresses & communication protocols are found in the data-sheets. We also provide Arduino library / examples for these Grove modules. This can be used as reference to port / write library for BBG.

Thanks and Warm Regards.

Thanks. Where can i find the data sheets? For example, I’m looking for the one for Chainable RGB LED, sku #104030006.

I’ve looked on the forum and on the wiki, but cannot find it.

The datasheets are available in the following link.

Thanks and Regards

Thanks, Kavi.

I’ve read that data sheet. English is not my first language, so I think I missed it. Where are the I2C addresses and communication protocols described in that data sheet?

Say I want to turn the LED off, or set the RGB colour to a specific value. Can you provide example code using the /usr/sbin/i2cset command so I can understand how this works?