RE: CS und Softwaresteuerung?

#51 von DiegoGarcia , 25.08.2007 16:16

Hallo Udo und die anderen CS-Protokoll-Interessenten,

also für MacOS-X ist die entsprechende SW online, allerdings noch ohne Manual, der Link steht ja im 1. Teil dieses Threads. Alle drei Möglichkeiten der Magnetartikelsteuerung sind implementiert (CS/ECoS-Zugriff auf die Addr.>=20000, MOT-Direkt, DCC-Direkt), wobei aber die CS natürlich mit dem DCC-Direkt-Befehlen nichts anfangen kann (liefert Fehlermeldung).

Überlege gerade, ob sowas nicht auch für Linux möglich ist.

Unterschiede im Befehlsumfang sind evtl. im Bereich der CV-Programmierung, bis dahin bin ich noch nicht vorgestoßen. Auch bin ich mir nicht sicher, ob alles, was ursprünglich schon für die erste Version vorgesehen war, auch wirklich implementiert wurde (Shutdown-Event z.B.).

Die bekannten Probleme mit dem Eventmanager bei der ECoS stehen im dortigen Supportforum versteckt. Meistens auf eine fehlerhafte Programmbeendigung beim Debugging der SW zurückzuführen. Sodass ich mit der Anmerkung "Fehler" etwas zurückhaltender geworden bin. Es gibt halt ein paar Ungereimtheiten, aber bevor ich keinen Feedback von anderen Programmbenutzern erhalte, die dies bestätigen, schreibe ich sowas nur in geschlossene Forenteile (Tagesthemen), damit eben nicht jede mitlesen kann.

Ferner gibt es bereits ein erstes ECoS-Update, dass auch den Protokollumfang leicht erweitert. Steht bei denen im DwnLd des ECoS-Support-Bereichs.

Ob und wann Mä was in dieser Richtung veröffentlicht, ist mir unbekannt und auch mittlerweile egal. Solange die nichts veröffentlichen, können wir hier ungehindert plaudern und kriegen den Maulkorb a la ESU-Lizenz erst später verpasst. Vielleicht wissen ja einige "renommierte" Hersteller schon was offizielles von Mä, und haben ein Schweigegelübte ablegen müssen wie seinerzeit schon bei E* ?

Bevor das kommt, mal schnell posten, was mir so alles in den letzten 2 Wochen aufgefallen ist:

Was nicht im Handbuch steht:
request(10, view) liefert bei Hinzufügen einer Lok zur Lokliste in der CS zu folgendem Event (CS v2.0.3):
>EVENT 10>
10 msg[LIST_CHANGED]
>END 0 (OK)>
Gilt sowohl für Lok- als auch Schaltartikelmanager (10, 11).

Der Befehl
create(10, append) liefert die id der eingefügten Lok zurück:
>REPLY create(10, append)>
10 id[1006]
>END 0 (OK)>
sodaß ein anschließender get(10, id) nicht nötig erscheint ???
Allerdings legt "create(10, append)" eine leere Lok an mit der addr=3, name="Neu >0003"

(editiert: da sollte eigentlich ein kleiner-Zeichen stehen hinter 0003, aber dann kommt der Text durcheinander)

und Symbol=BigBoy-Icon.
Es können bei dem create-Befehl auch die anderen 3 oben genannten Argumente mit angegeben werden oder nachträglich mit set(id, argument[value]) gesetzt werden. Dabei fiel auf, dass das Reply auf Create spät kommt. Man braucht also eine Warteschleife, bevor man mit Set weiter arbeiten kann.

Ein undokumentierter Lokevent:
>EVENT lok-id>
lok-id deleted
>END 0 OK>
wird beim löschen einer Lok in der CS geliefert anstelle einer msg[LIST_CHANGED]. Das Löschen hinterläßt Lücken (gaps) in der Fahrzeugliste. Ob und wann die ausgebügelt werden durch Umnummerierung ist weder dokumentiert noch bisher aus anderer Quelle berichtet worden: sie werden wieder befüllt, sobald ein neues Fahrzeug in der CS angelegt wird.

Schönes Wochenende
Euer Diego


talks are cheap, and they don't mean much .…


 
DiegoGarcia
Metropolitan (MET)
Beiträge: 2.797
Registriert am: 15.04.2007
Steuerung mfx


