Download a RPI image, in this case, I choose : pipaOS A lighweight, fast, Raspbian based distro for the Raspberry PI
Once the image unziped, copy to a fresh high performance micro SD card
sudo dd bs=4M if=./pipaos-tamarillo-4.7.img of=/dev/mmcblk0
in order to boost performances, I use a Samsung EVO+ for high performance for a very fast boot
ssh sysop@192.168.1.84 (password posys)
Connect to WIFI network
Rpi 3 rev B and Zero W have integrated wifi
Edit WIFI credentials
The file /etc/network/interfaces should NOT be modified, as it’s overwritten at start.
Edit the file
sudo nano /boot/network.ini
To add your credential:
#
# interfaces - setup your networking devices here
#
auto lo
iface lo inet loopback
allow-hotplug eth0
iface eth0 inet dhcp
allow-hotplug usb0
iface usb0 inet dhcp
# pipaOS Will automatically try to connect
# to wireless ESSID "pipaos" passphrase "pipa123pass"
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-ssid YOUR_SSSID
wpa-psk YOUR_WIFI_KEY
High quality sound
Rasberry Pi have 3.5mm stereo jack output but the quality is pure crap, wondering why they even bother populate a jack.
So lets connect a cheap UBS sound card and check what appends
dmesg
sould display something like
[ 106.865142] usb 1-1.2: new full-speed USB device number 5 using dwc_otg
[ 107.006372] usb 1-1.2: New USB device found, idVendor=0d8c, idProduct=0102
[ 107.006387] usb 1-1.2: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[ 107.006395] usb 1-1.2: Product: USB Sound Device
[ 107.042816] input: USB Sound Device as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2/1-1.2:1.3/0003:0D8C:0102.0002/input/input1
[ 107.105630] hid-generic 0003:0D8C:0102.0002: input,hidraw0: USB HID v1.00 Device [USB Sound Device ] on usb-3f980000.usb-1.2/input3
and
lsusb
will output:
Bus 002 Device 009: ID 0d8c:0102 C-Media Electronics, Inc. CM106 Like Sound Device
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Create startup service : webradio
sudo apt-get install mplayer
mplayer `curl -w "%{url_effective}\n" -I -L -s -S http://direct.fipradio.fr/live/fip-midfi.mp3 -o /dev/null`
Webradio player script
create non returning script:
sudo nano /home/sysop/webradio.sh
while true
do mplayer http://chai5she.cdn.dvmr.fr:80/fip-midfi.mp3
sleep 1
done
create init.d service: webradio
#!/bin/bash
#webradio daemon
# chkconfig: 345 20 80
# description: mwebradioapp daemon
# processname:webradio
DAEMON_PATH="/"
DAEMON=/home/sysop/webradio.sh
DAEMONOPTS=""
NAME=myapp
DESC="My daemon description"
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
case "$1" in
start)
printf "%-50s" "Starting $NAME..."
cd $DAEMON_PATH
PID=`$DAEMON $DAEMONOPTS > /dev/null 2>&1 & echo $!`
#echo "Saving PID" $PID " to " $PIDFILE
if [ -z $PID ]; then
printf "%s\n" "Fail"
else
echo $PID > $PIDFILE
printf "%s\n" "Ok"
fi
;;
status)
printf "%-50s" "Checking $NAME..."
if [ -f $PIDFILE ]; then
PID=`cat $PIDFILE`
if [ -z "`ps axf | grep ${PID} | grep -v grep`" ]; then
printf "%s\n" "Process dead but pidfile exists"
else
echo "Running"
fi
else
printf "%s\n" "Service not running"
fi
Install startup service
update-rc.d webradio defaults
Start service manually
sudo service webradio start
Check startup time and performance
Startup time with RPI 3 B: Startup finished in 2.602s (kernel) + 4.386s (userspace) = 6.988s
Not bad at all for a full featured computer with wifi and usb audio