How to compilare Dadhi Linux su Raspberry Pi 2-3

 

How to compilare Dadhi Linux su Raspberry Pi 2-3

How to compilare Dadhi Linux su Raspberry Pi 2-3. Questa guida mostra come compilare dadhi-linux-complete su Raspberry Pi 2 o Pi 3. Quando si prova a compilare, l'errore che si verifica è il seguente, e cioè richiede il kernel source:

root@raspberrypi:/usr/src/dahdi-linux-complete-2.11.1+2.11.1# make all
make -C linux all
make[1]: ingresso nella directory "/usr/src/dahdi-linux-complete-2.11.1+2.11.1/linux"
make -C drivers/dahdi/firmware firmware-loaders
make[2]: ingresso nella directory "/usr/src/dahdi-linux-complete-2.11.1+2.11.1/linux/drivers/dahdi/firmware"
make[2]: uscita dalla directory "/usr/src/dahdi-linux-complete-2.11.1+2.11.1/linux/drivers/dahdi/firmware"
You do not appear to have the sources for the 4.1.19-v7+ kernel installed.
Makefile:71: set di istruzioni per l'obiettivo "modules" non riuscito
make[1]: *** [modules] Errore 1
make[1]: uscita dalla directory "/usr/src/dahdi-linux-complete-2.11.1+2.11.1/linux"
Makefile:9: set di istruzioni per l'obiettivo "all" non riuscito
make: *** [all] Errore 2

quindi per risolvere il problema proceder

Configurazione Grandstream HT 503 con Asterisk e FreePBX

 

Configurazione Grandstream HT 503 con Asterisk e FreePBX

Configurazione Grandstream HT 503 con Asterisk e FreePBX. Questa guida mostra come configurare un Grandstream HT 503 con Asterisk e FreePBX. Il Grandstream HT 503 non è niente altro che un gateway/modulo ATA, che serve per utilizzare la propria linea telefonica all'interno di un PBX, nel mio caso lo utilizzo con Raspbx installato su un Raspberry pi 2. Di seguito mi limiterò a condividere gli screenshot della mia configurazione funzionante. Nell'immagine sopra si vedono due porte rj45 e 2 porte rj11, e si potrebbero utilizzare nel modo seguente:

  1. Line=FX0: bisogna inserire il cavo della propria linea telefonica.
  2. Phone=FXS: dove eventualmente andrà collegato un telefono analogico.
  3. WAN: inserire il cavo di rete.
  4. LAN: si può collegare direttamente un telefono voip.

Quindi l'obiettivo sarà quello di girare le chiamate che arrivano sulla nostra linea tradizionale ad un interno voip o analogico collegato al modulo ATA. L'indirizzo di default del Grandstream HT 503 è 192.168.2.1. In questa guida la rete è strutturata in questo modo:

  1. HT 503= 192.168.1.80
  2. Server PBX= 192.168.1.83
  3. numero principale= 023xxxxxx
  4. interno che squilla=101, ed essendo un telefono voip è collegato alla porta Lan

Status:

Grandstream HT 503 Asterisk e FreePBX

Basic setup:

è consigliabile settare l'ip dell'ATA in modo statico, nel mio caso ci pensa direttamente il router:

Grandstream HT 503 Asterisk e FreePBXGrandstream HT 503 Asterisk e FreePBX

in Unconditional Call Forward to Voip, inserire il proprio numero di telefono.

Advanced Settings:

Grandstream HT 503 Asterisk e FreePBX

f1=425@-12,f2=425-12,c=200/200-600/1000;
f1=425@-20,c=1000/4000;
f1=425@-20,c=500/500;
f1=425@-12,c=250/250;
f1=350@-11,f2=440@-11,c=100/100-100/100-100/100;
f1=425@-12,f2=425-12,f3=425@-12,c=400/200-600/100/100;
f1=350@-13,f2=440@-13,c=0/0;

FXS:

se non si usa si può lasciare non configurata.

fxs

fxs2

FX0:

Grandstream Device Configuration

sopra ci sono User ID e password, le quali poi saranno riportate al momento della crezione del Trunk in FreePBX.

Grandstream Device Configuration Grandstream Device Configuration Grandstream Device Configuration Grandstream Device Configuration

