RPi Audio...

Begonnen von dougie, 13 Januar 2013, 11:55:45

Vorheriges Thema - Nächstes Thema

dougie


...nachdem ich mir gestern fast den ganzen Tag damit verbröselt habe, wie ich den RPi auch dazu bringen kann eine Audio-Sink zu sein, hab ich erst mal aufgegeben.

Grund: High-Quality-Audio-Out scheint es aktuell nur digital via HDMI-Out zu geben.

Alle Versuche, den analog-out zu was Brauchbaren zu bewegen, scheitern an einem fehlenden DAC.

Daher hab ich mir gestern eine alte Platine zusammen gelötet, auf der ein BurrBrown PCM2902 drauf ist. Das ist ein standard USB-DAC, der vom RPi auch einwandfrei erkannt wird (hab mit lsusb nachgesehen).

Aber die USB implementation auf dem RPi schient auch noch nicht perfekt zu sein. Jedenfalls bekomme ich es nicht hin, das irgend eine Form von Audio aus dem Teil kommt.
Puseaudio ist inzwischen installiert, aber auch damit komme ich nicht wirklich zurecht.

Hat da jemand von euch schon Erfolge erzielen können?

VG
Ralf

Rohan

Hi Ralf,

welche RPi-Distribution hast du installiert?

M.W. haben verschiedene Distributionen unterschiedliche Probleme, aber diese Info wäre Grundvoraussetzung, falls ich über Infos stolpere.

Gruß
Thomas
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

dougie


Danke Thomas, sehr gerne!

Ich verwende das aktuelle Raspbian Wheezy von raspberry.org
Es  ist mir klar geworden, das analog audio out nie im Focus der RPi Entwickler war. Sie wollten EIN HQ Audio-Interface, und das haben sie mit HDMI bereit gestellt. Ein zusätzlicher Hardware-DAC hätte das Ding teurer gemacht, was sie nicht wollten (educational purpose only).

BR
Ralf

Criz

Ich streame die Musik per LAN an meinen Onkyo Receiver. Klappt problemlos und ist natürlich digital. Das ganze läuft mit mpd. Steuern kann ich das von jedem Rechner Handy oder Tablet.

dougie


Das klingt nach genau dem, was ich vor habe. :-)

Hast du etwas mehr Infos für mich? Was für eine Sound Hardware verwendest du und wo angeschlossen?

VG
Ralf

Criz

Der Receiver ist ein Onkyo TX-NR414 mit LAN Schnittstelle. Kannst also auch normales Internet Radio hören.
Auf dem Rpi läuft mpd und streamt den Sound ins Netz. Im Receiver habe ich den Internet Radio Sender Raspi auf der IP des Raspi eingestellt. Die gesamte Hardware steht im Büro, nur die großen Lautsprecher im Wohnzimmer. Steuern tu ich hauptsächlich über mein Nexus7 Tablet. Da habe ich Onkyo Remote zur Steuerung des Receivers und MPDroid zur Steuerung des Raspi (Musikauswahl, Playliste usw.) Alles ist digital bis in den Receiver, erst der verwandelt das Signal für die Lautsprecher um. Theoretisch könnte ich die Musik sogar noch an anderen Geräten (Laptop, PC usw.) hören. Per WLAN auch im Garten oder per Internet in Alaska :-)

dougie


Ah, klingt doch nicht nach dem was ich suche. :-)

Tatsächlich macht dein Onkyo die Musik, und nicht der RPi.

Ich such was, wo der RPi die Audio Information irgendwie bereit stellt. Entweder via USB oder als SPDif. Das kann ich beides problemlos weiter verarbeiten.

VG
Ralf

Criz

Der Raspi stellt die Musik als digitalen Stream ins Netz.
Der Onkyo nimmt sich die digitalen Daten und gibt sie über die Lautsprecher aus.
Absolut perfekter Klang!
Die Steuerung über PC Handy oder Tab ist die Krönung des Ganzen.
Da kann jeder Apple User nur staunen.

poeppe

Vielleicht wäre dieses Geräte eine Option für dich? Extrahiert den Ton aus dem HDMI Signal/Kabel und hat Cinch und SPDIF Anschlüsse. In relation zum Raspberry natürlich "recht" teuer - aber wahrscheinlich günstiger als der Onkyo Receiver :-D

http://www.amazon.de/Ligawo-%C2%AE-HDMI-Decoder-Audiosignal/dp/B00ADJIVB8

dougie



Danke dir, so was hatte ich auch mal irgendwo im Augenwinkel gehabt, aber wie du schon sagst: das ist in Relation zum RPi zu teuer und zu aufwändig.

Ich hab hier in der Hütte etliche Apple Airport Express verteilt, und es vergeht kaum ein Tag, an dem ich mich nicht über die Dinger ärgere.
Da mus was von der Grösse einen RPi und mit open Source her!!

Ich weigere mich einfach so hin zu nehmen, das es da keine Lösung für gibt. :-)

VG
Ralf

Rohan

Hallo Ralf,

habe mal ein wenig rumgeschaut. Mit dem RPi wirst du wohl nicht glücklich werden, da dieser schon wegen seiner Zielgruppen-Philosophie nicht die von dir gewünschten "Ziele" wird erfüllen können. M.M. brauchst du eher so etwas wie ein Pandaboard / BeagleBoard-xM i.V.m. einer entsprechenden USB-Soundkarte, die von der von dir favorisierten OS-Distribution unterstützt wird. Und genau da wird es evtl. problematisch.

Die von mir genannten ARM-Boards habe ich zwar selbst, kann aber dazu (was deine speziellen Anforderungen anbelangt) keine weitere Auskunft geben, da es Produktionssysteme sind und ich da nicht ohne Zwang dran rumwerkeln möchte / werde.

Die Boards sind zwar ein mehrfaches "teurer" als die RPis, aber wer "i-Produkte" in seiner "Hütte" einsetzt, der dürfte andere Preiskategorien gewohnt sein ;) . Sie sind nur etwas größer als ein RPi, die Community ist aber leider mangels Verbreitung um einiges kleiner (aber Stichwort: linaro).

Gruß
Thomas
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

Martin Fischer

--
Admin, Developer, Gründungsmitglied des FHEM e.V.

Willi

Zitat von: dougie schrieb am So, 13 Januar 2013 11:55Aber die USB implementation auf dem RPi schient auch noch nicht perfekt zu sein. Jedenfalls bekomme ich es nicht hin, das irgend eine Form von Audio aus dem Teil kommt.
Puseaudio ist inzwischen installiert, aber auch damit komme ich nicht wirklich zurecht.

Hat da jemand von euch schon Erfolge erzielen können?

Hallo Ralf,

der eingebaute Analog-Out des Pi ist wirklich schlecht. Damit war ich bei Tests überhaupt nicht zufrieden (Knack, Knack....). Mit HDMI klappt es testweise aber gut.
Da ich nicht überall einen HDMI-Receiver habe, verwende ich bei mir die Behringer UCA202 USB-Soundkarte an Pi ohne Probleme und mit guter Qualität. Hat SPDIF-Output und auch Analog-Out bietet  eine gute Qualität. Kostet neu 25 EUR, gibt es aber gebraucht aber schon günstiger (siehe Bucht).

Auf dem Pi läuft Squeezeslave als Audio-Client. Der Pi hat noch genug Power, um auch den Logitech Media Server darauf laufen zu lassen.

Wenn Du Dir nicht viel Arbeit machen willst, kannst Du einfach die fertige Distribution für den Pi von http://www.squeezeplug.eu/ holen. Dann hast Du es in 20 Minuten (nach dem Transfer auf die SD-Karte) installiert.

Wenn Du willst, kannst Du Dir damit ohne Kauf von Squeezeboxen alles mit Pi aufbauen. Alles im Quelltext verfügbar(sowohl Server als auch Client).  Apps zum Steuern gibt es für Android im Market und weitere (auch die unsagbaren i*-Geräte von Apfel).
Ich finde die Lösung genial und super zu bedienen.

MfG Willi

FHEM@Q600(debian) mit DS9490R (1Wire) | FHEM@Sheevaplug(debian) mit RFXCOM-Receiver(80002), CULv3 & USB-WDE1 | FHEM@odroid mit CULv2 & RFXtrx433

dougie


@Martin,

Danke für die Info, aber ich will doch unbedingt den RPi dazu bekommen, hier so was wie ne universelle Hardware-Plattform zu etablieren, um auch den Service-Aufwand gering und einheitlich zu halten.


@Wili

Das ist es! Genau DAS schwebt mir vor! Ich hab zwar keine Behringer, sondern eine "andere" USB Soundkarte mit SPDif out, aber ich weiss nicht, wie ich die in den RPi integriert bekommen. Jedenfalls wird sie vom RPi jetzt schon erkannt und als USB Device gelistet.
Kannst du mir einen Tipp geben, wie ich das von der Software her ans Laufen bekomme? Vielleicht ein Link, wie man eine USB Soundkarte als primäres Sound-Interface definiert?

Auf einem anderen RPi habe ich openELEC XBMC installiert. Im Zusammanspiel mit meinem Fernseher über HDMI ist der Sound umwerfend. Stereo, Dolby Digital 5.1, DTS... alles gar kein Problem. Bin schwer begeistert.

VG
Ralf

dougie



...ich hab die Mittagspause dazu verwendet hier mal was zu suchen und zu lernen.

Ergebnis:

Mein RPi hat meine USB-Soundkarte jetzt als primäres Sound-Device und ich kann mit mplayer ein mp3 abspielen!
Klingt alles wunderbar! Kein Knacken oder all die anderen störenden Hintergrundgeräusche. Einfach so, wie man es erwartet.


pi@raspberrypi ~/squeezeslavesrc $ ./squeezeslave -L
Output devices:
  0: (ALSA) USB Audio CODEC: USB Audio (hw:0,0) (11/46)
  1: (ALSA) bcm2835 ALSA: bcm2835 ALSA (hw:1,0) (11/46)
  2: (ALSA) sysdefault (42/42)
  3: (ALSA) front (11/46)
  4: (ALSA) surround40 (11/46)
  5: (ALSA) iec958 (11/46)
  6: (ALSA) spdif (11/46)
  7: (ALSA) pulse (11/46)
  8: (ALSA) dmix (42/42)
* 9: (ALSA) default (11/46)
pi@raspberrypi ~/squeezeslavesrc $


Nur wenn ich squeezeslave versuche zu starten ( ./squeezeslave -D -F )
wird der Bildschirm kurz schwarz und nach ca. 3 Sekunden kommt ein "Discover failed"...

Dazu hab ich noch nichts gefunden....

Ich gaube wir sind kurz davor :-)

VG
Ralf

Willi

Hallo Ralf,

ich hatte damals einfach die fertige Distribution SqueezePlug eingerichtet und dabei ist es bisher geblieben. Wollte das später mal neu aufsetzen (ohne Trojaner ;-) ).