RE: CS und Softwaresteuerung?

#52 von DiegoGarcia , 25.08.2007 18:30

Hallo nochmals,

einen hab' ich noch (ganz frisch):

Wenn eine mfx-Lok zum ersten Mal zum Anmelden aufs Hauptgleis der CS gesetzt wird, läuft in der CS der MFX-Meldebutton oben in drei Schritten schwarz an. Bei jedem Schritt meldet die CS an die Software (wenn request(10, view) gesetzt ist):
>EVENT 1>
>END 0 OK>
leider ohne Meldungstext (es müßte "LIST_CHANGED" kommen). Schade, so kann die Software nicht bemerken, dass sich die Lokliste verändert hat. Es empfiehlt sich für SW-Programmierer, bei "leeren" Device-Events die Größe der Fahrzeugtabelle abzufragen. Wenn die sich geändert hat, dann war vielleicht eine neue MFX-Lok auf dem Gleis?

Wäre viellicht etwas für Murrrphy's offene Bug-Liste.

Ciao
Diego


talks are cheap, and they don't mean much .…


 
DiegoGarcia
Metropolitan (MET)
Beiträge: 2.797
Registriert am: 15.04.2007
Steuerung mfx


RE: CS und Softwaresteuerung?

#53 von Torsten , 26.08.2007 09:07

Hallo Udo,

warum willst Du denn zum ausprobieren ein Terminalprogramm schreiben? Sollte da nicht telnet genug sein?


Gruß

Torsten
_________________________________
Anlage: C-Gleis; Steuerungselektronik: Selbstbau MM, MM2, mfx & DCC; Steuerung: Handsteuerung (Eigenbau) und wireless Gamepad mittels PC über parallel/seriell Interface, selbstgeschriebenes Programm


Torsten  
Torsten
InterRegio (IR)
Beiträge: 177
Registriert am: 28.07.2006
Gleise C-Gleis
Spurweite H0e
Steuerung PC
Stromart DC


RE: CS und Softwaresteuerung?

#54 von Torsten , 26.08.2007 09:12

Hallo zusammen,

ich habe mal eine E-Mail (vor ca. einer Woche) an Märklin geschrieben, und darum gebeten, mir die Protokollspezifikation zu geben.

Es scheint so dass die mich nicht mögen. Ich habe von denen noch nie eine Antwort auf meine E-Mails bekommen. Wie dem auch sei, ohne Spezifikation werde ich mir die CS nicht zulegen. Obwohl, die Möglichkeiten gemäß der ESU Spezifikation ja schon beeindruckend sind, aber die kann ja leider kein mfx.


Gruß

Torsten
_________________________________
Anlage: C-Gleis; Steuerungselektronik: Selbstbau MM, MM2, mfx & DCC; Steuerung: Handsteuerung (Eigenbau) und wireless Gamepad mittels PC über parallel/seriell Interface, selbstgeschriebenes Programm


Torsten  
Torsten
InterRegio (IR)
Beiträge: 177
Registriert am: 28.07.2006
Gleise C-Gleis
Spurweite H0e
Steuerung PC
Stromart DC


RE: CS und Softwaresteuerung?

#55 von Murrrphy , 26.08.2007 10:21

Zitat von DiegoGarcia
Wäre viellicht etwas für Murrrphy's offene Bug-Liste.


Jein, da wir nicht wissen, was die Spezifikation ist. Wenn die Spezifikation sagt, daß ein LIST_CHANGED gesendet werden soll, dann ist es ein Bug, vielleicht ist es aber auch genauso spezifiziert. Solange wir das nicht wissen, sollten wir da auch keine Bugs aufmachen (die möglicherweise keine sind).


Viele Grüße
Achim



 
Murrrphy
Administrator
Beiträge: 8.865
Registriert am: 02.01.2006
Homepage: Link
Gleise C-Gleis
Spurweite H0
Steuerung CS 3 / MS 2
Stromart AC, DC, Digital


RE: CS und Softwaresteuerung?

#56 von DiegoGarcia , 26.08.2007 11:53

Hallo Achim,

na klar, deswegen hab' ich ja auch "vielleicht" notiert...


