The hardware interfacing is based on libmraa. You can use this on beaglebone black, Raspberry PI or the intel edison/galileo.

Just select the ingredients in the settings, and the right recipes are populated for generating your cocktails automatically.

The control software is a webserver you can access from any browser. Built to be responsive, so you can use it either on your mobile or desktop.


If you want to add new recipes, just add new ones to the recipes.json, and the ingredients to ingredients.json they will be populated automatically.

How to run the software.


For Intel Edison and Intel Galileo

If you are using the standard images should work out of the box.

For Beaglebone.

Get the latest beaglebone debian distribution from

Install the following dependencies,

sudo apt-get install git build-essential swig3.0 python-dev nodejs-dev cmake
Build and Install mraa
libmraa is not in apt so we’ll have to compile it from source. Don’t worry, it’s easy:
git clone
mkdir mraa/build && cd $_
make install
bash sudo ln -s <your install prefix, e.g. /usr>/lib/python2.7/site-packages/* /usr/lib/python2.7/dist-packages 

I am not sure if I got the steps right, but the main reference is this.

And this

For Raspberry PI look here.

Once you got libmraa installed. Test using to check whether your GPIO pins are working properly or not.

cd into the somabot repo and do

pip install flask

This will start your server. Access the web server through the ip address on which you are running.

Show Comments