Ich hatte Dir etwas falsches gesagt. Anfangs hatte ich zwar squeezeslave verwendet, jetzt läuft aber squeezelite:

  /usr/bin/squeezelite -n SB-Pi -o front:CARD=CODEC,DEV=0 -m 01 02 03 04 05 06

wobei die "01 02 03 04 05 06" meine Mac-Adresse ist.

Man kann bei SqueezePlug im Setup einfach auswählen, welchen Client man haben möchte.

Grüße

Willi
FHEM@Q600(debian) mit DS9490R (1Wire) | FHEM@Sheevaplug(debian) mit RFXCOM-Receiver(80002), CULv3 & USB-WDE1 | FHEM@odroid mit CULv2 & RFXtrx433

Rohan

Hi,

Zitat von: dougie schrieb am Mi, 23 Januar 2013 15:12... Ich gaube wir sind kurz davor :-)

Da beim RPi ja USB und LAN ein und denselben Chip nutzen: Kannst du mal bei Gelegenheit den Sound testen, wenn gleichzeitig "Dampf" auf dem LAN-Interface ist?

Gruß
Thomas
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

dougie



Also ich hab hier gerade das breite Grinsen im Gesicht!

Im Hintergrund spielt der RPi über mein selbstgebautes USB Sound-Device seit ner Stunde einwandfrei einen Mix von JaBig (Länge: 3h03m30s), und im zweiten Terminal kopiere ich vom NAS im Keller ein 700MB zip-File hin und her. Die USB Schnittstelle läuft mit voller Geschwindigkeit und ich denke das ist alles, was ich mir so vorgestellt hatte.

Genial! Danke Willi!

Frage: worauf läuft denn dein SqueezePlug? Auch ein RPi?

Ich hab im Keller seit vielen Jahren diese zwei NSLU2 (Linksys/Cisco NAS) mit je ner Platte dran als Server, aber die Dinger werden langsam alt. Da fange ich nicht mehr an den Media Server zu installieren, da die nur 32MB Speicher haben.


Martin Fischer

> Ich gaube wir sind kurz davor :-)

deshalb habe ich dir den tip mit dem squeezeplug ja auch gegeben :-)

gruss martin
--
Admin, Developer, Gründungsmitglied des FHEM e.V.

dougie


jaaaaaaa :-)
Jetzt so langsam dämmert's mir auch!

Das einzige, bei dem ich mir noch nicht sicher bin ist, was ich zukünftig als Server nehmen soll.

Willi

Zitat von: dougie schrieb am Mi, 23 Januar 2013 18:04Das einzige, bei dem ich mir noch nicht sicher bin ist, was ich zukünftig als Server nehmen soll.

Glückwunsch! Ich habe den Logitech-Media-Server einfach auf einem alten 256 MB Pi laufen, der ansonsten als Musik-Client läuft. Die Preise des Pi (40 EUR plus 5 EUR Gehäuse und 5 EUR Netzteil (letztere jeweils bei Reichelt)) sind so gering und ein 512 MB Pi so leistungsfähig, dass ich einen separaten Pi als FHEM-Server nehmen würde.

Ich bin von der Linux-Squeezebox-Lösung mit Linux und Pi absolut begeistert. Alles im Source verfügbar. Da kann uns egal sein, welche Produktpolitik Logitech in Zukunft macht. Ich hatte erst Bedenken, weil Logitech nach und nach den Verkauf der Squeezeboxen eingestellt hat (übrig ist ja nur noch die UE Radio), aber das kann mir bei Nutzung des Pi jetzt vollkommen egal sein.
Wenn man sich dagegen die Preise von Sonos oder Teufel Raumfeld ansieht, sind das ganz andere Preisdimensionen......

Grüße

Willi
FHEM@Q600(debian) mit DS9490R (1Wire) | FHEM@Sheevaplug(debian) mit RFXCOM-Receiver(80002), CULv3 & USB-WDE1 | FHEM@odroid mit CULv2 & RFXtrx433

dougie



...also ich hab da dieses NAS im Keller. Dort sind alle meine MP3s (reichlich) und ich habe eine Freigabe des NAS auf dem RPi gemountet.

Ich hoffe ich hab das jetzt richtig verstanden, das Squeezebox auf dem RPi sich dieser Dateien bemächtigen kann, und die dann ins LAN streamt?
Damit das hier mal weiter geht, war ich auf dem Rückweg von der Post noch kurz bei Feinkost-Aldi und hab noch zwei SD-Karten mitgenommen. Da kann ich dann ja mit spielen oder ein Ersatz-System bereit halten, falls was schief geht.

Derweil habe ich auf meinem RPi von gestern das Squeezebox Migrations-Script angestossen. Mal sehen wo mich das hin führt.
Oh... Script ist fertig :-)

dougie



...wieder etwas weiter!

Hab jetzt auf dem RPi Squeezeplug und den Logitech Media Server installiert.
Dazu noch als Player squeezelite.

Danke für die Hilfestellung, Willi, ohne dich hätte ich das in Wochen nicht hin bekommen.

Was ich jetzt schon machen kann ist Web Radio zu streamen und das kommt sauberst aus der USB Soundkarte. Also eigentlich alles okay.

Bis auf das blöde Problem, das ich mit bei dem Mount meines NAS die Zähne ausbeisse...


In der /etc/fstab habe ich die folgende Zeile

//192.168.1.99/mp3 /mnt/samba/ cifs credentials=/home/.credentials,nobrl,nolock,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0

und das NAS wird ohne Fehler gemountet. Ich kann durch die Folder browsen, aber wenn ich einen MediaScan mit LMS mache, findet das immer 0 Dateien, weil es irgendwie keinen read Zugriff gibt.
Ich weiss, das ich das Problem vor längerer Zeit schon mal hatte, und ich meine es war irgend eine extra Option, die beim Mounten angegeben werden musste, aber ich kann mich nicht mehr erinnern.

Jemand von euch ne Idee?


VG
Ralf

Willi

Zitat von: dougie schrieb am Do, 24 Januar 2013 20:34//192.168.1.99/mp3 /mnt/samba/ cifs credentials=/home/.credentials,nobrl,nolock,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0

Ich mache es bei mir auch so, dass ich die Musiksammlung per Samba mounte. Bei mir sieht es allerdings einfacher in /etc/fstab aus:

//192.168.1.99/mp3 /mnt/samba/ cifs username=USERNAME,password=GEHEIM

Den username muss es natürlich auf dem Samba-Server geben und er muss die Rechte haben auf die Dateien zuzugreifen. Probiert die Rechteeinstellung am besten, in dem Du bei dem Samba-Server ein "su USERNAME" machst und prüfst, ob Du auf die Dateien zugreifen kannst.
Ich habe mir einen eigenen separaten User namens squeezebox dafür angelegt und in Samba freigegeben.

Bzgl. squeezelite: Ich habe aktuell das Problem, dass der ab und zu 100% CPU frisst. Mal sehen, ob das häufiger auftritt. Evtl. steige ich doch auf squeezeslave um.
FHEM@Q600(debian) mit DS9490R (1Wire) | FHEM@Sheevaplug(debian) mit RFXCOM-Receiver(80002), CULv3 & USB-WDE1 | FHEM@odroid mit CULv2 & RFXtrx433

dougie


Nach ner Nacht schlafen hab ich da noch mal drüber nachgedacht. Du hast recht, das muss was anderes sein.

Ich logge mich als root auf dem RPi ein und kann problemlos auf alle Dateien des gemounteten shares zugreifen.
Auch ein

mplayer /mnt/samba/Yello/Yello_the_race.mp3

funktioniert einwandfrei.
Es muss am Logitech Media Server liegen.

Wenn ich den Befehl "Ordner durchsuchen" gebe, findet er zwar alle Verzeichnisse und bei der Fortschrittsanzeige sehe ich auch viele mp3 Dateien, aber am Ende steht da immer "0 Titel" und die Datenbank ist leer.

Wenn ich jetzt noch via fhem eine Möglichkeit finde, das ich den RPi per GPIO ein Relais zu schalten, dann wäre das die Lösung für das Problem "Musik in der Küche". Einfach den RPi mit WLAN Stick und nem Verstärker unsichtbar auf den Küchenschrank. Dann via fhem Relais betätigen, das den Verstärker einschaltet und die Musik hin streamen.

Aber erst muss der Media Server laufen... :-/

VG
Ralf

dougie


Korrektur:

Ich denke es liegt an den Zugriffsrechten!

Der username/password mit dem ich mich mounte ist der admin-account. Der hat eigentlich alle Berechtigungen.
Dennoch scheint mir das nicht korrekt zu stehen.

Alle mp3 Dateien haben als Berechtigungen

-rwxrwx--x 1 502 501 Zion.mp3

Da kommen wieder meine nit vorhandenen Linux Kenntnisse zum Vorschein...

dougie



VIELEN Dank für die Tipps, Willi!!

Jetzt läuft es! Die cifs mount Options waren offensichtlich wohl nicht korrekt und LMS hatte keinen Zugriff auf die Dateien.

Die Option 'nolinux' in der /etc/fstab hat mir hier geholfen

//192.168.1.99/mp3 /mnt/samba/ cifs credentials=/home/.credentials,uid=1000,gid=1000,iocharset=utf8,nounix 0 0

Und zum Thema Sound aus dem RPi.... das ist jetzt echt vom Feinsten. Top-Quality.

Bleiben die letzten Fragen:
Wie startest du squeezelite automatisch beim booten?
Wie bekommt man via fhem (z.B. GPIO 17) zum schalten.

Altenativ müsste ich sonst einen 1-Wire Master und einen DS2413 einbauen. Fände ich den höheren Aufwand.

Super Sache bis hier hin!! RESPEKT Kollegen!

VG
Ralf

poeppe

Zitat von: dougie schrieb am Fr, 25 Januar 2013 09:16Wie bekommt man via fhem (z.B. GPIO 17) zum schalten.

Da könnte dir evtl. dieser Wiki Eintrag weiterhelfen:
http://www.fhemwiki.de/wiki/Raspberry_Pi:_GPIOs_schalten

dougie



Ja, genau das wollte ich mir auch noch mal ansehen. Danke! :-)

Aber so wie ich das verstanden hatte, handelt es sich um ein Script, das auf dem lokalen RPi ausgeführt wird.

Jetzt ist es aber so, das der RPi allein und verlassen auf dem Küchenschrank liegen soll, und ausnahmsweise mal kein fhem drauf läuft. :-)

Ein Weg der funktionieren würde:

OWServer installieren
1-Wire BusMaster & DS2413 & Relais

Dann das ganze in fhem anlegen und schon kann ich schalten.


Wenn es aber eine Möglichkeit gäbe, einen "normalen" RPi als IO-Device in fhem zu integrieren, würde das den Umweg über 1W ersparen.
Aber vermutlich stelle ich mir das zu einfach vor.

VG
Ralf

poeppe

