Probleme mit I/O Instanzen

Vielen Dank für die schnelle Antwort.
Lizenz wird jetzt erkannt, ich hatte versucht sie über die Terminalkonsole vom Raspberry einzugeben und dort wahrscheinlich einen Fehler bei der Umrechnung gemacht.
Leider funktionieren die Ein- und Ausgabegeräte immer noch nicht.
Ich betreibe einen USB Sender für das FS20 System, weiterhin einen OneWire USB Koppler für die Hutschiene von E-Service, sowie einen Prolific USB to Seriell Adapter mit dem ich meinen elektronischen Haushaltszähler auslese.

Leider funktionieren die Ein- und Ausgabegeräte immer noch nicht.

Magst du mir da mehr Infos geben? Findest du die Geräte…? Wie steuerst du sie an…? Kommen Fehlermeldungen ins Log?

paresy

Leider bin ich Heute und Morgen auf einer Dienstreise und kann mich erst Morgen Abend wieder melden. Dann werde ich den entsprechenden Log und die Bildschirmfotos anhängen. Der Befehl „lsusb“ im der Terminalkonsole auf dem Raspberry listet mehrere Geräte auf. Bei einem handelt es sich aus meiner Sicht um den USB to Seriell Adapter, den FS20 und den One Wire Adapter kann ich leider nicht identifizieren.

Axel

Gesendet von iPhone mit Tapatalk

Die Dienstreise habe ich hinter mich gebracht.
Meine IPS Konsole sieht folgendermaßen aus:


Der Befehl lsusb auf der Raspberry Konsole bringt folgendes Ergebnis:
IPS2.JPG
Das Anklicken einer One Wire Instanz bringt folgende Meldung:
IPS3.JPG

Axel

Der Befehl „dmesg | grep usb“ bringt folgendes Ergebnis:

Axel

Im Anhang habe ich mal das Log File gepoostet.

Axel

logfile1402597707.txt (98.8 KB)

Lies dir bitte noch einmal die Themen hier im Forum durch, die erklären was geht und was nicht.

  • OneWire gibt es zwar, aber es nicht zur 3.1 kompatibel. Musst du ggf. neu anlegen. Und wir supporten z.Z. nur die LINK45 Geräte und nicht alle OW Bausteine.
  • Alle USB-Geräte werden durch den SerialPort abgedeckt. Die alten FTDI ect. Instanzen können dann weg.

Die roten Instanzen geben dir den Hinweis, dass die Module unter Linux einfach noch nicht vorhanden sind :smiley:

paresy

Vielen Dank für die Antwort.

Ich habe jetzt nur mal den USB to seriell Wandler für die Auslesung meines Zählers rangehängt.
IPS5.JPG
Beim Öffnen der Schnittstelle erhalte ich folgende Fehlermeldung


Die Datei autoinclude sieht folgendermasen aus:


<?

if(file_exists(IPS_GetKernelDir()."\\scripts\\__compatibility.inc.php")) 
    require_once(IPS_GetKernelDir()."\\scripts\\__compatibility.inc.php"); 

if(file_exists(IPS_GetKernelDir()."\\scripts\\__jsonrpc.inc.php")) 
    require_once(IPS_GetKernelDir()."\\scripts\\__jsonrpc.inc.php"); 
	
if(file_exists(IPS_GetKernelDir()."\\scripts\\__autoload.php")) 
    require_once(IPS_GetKernelDir()."\\scripts\\__autoload.php"); 
	
if(file_exists(IPS_GetKernelDir()."\\scripts\\__ipsmodule.inc.php")) 
	require_once(IPS_GetKernelDir()."\\scripts\\__ipsmodule.inc.php");

if(file_exists(IPS_GetKernelDir()."\\scripts\\__genmodule.inc.php")) 
	require_once(IPS_GetKernelDir()."\\scripts\\__genmodule.inc.php");	
	
?>

Axel

Bei der Ausführung folgendes Skriptes


 <?
$eHZdata = array("1-0:1.8.0*255"    => 44973, //Bezugszähler
                 "1-0:1.7.0*255"     => 27434, // Gesamtleistung
                 "1-0:21.7.0*255" => 24935, // Wirkleistung L1
                 "1-0:41.7.0*255" => 13573, // Wirkleistung L2
                 "1-0:61.7.0*255" => 12250  // Wirkleistung L3
                 );