Adesso passare alla configurazione lato FreePBX, creando un Trunk con la linea principale:

trunk Configurazione Grandstream HT 503 con Asterisk e FreePBX

host=192.168.1.80
type=peer
context=from-trunk
authname=023xxxxxxx
secret=XXXXXXXXXX
canreinvite=no
insecure=port,invite
dtmfmode=rfc2833
nat=no
port=5062
disallow=all
allow=alaw&ulaw

come si vede il trunk punta al modulo ATA HT 503. Adesso bisogna creare l'Estensione 101, mettendo la stessa password anche sul telefono Voip che si andrà a configurare.

estensione

a questo punto bisogna dirottare le chiamate in entrata verso l'estensione 101, oppure verso un IVR o un gruppo di squillo. Andare in Connectivity-Inbound Routes:

inbound

poi andare in Connectivity-Outbound Routes:

outbound routes outbound routes

se tutto è andato bene, adesso si potranno ricevere e fare telefonate dalla nostra linea principale, passando dal centralino.

status

Updated: 12/06/2017

enjoy 😉

 

Avviare Tightvncserver al boot su Raspberry pi 2 e Debian Jessie

 

 

Avviare Tightvncserver al boot su Raspberry pi 2 e Debian Jessie

 

Per avviare Tightvncserver al boot su Raspberry pi 2 e Debian Jessie, ma anche su altri sistemi Linux, i passi da seguire sono i seguenti:

$ sudo nano /etc/init.d/tightvncserver

ed incollare dentro quanto sotto, inserendo il proprio nome utente:

#!/bin/bash
# /etc/init.d/tightvncserver
# Inserire il nome utente di chi avvierà tightvncserver
VNCUSER='UTENTE'
case "$1" in
  start)
    su $VNCUSER -c '/usr/bin/tightvncserver :1'
    echo "Starting TightVNC server for $VNCUSER"
    ;;
  stop)
    pkill Xtightvnc
    echo "Tightvncserver stopped"
    ;;
  *)
    echo "Usage: /etc/init.d/tightvncserver {start|stop}"
    exit 1
    ;;
esac
exit 0

salvare, settare i permessi e riavviare:

$ sudo chmod 755 /etc/init.d/tightvncserver
$ sudo update-rc.d tightvncserver defaults
$ sudo reboot

 

enjoy 😉

 

Installare Asterisk 13 con Freepbx 12 su Raspberry pi 2 e Debian Jessie

 

Installare Asterisk 13 con Freepbx 12 su Raspberry pi 2 e Debian Jessie

 

Guida su come Installare Asterisk 13 con Freepbx 12 su Raspberry pi 2 e Debian Jessie Armhf, e che funziona naturalmente anche su architettura AMD64 & Intel 64.

Aggiornare il sistema:

# apt-get update && apt-get upgrade

se viene installato un nuovo kernel riavviare.

Scaricare le dipendenze ed i servizi necessari:

# apt-get install -y build-essential openssh-server apache2 mysql-server mysql-client bison flex php5 php5-curl php5-cli php5-mysql php-pear php-db php5-gd curl sox libncurses5-dev libssl-dev libmysqlclient-dev mpg123 libxml2-dev libnewt-dev sqlite3 libsqlite3-dev pkg-config automake libtool autoconf git subversion unixodbc-dev uuid uuid-dev libasound2-dev libogg-dev libvorbis-dev libcurl4-openssl-dev libical-dev libneon27-dev libsrtp0-dev libspandsp-dev libiksemel-dev libiksemel-utils libiksemel3 libjansson-dev libapache2-mod-php5

a metà installazione verrà chiesto di settare una password per Mysql MEMORIZZARLA/SEGNARSELA. Scaricare l'occorrente: Pjproject, Jansson, Asterisk, Freepbx:

# cd /usr/src
# wget https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz
# wget -O jansson.tar.gz https://github.com/akheron/jansson/archive/v2.7.tar.gz
# wget https://www.pjsip.org/release/2.4.5/pjproject-2.4.5.tar.bz2
# wget https://mirror.freepbx.org/modules/packages/freepbx/freepbx-12.0-latest.tgz

Installare Pjproject:

