eDip für alle die sich darunter nicht vorstellen können.

Grillparty ist ausgefallen :mad:

Um Touchbefehle senden zu können, müssen diese definiert sein.

Intern, sowie Du es gemacht hast(aufruf über das Touchmenue), extern, z.B nach IPS über eigen definierte Codes.

Ich würde mir einen Plan machen, was ich alles mit Edip steuern will nach IPS. Möglich sind 256 Codes. Buchstaben usw. allgemeiner IBM Code.

Wo hinterlege ich dieses alles. Entweder im Edip selber oderaber in IPS, dann mit include.

Include wird aufjedenfall benötigt, wenn ich über IPS und Edip 2 gleisig fahre.

Andernfalls include nur Edip mit meinen Dateien(Bildern usw) oder Include von IPS mit meinen Bildern über IPS.

Deine Touchtasten(schalter) bieten dir die UP-DOWN Funktion an. Das sind die Codes, welche mit IPS vereint werden müssen.

Das ganze hab ich dir am Tele warscheinlich in 5 Minuten verständlich gemacht :slight_smile:

Sieh mal wie weit Du kommst.

Hallo,

so nachdem ich mich nur mehr an die Scripte von RWN gehalten habe, läuft das Display auch soweit. ZZ. bin ich dabei noch den Rest zu verstehen.
So schwer ist das alles gar nicht wenn man´s erstmal gefressen hat. :slight_smile:

Mir ist nicht verständlich wie man mit der Anleitung zum eDip solche Scripts erstellen kann.:confused:
Aber Dank eurer Hilfe wird mir das jetzt auch gelingen. :smiley:

Vielen Dank an alle die geholfen haben.

Hamerheat

Hier hast auch noch mal ein Touchfeld in einem Bildbereich, welches die wiederum ein anderes aufruft :slight_smile:

Zum probieren.

TouchMakro: TMRegenvortag


x1=0
y1=0
x2=240
y2=128

       #RL 1,66,94,94
       #ZF Geneva10
       #ZZ 1,1
       #AT 1,65,94,94,122,0
       #ZL 5,65,"Regen letzte 24h"
       #ZL 68,83,"mm"
       #ZZ 2,2
TouchMakro: TmWetter
	#MN MnClrReturn2HauptMenu

x1=0
y1=0
x2=240
y2=128

       
       #UI 0,0,bmpwetter
       #ZF Geneva10
       #ZZ 1,1
       #ZL 5,2,"Temperatur"
       #ZL 58,13,"°C"
       #ZL 90,2,"Feuchte"
       #ZL 115,20,"%"
       #ZL 170,2,"Wind"
       #ZL 210,20,"km/h"
       #AT 1,33,60,94,86,0
       #ZL 5,35,"Regen aktuell 24h"
       #ZL 68,53,"mm"
       #RL 1,66,94,94
       #ZL 5,65,"Regen aktuell 1h"
       #ZL 68,83,"mm"
       #ZL 100,35,"Sensor"
       #ZL 160,35,"Vorhersage"
       #ZL 5,100,"SA"
       #ZL 5,115,"SU"
       #ZL 72,100,"Datum"
       #ZL 118,100,"Zeit"
       #ZL 155,98,"Luftdruck"
       #ZL 203,117,"hPa"
       ;#UI 180,33,bmpregen
       ;#UI 130,33,bmpsonnig
       ;#UI 140,66,bmpwolkig
       #ZZ 2,2

in Verbindung mit dem Wettertouch

Und hier das IPS Script.

<?
/*
*******************************
 IP-SYMCON Event Scripting
*******************************
File     : Edip_Regenvortag.ips.php
Trigger  : 
Interval : 
*/


   $Regenvortag = GetValueFloat("Regen_Vortag");
   $Regenvortag = number_format($Regenvortag, 2, ".", ".");
   COMPort_SendText(26854, chr(27)."ZR".chr(65).chr(75)."$Regenvortag".chr(0));
?>

Schönes Spielzeugs :stuck_out_tongue:

Hallo,

ich kämpfe auch mit dem Datenaustausch edip -> IPS. Der Weg IPS -> edip funktioniert.
Ich habe eine COMPort Instanz angelegt und mit einer Instanz RegisterVariable verbunden (beide Richtungen).
Jetzt habe ich gedacht, dass der beim Touchmakro als down angegebene Code in die entprechende Stringvariable geschrieben wird, da kommt aber gar nichts.
Mit dem Befehl zum senden der Firmwareversion kommen Daten in die Variable, deshalb denke ich das im Prinzip die Verbindung in beide Richtungen funktioniert.

Vielleicht kann mir einer von euch noch den entscheidenden Hinweis geben wo es da noch hängt.

Gruss Jörg

Hallo Jörg

Gib bei den internen Touchmakros mit

#SB [ASCII]

doch einfach die gewünschte Information an IPS zurück, so hast sowohl eDIP-interne Touch-Verwaltung, als auch IPS-Verarbeitung.

Gruss, Andreas

Hallo Andreas,

ich wusste doch das ich da irgendwie auf dem Schlauch stehe.
Der Code beim Touchmakro wird also nur intern im edip ausgewerte.

Das mit dem Byte senden werde ich heute abend mal probieren.
Vielen Dank für den Tip.

Gruss Jörg

Hallo,

das mit dem #SB Befehl klappt.