print_r ($eHZdata);
$Netzperiodendauer = 39833 /*[Objekt #39833 existiert nicht]*/; // VariablenID der Obis Kennzahl der Netzperiodendauer
$var1 = 16819 /*[Objekt #16819 existiert nicht]*/; // VariablenID der Obis Kennzahl der Daten welche nicht umgerechnet werden
$var2 = 25862 /*[Objekt #25862 existiert nicht]*/; // VariablenID der Obis Kennzahl der Daten welche nicht umgerechnet werden
$var3 = 22777 /*[Objekt #22777 existiert nicht]*/; // VariablenID der Obis Kennzahl der Daten welche nicht umgerechnet werden

//Dateneingang von Registervariable
$string = explode("
", trim($IPS_VALUE));
for($i = 0; $i < count($string); $i++)
{
    $id = strstr($string[$i], "(", true); // split nach Obis Kennzahl
    $value = strstr($string[$i], "("); // split nach Daten
    $check = strpos($value, "*"); // suche nach Daten mit Angaben V-A-W
    
        $data = substr(trim($value), 1, -1);
        if(strlen($data) <= 4) // Daten mit bis zu 2 Byte
        {
           if($eHZdata[$id] == $Netzperiodendauer)
            {
               $data = hexdec($data)/100; // Daten umrechnen 1/100 in ms
            }
            elseif(($eHZdata[$id] == $var1) || ($eHZdata[$id] == $var2) || ($eHZdata[$id] == $var3))
            {
               $data = $data; // Daten ohne Umrechnung
            }
            else
            {
               $data = hexdec($data); // Daten von Hex nach Dec umrechnen
            }
        }
 //       SetValue($eHZdata[$id], (float)$data);
    }

?>

bekomme ich folgende Meldung

„Connection Closed Gracefully“

Die Daten einer Registervariablen sollen hierbei in einzelne Variablen geschrieben werden.

Kann mir jemand sagen, was diese Fehlermeldung bedeuten könnte?

Axel

Habe gerade auf dem Raspberriy ein Update für IP Symcon gemacht.
Seit dem kommt beim Öffnen der seriellen Schnittstelle folgende Meldung:

Axel

Hallo!

Bei mir kommt seit dem Update auch die gleiche Fehlermeldung…

lg Christian

Ist auf jeden Fall ein Bug. Ich hoffe, dass es Morgen wieder ein „besseres“ Update gibt :slight_smile:

paresy

Hi paresy,

symcon_0.1-63_armhf.deb ist bei mir die letzte lauffähige Version.(Stand jetzt)

Danke, dass ich mitmachen darf, ist auch die erste Version von IPS, die bei mir @home getestet wird.
Rückmeldungen kommen bestimmt, da UweR das eingestielt hat!

Mit der Version „symcon_0.1-63_armhf.deb“ habe ich noch ein Problem, die VAR’s vom LCN vor 17er Modulen gehen nicht, da bin aber noch zu frisch, um zu erkennen.
An 17er+ am LCN geht es gut, wie auch mit „IX“ Werten (das sagt dir nichts, ist ein Eigenbau am I-Port der Messwerte in Segmente „sendet“, du könnest das vor Jahren mal in PB gesehen haben.)
Über die Kenne, kann ich auch per IPS LCN Module per PCHK X2,x3 und x4 (neue Doku) proggen!

lg Thomas - LinHk, DOMIQ BASE und PCHK am LCN…

ps. Reset eines LCN-Moduls aus IPS:

<?
// Modulreset an Modul 8 mit
// Seriennummer = 17BA104577 (Dez : 023186016069119)
$TX_BUF= ‚>M000008.X3120023186016069119001‘.chr(10); //P-Mode setzen
CSCK_SendText(46332 /[Client Socket]/ ,$TX_BUF);//id-anpassen

$TX_BUF= ‚>M000008.X2121170085‘.chr(10); // Reset Modul
CSCK_SendText(46332 /[Client Socket]/ ,$TX_BUF);//id-anpassen
?>

Vielen Dank für das letzte Update.
Die USB to Seriell Schnittstelle scheint jetzt zu funktionieren.
Mein elektronischer Zähler übermittelt jetzt Daten.
Nachdem die Daten durch den Cutter gelaufen sind erscheinen immer noch Zeichen die in der Windows Version so nicht vorhanden waren. Aus dem übermittelten Array lese ich die entsprechende Informationen für meine bestehenden Variablen aus.


Kann dieses Problem eventuell etwas damit zu tun haben, das auf der IP Symcon Konsole keine Umlaute dargestellt werden können?

Axel

Magst du mir mal deine Cutter Konfiguration zeigen? Normalerweise sollte es da keine Probleme geben.

paresy

Hier ist meine Cutter Konfiguration

Axel