# cd /usr/src
# tar -xjvf pjproject-2.4.5.tar.bz2
# cd pjproject-2.4.5
# CFLAGS='-DPJ_HAS_IPV6=1' ./configure --enable-shared --disable-sound --disable-resample --disable-video --disable-opencore-amr
# make dep
# make -j2
# make install

Installare Jansson:

# cd /usr/src
# tar vxfz jansson.tar.gz
# cd jansson-*
# autoreconf -i
# ./configure
# make -j2
# make install

 Installare Asterisk 13:

# cd /usr/src
# tar xvfz asterisk-13-current.tar.gz
# cd asterisk-13.*
# contrib/scripts/get_mp3_source.sh
# ./configure
# make menuselect

a questo punto conviene dare un occhiata ed abilitare qualche modulo in più, come format_mp3:

Installare Asterisk 13 con Freepbx 12 su Raspberry pi 2 e Debian Jessie


# make -j2
# make install
# make config
# ldconfig

Installazione e configurazione di Freepbx, Mysql ed Apache2, e quando richiesto inserire la password Mysql:

# cd /usr/src
# tar vxfz freepbx-12.0-latest.tgz
# cd freepbx
# pear uninstall db
# pear install db-1.7.14
# useradd -m asterisk
# chown asterisk. /var/run/asterisk
# chown -R asterisk. /etc/asterisk
# chown -R asterisk. /var/{lib,log,spool}/asterisk
# chown -R asterisk. /usr/lib/asterisk
# rm -rf /var/www/html
# cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf_orig
# sed -i 's/\(^upload_max_filesize = \).*/\120M/' /etc/php5/apache2/php.ini
# sed -i 's/AllowOverride None/AllowOverride All/'  /etc/apache2/apache2.conf
# sed -i 's/^\(User\|Group\).*/\1 asterisk/' /etc/apache2/apache2.conf
# service apache2 restart
# mysqladmin -u root create asterisk -p
# mysqladmin -u root create asteriskcdrdb -p
# mysql -u root -p -e "GRANT ALL PRIVILEGES ON asterisk.* TO asteriskuser@localhost IDENTIFIED BY 'password';"
# mysql -u root -p -e "GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED BY 'password';"
# mysql -u root -p -e "flush privileges;"
# ./start_asterisk start
# ./install_amp --installdb --username=asteriskuser --password=password

durante il processo di installazione verranno mostrate alcune voci, le uniche da corregere eventualmente sono l'indirizzo IP del  Raspberry e la password di accesso di amministrazione:

Enter a PASSWORD to connect to the Asterisk Manager interface:
 [amp111] PASSWORD
Enter the path to use for your AMP web root:
 [/var/www/html]

Created /var/www/html
Enter the IP ADDRESS or hostname used to access the AMP web-admin:
 [192.168.1.1] 192.168.1.16

 

# amportal restart
# amportal chown
# amportal a ma installall
# amportal a ma installall
# amportal a ma refreshsignatures
# amportal chown
# ln -s /var/lib/asterisk/moh /var/lib/asterisk/mohmp3
# amportal restart

 

se tutto è andato bene il server Asterisk è raggiungibile all'indirizzo https://ip_raspberry

UPDATE: Nel caso di pagina bianca eseguire i passi successivi:

# cd /usr/src/freepbx
# sed -i 's/^\(User\|Group\).*/\1 asterisk/' /etc/apache2/apache2.conf
# service apache2 restart

e poi accedere all'indirizzo https://ip_raspberry/admin

enjoy 😉

 

(Solved) Problemi con Kodi su Raspberry pi 2 e Debian Jessie

 

Dopo avere installato Debian Jessie pura su Raspberry pi 2, che io chiamo RaspJessie, ho avuto dei problemi con Kodi, tutti imputabili al fatto che creando un nuovo utente, questo non aveva i permessi di input, per la tastiera ed il mouse e quelli video. Lanciando Kodi il primo errore che si è presentato è stato: failed to open vchiq instance, che si risolve cambiando l'utente che lancerà kodi:

sudo nano /etc/default/kodi

e sostituire l' utente kodi. Poi verificare i gruppi per l'utente Kodi e il nuovo utente RaspJessie, aggiungendoli ai gruppi, video ed input:

