Hohe CPU Last mit Device /dev/ttyUSB0@19200

Begonnen von JamesB, 16 November 2015, 19:46:19

Vorheriges Thema - Nächstes Thema

JamesB

Hallo,

ich versuche gerade das Auslesen einer Heizungsanlage weiter zu entwickeln. Dafür verwende ich das Modul DevIo auf einem Raspberry Pi mit USB RS485 Adapter. Das Prinzip klappt soweit bestens.

Hier mein Problem:

Es wird eine sehr hohe CPU Auslastung erzeugt (perl > 70%).
Zu Testzwecken habe ich alles abgeklemmt, das Last erzeugen könnte. Z.B. auch das Lesen der Daten mit DevIo_SimpleRead()
Hier der aktuelle Report von apptime:


                    name             function    max  count    total  average maxDly
                Heizung             KWB_Read    118     69     5433    78.74      0 HASH(Heizung)
FHEMWEB:10.0.0.12:60631              FW_Read      8      4       29     7.25      0 HASH(FHEMWEB:10.0.0.12:60631)
FHEMWEB:10.0.0.12:60633              FW_Read      8      2       16     8.00      0 HASH(FHEMWEB:10.0.0.12:60633)
FHEMWEB:10.0.0.12:60632              FW_Read      7      3       14     4.67      0 HASH(FHEMWEB:10.0.0.12:60632)
FHEMWEB:10.0.0.12:60634              FW_Read      7      1        7     7.00      0 HASH(FHEMWEB:10.0.0.12:60634)
FHEMWEB:10.0.0.12:60635              FW_Read      7      1        7     7.00      0 HASH(FHEMWEB:10.0.0.12:60635)
                                   WEB              FW_Read      3      5       11     2.20      0 HASH(WEB)


Im Log ist bei "attr global verbose 5" auch nichts zu finden. Das Modul DevIo.pm wird dabei offensichtlich nicht mehrfach aufgerufen. (Habe Logzeilen eingebaut.)

Kann es sein, dass das Serial USB Device von der FHEM Hauptschleife permanent abgefragt wird? Mir ist bekannt, dass an der Schnittstelle von der Heizung dauernd größere Datenmengen gesendet werden.

Gibt es eine Möglichkeit das zu beeinflussen?

Hat da jemand eine Idee?

JamesB
ESXi - Debian / 2 x Raspberry PI 3 / CUNX / KS 300 / HM