Wenn ich das in der Dokumentation richtig verstanden habe würde das doch mit dem Modul FHEM2FHEM funktionieren ( http://fhem.de/commandref.html#FHEM2FHEM ). Der RPi auf dem Kühlschrank bekommt eine FHEM installation mit der nur die GPIO's geschaltet werden, gesteuert wird das dann über das "Haupt FHEM" mittels FHEM2FHEM.

dougie


Stimmt! An fhem2fhem hatte ich noch gar nicht gedacht. Sicher deutlich eleganter als schon wieder Ätze und Lötkolben anzuwerfen. Guter Tipp!

jhohn

FHEM auf Synology Diskstation DS413j (DSM4.3), HM LAN Adapter
Steuerung für Nachtspeicheröfen:
Ladung:   HM-WDS10-TH-O, HM-LC-Sw4-DR, Weather-Modul
Gebläse: HM-CC-TC, HM-LC-SW1-FM, HM-Sec-RHS
FHEM auf FritzBox 7390 für Telefon Funktionen

dougie


Hey, ich bin kein Prof. Dr. Hassenichgesehen! :-)

Kann ich das in der Mitte bitte noch mal haben?

*g*

VG
Ralf

dougie



...korrigier mich mal bitte, wenn ich falsch liege:

1. Script auf dem RPi schaltet die GPIOs (klar soweit)
2. Aus fhem mache ich quasi via Script ein rlogin auf dem RPi und betätige das dortige Script.

Wie ich das in fhem ausgestalte, wäre ja relativ frei ...

Richtig? :-)

jhohn

per ssh aber ansonsten passt das
FHEM auf Synology Diskstation DS413j (DSM4.3), HM LAN Adapter
Steuerung für Nachtspeicheröfen:
Ladung:   HM-WDS10-TH-O, HM-LC-Sw4-DR, Weather-Modul
Gebläse: HM-CC-TC, HM-LC-SW1-FM, HM-Sec-RHS
FHEM auf FritzBox 7390 für Telefon Funktionen

dougie

Hach.... vielleicht bin ich ja doch gar nicht so blöd. :-)


Also: fhem-gpio.pl läuft auf dem RPi und Ausgang schaltet einwandfrei.

Aber weder auf der FB noch auf dem anderen Rechner hab ich Net::SSH::Perl
Ohne das wird's wohl schwierig.

Also hab ich versucht mir von cpan das Net:SSH:Perl nachzuinstallieren.
Aber ich zweifle, das ich noch auf dem richtigen Weg bin.

Ein perl Makefile.PL

liefert mir ne ganze Latte von Modulen, die mir fehlen. darunter auch Math::Pari, Crypt::RSA usw.

Bin ich noch richtig? :-)

VG
Ralf


dougie


...ich hab die Arbeit die dependencies von cpan raus zu suchen an jemanden gegeben, der das besser kann als ich: cpanminus

erst mit

curl -L http://cpanmin.us | perl - --sudo App::cpanminus

und dann

sudo cpanm Net::SSH:Perl

Das rödelt jetzt seit ne ganzen Weile und installiert Packages. Hoffe das war zielführend :-)

jhohn

Gerade mal nachgesehen und ja, die Abhängigkeiten sind schon etwas umfangreicher:

http://deps.cpantesters.org/?module=Net%3A%3ASSH%3A%3APerl;perl=latest
FHEM auf Synology Diskstation DS413j (DSM4.3), HM LAN Adapter
Steuerung für Nachtspeicheröfen:
Ladung:   HM-WDS10-TH-O, HM-LC-Sw4-DR, Weather-Modul
Gebläse: HM-CC-TC, HM-LC-SW1-FM, HM-Sec-RHS
FHEM auf FritzBox 7390 für Telefon Funktionen

dougie

DamnIt....


Building and testing Math-GMP-2.06 ... FAIL
! Installing Math::GMP failed. See /root/.cpanm/build.log for details.
! Bailing out the installation for Net-SSH-Perl-1.35. Retry with --prompt or --force.

...dann eben das Ganze noch mal mit --force


Mal genauer nachsehen... sieht so aus, als wenn ich (auch) das Math::Pari Problem habe. Ich glaube da brauche ich dann doch Hilfe, sonst mache ich am Ende mehr kaputt als Heile.
Der Vorteil der ganzen Aktion: sobald das alles läuft, kann man von der SD-Karte ein Image machen, und auf viele RPis verteilen. Lediglich IP & MAC Adresse ändern, und dem Ding nen anderen Namen geben, und schon hat man sein eigenes modulares Sound-System für zu Hause.

Configuring Crypt-Random-1.25 ... OK
==> Found dependencies: Math::Pari
--> Working on Math::Pari
Fetching http://www.cpan.org/authors/id/I/IL/ILYAZ/modules/Math-Pari-2.01080605.tar.gz ... OK
Configuring Math-Pari-2.01080605 ... FAIL
! Timed out (> 60s). Use --verbose to retry.
! Configure failed for Math-Pari-2.01080605. See /root/.cpanm/build.log for details.
! Bailing out the installation for Crypt-Random-1.25. Retry with --prompt or --force.
--> Working on Crypt::Primes
Fetching http://www.cpan.org/authors/id/V/VI/VIPUL/Crypt-Primes-0.50.tar.gz ... OK
Configuring Crypt-Primes-0.50 ... OK
==> Found dependencies: Math::Pari, Crypt::Random
Building and testing Crypt-Primes-0.50 ... FAIL
! Testing Crypt-Primes-0.50 failed but installing it anyway.
Successfully installed Crypt-Primes-0.50
! Bailing out the installation for Crypt-RSA-1.99. Retry with --prompt or --force.

dougie


...die kleine Platine vor mir arbeitet jetzt seit 4 Stunden quasi ohne Unterbrechung. Bislang sind keine Veränderungen oder optische Auffälligkeiten zu berichten. Lediglich die Meldungen im Putty Window zeugen von eifriger Beschäftigung irgendwo im Innern der grauen Kleckse mit vielen Beinchen.

Was mich denncoh glücklich und zufrieden macht: ein Abfallprodukt ist squeezelite, das in einem anderen Window seit Stunden super Musik mit überzeugendem Klang an meine Boxen liefert, während ich mit dem (auch dort irgendwo laufenden) Logitech Media Server auf meinem Handybildschirm zwischen den Musikstücken flippe.

Was man noch so machen kann ist lesen, was andere so in meiner Situation machen. Der hier zum Beispiel: :-))

http://www.perlmonks.org/?node_id=722750 (happy reading :-)) )

Der Hinweis mit Net::SSH2 klingt (für jemanden wie mich) verlockend, aber auch nur deshalb, weil ich nicht beurteilen kann, ob es mich überhaupt weiter bringt.

Daher warte ich erst mal ab, was bei der aktuellen laufenden Installation raus kommt.

Frage: läd sich Net::SSH::Perl von alleine, wenn es gebraucht wird, oder muss ich das bei fhem bekannt machen?


Martin Fischer

> Die Option 'nolinux' in der /etc/fstab hat mir hier geholfen
>
> //192.168.1.99/mp3 /mnt/samba/ cifs credentials=/home/.credentials,uid=1000,gid=1000,iocharset=utf8,nounix 0 0

ich les hier ja nur "beiläufig", da ich a) (noch?) kein raspi habe aber b) schon seit jahren den logitech media server im einsatz habe, allerdings in verbindung mit squezeebox touch und radios.

wenn ich richtig gelesen habe, dann hast du irgendwo deine nslug-devices mit den mp3's und willst die auf deinem raspi mounten.

was mir dabei nicht in den sinn geht:
warum nutzt ihr dazu das cifs protokoll? hier sprechen doch zwei *nixe miteinander. da würde ich doch nfs einsetzen.

ja, ich weiss: cifs geht auch, aber......

gruss
--
Admin, Developer, Gründungsmitglied des FHEM e.V.

dougie


Hm, du hast noch keinen RPi? Da gab's gerade irgendwo so ne Sammelbestellung. :-)

Aber im Ernst: ich würde dir sofort einen spendieren! Brauch eh noch mehr davon! Ich finde die Dinger momentan wirklich überzeugend.

Wegen mounten: ich muss noch mal nachsehen: ich habe einen anderen RPi mit XBMC via NFS an das NAS im Keller gekoppelt. Hat wohl deutlich weniger Protokoll-Overhead als smb und ist damit deutlich schneller. Werde ich mal am Wochenende ausprobieren.

VG
Ralf

dougie

...moin, ich mach hier mal weiter.

Ich grab mich derzeit durch's Netz auf der Suche wie ich Math::Pari installiert bekomme. Es wird berichtet es soll Leute geben, die das mal geschafft haben. Nur diese vagen Überlieferungen reichen zurück bis ins Mittelalter (das Jahr 2006).

Aber wenn ich was gelernt habe, dann wenn das mal jemand geschafft hat, dann schaff ich das auch.


...hier im Forum hab ich schon mal ein paar Tipps gefunden, was wir noch so alles brauchen. build-essential war schon installiert, aber libmath-bigint-gmp-perl fehlte noch.



sudo apt-get install build-essential
sudo apt-get install libmath-bigint-gmp-perl


Dann Math::Pari einzeln runter laden und "von Hand" kompilieren. Wichtig scheint hier die Option 'machine=none' zu sein.


perl Makefile.PL machine=none
make install


Das ganze hat bei mir auf dem RPi mal eben 3 Stunden gedauert und ich nenne mich ab Heute "The guy who installed Math::Pari, without exactly knowing what he has been doing".

Jetzt noch mal die Installation von Net::SSH::Perl anstossen und hoffen, das es diesmal durchläuft.

boing.... Math::GMP geht auch nicht.... warum? Kein GMP....

Also GMP runter laden ... ./configure

rödel ... rödel... inzwischen ist es 11:40 und ich felsenfest überzeugt, das die "simple Installation von Net:SSH:Perl" genau das ist, was die Engländer als "Royal Pain in the Ass" bezeichnen...

Egal... müssen wir durch!

Im Hintergrund "Anne Clark - Sleeper in Metropolis" vom anderen RPi. Hatte ich schon erwähnt wie genial das ist, das aus der Büchse so ein genialer Sound raus kommt?

...so: 12:40 gmp ist compiled und installiert. Mal sehen was jetzt noch so passiert.

Wo waren wir? ach ja: Math::GMP
Building and testing Math-GMP-2.06...

Wohooo! Successfully installed Math-GMP-2.06

Und?????

Building and testing Net-SSH-Perl-1.35 ... OK
Successfully installed Net-SSH-Perl-1.35
2 distributions installed

YES!

So weit so gut.

Aber wie bekomme ich das jetzt in fehm???

Fehlermeldung beim Aufruf meiner Funktion in fhem:

Can't locate object method "new" via package "Net::SSH::Perl" (perhaps you forgot to load "Net::SSH::Perl"?) at /usr/share/fhem/FHEM/99_MyUtils.pm line 896.

