Adventures with Beaglebone Green Wireless

I wanted to share some experiences with the Beaglebone Green Wireless that I received a few weeks ago.  This board seems ideal for IoT applications but since it is pretty new and since not many people own it yet, there is not much support out there.

Let me first say that I really love how the board is setup.  When you power it up, it becomes a WiFi router which shows up under WiFi networks.  Once you connect to it, it pops up a browser window that lets you connect it to an external WiFi network (only private not cooperate).  Then you can connect via ssh and start playing.

There are a few things that are not working as advertised.  I am working on a project where I want to connect a few sensors (I2C) and I also wanted to connect via Bluetooth LE.  I was also planning to do the whole project in python.

I am using a BNO055 sensor breakout from Adafruit and they have a nice Beaglebone Black library.  Unfortunately, the example program simpletest.py is not working out of the box because the i2c on the BBB and BBGW are not configured the same way.  When I connect the sensor to P9_19 and P9_20, and P9_12 (reset) it shows an IOError.  When I check the i2c connection using i2cdetect -r 2 I can see the sensor under the address 0x28.  But the Adafruit is assuming that the sensor is at i2c-1.  I tried to force the library to use i2c-1 by specifying busnum=2 (btw, the documentation on the Adafruit website is incorrect: it is busnum not bus), but to no avail.  I solved the problem by reinstalling i2c-tools (https://packages.debian.org/jessie/i2c-tools) and also reinstalling py-smbus.  It seems that the py-smbus that you can get through pip does not do the job correctly (install i2c-tools with make, make install and py-smbus using python setup.py install).  Now the script works with busnum=2.

Also, bluepy does not work when installed with pip.  Follow the instructions to install from the github source and it works very nicely.

Good luck

Helmut Strey