RPi Audio...

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

Vorheriges Thema - Nächstes Thema

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