Aanpassingen kist radio

Door walteij op dinsdag 7 juni 2016 23:15 - Reacties (6)
Categorie: Builds, Views: 2.820

Omdat mijn kist radio met Volumio toch wat vreemde streken vertoonde, vond ik het tijd voor een upgrade.
Redenen waarom ik van Volumio af wilde was onder meer dat ik het volume niet kon aanpassen als ik Spotify aan had staan. Ook leek het me wel leuk om te zien of ik een volwaardige Spotify client op mijn Pi2 kon plaatsen.

Dus gaan onderzoeken, resultaat: Ja, uiteraard is er een Spofity cliŽnt voor Linux. Zelfs officieel door Spotify uitgebracht, maar non-supported, ofwel: We leveren het ding, doet ie het, heb je geluk, doettie het niet, heb je pech.
Maar helaas, de cliŽnt die spotify uitbrengt is alleen voor x86/x64 processoren, dus niet geschikt voor een Pi (is immers een ARM CPU).
Dus toen gaan nadenken. Er zijn al meerdere mensen die Android op een Pi hebben geÔnstalleerd (met wisselende successen, maar altijd met een beperkte play store).
Ook ben ik zelf eigenlijk helemaal geen fan van Android, en hoewel ik wat knutselen en spelen leuk vind in een OS, krijg ik mezelf er maar niet toe gezet om iets in Android te gaan doen. Cyanogenmod valt eigenlijk om min of meer dezelfde redenen af. Ook viel mij op dat het nog niemand is gelukt om een echt recente versie van Android of CM op een Pi te zetten, wat dus zou betekenen dat ik met verouderde software moet gaan werken.

Dus toch maar een volwaardige Linux variant. Ik heb zelf meerdere jaren wat Debian servertjes onder mijn beheer gehad en dus was die keuze vrij makkelijk gemaakt. Bleef dus over, Raspbian of Ubuntu Mate.
Ik heb beiden geprobeerd, maar uiteindelijk mijn keuze laten vallen op Ubuntu Mate.
Nu nog een manier zien te vinden om x86/x64 applicaties op mijn Pi te draaien. Ik heb meerdere dignen gevonden die konden leveren wat ik wilde, maar mijn keuze is uiteindelijk gevallen op Exagear Desktop. Een zoektocht naar mogelijkheden geeft natuurlijk voor alle mogelijke keuzes voor- en nadelen, maar Exagear wordt duidelijk onderhouden (2 weken nadat ik de licentie aanschafte kreeg ik keurig een e-mail, dat er een nieuwe versie beschikbaar is en dat ik deze gratis kan downloaden), maar ook reviews van derdene gaven aan dat het precies aan mijn wensen voldeed.
Toegegeven, applicaties die je met Exagear start zijn trager dan native applicaties, maar er wordt in ieder geval geen complete VM gestart op je Pi.

Installatie was uiteindelijk vrij eenvoudig:
  • Download het installatie bestand
  • Pak het installatie bestand uit via tar -xzvf [nam installatiebestand]
  • Kopieer de licentie sleutel die je via e-mail hebt ontvangen naar de locatie van je deb bestanden die zijn uitgepakt
  • chmod +x ./install-exagear.sh (zodat de installer uitvoerbaar wordt)
  • ./install-exagear.sh
  • Koffie, want de installatie duurt een behoorlijke tijd
  • Start exagear via het commando: exagear
  • Controleer de draaiende architectuur via het commando "arch", je zou nu als antwoord "i686"moeten zien
Goed de voorbereidingen voor Spotify dus gemaakt, nu Spotify zelf doen.
Spotify heeft hiervoor een vrij duidelijke handleiding gemaakt:

code:
1
2
3
4
5
6
7
8
9
10
11
# 1. Add the Spotify repository signing key to be able to verify downloaded packages
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys BBEBDCB318AD50EC6865090613B00F1FD2C19886

# 2. Add the Spotify repository
echo deb http://repository.spotify.com stable non-free | sudo tee /etc/apt/sources.list.d/spotify.list

# 3. Update list of available packages
sudo apt-get update

# 4. Install Spotify
sudo apt-get install spotify-client


Dus Spotify proberen te starten.... Helaas, geen succes.
Dus via een commandshell spotify proberen te starten. De foutmelding die ik kreeg was:

code:
1
spotify: error while loading shared libraries: libgcrypt.so.11: cannot open shared object file: No such file or directory


De oplossing, die dus helaas niet in de Spotify handleiding staat, maar waarvoor er in de .deb package van Spotify geen dependency is opgenomen is libxss1 installeren:

code:
1
sudo apt-get install libxss1



Hierna start spotify keurig op, ik kon inloggen met mijn username en password en alles werkte keurig zoals het hoorde.
Zelfs offline playlists zijn beschikbaar. Ik heb de 'voetbal' playlist die ik als MP3 op Volumio had al eerder omgezet naar een Spotify playlist en deze direct offline beschikbaar gemaakt. De muziek wordt keurig afgespeeld, volume is prima te bedienen en de Pi zelf draait ook een stuk stabieler met Ubuntu mate dan met de Volumio distributie (de reden daarvoor is mij nog onbekend en om heel eerlijk te zijn heb ik maar weinig zin om dat uit te zoeken).