VG
Ralf













dougie


Ah, da fehlte noch was:

in der 99_MyUtils ein

use Net::SSH::Perl;

Dann musste ich ein Verzeichnis /.ssh anlegen und freigeben.

sub
squeezebox_on()
{
my $host = "192.168.1.26";
my $user = "root";
my $landevice = $_[0];
my $ssh2squeezebox = Net::SSH::Perl->new($host, debug=>0, identity_files=>["/root/.ssh/id_rsa"]);
$ssh2squeezebox->login($user);
my($stdout, $stderr, $exit) = $ssh2squeezebox->cmd(". ~/.profile; /usr/sbin/fhem-gpio.pl 17 1");
return $exit;
#Log 3, ">>> $exit";
undef $ssh2squeezebox;
}



Aber jetzt bekomme ich immer noch ein

Permission denied at /usr/share/fhem/FHEM/99_MyUtils.pm line 898

Jetzt hab ich fast alles geschafft... was mach ich noch falsch?


dougie


Tut mir ja leid für den Monolog, aber ich hab halt nicht so viel Ahnung von Linux....

ABER ICH HAB's HINBEKOMMEN! :-)


Problem scheint zu sein, das fhem unter dem user "fhem" läuft und der keinen Zugriff auf die .ssh/id_rsa hat.
Ich hab's jetzt so hingebogen, das das geht, aber sicher nicht so wie es sein soll.

Aber: ich kann jetzt mit einem Dummy auf dem Webinterface von fhem den GPIO eines jeden RPi im Netz schalten.
Damit wird das Projekt Remote-Squeezebox jetzt Realität!

VG
Ralf

jhohn

Die .ssh/id_rsa sollte dann in HOME des fhem users liegen und nur von diesem gelesen werden können:

FHEM auf Synology Diskstation DS413j (DSM4.3), HM LAN Adapter
Steuerung für Nachtspeicheröfen:
Ladung:   HM-WDS10-TH-O, HM-LC-Sw4-DR, Weather-Modul
Gebläse: HM-CC-TC, HM-LC-SW1-FM, HM-Sec-RHS
FHEM auf FritzBox 7390 für Telefon Funktionen

dougie



Danke dir Jörg!

Da ich nicht genau weiss, wie fhem den user angelegt hat (kann mich nicht als fhem anmelden, weil ich kein Passwort habe) und kein /home/fhem vorhanden war, hab ich einfach eins angelegt.
Scheint soweit zu funktionieren.

Das einzige: wenn ich das Kommando in fhem absetze, dauert es geschätzte 8 bis 10 Sekunden, bis der Remote RPi schaltet. Ist ja eigentlich unkritisch, aber kann man das beschleunigen?

VG
Ralf

jhohn

Eben mal nachgesehen, bei meinem RPi ist fhem-Home /var/log/fhem und das existiert nicht.

Dauert es auch so lange wenn Du Dich per ssh auf dem RPi einloggst? ssh macht per Standardkonfig ein Reverse Lookup der anfragenden IP Adresse. Das könnte also ein DNS Problem sein.

Dann kannst Du mal folgendes versuchen:
# In /etc/ssh/sshd_config:
UseDNS no
FHEM auf Synology Diskstation DS413j (DSM4.3), HM LAN Adapter
Steuerung für Nachtspeicheröfen:
Ladung:   HM-WDS10-TH-O, HM-LC-Sw4-DR, Weather-Modul
Gebläse: HM-CC-TC, HM-LC-SW1-FM, HM-Sec-RHS
FHEM auf FritzBox 7390 für Telefon Funktionen

dougie


Ich hab mir in /home/pi/.ssh extra eine config angelegt und dort die IP hinterlegt.
Daher solle ein Reverse Lookup unnötig sein.

# ~/.ssh/config
Host squeezebox
 Hostname 192.168.1.26
 User root


Wenn ich als pi "ssh squeezebox" eingebe, hab ich innerhalb von 2 Sekunden einen Prompt.
Das Skript "fhem-gpio.sh 17 0" wird im selben Moment ausgeführt, wenn ich es am Prompt eingebe.

Ob es einen Unterschied macht, wenn das aus fhem raus passiert?

VG
Ralf

dougie



...hab deinen Post noch mal gelesen.

Hab UseDNS no in beide sshd_config eingetragen und ein ./ssh restart
gemacht.

Verhalten ist aber identisch.

VG
Ralf

jhohn

brauchst Du irgendwelche Einstellungen aus der ~/.profile? Standard wird da auf dem RPi nur $HOME/bin zum Pfad hinzugefügt wenn man sich in diesem Verzeichnis befindet oder die ~/.bashrc geladen wenn Bash die Shell ist. In der .bashrc konnte ich jetzt auf die Schnelle auch nichts finden was unbedingt gebraucht wird.
Wenn Du also nichts eigenes darin definiert hats, lass den "~/.profile;" aufruf in sub squeezebox_on() mal weg.

Dann bin ich aber auch erst mal am Ende mit Vermutungen. Ich müsste mir dann erst mal ne Squeezbox auf nem Pi installieren (ist eh geplant) und selber testen.
FHEM auf Synology Diskstation DS413j (DSM4.3), HM LAN Adapter
Steuerung für Nachtspeicheröfen:
Ladung:   HM-WDS10-TH-O, HM-LC-Sw4-DR, Weather-Modul
Gebläse: HM-CC-TC, HM-LC-SW1-FM, HM-Sec-RHS
FHEM auf FritzBox 7390 für Telefon Funktionen

Martin Fischer

> Hm, du hast noch keinen RPi? Da gab's gerade irgendwo so ne Sammelbestellung. :-)
>
> Aber im Ernst: ich würde dir sofort einen spendieren! Brauch eh noch mehr davon!
> Ich finde die Dinger momentan wirklich überzeugend.

ne, ich habe keinen. die sind so teuer und das kann ich mir nicht leisten ;-)
da muss ich dir wohl mal meine adresse zukommen lassen...

just kiddin'
--
Admin, Developer, Gründungsmitglied des FHEM e.V.

dougie

Zitat von: jhohn schrieb am So, 27 Januar 2013 20:26brauchst Du irgendwelche Einstellungen aus der ~/.profile? Standard wird da auf dem RPi nur $HOME/bin zum Pfad hinzugefügt wenn man sich in diesem Verzeichnis befindet oder die ~/.bashrc geladen wenn Bash die Shell ist. In der .bashrc konnte ich jetzt auf die Schnelle auch nichts finden was unbedingt gebraucht wird.
Wenn Du also nichts eigenes darin definiert hats, lass den "~/.profile;" aufruf in sub squeezebox_on() mal weg.

Dann bin ich aber auch erst mal am Ende mit Vermutungen. Ich müsste mir dann erst mal ne Squeezbox auf nem Pi installieren (ist eh geplant) und selber testen.

Moin Jörg!

Danke für die Tipps. Hab beides probiert: erst die .profile vom user pi ins home Verzeichnis von fhem kopiert und freigegeben. - Keine Änderung.
Dann den Aufruf der .profile aus dem Skript gelöscht. - Auch keine Änderung.

Leider hab ich auch keine Idee wo/wie ich nachschauen kann, was da schief läuft. Aber die generelle Funktionalität ist ja schon mal da.

VG
Ralf

Willi

Zitat von: Martin Fischer schrieb am Fr, 25 Januar 2013 18:09was mir dabei nicht in den sinn geht:
warum nutzt ihr dazu das cifs protokoll? hier sprechen doch zwei *nixe miteinander. da würde ich doch nfs einsetzen.

ja, ich weiss: cifs geht auch, aber......
Prinzipiell hast Du recht, NFS geht auch und wäre natürlicher für Unix/Linux. Bei mir ist es allerdings so, dass ich die MP3-Sammlung auf dem Dateiserver habe und auf diese so und so per Samba/cifs zugegriffen wird. Die Freigabe existiert also auch schon so.
Zumindest ist so gewährleistet, dass die Dateinamen auf allen Rechnern dieselben Sonderzeichen/Umlaute haben.

Bzgl. Performance vermute ich, dass es in diesem Fall keinen großen Unterschied zwischen CIFS und NFS gibt. MP3s sind nicht so groß. Da lohnen auch keine NFS-Optimierungen mit NFSv4 und Jumbo-Frames, etc.

MfG Willi
FHEM@Q600(debian) mit DS9490R (1Wire) | FHEM@Sheevaplug(debian) mit RFXCOM-Receiver(80002), CULv3 & USB-WDE1 | FHEM@odroid mit CULv2 & RFXtrx433

dougie



Boa, schon wieder Mittwoch! Wo bleibt die Zeit?

Also Squeezelite erscheint mir aktuell noch etwas fragil. Hab mir die 0.9beta11 geholt, aber dennoch hängt sich das Programm in unregelmässigen Abständen auf.
Ich muss den Prozess dann killen, neu starten und den Media Server noch mal anstupsen. Dann geht's weiter.

Sobald der RPi unter Stress gerät (z.B. apt-get update / upgrade) kann man das in der Soundausgabe von Squeezelite hören, bis es dann die Arbeit einstellt.

Was gibt es sonst noch für empfehlenswerte Clients?

VG
Ralf

det.

http://forum.fhem.de/index.php?t=tree&goto=60840&rid=20#page_top ff

ist ein System was hinreichend ordentlich klingt, gapless play beherscht und im Vergleich zu anderen Multiroomsystemen z.B. von Linn noch erträglich zu bezahlen geht.
Die deutsche Übersetzung von Squeeze (box) gibt mir übrigens in Sachen Hörvergnügen echt zu denken....
LG
det.

dougie



Ich befürchte du meinst was anderes, oder ich versteh es falsch. :-)

Bei mir soll ein RPi als Audio-Sink arbeiten, und das tut er soweit auch schon.
Thema Qualität: mit der externen USB Soundkarte die ich verwende, ist definitiv keine Verbesserung mehr möglich. Da sind bereits die besten Bauteile im Einsatz, das es so Linear, Verzerrungs- und Rauscharm ist, wie es eben geht.

Hier geht es lediglich um das Stück Software, welches die Audio-Daten vom Netz entgegen nimmt und an die Soundkarte weiter reicht. Das macht z.B. Squeezelite (aber eben nicht stabil).

Ziel soll es sein, das ich zukünftige eine Alternative für meine Apple AirPort-Express habe, die mir nicht gefallen (Bin kein Apple Fan).

Willi

Zitat von: dougie schrieb am Mi, 30 Januar 2013 11:22Was gibt es sonst noch für empfehlenswerte Clients?

Hast Du mal SqueezeSlave probiert? Ist ja auch in der SqueezePlug-Distribution vorhanden.