Bezgl. Torstens Anmerkung: nein, Telnet reicht ggf. nicht, weil Telnet nur für Port 23 spezifiziert ist. Wenn Du mit "Telnet" allerdings ein beliebiges Programm meinst, dass per TCP auf ALLE Ports zugreifen kann, dann ja. Ich denke Udo meint ein solches Terminalprogramm (wie "Kermit" auf dem C64 für seriellen DFÜ), das könnte dann auch über den Telnet-Port "ASCII-sprechen".

Spezifikation als Kaufentscheidung: dann hätte sich auch keiner die ECoS kaufen dürfen, denn die Spezifikation war damals auch noch nicht verfügbar. Und ohne Spezifikation bleibt es halt spannend. Für mich war's noch nie so spanned seit der Veröffentlichung des P50X-Protokolls...

Tschaui
Diego


talks are cheap, and they don't mean much .…


 
DiegoGarcia
Metropolitan (MET)
Beiträge: 2.797
Registriert am: 15.04.2007
Steuerung mfx


RE: CS und Softwaresteuerung?

#57 von Torsten , 27.08.2007 09:14

Hallo zusammen,

guter Punkt von Dir, Diego, man muss natürlich auch den richtigen Port in "telnet" setzen können. Hatte ich glatt übersehen. Gibt es denn da nichts off the shelve, das unter Windows läuft?

Bezüglich der Spezifikation, das mag ja alles sehr spanned sein, aber ich habe einige Jahre in die Entwicklung meiner eigenen Steuerungssoftware gesteckt - als ich anfing, gab es ja nichts am Markt - und deshalb ist es schon wichtig für mich, das der Hersteller wenigstens signalisiert, dass das Protokoll auch für Privatleute kostenlos offen gelegt wird. Wenn nicht, dann halt nicht, dann fahre ich halt weiter mit meiner eigenen SW und der selbstgebauten Elektronik, die ich habe.


Gruß

Torsten
_________________________________
Anlage: C-Gleis; Steuerungselektronik: Selbstbau MM, MM2, mfx & DCC; Steuerung: Handsteuerung (Eigenbau) und wireless Gamepad mittels PC über parallel/seriell Interface, selbstgeschriebenes Programm


Torsten  
Torsten
InterRegio (IR)
Beiträge: 177
Registriert am: 28.07.2006
Gleise C-Gleis
Spurweite H0e
Steuerung PC
Stromart DC


RE: CS und Softwaresteuerung?

#58 von blaum , 27.08.2007 10:51

Hallo Diego,

telnet kann mit jedem Port genutzt werden. Default ist 23. Wenn man aber den Port im Kommando angibt, so klappt es.

Beispiel: die CentralStation mit der IP 192.168.100.1 über den Port 15471 ansprechen

telnet 192.168.100.1 15471


Viele Grüße
Günter
____________________________________
CS2 60215 (HW:5.1 SW:4.3.0(5) GFP:3.85), CS1 60212 (HW:1.1 SW: 2.04) + 2 x MS1, 3 x MS2 (V3.148), MobaLedLib by Hardi


 
blaum
InterRegio (IR)
Beiträge: 217
Registriert am: 11.05.2005
Gleise C-Gleis
Spurweite H0, Z, 1, G
Steuerung CS2, CS1, MS1, MS2, Computer
Stromart AC, DC, Digital, Analog


RE: CS und Softwaresteuerung?

#59 von Udo Nitzsche , 27.08.2007 11:01

Zitat von blaum
Hallo Diego,

telnet kann mit jedem Port genutzt werden. Default ist 23. Wenn man aber den Port im Kommando angibt, so klappt es.

Beispiel: die CentralStation mit der IP 192.168.100.1 über den Port 15471 ansprechen

telnet 192.168.100.1 15471



Hallo Günter,

danke für den Hinweis, dann kann ich mir das eigene Prog erst einmal sparen. Wobei das an sich die "Keimzelle" für ein neues selbst geschriebenes Programm sein sollte.


Gruß aus Berlin
Udo

Märklin-Fahrer seit über 50 Jahren
8. Anlage im Bau; C-/K-Gl.; Ep. III; CS2 + Rocrail
Planungsstand für Anlage 8
Aufbau Anlage 8


 
Udo Nitzsche
Metropolitan (MET)
Beiträge: 3.363
Registriert am: 18.11.2006
Homepage: Link
Spurweite H0
Stromart Digital