Ik geloof niet dat ik voor de Spotify GUi nog fotos hoef toe te voegen. Op een 7 inch scherm is het wel wat aan de kleine kant, maar zelfs mijn handen kunnen het prima bedienen.
Ook het toevoegen van WIFI verbindingen is nu een stuk eenvoudiger geworden, dat werkte namelijk ook niet al te goed in Volumio (al helemaal niet via de GUI).

Kist radio voor de kleedkamer en langs het vel

Door walteij op zondag 10 januari 2016 20:44 - Reacties (16)
Categorie: Builds, Views: 4.169

Mijn oudste zoon (7 jaren jong) is een erg fanatieke voetballer. Toen hij op zijn vijfde hoorde dat de voetbalvereniging 200 meter verderop vanaf zijn verjaardag ook 5-jarigen accepteerde, was het hek van de dam. Sindsdien zitten papa, mama en zijn kleine broer dus regelmatig langs het veld te kijken.
Pas geleden klonk er een paar kleedkamers verderop ineens een behoorlijke lading muziek. Dat vonden de jongens wel leuk (ja, de vaders en moeders eigenlijk ook wel). Ofwel: Dat moeten die nozems van ons ook hebben.
Na wat te zitten zoeken en doen, was voor mij zelf het al snel besloten, dat moet een kistradio worden die tegen een stootje kan, maar ook gewoon door iedereen te bedienen. Dat hield dus in:
• Een stevige kist;
• Toch minimaal een viertal speakers (want er moet wel geluid uit komen);
• Moet ook zonder 220v kunnen werken;
• Niet te zwaar;
• De kinderen moeten zelf ook muziek aan kunnen leveren via USB stickjes;
• Touchscreen (gewoon omdat het kan);
• Ondersteuning voor Spotify (en dus bij voorkeur ook WiFi);
• Toch zeker een paar uur playtime.
Voor de kist was de keuze makkelijk, zeker na het kijken op de 19(!!) kistradio draadjes in de Gathering.
Dat werd een accusafe kist, de speakers (boominator mini) en krachtbron komen daar ook vandaan (waarom een goed systeem immers opnieuw willen uitvinden).
Voor het touchscreen had ik nog een Raspberry Pi liggen. Daarop hebben we het 7 inch Raspberry scherm aangesloten. Ook de audiokaart moet de speakers goed kunnen aansturen en omdat Accusafe toch op 12V werkt, heb ik voor de HifiBerry AMP+ gekozen. Dit komt er dan als volgt uit te zien:
http://static.tweakers.net/ext/f/WcGJCgRfUR7YfnD9xWzgx2Cx/thumb.jpg
Blijft er dus de GUI nog over. Ook hier keuze genoeg:
• Raspbian met XBMC (voordeel: Direct een gui, nadeel XBMC vind ik zelf niet zo geweldig en XBMC is een beetje overkill voor alleen muziek afspelen;
• Volumio (voordeel: MPD en de AMP wordt direct ondersteund. Nadeel, niet direct xwindows geinstalleerd)
• RuneAudio (voordeel: ook hier MPD, maar zij hebben de mogelijkheid om direct de browser op je aangesloten display te tonen. Nadeel: de AMP+ wordt niet direct ondersteund)
• PiMusicBox
• En ik vergeet er vast nog wel een paar
De Pi installeren, configureren en testen
Ik wilde eerst gaan werken met RuneAudio, omdat deze direct de webinterface op mijn touchscreen kan zetten, zonder zelf van alles te moeten gaan rommelen. Helaas werd de AMP+ niet out of the box ondersteund en toen ik deze ging installeren volgens de aanbevolen handleidingen, reageerde de Pi niet meer na een reboot. Na nog twee van deze pogingen heb ik het opgegeven. Om de een of andere reden wilde Linux niet meer booten nadat ik de AMP+ geconfigureerd had.
Volgende stap dus: Volumio.
Het nadeel van Volumio, is dat deze geen X-server heeft draaien (en dus geen gui op het touchscreen levert). Dat moesten we dus eerst gaan doen.
Daarnaast moet ook hier de AMP+ nog geconfigureerd worden en natuurlijk willen we dat het gehele MicroUSB kaartje gebruikt wordt, dus ook de partitie moet vergroot worden.
1. Installeren Volumio
2. AMP+ configureren, dit is in de webinterface van Volumio gewoon te doen, er is voor de meest recente versie van Volumio geen driver configuratie nodig.
3. Na dit alles bleek mijn scherm helaas nog niet goed te werken, ik was namelijk vergeten om een “sudo rpi-update” uit te voeren, waarmee de meest recente firmware (en ook de touchscreen drivers) worden gedownload.

code:
1
sudo rpi-update


Hierna moet de Pi herstart worden.
4. Partitie uitbreiden. Standaart maakt Volumio een partitie aan van 1.5 GB. De rest van de SD kaartje wordt simpelweg niet gebruikt. Voordat je dus verder gaat, is het verstandig om de partitie uit te breiden, zodat het gehele kaarte wordt gebruikt. Doe je dit niet en je gaat X-windows installeren, raakt je root partitie al erg snel vol en zul je vervolgens niets meer kunnen doen.
Ik heb een bootable USB stick genomen met Gparted er op. Pi uitschakelen, sd kaartje er uit, in de laptop samen met de USB stick, booten vanaf USB, partitie aanpassen en kaartje terug stoppen. Ga nu pas verder met X-windows en de andere componenten te installeren.
5. GUI installeren (Xserver, Xclient, browser en aanverwante items)

code:
1
2
3
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install xserver-xorg xserver-xorg-core xfonts-base xinit xserver-xorg-input-evdev matchbox midori


Daarna .xsession toevoegen in de homedirectory van de gebruiker ‘pi’ en deze via een symlink koppelen aan .xinitrc (voor de zekerheid, dat laatste is waarschijnlijk niet nodig)

code:
1
sudo nano .xsession


Voeg de onderstaande tekst in:

code:
1
2
#!/bin/sh
midori -e fullscreen -a localhost & matchbox-window-manager -use_titlebar no


Hiermee zorg je ervoor dat er direct een browser (midori) wordt gestart zonder titelbalk) Hierna maak je de symlink nog aan via:

