Modul für WLAN Radios mit Frontier Silicon Chipsatz (SilverCrest/Medion/Hama...)

Begonnen von mumpitzstuff, 07 November 2017, 00:21:27

Vorheriges Thema - Nächstes Thema

mumpitzstuff

Also die Presets werden eigentlich zyklisch beim Update ausgelesen. Dabei wird zum einen .preset gefüllt und auch .<input>preset. Input ist dabei abhängig vom momentan eingestellten Input. Wenn bei dir das Reading verschwindet, dann muss eigentlich dauerhaft das auslesen der presets fehl schlagen. Wenn dieser Zustand bei dir eintritt, dann kannst du ja mal Verbose auf 5 stellen und nach den Presets im Logfile suchen. Ich vermute dein Radio lehnt das Auslesen der Presets irgendwie ab.

In der Testversion im nächsten Beitrag habe ich das Löschen der preset Readings im Fehlerfall mal entfernt. Schau mal bitte, ob das dein Problem beseitigen würde.

mumpitzstuff

Es war leider ziemlich viel Arbeit das Interface umzustellen und dann wieder Fehler zu suchen, weil sich das Interface anders verhält...

Schaut bitte mal nach, ob damit das Problem mit den Memory Leaks weg ist. Ich kann jedenfalls nichts mehr dergleichen beobachten. Ich brauche so schnell wie möglich Rückmeldungen dazu, um das Problem möglichst dieses Wochenende noch beheben zu können.

Brice

Danke.

Heruntergeladen, in /opt/fhem/FHEM kopiert und ein reload 17_SIRD.pm ergibt

Not enough arguments for main::SIRD_StartWebserver at ./FHEM/17_SIRD.pm line 472, near "$streamPath)"
Too many arguments for main::SIRD_SetReadings at ./FHEM/17_SIRD.pm line 1723, near "$_)"
Too many arguments for main::SIRD_SetReadings at ./FHEM/17_SIRD.pm line 1786, near "$_)"
Too many arguments for main::SIRD_SetReadings at ./FHEM/17_SIRD.pm line 1824, near "})"


Nach einem shutdown/restart wirft FHEM bei Verbose 3 keine Fehlermeldung.

Ich werde es weiter beobachten.
FHEM auf RPi 4 4GB (Buster) | produktiv) CUL 868 für FS20 | S300TH | KS300 | Max!Cube als CUN 868 für TechemWZ | HM-MOD-RPI-PCB für HM | Z-Wave ZME_UZB1 | FRITZ!DECT 200 | HUE | Lightify | Echo Dot | WS3080

mumpitzstuff

Das mit dem Reload funktioniert nicht, weil ich die Anzahl der Übergabeparameter mind. einer Funktion ändern musste. Nach Updates am besten immer shutdown restart machen.

Danke fürs testen!

alru

Gruß,

Stefan
(Raspi 3B - Stretch / HM-LGW / HomeMatic / MySensors)

alru