RE: CS und Softwaresteuerung?

#60 von Murrrphy , 27.08.2007 11:01

Zitat von blaum
telnet kann mit jedem Port genutzt werden. Default ist 23. Wenn man aber den Port im Kommando angibt, so klappt es.


Bitte nicht das Programm telnet mit dem Protokoll telnet verwechseln...


Viele Grüße
Achim



 
Murrrphy
Administrator
Beiträge: 8.865
Registriert am: 02.01.2006
Homepage: Link
Gleise C-Gleis
Spurweite H0
Steuerung CS 3 / MS 2
Stromart AC, DC, Digital


RE: CS und Softwaresteuerung?

#61 von blaum , 27.08.2007 12:48

wer tut denn sowas?
Nundenn..
Telnet ist auch der Name eines Programms, welches Verbindungen zu einem entfernten Gastrechner ermöglicht. Das Telnetprogramm stellt dabei die benötigten Clientfunktionen des telnet-Protokolls zur Verfügung.


Viele Grüße
Günter
____________________________________
CS2 60215 (HW:5.1 SW:4.3.0(5) GFP:3.85), CS1 60212 (HW:1.1 SW: 2.04) + 2 x MS1, 3 x MS2 (V3.148), MobaLedLib by Hardi


 
blaum
InterRegio (IR)
Beiträge: 217
Registriert am: 11.05.2005
Gleise C-Gleis
Spurweite H0, Z, 1, G
Steuerung CS2, CS1, MS1, MS2, Computer
Stromart AC, DC, Digital, Analog


RE: CS und Softwaresteuerung?

#62 von Udo Nitzsche , 27.08.2007 17:36

Hallo alle zusammen,

Telnet und CS, das passt irgendwie nicht zusammen. Ich kann mich zwar mit der CS über:

open 192.168.0.101 15471

verbinden, aber danach führt jeder Tastendruck zu der Fehlermeldung

REPLY
END 10 (NERROR_UNKNOWNCOMMAND)

(Die spitzen Klammern habe ich weggelassen, da sie hier zu Problemen führen)

Dies bedeutet, dass schon das erste Zeichen verschickt wird, ich also gar keine komplette Befehlszeile eintippen kann.

Danach habe ich das gute alte HyperTerminal getestet, welches in der von mir im Internet gefundenen Version auch Textfiles versenden kann.
Auch hier führt nach dem Aufschalten auf die CS jeder Tastendruck zu der o. g. Fehlermeldung.

Testweise habe ich dann mal eine Befehlszeile in ein Textfile geschrieben und dieses der CS übermittelt. Das Ergebnis war die gleiche Fehlermeldung wie oben, aber zweimal hintereinander.

Mit Ethereal habe ich dann festgestellt, dass das erste Zeichen in einem separaten Paket gesendet wird, naturgemäß nicht interpretiert werden kann und der Rest natürlich auch kein gültiger Befehl mehr ist.

Danach habe ich im Textfile der Befehlszeile ein Leerzeichen vorangestellt. Dieses wird zwar noch immer als ungültiger Befehl bemängelt, aber der Rest wird korrekt interpretiert.

Meine Frage ist nun:
- Ist das eine Spezialität der Terminalprogramme oder der CS, dass das erste Zeichen separat interpretiert wird?
- Was muss man beachten, wenn man mit einem eigenen Programm Befehle senden will? Muss z. B. ein bestimmtes Zeichen vorausgeschickt werden?


Gruß aus Berlin
Udo

Märklin-Fahrer seit über 50 Jahren
8. Anlage im Bau; C-/K-Gl.; Ep. III; CS2 + Rocrail
Planungsstand für Anlage 8
Aufbau Anlage 8


 
Udo Nitzsche
Metropolitan (MET)
Beiträge: 3.363
Registriert am: 18.11.2006
Homepage: Link
Spurweite H0
Stromart Digital


RE: CS und Softwaresteuerung?

#63 von DiegoGarcia , 27.08.2007 19:35

Hi Udo,

Telnet und CS/ECoS paßt nur via Port 23 zusammen, und da klappt es auch. Du kriegts dann brav die "Login" Aufforderung.

