Modifications to the Manual install docs from: http://docs.brewpi.com/ This is needed to have more than 1 BrewPi connected to your Raspberry Pi/PC. I use a Raspberry Pi with the current version of Jessie (2016-09-23-raspbian-jessie-lite) from https://www.raspberrypi.org/downloads/raspbian/. I will skip past the imaging of jessie as that is documented well on the Raspberry Pi website. Once imaged, change hostname and timezone using: sudo raspi-config Update the OS and shutdown sudo apt-get update sudo apt-get upgrade sudo shutdown now Attached 1 Spark v2 to usb port and run the following ls /dev/ttyACM* returned: Results: /dev/ttyACM0 Ran: udevadm info -a -n /dev/ttyACM0 The relevant looking at parent device section will be the one that contains a line that states ATTRS{product}=="Photon with WiFi" The important line in the output above is the KERNELS line. Write that line down and save it for later. Repeat this for the # of Spark v2 that will be used. Write udev rules sudo nano /etc/udev/rules.d/99-spark.rules Paste: SUBSYSTEM=="tty", KERNEL=="ttyACM*", KERNELS=="1-1.2", SYMLINK+="spark_conical1" SUBSYSTEM=="tty", KERNEL=="ttyACM*", KERNELS=="1-1.3", SYMLINK+="spark_conical2" Once the udev rules file is created, disconnect your spark and then reload udev before connecting all of the sparks to their respective ports. sudo /etc/init.d/udev reload Install required software sudo apt-get install -y apache2 libapache2-mod-php5 php5-cli php5-common php5-cgi php5 git-core build-essential python-dev python-pip pastebinit sudo pip install pyserial psutil simplejson configobj gitpython --upgrade Clone Repository sudo -u brewpi git clone https://github.com/BrewPi/brewpi-script /home/brewpi/conical1 sudo -u brewpi git clone https://github.com/BrewPi/brewpi-script /home/brewpi/conical2 sudo -u www-data git clone https://github.com/BrewPi/brewpi-www /var/www/html/conical1 sudo -u www-data git clone https://github.com/BrewPi/brewpi-www /var/www/html/conical2 Edit config.cfg sudo nano /home/brewpi/conical1/settings/config.cfg scriptPath = /home/brewpi/conical1/ wwwPath = /var/www/html/conical1/ port = /dev/spark_conical1 altport = /dev/null boardType = Particle Photon sudo nano /home/brewpi/conical1/settings/config.cfg scriptPath = /home/brewpi/conical2/ wwwPath = /var/www/html/conical2/ port = /dev/spark_conical2 altport = /dev/null boardType = Particle Photon CRON job sudo nano /etc/cron.d/brewpi_conical1 PYTHON=/usr/bin/python SCRIPTPATH=/home/brewpi/conical1 * * * * * brewpi $PYTHON $SCRIPTPATH/brewpi.py --config $SCRIPTPATH/settings/config.cfg --checkstartuponly --dontrunfile; [ $? != 0 ] && $PYTHON -u $SCRIPTPATH/brewpi.py --config $SCRIPTPATH/settings/config.cfg 1>$SCRIPTPATH/logs/stdout.txt 2>>$SCRIPTPATH/logs/stderr.txt & sudo nano /etc/cron.d/brewpi_conical2 PYTHON=/usr/bin/python SCRIPTPATH=/home/brewpi/conical2 * * * * * brewpi $PYTHON $SCRIPTPATH/brewpi.py --config $SCRIPTPATH/settings/config.cfg --checkstartuponly --dontrunfile; [ $? != 0 ] && $PYTHON -u $SCRIPTPATH/brewpi.py --config $SCRIPTPATH/settings/config.cfg 1>$SCRIPTPATH/logs/stdout.txt 2>>$SCRIPTPATH/logs/stderr.txt & Web Interface config sudo nano /var/www/html/conical1/config_user.php