Jetzt habe ich noch ein kleines Problem, das edip sitzt auf einem Entwicklungsboard mit USB Schnittstelle. Kann man das von IPS aus ansprechen?
Die COMPort Instanz ist doch nur für die serielle Schnittstelle, oder?
Momentan habe ich das edip auf eine Lochrasterplatte mit MAX232 und SUB-D Buchse an der seriellen Schnittstelle.
Wenn ich jetzt was programmieren will bekomme ich die Meldung das der COM Port schon belegt ist (Logisch, hängt ja IPS dran).
Also stecke ich das edip auf die Platine mit USB Schnittstelle zum Programmieren, danach wieder zurück um mit IPS zu testen.

Das geht doch bestimmt komfortabler, ausserdem habe ich beim dauernden Umstecken Angst um die dünnen Pins vom edip.

Gruss Jörg

Wie wärs mit COM2 oder ner Schnittstellenkarte?

Das Problem beim USB-Anschluss ist, dass der sich völlig anders verhält als ein serieller Anschluss. Während man beim COM-Port einfach mal lauschen kann was da kommt um dann darauf zu reagieren, verhält sich USB eher wie das LAN. Das liegt daran, dass der Comport selbst eine windows bekanntes Device ist.

Der USB-Port stellt in diesem Vergleich die RJ45 Buchse (nur die Buchse, nicht etwa die Netzwerkkarte) dar. Du kannst sie nicht ansprechen und „programmieren“. Nicht mal die Netzwerk-Karte, oder in diesem Vergleich der USB-Host-Adapter, gibt sinnvolle Informationen raus. Erst wenn du die IP-Adresse deines Gegenübers kennst, dort ein Programm läuft, dass sich angesprochen fühlt und das Protokoll bekannt ist, kann man den Versuch starteten mit dem anderen PC, oder in unserem fall das USB-Device, zu kommunizieren.

Wie du siehst, alles nicht so einfach… Das ist auch der Grund warum diese Seriell<->USB-Adapter oft nicht funktionieren. Das kleine 20 Euro Teil kann eben nicht die logik aller USB-Devices vorherahnen und eingebaut haben. Nur die grundlegenden USB-Funktionen werden abgedeckt. Jedesmal wenn ein USB-Gerät aber mehr als nur das „USB 1x1“ braucht steht man mit diesen Adaptern auf dem Schlauch.

Gruß,

Toni

Hallo Jörg,

Das geht doch bestimmt komfortabler, ausserdem habe ich beim dauernden Umstecken Angst um die dünnen Pins vom edip.

Ja, sicher. Ändere im EA Kit Editor USB auf COMPORT um und gut ist. Das Display bleibt auf deiner Lochrasterplatine.

Beim programmieren deaktivierst Du in IPS einfach kurz das Device.

Das war´s.

Hallo Toni,

na wenns mit USB nicht geht werde ich mal den Einbau einer zusätzlichen Schnittstelle ins Auge fassen.
Ich dachte ich hätte da irgendwas übersehen oder stelle mich zu blöd an, weil auf den edip Fotos die im Forum kursieren immer die Platinen mit USB Anschluss zu sehen sind.

Gruss Jörg

Ups das hat sich jetzt überschnitten.

Kannst Du mir noch sagen wie man das Device deaktiviert, dann probiere ich das mal.

Gruss Jörg

Du klickst in IPS deinen angelegten Comport für das Edip an und deaktivierst es. Wenn Du fertig bist mit programmieren, einfach wieder aktivieren. :slight_smile:

Hallo Rainer,

ich steh auf dem Schlauch. In welchem Programmteil von IPS kann ich das deaktivieren?
Bei den Instanzen gibts doch nur disconnect oder delete.

Gruss Jörg

Im Comport Modul ist unten ein Button. Der steht auf Open oder Closed. Durch klicken ändert sich der Zustand.

Zum USB: Man kann durchaus eine Software für USB-Devices schreiben. Jedoch verlangt das, dass die oben genannten bedingungen erfüllt sind. Hersteller, die es einem erleichtern wollen, geben zu diesem Zweck oft eine eigene Software zum entwickeln dabei in der das komplette Protokoll und die Stacks steckt. Das ist dann in der Regel eine DLL, die mit ziemlich allen gängigen programmiersprachen benutzt werden kann. Allein und ohne Hilfestellung des Herstellers hat man es allerdings oft sehr schwer.

Toni

ja sorry, open oder closed, bewirkt das selbe. :smiley:

Ah jetzt ja,

ich danke Euch.

Gruss Jörg

Mal wieder was zur Abwechslung.

Für alle die eventuell mal Bilder direkt nach Edip laden wollen, weil vielleicht der interne Speicher zuklein wird, hier mal ein Scriptausschnitt.

Man beachte hierbei die Dateiendung des Bildes >blh<. Normale Bmp Dateien auf das Edip laden geht nicht, weil Steuerzeichen mit übertragen werden und diese nicht konvertiert werden.

Das Ediptestprogramm kann sich jeder auf der Seite von EA kostenlos downloaden. Darin ist auch ein Bildbearbeitungsprogramm enthalten, welches die Daten für einige Dip´s vorhält und diese bei entsprechender Auswahl umsetzt.

Der Sleep Befehl ist nicht zwingend aber es ist von Vorteil diesen einzusetzten bei grösserer Datenübertragung.

Ich hoffe es hilft dem ein oder anderen. :slight_smile:

 //Bild nach Edip laden
   IPS_Sleep(500);
   $Bild = "F:\\IPS_Test\\IPSkomplett\\scripts\\Bilder_Edip\\Images\\Wetter.blh";
   $inhalt = file_get_contents($Bild);
   COMPort_SendText(26854, chr(27)."UL".chr(0).chr(0).$inhalt);

ist noch nicht so das gelbe vom Ei, wird aber noch :smiley:

ein weiteres Pixelbild.

Erweiterung Wetteranzeige.