Difference between revisions of "Install Pibox V3 on Ubuntu ( 64 bits )"

From Giss
(Start the front-end)
Line 144: Line 144:
   cd ~/pibox/pibox_v3_front
   cd ~/pibox/pibox_v3_front
   npm run start
   npm run start

Revision as of 00:21, 24 December 2020

INSTALL for PIBOX V3 on a Ubuntu Laptop/Desktop ( 18.04 or 20.04 )

Pibox V3 app was developped by http://p-node.org and in particular by jack@rybn.org and it is aimed at providing a streaming station/solution on Raspberry PIs.

It can also act as a radio FM transmitter on Pi boxes, but this part will not be available on PCs.

Here are the instructions to install it on a regular Ubuntu system :


  • A ubuntu 18.04 or 20.04
  • Tools : git, python3, node.js, npm
 ** on Ubuntu 18.04, we used :
    git 2.17.1 
    python 3.6.9 
    node.js v12.10.0 
    npm v6.9.0


You must install and run under the account that started the gnome session to be able to connect to pulse audio.

So, use your normal account and not the pi account like indicated in some p-node manuals.

My user here is chevil, my usual account.


Pibox V3 consists of 2 parts :

* a back-end which is a python app

* a front-end which is an angular/node.js app

Get the App sources

> cd ~

> mkdir pibox

> cd pibox

> git clone http://git.rybn.org/rybn/pibox_v3_back.git

> git clone http://git.rybn.org/rybn/pibox_v3_front.git

> cd pibox_v3_back

> git checkout develop

Install dependencies

> sudo apt-get update

> sudo apt install python3-pip libgstreamer1.0-0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-doc gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-pulseaudio gstreamer1.0-plugins-base-apps libglib2.0-dev libgirepository1.0-dev libcairo2-dev pulseaudio dnsmasq hostapd docker docker-compose

> pip3 install --upgrade setuptools

> pip3 install --upgrade pip

> pip3 install -r requirements.txt

Adjust pulse configuration

edit /etc/pulse/client.conf as root

( sudo vi /etc/pulse/client.conf )

and set :

enable-shm = yes

shm-size-bytes = 1000000

Add you user to pulse audio group

> sudo usermod -a -G pulse chevil

> sudo usermod -a -G pulse-access chevil

Modify paths in app/main.py

edit ~/pibox/pibox_v3_back/app/main.py

change :


to :


change :


to :


 * Note : this could be wrong, this depends on how many network cards you have in your system, so check what is in /sys/class/ieee80211

Create sound directory

> cd ~/pibox/pibox_v3_back

> mkdir sounds

> chmod 777 sounds

Setup the front-end

> cd ~/pibox/pibox_v3_front

> rm package-lock.json

> npm i

Restart your machine

> reboot

Start the back-end

> cd ~/pibox/pibox_v3_back

> python3 app/main.py

* Note : it will ask your password here to execute commands with sudo, it's normal

Start the front-end

 cd ~/pibox/pibox_v3_front
 npm run start


That's it !

Your Pibox V3 UI should be available at : http://localhost:4200

Err, Wait, no, There is a problem on Ubuntu 20.04 :

The libshout ( 2.4.3-1 ) has a regression and does not work ( you cannot send stream out ),

so you have to use an older version of libshout, here is how you can install it, overriding the official one :

 sudo apt-get install xz-utils wget
 cd /tmp 
 wget http://mirrors.kernel.org/ubuntu/pool/main/libs/libshout/libshout3_2.4.1-2build1_amd64.deb
 ar xv libshout3_2.4.1-2build1_amd64.deb
 xz -dc data.tar.xz | tar xv
 sudo cp ./usr/lib/x86_64-linux-gnu/libshout.so.3.2.0 /usr/lib/x86_64-linux-gnu/
 sudo ldconfig -v

Now, it should be ROLLING !!