Ich habe gerade mal unter meinem Pi mit SqueeezePlug ein uninstall von SqueezeLite gemacht und SqueezeSlave installiert. Läuft mit meiner Behringer UCA202 out of the box. Nach 5 Minuten war das uninstall und install fertig. SqueezePlay braucht bei mir bei der MP3-Wiedergabe etwa 11% CPU.
Ich lasse die Box jetzt mal die nächsten Tage meine Musiksammlung spielen und bereichte dann über die Stabilität..

Ansonsten hat man noch die Möglichkeit als weitere Player SqueezePlay und ShairPort auszuwählen. Letzteres ist ein Airtunes-Emulator. Kommt mir daher nicht ins Haus! Vitaminreiche Äpfel gebe ich morgens nur geviertelt den Kindern mit zur Schule....

MfG Willi
FHEM@Q600(debian) mit DS9490R (1Wire) | FHEM@Sheevaplug(debian) mit RFXCOM-Receiver(80002), CULv3 & USB-WDE1 | FHEM@odroid mit CULv2 & RFXtrx433

det.

ich glaube Du verstehst es falsch,

SONOS = Hardware + Software + eigenes WLAN - holt sich die Musikdateien (flac, alac und wenn es unbedingt lossy sein soll auch mp3) von irgendeiner Netzwerkfreigabe (NAS etc.), verwaltet intern selbst die Playlists, spielt das Zeug dann unabhängig von irgendwelchen Steuerungsrechnern oder Tablets auf allen angeschlossenen Clients synchron ab. Durch das eigene WLAN belastet das System beim steamen an die Clients auch nicht das übrige Netzwerk.
Ich hatte vor paar Jahren auch mal so eine Quetschbox und noch verschiedene weitere audiophile Blindgänger im Haushalt.
Die einzige Beschränkung: nur Ton, kein Bild - aber das ist auch gut so. Die Eierlegendenwollmilchsäue die alles können, aber kaum was richtig, mag ich nicht mehr.
LG
det.

dougie


@Willi, mal eben nachgefragt: wie hast du das uninstall von squeezelite gemacht?

apt-get purge squeezelite ?

@det. Danke für die Erklärung.

Diese Sonos Lösung klingt gut, aber ich möchte kein weiteres Netz im Haus. Ich hab jetzt schon FS20, HM, Das Funknetz unserer Alarmanlage und das 300Mbit WLAN mit Repeater.

Ich möchte mit dem vorhandenen Netz auskommen. Daher auch nur der relativ "einfache" Ansatz mit dem RPi. Weitere (Sonos-) Hardware möchte ich auch nicht.

Wenn der Squeezebox Client stabil läuft, hab ich eigentlich so ziemlich alles was ich (aktuell) möchte.

dougie


Willi: vergiss die Frage. Hab's gefunden :-)

Martin Fischer

> Prinzipiell hast Du recht, NFS geht auch und wäre natürlicher für Unix/Linux.
> Bei mir ist es allerdings so, dass ich die MP3-Sammlung auf dem Dateiserver habe
> und auf diese so und so per Samba/cifs zugegriffen wird. Die Freigabe existiert
> also auch schon so. Zumindest ist so gewährleistet, dass die Dateinamen auf allen
> Rechnern dieselben Sonderzeichen/Umlaute haben.

ja, das kann man machen. es spricht aber auch nichts dagegen, beides laufen zu lassen.
linux <-> linux = nfs
linux <-> windows = cifs

habe ich seit jahren, obwohl ich meinen samba daemon auch disablen könnte, denn wer nutzt noch windows? :-)
ich habe es nur noch bei bedarf in einer virtuellen umgebung und da greife ich direkt auf das filesystem des hosts zu...

aber lassen wird das... das ist jetzt sowas von off-topic..

gruss martin
--
Admin, Developer, Gründungsmitglied des FHEM e.V.

dougie

Zitat von: Willi schrieb am Mi, 30 Januar 2013 19:03Hast Du mal SqueezeSlave probiert?
MfG Willi

Jepp, seit deinem Tipp. -> Rocksolid! *top*

dougie


...nachdem das Thema Audio Source und Audio Sink schon mal funktionierte, hab ich mich an das letzte bei mir offene Thema begeben: dem RPi die Welt des WLAN zeigen.

Dachte eigentlich das sei simpel, aber weit gefehlt.

Hab mit einem USB Stick angefangen, den ich noch in der Schublade hatte. Aber nach einigem Testen fand ich raus, das der kein WPA2 kann. Also Tonne.
Meine Frau war eh gerade in der Stadt und hat mir auf telefonische Bitte hin einen ISY 802.11n Stick aus dem M.Markt mitgebracht.
ISY ist die Hausmarke von dem Laden, aber drin steckt Belkin, was mit lsusb -v verriet.
Lange Rede kurzer Sinn: da steckt jedes mal was anderes Drin und den verbauten Hardware IC raus zu bekommen würde einfach zu lange dauern.
Also zurück mit dem Ding und noch mal nen 10er mehr Auf den Tisch des Hauses für nen Fritz!WLAN USB N V2 Stick.

Regen -> Traufe

Das Ding meldet sich unter Linux als CDROM an, weil es unter Windows Treiber installieren möchte. Echt clever. Trick 17 mit Selbstüberlistung.

Jetzt steckt das Ding im Rechner meines Sohnes, und dessen USB Stick im RPI.
Das ist jetzt ein generischer 802.11n USB Stick von TPLink mit rtl8192cu Chipsatz; der hat zumindest eine kernel-Unterstützung und wird sofort erkannt.

Mit viel hängen und würgen hab ich den jetzt mit wpa_supplicant ans Laufen bekommen. Allerdings bislang nur mit dhcp. Static IP wär mir lieber, aber aus Gründen die ich noch nicht kenne, klappt das noch nicht. Sobald ich das auch geschafft habe, steht dem Feldversuch nichts mehr im Wege.

VG
Ralf

dougie


...hab gestern noch was weiter gemacht und hab somit auch das Thema WiFi erschlagen:

pi@raspberrypi ~ $ iwconfig
wlan0     IEEE 802.11bgn  ESSID:"MiniHome2"  Nickname:"<WIFI@REALTEK>"
          Mode:Managed  Frequency:2.432 GHz  Access Point: 24:65:11:5D:98:BC
          Bit Rate:300 Mb/s   Sensitivity:0/0
          Retry:off   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=100/100  Signal level=91/100  Noise level=0/100
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

lo        no wireless extensions.

eth0      no wireless extensions.


Dann mal schnell eben ein Image der SD Karte gemacht. Drauf ist jetzt:

- aktuelle Firmware / Kernel / Updates
- OWServer
- Logitech Media Server
- SqueezeSlave
- Audio via USB Soundkarte
- GPIO Steuerung via fhem

...und das Ganze über 802.11n WiFi (300MBit WPA2)

Denke damit kann man arbeiten. :-)

VG
Ralf

dougie

Moin zusammen,

wie versprochen, anbei ein Bild der zusammen geschusterten Installation. Funktioniert soweit prima.

Via fhem / Script / RPi / GPIO / schalte ich über einen Optokoppler die Endstufe ein und aus.
Den Rest macht der RPi im WLAN und Squeeze-Slave.

Da das Ganze eh unter der Küchenzeile verschwindet, hab ich mir nicht so viel Mühe gegeben es hübsch zu machen.

VG
Ralf