Für den Port 15471 brauchst Du ein Programm, dass OHNE Protokoll mit der CS kommuniziert und jede Zeile mit LF beendet. Das von Dir beschriebene Phänomen hat bisher noch keiner ausprobiert, also hast Du was neues endeckt. Jetzt ist achim dran und berichtet mal kurz (wenn er Zeit hat), ob beim Telnet-Protokoll bestimmte Dinge zu beachten sind.

Ansonsten geht es via Port 15471 plain-ASCII in UTF-8. O-Ton: "Für die Kommunikation über das PC-Interface wird ein ASCII-Protokoll verwendet."

Am besten bastelts Du halt doch was eigenes. z.B. im Demo-Paket von RealBasic ist auch ein solches Programm im SourceCode dabei. Sollte sich dann auch an VisualBasic anpassen lassen. Und für Delphi guckst Du hier (googlen): http://www.hw-group.com/support/delphi_e...example_en.html

MfG
Diego


talks are cheap, and they don't mean much .…


 
DiegoGarcia
Metropolitan (MET)
Beiträge: 2.797
Registriert am: 15.04.2007
Steuerung mfx


RE: CS und Softwaresteuerung?

#64 von Udo Nitzsche , 28.08.2007 09:06

Zitat von DiegoGarcia
Hi Udo,
Telnet und CS/ECoS paßt nur via Port 23 zusammen, und da klappt es auch. Du kriegts dann brav die "Login" Aufforderung.



Hallo Diego,

das ist korrekt. Leider nützt das nix, da man weder Usernamen noch Passwort kennt. Dies ist für die Steuerung aber auch völlig unnötig.

Zitat von DiegoGarcia

Für den Port 15471 brauchst Du ein Programm, dass OHNE Protokoll mit der CS kommuniziert und jede Zeile mit LF beendet. Das von Dir beschriebene Phänomen hat bisher noch keiner ausprobiert, also hast Du was neues endeckt. Jetzt ist achim dran und berichtet mal kurz (wenn er Zeit hat), ob beim Telnet-Protokoll bestimmte Dinge zu beachten sind.



Das habe ich jetzt auch verstanden. Telnet (das Programm) scheint auch das gleichnamige Protokoll zu verwenden, daher geht es nicht.

Zitat von DiegoGarcia

Ansonsten geht es via Port 15471 plain-ASCII in UTF-8. O-Ton: "Für die Kommunikation über das PC-Interface wird ein ASCII-Protokoll verwendet."



Das habe ich auch gelesen. HyperTerminal (ist übrigens ein Programm, was seit Windows 95 / NT 4.0 zum Betriebssystem mitgeliefert wird) kann man auf ANSI umstellen, was bis auf die abweichende Sonderzeichendarstellung z. B. Umlaute ASCII entspricht. Daher funktioniert das Senden von Textdateien auch problemlos - bis auf das separate Senden des ersten Zeichens...

Zitat von DiegoGarcia

Am besten bastelts Du halt doch was eigenes. z.B. im Demo-Paket von RealBasic ist auch ein solches Programm im SourceCode dabei. Sollte sich dann auch an VisualBasic anpassen lassen. Und für Delphi guckst Du hier (googlen): http://www.hw-group.com/support/delphi_e...example_en.html



Da hast Du wohl recht, es wird mir wohl nichts anderes übrig bleiben. Danke für den Link!


Gruß aus Berlin
Udo

Märklin-Fahrer seit über 50 Jahren
8. Anlage im Bau; C-/K-Gl.; Ep. III; CS2 + Rocrail
Planungsstand für Anlage 8
Aufbau Anlage 8


 
Udo Nitzsche
Metropolitan (MET)
Beiträge: 3.363
Registriert am: 18.11.2006
Homepage: Link
Spurweite H0
Stromart Digital


RE: CS und Softwaresteuerung?

#65 von xanderb ( gelöscht ) , 29.08.2007 17:53

Diego,

Mit Mac OS-X kann man in Terminal: 'telnet ecos 15471' gebrauchen
(ecos ist die host name) und das funktioniert ohne login.
Auch die Events sind kein Problem nach ein request(nr, view).