$ id kodi
$ id utente_RaspJessie

quindi:

$ sudo usermod -a -G video utente_RaspJessie
$ sudo usermod -a -G input utente_RaspJessie
$ sudo usermod -a -G input kodi

e poi logout.

 

enjoy 😉

 

Flash su Raspberry pi 2 con Chromium-Pepper

 

Per avere il plugin flash su Raspberry pi 2, bisogna installare chromium-browser e chromium-pepper, questo sia se si sta utilizzando Raspbian Jessie, sia Debian Jessie armhf. Per installare questi pacchetti bisogna andarli a prelevare nei repository di altre distro:

Scaricare ed installare Chromium:

$ wget https://www.dropbox.com/s/3iw9oopqolnw0ca/chromium-browser_45.0.2454.85-0ubuntu0.15.04.1.1181_armhf.deb
$ wget https://www.dropbox.com/s/dylujonf0mb6wul/chromium-browser-l10n_45.0.2454.85-0ubuntu0.15.04.1.1181_all.deb
$ wget https://www.dropbox.com/s/qxlw1mcx6orb9bi/chromium-codecs-ffmpeg-extra_45.0.2454.85-0ubuntu0.15.04.1.1181_armhf.deb
$ sudo dpkg -i chromium-browser_45.0.2454.85-0ubuntu0.15.04.1.1181_armhf.deb
$ sudo dpkg -i chromium-browser-l10n_45.0.2454.85-0ubuntu0.15.04.1.1181_all.deb
$ sudo dpkg -i chromium-codecs-ffmpeg-extra_45.0.2454.85-0ubuntu0.15.04.1.1181_armhf.deb
$ sudo apt-get install -f

Scaricare chromium-pepper

$ wget
$ tar -xf chromium-pepper-flash-12.0.0.77-1-armv7h.pkg.tar.xz
$ cd usr/lib/PepperFlash/
$ sudo cp * /usr/lib/chromium-browser/plugins

fare delle modifiche:

$ sudo nano  /etc/chromium-browser/default

ed aggiungere sotto CHROMIUM_FLAGS="

CHROMIUM_FLAGS="--ppapi-flash-path=/usr/lib/chromium-browser/plugins/libpepflashplayer.so --ppapi-flash-version=12.0.0.77-1 -password-store=detect -user-data-dir"

adesso si è pronti ad utilizzare il plugin flash su Raspberry pi 2.

 

enjoy 🙂

 

Debian Jessie su Raspberry pi 2

                       Debian Jessie su Raspberry pi 2

 

Come ottenere una Debian Jessie originale per  Raspberry pi 2, e sfruttare quindi i repository Debian. Pur avendo usato Raspbian, ho sempre voluto avere una Debian pura, e sopratutto voglio Mate come DE. Per ottenere una Debian pura su Raspberry pi 2, utilzzo Debootstrap e qemu-user-static su un pc con Debian Jessie x64.

 

$ targetdir=rootfs
$ distro=jessie
$ mkdir $targetdir
$ sudo apt-get install qemu-user-static debootstrap binfmt-support
$ sudo debootstrap --arch=armhf --foreign $distro $targetdir
$ sudo cp /usr/bin/qemu-arm-static $targetdir/usr/bin/
$ sudo cp /etc/resolv.conf $targetdir/etc
$ sudo chroot $targetdir
# distro=jessie
# export LANG=C
# /debootstrap/debootstrap --second-stage

 

Aggiungere i repository:

cat > /etc/apt/sources.list << EOF
deb https://ftp.it.debian.org/debian jessie main contrib non-free
deb https://ftp.it.debian.org/debian jessie-updates main contrib non-free
deb https://security.debian.org jessie/updates main contrib non-free
deb https://archive.raspberrypi.org/debian jessie main
EOF

 

un po di pinning:

cat > /etc/apt/preferences.d/raspberrypi << EOF
Package: *
Pin: origin archive.raspberrypi.org
Pin-Priority: 1

Package: raspberrypi-bootloader
Pin: origin archive.raspberrypi.org
Pin-Priority: 1000

Package: libraspberrypi0
Pin: origin archive.raspberrypi.org
Pin-Priority: 1000