(https://lh4.googleusercontent.com/-IQ8xVcP-mkw/URIjJEdZ1LI/AAAAAAAAWqY/QD_sWeUdTSc/s800/DSC_6395.JPG)

dougie


Hat eigentlich einer von euch alsaequal ans Laufen bekommen?

http://www.thedigitalmachine.net/alsaequal.html

Hab alles installiert aber dann fehlte beim make install /usr/lib/alsa-lib beim Aufruf
Also hab ich alsa-lib runter geladen und compiliert / installiert  
danach ging auch das make install von alsaequal

Leider gibt alsamixer -D equal ein

pi@raspberrypi ~ $ alsamixer -D equal
ALSA lib dlmisc.c:254:(snd1_dlobj_cache_get) Cannot open shared library /usr/lib/arm-linux-gnueabihf/alsa-lib/libasound_module_ctl_equal.so
cannot open mixer: No such device or address



Die Datei gibt es im Zielordner auch nicht, aber im Ordner wo ich alsaequal kompiliert habe.
Wenn ich die Datei dann ins Verzichnis von alsa-lib kopiere, bekomme ich eine Fehler "Plugin version mismatch".

Jemand ne Ahnung was ich falsch mache?

VG
Ralf

Rohan

Hallo Ralf,

Gibt es in dem Verzeichnis

/usr/lib/arm-linux-gnueabihf/alsa-lib

andere Dateien, die z.B.

libasound_module_ctl_equal.so.X.XY.Z

lauten?

Dann musst du einen Link (Stichwort: "ln -s ....") von dieser Datei auf

libasound_module_ctl_equal.so

setzen. Wenn es mehrere Dateien mit Zahlen am Ende gibt, sollte der erste Versuch mit der Datei gemacht werden, die das jüngste Dateidatum trägt.

Gruß
Thomas
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

dougie


Danke Thomas,

leider nein (oder ich seh's nicht).

pi@raspberrypi /usr/lib/arm-linux-gnueabihf/alsa-lib $ ls -la
total 256
drwxr-xr-x  2 root root  4096 Feb  6 14:19 .
drwxr-xr-x 16 root root 32768 Feb  6 13:30 ..
-rw-r--r--  1 root root  5432 Jun  1  2012 libasound_module_conf_pulse.so
-rw-r--r--  1 root root 18092 Jun  1  2012 libasound_module_ctl_arcam_av.so
-rw-r--r--  1 root root 13832 Jun  1  2012 libasound_module_ctl_oss.so
-rw-r--r--  1 root root 18004 Jun  1  2012 libasound_module_ctl_pulse.so
-rw-r--r--  1 root root 18008 Jun  1  2012 libasound_module_pcm_a52.so
-rw-r--r--  1 root root 13836 Jun  1  2012 libasound_module_pcm_jack.so
-rw-r--r--  1 root root  9664 Jun  1  2012 libasound_module_pcm_oss.so
-rw-r--r--  1 root root 22168 Jun  1  2012 libasound_module_pcm_pulse.so
-rw-r--r--  1 root root  9648 Jun  1  2012 libasound_module_pcm_speex.so
-rw-r--r--  1 root root  9612 Jun  1  2012 libasound_module_pcm_upmix.so
-rw-r--r--  1 root root 13880 Jun  1  2012 libasound_module_pcm_usb_stream.so
-rw-r--r--  1 root root  9604 Jun  1  2012 libasound_module_pcm_vdownmix.so
lrwxrwxrwx  1 root root    33 Jun  1  2012 libasound_module_rate_lavcrate_faster.so -> libasound_module_rate_lavcrate.so
lrwxrwxrwx  1 root root    33 Jun  1  2012 libasound_module_rate_lavcrate_fast.so -> libasound_module_rate_lavcrate.so
lrwxrwxrwx  1 root root    33 Jun  1  2012 libasound_module_rate_lavcrate_higher.so -> libasound_module_rate_lavcrate.so
lrwxrwxrwx  1 root root    33 Jun  1  2012 libasound_module_rate_lavcrate_high.so -> libasound_module_rate_lavcrate.so
-rw-r--r--  1 root root  9592 Jun  1  2012 libasound_module_rate_lavcrate.so
lrwxrwxrwx  1 root root    35 Jun  1  2012 libasound_module_rate_samplerate_best.so -> libasound_module_rate_samplerate.so
lrwxrwxrwx  1 root root    35 Jun  1  2012 libasound_module_rate_samplerate_linear.so -> libasound_module_rate_samplerate.so
lrwxrwxrwx  1 root root    35 Jun  1  2012 libasound_module_rate_samplerate_medium.so -> libasound_module_rate_samplerate.so
lrwxrwxrwx  1 root root    35 Jun  1  2012 libasound_module_rate_samplerate_order.so -> libasound_module_rate_samplerate.so
-rw-r--r--  1 root root  5484 Jun  1  2012 libasound_module_rate_samplerate.so
lrwxrwxrwx  1 root root    34 Jun  1  2012 libasound_module_rate_speexrate_best.so -> libasound_module_rate_speexrate.so
lrwxrwxrwx  1 root root    34 Jun  1  2012 libasound_module_rate_speexrate_medium.so -> libasound_module_rate_speexrate.so
-rw-r--r--  1 root root  5484 Jun  1  2012 libasound_module_rate_speexrate.so
pi@raspberrypi /usr/lib/arm-linux-gnueabihf/alsa-lib $

Rohan

Hallo Ralf,

dann noch mal einen Schritt zurück ins Install-Verzeichnis von alsaequal, dort ein

make clean

um vorherigen evtl. Müll zu entrümpeln

und jetzt wieder den Dreisatz

./configure
make
make install


Der Install-Befehl sollte ausgeben, wohin er die Libs kopiert. Evtl. in den falschen Pfad.

Gruß
Thomas
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

Rohan

Ich nochmal

habe mir gerade die Sourcen angesehen, insbesondere die README... da ist auch noch von Änderungen in der "local .asoundrc" die Rede und von anderen Dev-Pakete (ohne die aber kein make laufen sollte). Vlt. verfolgst du das Thema auch noch (spätestens das mit der .asoundrc, wenn du erfolgreich installieren konntest).

Gruß
Thomas
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

dougie


vielen Dank für deine Geduld mit so nem Linux Newbie wie mir!

Hier mal der alsaequal Ordner nach dem make clean:

pi@raspberrypi ~/alsaequal/alsaequal $ ls -la
total 116
drwxr-xr-x 2 pi pi  4096 Feb  6 15:04 .
drwxr-xr-x 4 pi pi  4096 Feb  6 13:44 ..
-rw-r--r-- 1 pi pi 26434 Aug 11  2009 COPYING
-rw-r--r-- 1 pi pi  8370 Jan 31  2009 ctl_equal.c
-rw-r--r-- 1 pi pi 27447 May 17  2008 ladspa.h
-rw-r--r-- 1 pi pi 11914 Jan 31  2009 ladspa_utils.c
-rw-r--r-- 1 pi pi  2108 Jan 31  2009 ladspa_utils.h
-rw-r--r-- 1 pi pi  1246 Mar  5  2010 Makefile
-rw-r--r-- 1 pi pi  1237 Aug 11  2009 Makefile~
-rw-r--r-- 1 pi pi   153 Aug 11  2009 makefile.dep
-rw-r--r-- 1 pi pi  7164 Feb  1  2010 pcm_equal.c
-rw-r--r-- 1 pi pi  2972 May 19  2008 README
pi@raspberrypi ~/alsaequal/alsaequal $


Daher gibt es kein ./configure

Das hier ist der output vom make

pi@raspberrypi ~/alsaequal/alsaequal $ make
GCC pcm_equal.c
GCC ladspa_utils.c
LD libasound_module_pcm_equal.so
GCC ctl_equal.c
LD libasound_module_ctl_equal.so
pi@raspberrypi ~/alsaequal/alsaequal $


...und das der Output von make install...

pi@raspberrypi ~/alsaequal/alsaequal $ sudo make install
Installing...
pi@raspberrypi ~/alsaequal/alsaequal $


Und so sieht dann der Ordner aus:

pi@raspberrypi ~/alsaequal/alsaequal $ ls -la
total 176
drwxr-xr-x 2 pi pi  4096 Feb  6 15:07 .
drwxr-xr-x 4 pi pi  4096 Feb  6 13:44 ..
-rw-r--r-- 1 pi pi 26434 Aug 11  2009 COPYING
-rw-r--r-- 1 pi pi  8370 Jan 31  2009 ctl_equal.c
-rw-r--r-- 1 pi pi  7656 Feb  6 15:07 ctl_equal.o
-rw-r--r-- 1 pi pi 27447 May 17  2008 ladspa.h
-rw-r--r-- 1 pi pi 11914 Jan 31  2009 ladspa_utils.c
-rw-r--r-- 1 pi pi  2108 Jan 31  2009 ladspa_utils.h
-rw-r--r-- 1 pi pi  6372 Feb  6 15:07 ladspa_utils.o
-rwxr-xr-x 1 pi pi 17339 Feb  6 15:07 libasound_module_ctl_equal.so
-rwxr-xr-x 1 pi pi 15993 Feb  6 15:07 libasound_module_pcm_equal.so
-rw-r--r-- 1 pi pi  1246 Mar  5  2010 Makefile
-rw-r--r-- 1 pi pi  1237 Aug 11  2009 Makefile~
-rw-r--r-- 1 pi pi   153 Aug 11  2009 makefile.dep
-rw-r--r-- 1 pi pi  7164 Feb  1  2010 pcm_equal.c
-rw-r--r-- 1 pi pi  6048 Feb  6 15:07 pcm_equal.o
-rw-r--r-- 1 pi pi  2972 May 19  2008 README
pi@raspberrypi ~/alsaequal/alsaequal $


Rohan

Jo... sch*** Installation... ;) ... habe es aber im Makefile gelesen.

Der installiert die Libs wohl nach /usr/lib/alsa-lib/

Such mal dort ...

Gruß
Thomas
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

dougie


Ja, stimmt! Da liegen die! Soll ich die nach

/usr/lib/arm-linux-gnueabihf/alsa-lib

verschieben? Oder links?
VG
Ralf

dougie


...ich hab's einfach mal mit copy versucht:

pi@raspberrypi /usr/lib/alsa-lib $ sudo cp *.so /usr/lib/arm-linux-gnueabihf/alsa-lib

pi@raspberrypi /usr/lib/alsa-lib $ alsamixer -D equal
ALSA lib control_ext.c:664:(snd_ctl_ext_create) ctl_ext: Plugin version mismatch

cannot open mixer: Operation not permitted

pi@raspberrypi /usr/lib/alsa-lib $ sudo alsamixer -D equal
ALSA lib control.c:951:(snd_ctl_open_noupdate) Invalid CTL equal
cannot open mixer: No such file or directory
pi@raspberrypi /usr/lib/alsa-lib $

Rohan

jetzt kommt eben das hier, wie schon angedeutet.

Gruß
Thomas
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

dougie


Danke Thomas, den Post hatte ich gar nicht gesehen.

Ich hab jetzt alles mögliche probiert.

Der eine legt die config in die .asoundrc der andere nimmt die asound.conf ?

http://raspberrypi.org/phpBB3//viewtopic.php?f=66&t=17863&p=195324

alsamixer funktionert die ganze Zeit, aber alsamixer -D equal gibt immer "Plugin version mismatch", egal was ich in die config files eintrage.
Hab auch schon versucht dmix zu installieren, aber nichts geht.

Puh. Da ist noch einiges im Argen.

VG
Ralf

Rohan

Hallo Ralf,

dann mal weiter ;)

Ich glaube, du hattest die Lösung schon selbst hier geschrieben, aber nicht gesehen, denn du hast hier folgendes reinkopiert:

Zitatpi@raspberrypi /usr/lib/alsa-lib $ sudo cp *.so /usr/lib/arm-linux-gnueabihf/alsa-lib

pi@raspberrypi /usr/lib/alsa-lib $ alsamixer -D equal
ALSA lib control_ext.c:664:(snd_ctl_ext_create) ctl_ext: Plugin version mismatch

cannot open mixer: Operation not permitted

pi@raspberrypi /usr/lib/alsa-lib $ sudo alsamixer -D equal
ALSA lib control.c:951:(snd_ctl_open_noupdate) Invalid CTL equal
cannot open mixer: No such file or directory

Das "Plugin version mismatch" kommt, wenn du es nicht als superuser machst, machst du es dagegen mit vorangestelltem sudo, dann kommt das nicht, aber dann scheint nicht das richtige Device herangezogen zu werden. Ich würde dir raten, zu ermitteln, welche Gruppe auf die Sound-Devices die entsprechenden Rechte hat und den Benutzer "Pi" dieser Gruppe zuzuweisen. Wie man das bei einem anderen Problem macht findest zu z.B. hier beschrieben (ganz unten "$ sudo usermod ...").

Und nein, ich habe diese Konfiguration hier nicht und werde sie auch nicht haben. Ich versuche nur mit dem, was ich zu Linux weiß, hier zu helfen.

Gruß
Thomas
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

dougie

Moin Thomas,

entschuldige, wenn ich dir so viel zeit stehle. Aber du machst das hervorragend: so lerne ich zumindest, wie es richtig geht.

Ich hab jetzt mit


root@raspberrypi:/home/pi# usermod -a -G audio pi
root@raspberrypi:/home/pi# usermod -a -G audio root
root@raspberrypi:/home/pi# gpasswd -a pi audio
Adding user pi to group audio
root@raspberrypi:/home/pi# gpasswd -a pi audio
Adding user pi to group audio


mal allen Rechte auf audio gegeben. Bislang jedoch keine Veränderung im Verhalten.

Ich steig  mal etwas tiefer ein:


root@raspberrypi:/home/pi# cat /dev/sndstat
Sound Driver:3.8.1a-980706 (ALSA v1.0.25 emulation code)
Kernel: Linux raspberrypi 3.6.11+ #366 PREEMPT Wed Jan 30 12:59:10 GMT 2013 armv6l
Config options: 0

Installed drivers:
Type 10: ALSA emulation

Card config:
Burr-Brown from TI USB Audio CODEC at usb-bcm2708_usb-1.3, full speed
bcm2835 ALSA

Audio devices: NOT ENABLED IN CONFIG

Synth devices: NOT ENABLED IN CONFIG

Midi devices: NOT ENABLED IN CONFIG

Timers:
7: system timer

Mixers: NOT ENABLED IN CONFIG
root@raspberrypi:/home/pi#


Alsa und die richtige Soundkarte aktiv.
Zumindest schon mal etwas.

dougie


...und squeezeslave läuft als root