Welches Program auf Mac OS X funktioniert mit ECoS und CS? Ich siehe nur SimpleDigitalLocomotive and keine Ankündigung für ECoS oder ist das dein Program?

Zum beispiel:

powermax:~ xander$ telnet ecos 15471
Trying 192.168.1.50...
Connected to ecos.
Escape character is '^]'.
queryObjects(10, name)
<REPLY>
1000 name["DB 003"]
1001 name["SBB Re4/4"]
1002 name["DB 101"]
<END>


xanderb

RE: CS und Softwaresteuerung?

#66 von DiegoGarcia , 29.08.2007 19:42

_________________


talks are cheap, and they don't mean much .…


 
DiegoGarcia
Metropolitan (MET)
Beiträge: 2.797
Registriert am: 15.04.2007
Steuerung mfx


RE: CS und Softwaresteuerung?

#67 von BR96 , 19.10.2007 14:37

Hallo an alle

Kann mir mal jemand den Link zur Ecos Doku sagen oder gleich die Doku senden.
Ich finde das auf der Seite nicht!

Gibt es da jetzt denn auch schon was zur CS?

Danke Thorsten


Gruß BR96 Thorsten


 
BR96
InterCity (IC)
Beiträge: 737
Registriert am: 02.03.2006
Homepage: Link


RE: CS und Softwaresteuerung?

#68 von wolfgang58 ( gelöscht ) , 19.10.2007 15:30

Zitat von BR96
Hallo an alle

Kann mir mal jemand den Link zur Ecos Doku sagen oder gleich die Doku senden.
Ich finde das auf der Seite nicht!

Gibt es da jetzt denn auch schon was zur CS?

Danke Thorsten



Hallo Thorsten,

ECOS

und

CS

Bedienungsanleitungen


wolfgang58

RE: CS und Softwaresteuerung?

#69 von BR96 , 19.10.2007 16:01

Erstmal Danke für die Links....

aber ich habe mich da etwas ehm falsch ausgedrückt.

Ich suche nee Doku zu den Befehlen wie ich eine ECOS oder CS über die Netzwerkschnitte ansprechen kann.
Ahnung habe ich davon noch keine aber mal so etwas mit spielen würde ich schon mal ganz gerne. Womit programmiere ich da???

Danke Gruß Thorsten


Gruß BR96 Thorsten


 
BR96
InterCity (IC)
Beiträge: 737
Registriert am: 02.03.2006
Homepage: Link


RE: CS und Softwaresteuerung?

#70 von Olli , 19.10.2007 16:07

Hallo Thorsten,

mal bei Deinen PN´s schauen!

Ciao Olli


Ciao Olli
Betriebsbahner
meine Homepage mit vielen Videos


 
Olli
CityNightLine (CNL)
Beiträge: 1.562
Registriert am: 29.12.2005
Homepage: Link
Ort: Hamburg
Gleise K und C
Spurweite H0, H0m, G
Steuerung ECoS2 4.2.12 + TC 10
Stromart AC, DC, Digital


RE: CS und Softwaresteuerung?

#71 von BR96 , 19.10.2007 17:41

Danke, hatte ich erst später gesehen

Gruß Thorsten


Gruß BR96 Thorsten


 
BR96
InterCity (IC)
Beiträge: 737
Registriert am: 02.03.2006
Homepage: Link


RE: CS und Softwaresteuerung?

#72 von Bibihest ( gelöscht ) , 25.07.2008 13:00

Hallo, ich bin dabei ein program für die Ecos zu machen, habe aber ein kleines problem.

Ich bekomme keine rückmeldung vom Ecos. Ich warte auf eine rückmeldung am port 15471 aber bekomme nichts zurück.

Benutzt die Ecos einen anderen port um zu antworten?


Bibihest

RE: CS und Softwaresteuerung?

#73 von fvri ( gelöscht ) , 30.07.2008 09:41

Hi,

This portnumber 15471 is the only one required for TCP/IP bi-directional communication between the computer and the digital system(CS or ECoS).

Did you try to connect with telnet or a tool like Putty?
Then you can send simple commands to the digital system and see what it replies.

Cheers,
Frank


fvri

   


  • Ähnliche Themen
    Antworten
    Zugriffe
    Letzter Beitrag
Xobor Einfach ein eigenes Forum erstellen
Datenschutz