code:
1
ln -s .xsession .xinitrc


6. Nu heb je X-Windows wel geinstalleerd, maar het wordt nog niet automatisch gestart.
Dit kun je oplossen door raspi-config te starten:

code:
1
sudo raspi-config


Kies nu voor optie 3: Enable Boot to Desktop/Scratch
Kies hierna voor de 2e optie: Desktop Log in as user 'pi' at the graphical desktop
Sluit de config af, er wordt gevraagd om een herstart. Doe dit en na de reboot krijg je dit scherm te zien:
http://static.tweakers.net/ext/f/pfQhBnHMioDFxOSrvbxeTv9k/thumb.png
Maken van de kist
Omdat we dus al aardig wat onderdelen via Accusafe hebben geregeld (bekisting en electronica voor voeding en opladen) ga ik daar niet al te veel tijd aan besteden, de howto's van accusafe zijn meer dan duidelijk genoeg lijkt mij.
Waar bij Accusafe dus een ‘eenvoudige’ versterker heeft, sluiten wij dus nu de AccuSafe aan op de HifiBerry AMP+. Deze heeft namelijk ook een 12V voeding nodig.
De HifiBerry is natuurlijk direct aangesloten op de Raspberry Pi (en dus ook op het touchscreen). Ofwel, nu alleen de speakers nog aansluiten en alles goed inbouwen.
De accu, druppellader en voeding hebben we met montage kit onderin de kist vastgelijmd. Aan de zijkant hebben we een ‘flightcase’ handvat geplaatst, zodat we het apparaat makkelijk kunnen dragen. Aan deze zelfde zijkant zit ook de aansluiting voor de 230V (waarmee dus zowel de voeding als de druppellader worden voorzien van stroom.

En dan is dit het eind resultaat:
http://static.tweakers.net/ext/f/5MAHqDyc3mtZomkdxU3U2gfh/thumb.jpg
http://static.tweakers.net/ext/f/QTzAzWS7TR0ebjxwbxm3cNfX/thumb.jpg
http://static.tweakers.net/ext/f/fWL68OriE0rHskmvQER2GWKN/thumb.jpg

(scherpere/betere foto's volgen asap)
Update
Soms is de reden dat je WiFi het niet doet wel erg logisch...
Het is voor mij blijkbaar (te) lang geleden dat ik met Linux achtigen heb gewerkt, de WiFi dongel doet het perfect, alles was keurig geÔnstalleerd. Mocht je wel nog problemen hebben, kijk dan even naar deze eenvoudige howto en hou er rekening mee dat Linux erg hoofdletter gevoelig is. Dus als er een hoofdletter in je WiFi netwerk staat, voer die dan ook zo in.
Daarnaast een aantal handige trucs om meerdere WiFi netwerken te configureren: Installeer wics-curses.

code:
1
sudo apt-get install wicd-curses /y


Zodra de installatie is voltooid, voer je het volgende commando in:

code:
1
sudo wicd-curses


Je krijgt nu een overzicht van de beschikbare WiFi netwerken te zien.
  • Klik op R om de lijst te vernieuwen
  • Gebruik de pijltjes toetsen om naar de netwerken te navigeren (omhoog/omlaag)
  • Klik op het pijltje naar rechts om de WiFi verbinding te configureren
  • Selecteer de optie "automatically connect to this network"
  • Voer in het onderste veld het WiFi wachtwoord in
  • Klik op F10 om dit op te slaan
  • Herhaal voor eventuele andere netwerken
  • Als je klaar bent druk je op Q om het programma af te sluiten