root@raspberrypi:/home/pi# fuser -v /dev/snd/*
                     USER        PID ACCESS COMMAND
/dev/snd/pcmC0D0p:   root       2211 F...m squeezeslave
root@raspberrypi:/home/pi#

dougie



...je mehr ich lese, desto mehr gewinne ich den Eindruck, das das aktuell defekt ist.

Ich hab noch mal das neue Package alsaequal 6.0.4 runter geladen und neu kompiliert/installiert/kopiert

Aber andere haben wohl auch das Problem:

http://forum.xbmc.org/showthread.php?tid=88719

dougie



Ich hab's geschafft!!!

apt-get install libasound2-plugin-equal


Hat gefehlt! alsaequal läuft jetzt, ändert aber noch nichts am Sound. Scheint jetzt ne Sache der /etc/asound.conf zu sein.

dougie


...so, und jetzt noch der Nachtrag nach unzähligen Versuchen mit unterschiedlichen Konfigurationen:

Wenn ich mit

mpg123 -a default /home/pi/Zion.mp3


einen mp3 abspiele, ist alles perfekt. Gnadenloser Sound, so wie ich ihn im Equalizer eingestellt habe. Aber mit

mpg123 /home/pi/Zion.mp3


Wird der Equalizer ignoriert.
Wäre alles nicht so wild, wenn ich nur wüsste wie ich squeezeslave erkläre, das es das default device verwenden soll.

Jemand ne Idee? Denke dann wär ich durch :-)

VG
Ralf

dougie


Bin durch! Hat mir keine Ruhe gelassen.

Mein Fehler: so lange squeezeslave läuft, gibt es auf die Frage squeezeslave -L keine sinnvolle Antwort.

Ansonsten bekommt man:

root@raspberrypi:~# squeezeslave -L
Output devices:
  0: (ALSA) USB Audio CODEC: USB Audio (hw:0,0) (11/46)
  1: (ALSA) bcm2835 ALSA: bcm2835 ALSA (hw:1,0) (11/46)
  2: (ALSA) sysdefault (42/42)
  3: (ALSA) front (11/46)
  4: (ALSA) surround40 (11/46)
  5: (ALSA) iec958 (11/46)
  6: (ALSA) spdif (11/46)
  7: (ALSA) plugequal (11/46)
  8: (ALSA) mmap0 (11/46)
  9: (ALSA) dmix (42/42)
*10: (ALSA) default (11/46)



Jetzt noch eben die /etc/default/squeezeslave editieren und device 10 nehmen.


SSOPTIONS="-o 10"
SBSHOST="localhost"
SSMAC="b8:27:eb:7c:7f:4e"



Note:
Die Verwendung vom dmix plugin hat bei mir nicht funktioniert, weil es zu massiven Störungen im Ton kam. Aber mpg123 lag dann schon bei 60% Prozessorlast.
Squeezeslave verursachte bei mir bislang eine Last von ca. 10%
Bei der Verwendung des Equalizers steigt die Last auf ca. 24%, aber das ist mir der Sound auf alle Fälle wert!

VG
Ralf

dougie

Nachtrag: mein RPi läuft seit meinem letzten Post einwandfrei als LogitechMediaServer und mit SqueezeSlave (Danke Willi!)

Leider hat der LMS irgendwie Probleme. Ich hab's immer noch nicht hinbekommen, das er alle Songs auf meinem NAS im Keller findet (wahrscheinlich mount Problem).
Was aber ärgerlicher ist: LMS kommt mit der Datenbank irgendwie durcheinander. Wenn ich einen Song als Favorit markiere, taucht ein ganz anderer in der Fav Liste auf.
Ist das nur bei mir so? Ausserdem finde ich die Bedienung von LMS nicht wirklich intuitiv und sinnig. Gibt es da ev. eine bessere Alternative?

Ach so: bei der Gelegengeheit habe ich Squeezeslave auf die final version upgedatet. Läuft!

pi@raspberrypi:/usr/bin$ squeezeslave -V
squeezeslave 1.3-390 Jan  2 2013 11:53:08
compile flags: linux portaudio:1885 debug signals interactive daemon tremor renice
buffer sizes: decoder 2097152 output 2822400 bytes

Copyright 2004-2013 Richard Titmuss, Duane Paddock.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
pi@raspberrypi:/usr/bin$

mrFbn

Hallo,

ich nutze auch den Raspberry PI als Squeezebox-Player mit Squeezeplug. Die Installation hat super funktioniert und ich kann bereits Musik über die onboard-Soundkarte abspielen, allerdings in ziemlich schlechter Qualität.

Deshalb habe ich mir wie Ihr auch die Behringer UCA202 USB-Soundkarte gekauft und an den PI angeschlossen. Leider wird die Soundkarte aber nicht erkannt, aplay -l oder auch im setup-Menü von Squeezeplug wird weiterhin nur die interne/onboard-Karte angezeigt. Wenn ich die USB-Soundkarte an meinen PC mit Ubuntu anschliesse funktioniert sie einwandfrei.

Habt Ihr noch irgendetwas eingestellt oder nachinstalliert damit die USB-Soundkarte auf der Squeezeplug-Installation funktioniert?

Danke & Gruß
Frank

Willi

Zitat von: mrFbn schrieb am Di, 19 März 2013 17:07Deshalb habe ich mir wie Ihr auch die Behringer UCA202 USB-Soundkarte gekauft und an den PI angeschlossen. Leider wird die Soundkarte aber nicht erkannt, aplay -l oder auch im setup-Menü von Squeezeplug wird weiterhin nur die interne/onboard-Karte angezeigt. Wenn ich die USB-Soundkarte an meinen PC mit Ubuntu anschliesse funktioniert sie einwandfrei.

Habt Ihr noch irgendetwas eingestellt oder nachinstalliert damit die USB-Soundkarte auf der Squeezeplug-Installation funktioniert?

Wenn Du schon Squeezeplug genommen hast und die USB-Karte nicht defekt ist, sollte es eigentlich mit geringem Aufwand funktionieren.

Du musst im setup unter "Server und Player" "Install player" / "Squeezeslave" / "Install" auswählen.

Um zu schauen, ob die Soundkarte nicht defekt ist, schau mal, ob bei "lsusb" folgendes ausgegeben wird:
root@pi-sb:~# lsusb
... gelöscht
Bus 001 Device 004: ID 08bb:2902 Texas Instruments Japan PCM2902 Audio Codec

Um zu sehen, ob der Kernel die USB-Karte erkennt, müßte folgende Zeilen bei "dmesg" ausgegeben werden:
[    3.212648] usb 1-1.2: new full-speed USB device number 4 using dwc_otg
[    3.339098] usb 1-1.2: New USB device found, idVendor=08bb, idProduct=2902
[    3.355420] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    3.380370] usb 1-1.2: Product: USB Audio CODEC
[    3.388175] usb 1-1.2: Manufacturer: Burr-Brown from TI
[    3.413247] input: Burr-Brown from TI               USB Audio CODEC  as /devices/platform/bcm2708_usb/usb1/1-1/1-1.2/1-1.2:1.3/input/input0
[    3.443268] hid-generic 0003:08BB:2902.0001: input,hidraw0: USB HID v1.00 Device [Burr-Brown from TI               USB Audio CODEC ] on usb-bcm2708_usb-1.2/input3


Nach der Installation von Squeezeslave sollte "ps x" folgenden Prozess anzeigen:
/usr/bin/squeezeslave -R -M/var/log/squeezeslave.log -o 0 -mxx:xx:xx:xx:xx:xx localhost

wobei xx:xx:xx:xx:xx:xx Deine Mac-Adresse des Ethernet interfaces ist. Diese Adresse habe ich aus Datenschutzgründen in diesem Posting gelöscht.

Die erfährst Du mittels "ifconfig eth0".
root@pi-sb:~# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr xxx:xx:xx:xx:xx:xx  

Ein Hinweis zur Nutzung der Behringer UCA 202. Ein 1000 mA Netzteil am Pi reichet bei mir nicht aus. Dabei ist der Pi einmal pro Tag abgestürzt. Jetzt habe ich ein 2000 mA Netzteil angeschlossen und es läuft absolut stabil. Vermutlich reicht auch weniger als 2000 mA, aber ich hatte das noch verfügbar.

Ein zusätzlicher Hinweis:
Ich würde generell beim Pi kein 1000 ma Netzteil mehr nehmen, wenn man etwas ohne eigene Stromversorgung (also ohne aktiven Hub) an USB anschließt. Vorsicht auch beim Overclock. Selbst die Einstellung "Medium" hat bei einem Pi dazu geführt, dass nach einiger Zeit das Dateisystem auf der SD-Karte kaputt war. Das war reproduzierbar.
Ich habe allerdings auch zwei Pi, bei denen Overclock super funktioniert. Kann evtl. auch am Timing bestimmter SD-Karten liegen.

MfG Willi
 
FHEM@Q600(debian) mit DS9490R (1Wire) | FHEM@Sheevaplug(debian) mit RFXCOM-Receiver(80002), CULv3 & USB-WDE1 | FHEM@odroid mit CULv2 & RFXtrx433

Willi

Zitat von: dougie schrieb am Mo, 18 Februar 2013 08:31Leider hat der LMS irgendwie Probleme. Ich hab's immer noch nicht hinbekommen, das er alle Songs auf meinem NAS im Keller findet (wahrscheinlich mount Problem).
[/code]
Zugriff per NFS oder SMB ist bzgl. Rechtevergabe nicht immer einfach. Ich würde wie folgt vorgehen.
Ändere den Account unter dem LMS läuft, dass Du Dich darunter einloggen kannst. Dazu musst Du in /etc/passwd diesem Account eine Shell eintragen und ein (sicheres) Kennwort per passwd vergeben, z.B.:
squeezeboxserver:x:110:65534:Logitech Media Server,,,:/usr/share/squeezeboxserver:/bin/sh

Du kannst dann testen auf welche Verzeichnisse/Dateien Du beim Mount-Point zugreifen kannst.

Favoriten habe ich bisher nur wenig genutzt. Dabei gab es allerdings bisher keinerlei Probleme.

Welche LMS-Version nutzt Du? Im Webinterface wird bei mir unter Informationen folgende Version angezeigt:
  Logitech Media Server Version: 7.7.2 - r33893 @ Wed Mar 14 05:46:46 PDT 2012

Grüße

Willi
FHEM@Q600(debian) mit DS9490R (1Wire) | FHEM@Sheevaplug(debian) mit RFXCOM-Receiver(80002), CULv3 & USB-WDE1 | FHEM@odroid mit CULv2 & RFXtrx433

mrFbn

Hallo Willi,

danke für Deine Antwort!

Die USB-Soundkarte ist ganz sicher nicht defekt, am PC funktioniert sie. Die LED an der Karte leuchtet auch wenn ich sie an den PI anschließe, d.h. auch Strom ist vorhanden.