Package: Rasspberrypi-bin
Pin: origin archive.raspberrypi.org
Pin-Priority: 1000
EOF

 

Configurazione rete in DHCP:

cat > /etc/network/interfaces.d/eth0 << EOF
auto eth0
iface eth0 inet dhcp
EOF

Configurare fstab:

cat > /etc/fstab << EOF
/dev/mmcblk0p1 /boot vfat noatime 0 2
/dev/mmcblk0p2 / ext4 noatime 0 1
EOF

 

Configuarare file hosts

cat > /etc/hosts << EOF
127.0.0.1  localhost
127.0.1.1  RaspJessie
EOF

 

Creare utente e settare la password di root, quindi poi scaricare tutto quello che serve:

# adduser nome_utente
# passwd
# echo "RaspJessie" > /etc/hostname
# wget https://archive.raspberrypi.org/debian/raspberrypi.gpg.key -O - | apt-key add -
# apt-get update
# apt-get upgrade -y
# apt-get install -y mate-desktop-environment locales dbus openssh-server dosfstools libraspberrypi-bin
# apt-get clean

 

disabilitare orologio di sistema:

# systemctl enable systemd-timesyncd
# systemctl disable hwclock-save
# exit

 

Il sistema è pronto. La mia scheda microsd identificata come mmcblk0 ha due partizioni, la prima mmcblk0p1 è di 150M, e la seconda mmcblk0p2, con tutto il resto dello spazio. Si può usare gparted oppure il terminale:

$ sudo umount /dev/mmcblk0p1
$ sudo umount /dev/mmcblk0p2
$ sudo mkfs.vfat /dev/mmcblk0p1
$ sudo mkfs.ext4 /dev/mmcblk0p2

creazione e montaggio delle cartelle, ed infine copiare il sistema originale Debian Jessie sulla microsd:

$ sudo mkdir /mnt/{boot,system}
$ sudo mount /dev/mmcblk0p1 /mnt/boot
$ sudo mount /dev/mmcblk0p2 /mnt/system
$ sudo rsync -av rootfs/boot/ /mnt/boot
$ sudo rsync -av --exclude=/boot/* rootfs/ /mnt/system
$ sudo umount /mnt/{boot,system}

 

Adesso siamo pronti ad usare una Debian Jessie pura su raspberry pi 2. 

enjoy 😉

 

(Solved) RaspberryPi e schermo con bordi neri

 

Usando il Raspberry sul monitor del pc ho avuto il problema dei bordi neri, ma questo è un problema che si ha anche con la TV. Per risolvere bisogna mettere mano al file /boot/config.txt, se non presente crearlo, quindi aggiungere e poi a modificare i valori di overscan, che vanno da -n a n. Un esempio può essere quello sotto:

 

overscan_top=-5
overscan_bottom=-5
overscan_left=-5
overscan_right=-5

 

e poi reboot

 

enjoy 😉
 

RaspberryPi overclocking e benchmark

 

Sul mostriciattolo da qualche tempo, ho messo mano al file config.txt, per aumentarne le prestazioni. L'overclock che ho fatto non è stato aggressivo, e riguarda cpu e sdram, mentre per la gpu ho lasciato l'opzione di default. Di defaul il RaspberryPi "gira" a :

 

  • CPU – 700MHz
  • RAM – 400MHz
  • GPU – 250MHz

 

prima di fare le modifiche è meglio fare un benchmark, giusto per avere dei dati da confrontare.

 

# apt-get install bc

# time echo "scale=3000;4*a(1)" | bc -l

 

come risultato ho ottenuto:

 

real    1m8.918s
user    1m8.440s
sys    0m0.000s

 

per effettuare l'overclock, bisogna mettere mano al file /boot/config.txt, che di default non esiste, quindi bisogna crearlo:

 

# nano /boot/config.txt

 

ed aggiungere, come nel mio caso:


arm_freq=800
sdram_freq=500
gpu_freq=250

 

quindi reboot, ed il benchmark successivo è stato:
 

real    1m0.384s
user    1m0.000s
sys    0m0.030s

 

quindi con un aumento del 14%

 

 

p.s: è inutile ricordare che non bisogna esagerare 🙂

 

enjoy 😉