Hi @all,
Erstmal wünsche ich allen hier im Forum ein Gutes Neues Jahr !
Mein letztes FHEM update war schon etwas her, daher wollte ich mal den Jahreswechsel nutzen um das nachzuholen.
Nach dem Update musste ich leider feststellen, das daß BRAVIA-Modul auch ein Update bekommen hat, und sobald der TV eingeschaltet wird FHEM "abschießt".
Ich hatte vor dem Update version "70_BRAVIA.pm 21376 2020-03-08 09:22:57Z vuffiraa"
und nach dem Update version "70_BRAVIA.pm 22330 2020-07-02 19:32:12Z vuffiraa"
Die neue Version erzeugt jetzt bei mir beim einschalten des TV's folgenden Fehler
Not a SCALAR reference at ./FHEM/70_BRAVIA.pm line 1771.
im modul ist das der Teil: %speaker = @{$return->{result}}[0] if (!%speaker && ${$return->{result}} > 0);
und FHEM stürtzt ab (von running zu exited)
● fhem.service - LSB: FHEM server
Loaded: loaded (/etc/init.d/fhem; bad; vendor preset: enabled)
Active: active (exited) since Do 2021-01-07 16:41:57 CET; 1h 9min ago
Docs: man:systemd-sysv-generator(8)
Process: 592 ExecStart=/etc/init.d/fhem start (code=exited, status=0/SUCCESS)
es geht also nix mehr :o
ein Login über das Webinterface ist nicht mehr möglich
habe im Forum gesucht aber leider zu diesem Fehler nichts gefunden :-\
könnte mir bitte einer helfen ?
würde das BRAVIA Modul gerne auch weiterhin updaten können
ohne es zu excluden.
mfg. m31
Hallo,
bei mir funktioniert alles in der aktuellen Version. Eventuell das Device neu definieren.
Viele Grüße
Jürgen
Hallo m31,
dein Problem ist mir bisher noch nicht bekannt. Kannst du mal ein Log mit verbose=5 machen, während du den TV einschaltest?
Welches Modell hast du?
Wir werden es schon wieder zu laufen kriegen ;)
Gruß VuffiRaa
Hallo VuffiRaa,
Besten Dank schon mal für deine Mühe
so hier der Log vom einschalten des TV's bis zum FHEM crash
hoffe das passt so ?
-edit-
Modell: KD-49XD7005
Gruß m31
Hallo m31,
es liegt an den Kopfhörern, bzw. daran, dass der TV die steuern möchte.
Das hatte ich nicht bedacht. Ich melde mich und würde dir eine Version zum Testen bereitstellen.
Gruß VuffiRaa
Hallo VuffiRaa,
gerne
hatte mich schon daran versucht aber hab's nicht hinbekommen :(
besten Dank für deinen Support !!! :)
mfg. m31
Hallo m31,
ich habe im GitHub eine Entwicklerversion des Moduls hochgeladen: https://github.com/fhem/BRAVIA/tree/dev
Diese könntest du testen, wenn du in der Kommandozeile von FHEM folgendes ausführst:
update all https://raw.githubusercontent.com/fhem/BRAVIA/dev/controls_BRAVIA.txt
Nach einem Neustart ist dann die neue Version aktiv.
Falls dann bei dir wieder alles geht, würde ich die Version in FHEM übernehmen, sodass sie dann auch mit dem normalen FHEM-Update verteilt wird.
Gruß VuffiRaa
Hallo VuffiRaa,
--edit--
UPPS :-[ :'(
sorry das war zu früh
das Update hatte nicht hingehauen keine Ahnung warum, es war noch die alte Version
der Fehler Not a SCALAR reference at ./FHEM/70_BRAVIA.pm line 1771.
ist leider immer noch da
# getVolumeInformation
elsif ( $service eq 'getVolumeInformation') {
if ( ref($return) eq 'HASH' && ref($return->{result}) eq 'ARRAY') {
my $elements = $return->{result}[0];
if (ref($elements) eq 'ARRAY') {
my %speaker = ();
foreach my $target (@$elements) {
if (ref($target) eq 'HASH') {
%speaker = %$target if ($target->{'target'} eq 'speaker');
last;
}
}
%speaker = @{$return->{result}}[0] if (!%speaker && ${$return->{result}} > 0);
if (%speaker) {
readingsBeginUpdate($hash);
readingsBulkUpdateIfChanged( $hash, 'volume', $speaker{volume} );
readingsBulkUpdateIfChanged( $hash, 'mute', ($speaker{mute} ? "on" : "off") );
readingsEndUpdate( $hash, 1 );
}
}
}
}
ist da deine Änderung drin ? ???
Gruß m31[/s]
Ja, da habe ich was geändert:
# getVolumeInformation
elsif ( $service eq 'getVolumeInformation') {
if ( ref($return) eq 'HASH' && ref($return->{result}) eq 'ARRAY') {
my $elements = $return->{result}[0];
if (ref($elements) eq 'ARRAY') {
my %speaker = ();
foreach my $target (@$elements) {
if (ref($target) eq 'HASH') {
%speaker = %$target if ($target->{'target'} eq 'speaker');
last;
}
}
%speaker = %{@$elements[0]} if (!%speaker && $elements > 0);
if (%speaker) {
readingsBeginUpdate($hash);
readingsBulkUpdateIfChanged( $hash, 'volume', $speaker{volume} );
readingsBulkUpdateIfChanged( $hash, 'mute', ($speaker{mute} ? "on" : "off") );
readingsEndUpdate( $hash, 1 );
}
}
}
}
Du hast nicht zufällig nach dem Update aus dem Git noch ein normales FHEM-Update gemacht? Das FHEM-Update überschreibt die Entwicklerversion des Moduls wieder mit der alte Variante.
Gruß VuffiRaa
Hallo VuffiRaa,
ZitatDu hast nicht zufällig nach dem Update aus dem Git noch ein normales FHEM-Update gemacht? Das FHEM-Update überschreibt die Entwicklerversion des Moduls wieder mit der alte Variante.
:-X anscheinend
war gestern auf'm Sprung und wollte das noch schnell erl.
hab's heute nochmal neu gemacht
und es schaut gut aus ! :)
Besten Dank für deinen super Support !Gruß m31
Hallo VuffiRaa,
Der Fehler ist def. weg !
Fernseher wurde jetzt schon mehrfach gestartet ohne Problem.
und der Log schaut auch gut aus.
Somit kann ich ich dir weitergeben es sollte kein Problem sein die Version in FHEM zu übernehmen, sodass sie dann auch mit dem normalen FHEM-Update verteilt wird.
Gruß m31
Vielen Dank für die Rückmeldung!
Dann übernehme ich mal die Änderung in die offizielle Version.
Gruß VuffiRaa
Zitat von: vuffiraa am 20 Januar 2021, 19:33:00
Vielen Dank für die Rückmeldung!
Dann übernehme ich mal die Änderung in die offizielle Version.
Gruß VuffiRaa
Ab morgen (Montag) wird die Änderung per Update verteilt.