Das sagt lsusb:
# lsusb
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 08bb:2902 Texas Instruments Japan PCM2902 Audio Codec

Sieht also genau so aus wie bei Dir.

dmesg sagt folgendes:
[  212.502168] usb 1-1.3: new full-speed USB device number 4 using dwc_otg
[  212.614808] usb 1-1.3: New USB device found, idVendor=08bb, idProduct=2902
[  212.614838] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  212.614853] usb 1-1.3: Product: USB Audio CODEC
[  212.614868] usb 1-1.3: Manufacturer: Burr-Brown from TI              
[  212.628138] input: Burr-Brown from TI               USB Audio CODEC  as /devices/platform/bcm2708_usb/usb1/1-1/1-1.3/1-1.3:1.3/input/input0
[  212.628499] hid-generic 0003:08BB:2902.0001: input,hidraw0: USB HID v1.00 Device [Burr-Brown from TI               USB Audio CODEC ] on usb-bcm2708_usb-1.3/input3
[  212.864554] cannot find the slot for index 0 (range 0-0), error: -16
[  212.864581] cannot create card instance 0
[  212.864612] snd-usb-audio: probe of 1-1.3:1.0 failed with error -5
[  212.866409] usbcore: registered new interface driver snd-usb-audio

Hier scheint etwas nicht zu passen (cannot find the slot for index 0, cannot create card instance, failed with error -5 ...)

Hast Du noch irgendetwas nachinstalliert oder eingestellt damit die Karte bei Dir funktioniert hat? Ich habe die neueste Squeezeplug-Version verwendet und auch ein apt-get upgrade gemacht um die neueste ALSA-Version zu bekommen. Bin im Moment ziemlich ratlos ...

mrFbn

Hallo Willi,

kannst Du mir sagen ob Du auch diese Version des DAC hast?

[ 212.614808] usb 1-1.3: New USB device found, idVendor=08bb, idProduct=2902


Welche Version des SqueezePlug setzt Du ein?

Willi

Zitat von: mrFbn schrieb am Mi, 20 März 2013 18:04Hallo Willi,

kannst Du mir sagen ob Du auch diese Version des DAC hast?

[ 212.614808] usb 1-1.3: New USB device found, idVendor=08bb, idProduct=2902

[    3.212648] usb 1-1.2: new full-speed USB device number 4 using dwc_otg
[    3.339098] usb 1-1.2: New USB device found, idVendor=08bb, idProduct=2902
[    3.355420] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    3.380370] usb 1-1.2: Product: USB Audio CODEC
[    3.388175] usb 1-1.2: Manufacturer: Burr-Brown from TI
[    3.413247] input: Burr-Brown from TI               USB Audio CODEC  as /devices/platform/bcm2708_usb/usb1/1-1/1-1.2/1-1.2:1.3/input/input0
[    3.443268] hid-generic 0003:08BB:2902.0001: input,hidraw0: USB HID v1.00 Device [Burr-Brown from TI               USB Audio CODEC ] on usb-bcm2708_usb-1.2/input3

Also auch idVendor=08bb, idProduct=2902 .

ZitatWelche Version des SqueezePlug setzt Du ein?

Keine Ahnung. Ich habe damals installiert und jeweils die Updates über das setup Menu gemacht.
Updates über "apt-get update; apt-get upgrade" habe ich vermutlich nicht gemacht.

Diesen Linux-Kernel habe ich bei mir im Einsatz:

root@pi-sb:~# uname -a
Linux pi-sb 3.6.11+ #385 PREEMPT Fri Mar 1 21:53:22 GMT 2013 armv6l GNU/Linux

Etwas anderes: Hast Du die Behringer direkt an den USB-Port des Pi angeschlossen oder dazwischen einen Hub? Bei mir ist die Behringer USB-Karte direkt angeschlossen.

FHEM@Q600(debian) mit DS9490R (1Wire) | FHEM@Sheevaplug(debian) mit RFXCOM-Receiver(80002), CULv3 & USB-WDE1 | FHEM@odroid mit CULv2 & RFXtrx433

dougie

...ich wollte auch noch mal etwas Erfahrungsbericht abgeben: Nachdem ich noch mal ein paar RPis zum Basteln nachbestellt hatte, wollte ich die auch noch mit Sound ausstatten.

Mit dem aktuellen Image ist das alles inzwischen recht einfach geworden: WLAN und USB Sound funktioniert quasi out of the Box, wenn man sich etwas an der funktionierenden Hardware orientiert.
Zum Beispiel funktioniert ein Belkin 802.11N USB WLAN Stick locker mit 300Mbit. Dann hab ich mir eine handvoll der unten abgebildeten USB SoundKarten gekauft. Kosten unter 4€ das Stück und tun das was sie sollen: werden automatisch erkannt und machen sauber Musik.


(siehe Anhang / see attachement)


Ich weiss aber auch was NICHT geht: einen RPi dazu verdonnern, das der sowohl Logitech Media Server, Squeezeslave, Equalizer und Resampler gleichzeitig ist. Da reicht die Rechenleistung dann doch nicht mehr und der MediaServer wird unerträglich langsam. Squeezeslave allein braucht nur 10% Rechenleistung, aber wenn der Equalizer dazu kommt werden es schon 25%. Kommen dann mp3 Files dazu, die nicht mit 44,1kHz gesampelt sind, kommt squeezeslave aus dem Takt und solche Stücke müssen erst mit SOX in Echtzeit resampelt werden. SOX braucht dann allein schon 60% Rechenleistung ... da ist dann Ende Gelände.

Mal sehen wie ich das löse.

VG
Ralf

Willi

Zitat von: dougie schrieb am Do, 21 März 2013 09:03Zum Beispiel funktioniert ein Belkin 802.11N USB WLAN Stick locker mit 300Mbit.

Welchen Belkin Stick hast Du genau? Ich wollte auch einen PI um WLAN erweiteren....

ZitatDann hab ich mir eine handvoll der unten abgebildeten USB SoundKarten gekauft. Kosten unter 4€ das Stück und tun das was sie sollen: werden automatisch erkannt und machen sauber Musik.
Danke für den Link. Ich verwende derzeit die Behringer UCA 202. Die ist natürlich um einiges teurer.

Warum verwendest Du den Equalizer? 25% CPU ist ja heftig. Mit der Behringer-USB-Karte hört sich der Sound auch ohne Eualizer an der Stereo-Anlage super an. Ist das der Nachteil der günstigen Sticks? Oder ist der Sound auch ohne Equalizer gut?

Wie sieht das mit Knackgeräuschen beim Einschalten des Sounds aus? Das ist ja bei der eingebauten Soundkarte heftig.

Grüße

Willi
FHEM@Q600(debian) mit DS9490R (1Wire) | FHEM@Sheevaplug(debian) mit RFXCOM-Receiver(80002), CULv3 & USB-WDE1 | FHEM@odroid mit CULv2 & RFXtrx433

dougie

Zitat von: Willi schrieb am Do, 21 März 2013 19:28Welchen Belkin Stick hast Du genau? Ich wollte auch einen PI um WLAN erweiteren....

Das Ding heisst Belkin Micro WLAN USB-Adapter Surf N300

Ich hab's im Saturn gekauft, weil ich schon vorher wusste, das ich mehr als einen ausprobieren würde müssen, und daher problemlos umtauschen konnte. Der Surf N300 war der zweite. Der lief dann. :-)

Zitat von: Willi schrieb am Do, 21 März 2013 19:28Danke für den Link. Ich verwende derzeit die Behringer UCA 202. Die ist natürlich um einiges teurer.

Warum verwendest Du den Equalizer? 25% CPU ist ja heftig. Mit der Behringer-USB-Karte hört sich der Sound auch ohne Eualizer an der Stereo-Anlage super an. Ist das der Nachteil der günstigen Sticks? Oder ist der Sound auch ohne Equalizer gut?

Wie sieht das mit Knackgeräuschen beim Einschalten des Sounds aus? Das ist ja bei der eingebauten Soundkarte heftig.

Grüße

Willi

Also ein leichtes Knacken beim Starten der Wiedergabe habe ich auch. Ist aber erträglich.
Die billig USB Soundkarte ist auch ohne Equalizer absolut einwandfrei. Den Equalizer hab ich nur auf dem RPi in der Küche installiert, und da arbeitet eine selbstgebaute Soundkarte von mir.
Grund für den Equalizer ist dort ein ziemlich durchgeknalltes Audio Setup. Gibt wahrscheinlich nicht viele nahezu unsichtbare "Küchenradios" die einen linearen Frequenzgang zwischen 20 und 18.000Hz mit amtlichem Schalldruck haben. Da wollte ich den Equalizer, um ggf. den Frenquenzgang noch mal zu justieren. Bin aber mit den Top-Lautsprechern noch nicht fertig. :-)

VG
Ralf

bsl02

Hallo Ralf,

> eine handvoll der unten abgebildeten USB SoundKarten gekauft. Kosten unter 4€ das Stück

gibt es zur USB-Soundkarte eine Bezeichnung / Link zur Nachbestellung?
Ich habe bereits eine ähnliche, die läuft aber nicht am Pi. Den WLan-Stick habe ich auf Deinen Tip hin bestellt.

Danke,
Stefan
RPi3 (FHEM) / CUL V3 868 (FS20) / nanoCUL868 (HM) / RFXtrx433 (IT & ELRO) / MAX!Cube (Thermostate, Fenster) / Bluetooth (presence Handy) / Sonoff mit Tasmota // Audio: RPi3 mit "max2play"-Image (Squeezeserver+Player) / Video: Synology-NAS mit TVheadend, Triax TSS400 Sat-IP Converter

dougie

Zitat von: bsl02 schrieb am Fr, 22 März 2013 13:28Hallo Ralf,

> eine handvoll der unten abgebildeten USB SoundKarten gekauft. Kosten unter 4€ das Stück

gibt es zur USB-Soundkarte eine Bezeichnung / Link zur Nachbestellung?
Ich habe bereits eine ähnliche, die läuft aber nicht am Pi. Den WLan-Stick habe ich auf Deinen Tip hin bestellt.

Danke,
Stefan


Aber klar doch... das sind die hier: http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&item=170868845266

VG
Ralf

bsl02

>Aber klar doch... das sind die hier: http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&item=170868845266

Danke, habe gestern sofort bestellt. Witzigerweise kam meine "Pi-inkompatible" Soundkarte vom gleichen Lieferanten mit etwas anderem Design. Ich bin gespannt auf die Lieferung ;-)

Gruß, Stefan
RPi3 (FHEM) / CUL V3 868 (FS20) / nanoCUL868 (HM) / RFXtrx433 (IT & ELRO) / MAX!Cube (Thermostate, Fenster) / Bluetooth (presence Handy) / Sonoff mit Tasmota // Audio: RPi3 mit "max2play"-Image (Squeezeserver+Player) / Video: Synology-NAS mit TVheadend, Triax TSS400 Sat-IP Converter