Direkt nach dem shutdown-reboot ist mit der neuen Testversion im Log das zu sehen:
2018.07.28 21:41:19 0: Server started with 417 defined entities (fhem.pl:17007/2018-07-20 perl:5.024001 os:linux user:fhem pid:15936)
2018.07.28 21:43:08 1: PERL WARNING: Use of uninitialized value $_ in substitution (s///) at ./FHEM/17_SIRD.pm line 2264.
2018.07.28 21:43:08 1: PERL WARNING: Use of uninitialized value $_ in concatenation (.) or string at ./FHEM/17_SIRD.pm line 2267.
2018.07.28 21:43:49 1: PERL WARNING: Use of uninitialized value in subroutine entry at /usr/lib/arm-linux-gnueabihf/perl/5.24/Encode.pm line 231.


Ich hab dann auf verbose=5 gesetzt, aber keine weiteren Fehlermeldungen mehr erhalten, die Grundfunktionen laufen auch.
Gruß,

Stefan
(Raspi 3B - Stretch / HM-LGW / HomeMatic / MySensors)

mumpitzstuff

Hmm den Fehler kann ich bei mir nicht sehen. Könntest du bitte Verbose auf 5 stellen, die Konfiguration abspeichern und dann shutdown reload ausführen? Im Logfile müsste dann der XML Code für deine Presets auftauchen der zu diesem Fehler führt. Den bräuchte ich bitte.

Danach bitte Verbose wieder auf 3 setzen, sonst wird dein Log sehr schnell sehr groß.

Danke!

mumpitzstuff

Okay ich habe die Probleme gefunden und beseitigt. Die aktualisierte Version befindet sich im selben Beitrag weiter oben (Anhang ausgetauscht).

https://forum.fhem.de/index.php/topic,79168.msg822223.html#msg822223

alru

Feedback zur gestrigen Version: Das Speicherleck scheint gefixt zu sein, ich hab nach 10 Std. keinen Zuwachs, das war bei der vorherigen Version definitiv anders!

Die neuste Version teste ich nachher.
Gruß,

Stefan
(Raspi 3B - Stretch / HM-LGW / HomeMatic / MySensors)

alru

Moin,

und hier das Log nach dem Start der aktuellsten Version:
2018.07.29 08:49:26 0: Server started with 417 defined entities (fhem.pl:17007/2018-07-20 perl:5.024001 os:linux user:fhem pid:31513)
2018.07.29 08:49:28 5: 2.Kueche.Radio: SetNextTimer called
2018.07.29 08:49:30 3: 2.Kueche.Radio: Error while requesting http://192.168.1.102:8080/dd.xml - 192.168.1.102: Die Verbindung wurde vom Kommunikationspartner zur�ckgesetzt
2018.07.29 08:49:41 3: 2.Wohnzimmer.Radio: Error while requesting http://192.168.1.132:8080/dd.xml - 192.168.1.132: Die Verbindung wurde vom Kommunikationspartner zur�ckgesetzt
2018.07.29 08:49:43 5: 2.Wohnzimmer.Radio: SetNextTimer called
2018.07.29 08:49:43 5: 2.Kueche.Radio: SetNextTimer called
2018.07.29 08:49:43 5: 2.Kueche.Radio: Error while requesting http://192.168.1.102:80/fsapi/GET_MULTIPLE?pin=1234&node=netRemote.play.info.name&node=netRemote.play.info.description&node=netRemote.play.info.albumDescription&node=netRemote.play.info.artistDescription&node=netRemote.play.info.duration&node=netRemote.play.info.artist&node=netRemote.play.info.album&node=netRemote.play.info.graphicUri&node=netRemote.play.info.text&node=netRemote.nav.numItems& - write to http://192.168.1.102:80 timed out
2018.07.29 08:49:43 5: 2.Kueche.Radio: URL http://192.168.1.102:80/fsapi/GET/netRemote.sys.power?pin=1234 returned:
<fsapiResponse>
<status>FS_OK</status>
<value><u8>1</u8></value>
</fsapiResponse>

2018.07.29 08:49:43 5: 2.Kueche.Radio: Power GET successful.
2018.07.29 08:49:43 5: 2.Kueche.Radio: URL http://192.168.1.102:80/fsapi/GET_MULTIPLE?pin=1234&node=netRemote.sys.mode&node=netRemote.play.status&node=netRemote.play.frequency&node=netRemote.play.errorStr&node=netRemote.play.position&node=netRemote.play.repeat&node=netRemote.play.shuffle&node=netRemote.play.signalStrength&node=netRemote.sys.audio.mute& returned:
<fsapiGetMultipleResponse>
<fsapiResponse>
<node>netRemote.sys.mode</node>
<status>FS_OK</status>
<value><u32>5</u32></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.play.status</node>
<status>FS_OK</status>
<value><u8>2</u8></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.play.frequency</node>
<status>FS_OK</status>
<value><u32>96200</u32></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.play.errorStr</node>
<status>FS_OK</status>
<value><c8_array></c8_array></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.play.position</node>
<status>FS_OK</status>
<value><u32>0</u32></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.play.repeat</node>
<status>FS_OK</status>
<value><u8>0</u8></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.play.shuffle</node>
<status>FS_OK</status>
<value><u8>0</u8></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.play.signalStrength</node>
<status>FS_OK</status>
<value><u8>66</u8></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.sys.audio.mute</node>
<status>FS_OK</status>
<value><u8>0</u8></value>
</fsapiResponse>
</fsapiGetMultipleResponse>

2018.07.29 08:49:43 5: 2.Kueche.Radio: Multiple GET_MULTIPLE successful.
2018.07.29 08:49:44 5: 2.Kueche.Radio: URL http://192.168.1.102:80/fsapi/LIST_GET_NEXT/netRemote.nav.presets/-1?pin=1234&maxItems=20 returned:
<fsapiResponse>
<status>FS_OK</status>
<item key="0">
<field name="name"><c8_array>101.90MHz</c8_array></field>

</item>
<item key="1">
<field name="name"><c8_array>103.80MHz</c8_array></field>

</item>
<item key="2">
<field name="name"><c8_array> 96.20MHz</c8_array></field>

</item>
<item key="3">
<field name="name"><c8_array>103.50MHz</c8_array></field>

</item>
<item key="4">
<field name="name"><c8_array>104.90MHz</c8_array></field>

</item>
<item key="5">
<field name="name"><c8_array> 90.90MHz</c8_array></field>

</item>
<item key="6">
<field name="name"><c8_array> 92.60MHz</c8_array></field>

</item>
<item key="7">
<field name="name"><c8_array></c8_array></field>

</item>
<item key="8">
<field name="name"><c8_array></c8_array></field>

</item>
<item key="9">
<field name="name"><c8_array></c8_array></field>

</item>
<listend/>
</fsapiResponse>

2018.07.29 08:49:44 5: 2.Kueche.Radio: Presets LIST_GET_NEXT successful.
2018.07.29 08:49:44 5: 2.Kueche.Radio: URL http://192.168.1.102:80/fsapi/GET_MULTIPLE?pin=1234&node=netRemote.nav.state&node=netRemote.nav.status&node=netRemote.sys.caps.volumeSteps&node=netRemote.nav.numItems&node=netRemote.sys.mode&node=netRemote.sys.info.version&node=netRemote.sys.info.friendlyName&node=netRemote.sys.audio.volume&node=netRemote.sys.net.wlan.rssi& returned:
<fsapiGetMultipleResponse>
<fsapiResponse>
<node>netRemote.nav.state</node>
<status>FS_OK</status>
<value><u8>1</u8></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.nav.status</node>
<status>FS_OK</status>
<value><u8>3</u8></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.sys.caps.volumeSteps</node>
<status>FS_OK</status>
<value><u8>33</u8></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.nav.numItems</node>
<status>FS_OK</status>
<value><s32>0</s32></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.sys.mode</node>
<status>FS_OK</status>
<value><u32>5</u32></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.sys.info.version</node>
<status>FS_OK</status>
<value><c8_array>ir-mmi-FS2026-0500-0240_V2.11.12.EX65933-3RC1</c8_array></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.sys.info.friendlyName</node>
<status>FS_OK</status>
<value><c8_array>radio-kueche</c8_array></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.sys.audio.volume</node>
<status>FS_OK</status>
<value><u8>8</u8></value>
</fsapiResponse>
<fsapiResponse>
<node>netRemote.sys.net.wlan.rssi</node>
<status>FS_OK</status>
<value><u8>5</u8></value>
</fsapiResponse>
</fsapiGetMultipleResponse>


Ich hoffe, das ist der richtige Ausschnitt, sonst sag einfach Bescheid.
Gruß,

Stefan
(Raspi 3B - Stretch / HM-LGW / HomeMatic / MySensors)

mumpitzstuff

Das dürfte meines Erachtens egal sein. Die ersten beiden Fehler erscheinen bei dir, weil das Modul keine Beschreibung des Radios bei dir finden kann. Dann bleiben MODEL und UDN aber einfach leer, das ist nicht schlimm. Und der eine Timeout scheint auch nicht so schlimm zu sein, da danach die Kommunikation wieder funktioniert.
Ich muss allerdings das Loglevel der ersten beiden Fehler von 3 auf 5 setzen. Ich hatte beim Testen daran rumgespielt und wohl vergessen das zurück zu setzen. Danke für den Hinweis.

Ich checke die Version dann nachher mal ein und ihr könnt sie euch über das normale Update ziehen.

mumpitzstuff

Die Version liegt auf dem Server und kann über das normale Update bezogen werden.

@Lucky2k12: Im ersten Beitrag habe ich beschrieben, wie du eine Text Ausgabe von mehr als 200 Zeichen realisieren kannst. Bei mir hat es funktioniert.

alru

Moin,

die aktuelle Version hab ich jetzt installiert. Es kommen wieder erst die - offensichtlich unbedeutenden - Fehler, danach scheint alles OK zu sein. Ich hab allerdings nur einen Kurztest mit Basisfunktionen gemacht.
Den Speicher beobachte ich noch weiter, aber das ist ja schon vorher behoben.

Also von mir ein ganz klares Daumen hoch!
Gruß,

Stefan
(Raspi 3B - Stretch / HM-LGW / HomeMatic / MySensors)

mumpitzstuff

Du solltest unbedingt dein Verbose Level von 5 auf 3 setzen (Attribut im SIRD Device)! Das Modul schreibt dir sonst massenhaft Daten ins Logfile. Dann siehst die solche Dinge auch nicht mehr, da sie unwichtig sind. Wichtige Dinge kommen über Verbose Level 3 rein.

alru

Zitat von: mumpitzstuff am 29 Juli 2018, 14:33:48
Du solltest unbedingt dein Verbose Level von 5 auf 3 setzen (Attribut im SIRD Device)! Das Modul schreibt dir sonst massenhaft Daten ins Logfile. Dann siehst die solche Dinge auch nicht mehr, da sie unwichtig sind. Wichtige Dinge kommen über Verbose Level 3 rein.

Hab ich danach auch gleich wieder gemacht, das war nur für den restart auf 5 gesetzt. Trotzdem danke für den Hinweis.

Etwas anderes noch:
Ich habe gerade einmal die Streaming - Funktion getestet (lokale Datei abspielen). Da ich parallel auch noch den Speicher beobachte, ist mir dabei aufgefallen, dass bis zu vier fhem/perl Prozesse beim Streamen parallel laufen. Da werden dann 25% des Speichers belegt. An sich kein Problem, so lange ein Prozess nur wenige % CPU und Speicher benötigt. Ist das normal?
Gruß,

Stefan
(Raspi 3B - Stretch / HM-LGW / HomeMatic / MySensors)