Nieuws:

Bekijk onze nieuwe Stichting 3rail kleding lijn! Mooi voor evenementen, stamafels en meet&greets op beurzen : Stichting 3rail Webshop

Ecos - - PC protocol

Gestart door dani maandag 04 maart 2013, 10:27:17

0 leden en 1 gast bekijken dit board.
Ecos - - PC protocol
Dag lezertjes en techneutjes,  hier is Plopje weer :-)

Na een weekendje stoeien met de Ecos-2 zit ik dan alweer met mijn volgende vraag tussen de belletjes van mijn muts.

Dylan (minitreintje) alludeerde er in een ander topic al naar, dat de communicatieprotocollen tussen PC en Ecos ergens zouden zijn gepubliceerd, maar ik kan die met de beste wil van de wereld niet vinden.  Toch moet het bestaan, want Koploper en andere s/w kunnen met de Ecos babbelen, dus dan moet mijn eigen software dat ook leren !!

Tot  nu toe werkte die gewoon met een SRCP protocol, die via 127.0.0.0  naar  DDW op dezelfde PC werd gestuurd en deze DDW software zette die dan om naar MM procotol data en gooide die via de seriële interface (COM 1) op de ingang van een  Delta Box.  Deze versterkte het signaal en werkte als booster om zo de baan aan te sturen (met een aantal bijkomende identieke boostertjes).

Nu ik de Ecos in huis heb wil ik graag vanuit mijn software naar d Ecos communiceren  (via 192.168.0.100 waar de ecos op is ingesteld) maar ik vermoed dat SRCP niet het geschikte protocol hiervoor is.
Een alternatief zou zijn dat ik de informatie van de COM1 rechtstreeks of via 1 Delta kastje naar de  "EcoSniffer" ingang ga leiden, maar dat is een omweg die ik wil vermijden.  Het laat ook geen 2-weg communicatie toe met bvb MFX loks en S88 units en dan is het nut van zo een dure centrale eigenlijk NUL komma NIKS...


Heef iemand toevallig een linkje naar de documentatie van dat protocol, of connecties met ontwikkelaars van bvb Koploper of zo waar ik de details kan "lenen" ?

Groot is mijn dank....  :-) :-)
Re: Ecos - - PC protocol
Lid sinds: 2006

offline
Re: Ecos - - PC protocol
Dani,

vanacht aan het klooien geweest om mijn Ecos2 te laten communiceren met m'n PC, heeft even geduurd :D

Rechtstreeks op PC kreeg ik niet voor elkaar, gedoe met IP nummers :?, Je Ecos moet een IP nr. hebben wat +1 hoger is als je PC IP nr.
En de cross-over kable gebruiken !.

Enfin, mij lukte het niet, toen topic van Kappa (Ad) gelezen, en Ecos2 met gewone data kabel aan Router gehangen, dan geeft de router je Ecos een IP nummer, tik dit nummer in je adresbalk en voilla ! Ecosscherm op je PC, update reover heen en klaar ben je !.

Straks zelfde geintje met Ecos2 uithalen, de CS1R is al aan de beurt geweest :D

Mvg Gert
Re: Ecos - - PC protocol
Lid sinds: 2011

offline
Re: Ecos - - PC protocol
Je moet ook zorgen dat het subnetmasker dat je ingeeft aan beide kanten gelijk is bv.

PC:

Ip adres: 192.168.1.1
subnetmasker: 255.255.255.0

Ecos:

Ip adres: 192.168.1.2
subnetmasker: 255.255.255.0

Het communicatieprotocol wat gebruikt wordt tussen pc en ecos is TCP/IP.

Groeten, Bas
Re: Ecos - - PC protocol
Lid sinds: 2006

offline
Re: Ecos - - PC protocol
@Bas

klopt als een bus wat je zegt :thumbup:, ik vind de methode rechtstreeks op je router toch wel makkelijker en sneller gaan.

Mvg Gert
Re: Ecos - - PC protocol
ok, dit was een  goed begin, maar ik heb het in dit geval over de IP-pakketten die over de verbinding gaan om de treinen effectief aan te sturen.   Dus zoals SRCP tussen koploper en  DDW, maar dan naar Ecos.    Het woord   "protocol" heeft duidelijk meer dan één betekenis, en dan praten we over verschillende dingen.    Maar toch is deze discussie ook interessant.
Het IP adres , subnet mask en router gedeelte dat was in 1 minuutje gefikst, daar heb ik voldoende ervaring mee.
Wat niet wegneemt dat ik jullie wil bedanken voor de reakties !   
@Gert : je kan je Ecos ook een VAST ip adres, subnet en router adres geven.  Dan moet je niet elke keer gaan zoeken en dit in je pc intikken, want als je router  dan ineens beslist om een andere adres met DHCP mee te geven bij de "request" van de ecos, dan werkt het niet meer.

Ik heb de mijne als volgt ingesteld :
* IP adres =  192.168.0.100
* Router IP = 192.168.0.1
* Subnet = 255.255.255.0

En de DHCP pool van mijn router is van 192.168.0.5  tot 192.168.0.99  ingesteld, zodat PCs of andere apparaten (bvb  iPod, android smartphone, laptop, tablet,...)  allemaal binnen ketzelfde subnet vallen en de Ecos kunnen zien.    Met een cross cable kan je enkel je PC en Ecos linken, geen andere bijkomstige apparaten.



*** EDIT :  Ik heb net op het ESU forum gezien dat de bron protocollen en code beschikbaar zijn voor gratis download, maar je moet hiervoor eerst registreren om in die sectie van het forum te geraken.  En dat registreren kan enkel met het serienummer van je Ecos bij de hand, dus dat zal voor vanavond zijn...  En dan update ik dit topic weer.

Dani
Re: Ecos - - PC protocol
Lid sinds: 2006

offline
Re: Ecos - - PC protocol
@Dani

mooi verhaal :D, mij te ingewikkeld met I-pods/pads :D, ik heb zelfs nog een mobiele telefoon waar je alleen mee kan bellen 8o, geeneens mobiel internet, begin er niet aan ook ;)

Updaten doe ik hooguit 1 x per jaar, dan vergeet ik weer hoe het moest tegen de tijd dat de volgende update er is :D

De support van de fabrikant is hetgene wat mij het meest stoort !.

Mvg Gert
Re: Ecos - - PC protocol
@Gert :  een iPod / iPhone gebruiken bij een Ecos is echt kinderspel, hoor .   
Maar i heb begrip voor 't feit dat niet iedereen met die laatste snufjes aan de slag wil.  Het gaat jou voornamelijk om het plezier van het rijden, en dat is (zoals ik in je draadje tikte) het belangrijkste .   De rest is   "nice to have".
Re: Ecos - - PC protocol
Lid sinds: 2006

Forum member sinds 2006

offline
Re: Ecos - - PC protocol
Wat ik weet Dani is dat de ECOS luistert op TCP port 15471 en ik denk dus dat hij TCP-IP kent.
Maar Peter(Freak) kan je daar ongetwijfeld meer over vertellen.

grt Piet.
Re: Ecos - - PC protocol
klopt als een bus, Piet.   Het poortnummer  is 15471, en het Ip adres is in te stellen of via DHCP te bekomen van de router.
En zoals ik al zei, het "protocol", dat heb je ook correct  TCP-IP  dus het "gewone" internet protocol.   Maar over dat protocol  (dat is in feite niks meer dan een  vervoermiddel om data over te brengen in een bepaald formaat)  moet je ook de gegevens sturen in een zeker volgorde en volgens  erkende afspraken (spelregels), en dat wordt ook wel eens een "protocol" genoemd.  SRCP is er zo eentje,  NMRA ook, MM,  DCC, .... en noem maar op.   Die zorgen er voor dat de zender en ontvanger elkaar begrijpen.  Dus een beetje de eigenlijke "taal"  zoals bvb Nederlands, Engels, Frans...  die allemaal door onze zelfde mond kunnen worden uitgesproken.    (oei, dit lijkt op  "protocol in jip en janneke taal")

Vanavond graaf ik verder eens ik geregistreerd heb, want het is niet simpel, maar eens je er door bent is 't vlot te programmeren...


Een voorbeeld :

Op mijn huidige PC staat mijn eigen software , die praat via TCP-IP protocol met de  DDW server software die ook op dezelfde pc draait.   De "taal" is SRCP en die wordt door mijn programma doord e IP-pijp gestuurd op het adres en poort nummer van  DDW, die op zijn beurt de "woorden"   (keywords ) en variabelen van SRCP vertaalt naar echt digital commando's in het Märklin Motorola protocol en deze via de seriële poort (en de centrale/booster) naar de sporen stuurt.
Re: Ecos - - PC protocol
Lid sinds: 2006

Forum member sinds 2006

offline
Re: Ecos - - PC protocol
Ok Dani, jij hebt het over het applicatielaag protocol.
Is dat niet Railcomm, wat de Ecos moet hebben?

grt Piet.
Re: Ecos - - PC protocol
dat zou best kunnen, Piet, hoewel ik vermoed dat die stap pas 1 laag verder is, tussen Ecos en decoders.   Ik ga verder graven en dan post ik het resultaat, voor het nageslacht :-) :-)
Re: Ecos - - PC protocol
Lid sinds: 2006

Forum member sinds 2006

offline
Re: Ecos - - PC protocol
Ik ga het met belangstelling volgen.
Succes er mee.

grt Piet.
Re: Ecos - - PC protocol
Hallo Dani,

Citaat van: dani op maandag 04 maart 2013, 13:18:31
ok, dit was een  goed begin, maar ik heb het in dit geval over de IP-pakketten die over de verbinding gaan om de treinen effectief aan te sturen.
Er zijn inmiddels al 3 uitgaves. De laatste is versie 0.2 Juni 2011

CiteerNetzwerkspezifikation für das PC-Interface
Für Protokoll-Version 0.2
Dritte Auflage, Juni 2011

Protokoll-Version 0.2


Mvg,
Peter
Re: Ecos - - PC protocol
Peter to the rescue !   Een hele dikke Vlaamse  "MERCI !!"  is hier op zijn plaats.

Dat is waar ik het over had, inderdaad.   ESU noemt het dus een  "interface" ipv protocol.

Hartelijk dank, Peter.  Ik ga eerstdaags hiermee aan de slag en volgens wat ik nu kan zien, denk ik dat de aanpassingen in mijn software minimaal zullen moeten zijn, en is dit zelfs nog éénvoudiger dan SRCP.    (ik kan me natuurlijk vergissen en er grijs haar van krijgen, maar ik zie het momenteel nog helemaal zitten !)
Re: Ecos - - PC protocol
Ik had de link toch gepost in het topic?
Of blijkbaar is daar iets mis gelopen :S


groeten Dylan

Edit Edwin: quote verwijderd. was volledige vorige bericht
Re: Ecos - - PC protocol
ik denk dat er wat fout is gegaan bij je link, Dylan....  Maar geen nood.. we zijn hier op de goeie weg !  En sowieso toch bedankt
Re: Ecos - - PC protocol
Ah oké maar het is niet altijd simpel soms om een link te maken met sommige websites omdat deze URL nog wel eens verschilt van persoon tot persoon (aangemeld, ...)



groeten Dylan
Re: Ecos - - PC protocol
En dan plots... na een klein half uurtje  copy-paste werk uit mijn vorig werk, heb ik het volgende :

- simpele  VB .Net code met 2 buttons en tekst velden

* Button 1 die connectie maakt va netwerk met de ECOS  op   192.168.0.100 en poort 15471  en het resultaat laat zien in het groene balkje
* button 2 die via die net gemaakte verbinding van de Ecos een lijst vraagt van de huidige aanwezige loks met hun naam en digitaal adres (oranje vak)

Zo éénvoudig kan het dus zijn, als je de juiste informatie hebt.  Nu zijn we vertrokken.  Dank Peter en allen die hebben mee gewerkt.

Ik ga dit topic even open houden en de verdere vorderingen posten, maar dit eerste stukje wou ik al delen.
Re: Ecos - - PC protocol
Zou het zo niet mogelijk zijn om de Arduino ermee te laten communiceren om hun geheugen te synchroniseren? Dus als de Arduino een wissel verzet weet de Ecos dat ook en omgekeerd.
Het voordeel is dan dat als je het seintableau op je Ecos gebruikt ook overeenkomt met de echte wisselstanden en seinen.

Je zou in principe complexe rangeerbewegingen (laden van wagons automatisch , ...) waarbij de Arduino een kraan of bunker aanstuurt en de Ecos regelt dan in opdracht van de Arduino telkens dat de trein een stukje rijdt zodat er de volgende wagon voor het laadperron komt.


groeten Dylan
Re: Ecos - - PC protocol
En nog eens 10 minuutjes later  is een lokje voor het eerst op wandel geweest met de eco vanaf de PC.

Button 3  start de lok op speedstep 12
Button 4 stop de lok...

Zo simpel.

Straks eens op de laptop installeren zodat ik kan filmen...

HAPPY HAPPY JOY JOY !
Re: Ecos - - PC protocol
Citaat van: minitreintje op maandag 04 maart 2013, 18:52:49
Zou het zo niet mogelijk zijn om de Arduino ermee te laten communiceren om hun geheugen te synchroniseren? Dus als de Arduino een wissel verzet weet de Ecos dat ook en omgekeerd.
Het voordeel is dan dat als je het seintableau op je Ecos gebruikt ook overeenkomt met de echte wisselstanden en seinen.
Je zou in principe complexe rangeerbewegingen (laden van wagons automatisch , ...) waarbij de Arduino een kraan of bunker aanstuurt en de Ecos regelt dan in opdracht van de Arduino telkens dat de trein een stukje rijdt zodat er de volgende wagon voor het laadperron komt.
groeten Dylan

Principieel zou dat volgens mij wel mogelijk zijn, Dylan.  Maar er zal heel wat werke n code bij te pas komen.

Dus ik ga nu eerst even kruipen, dan leren stappen en misschien volgende week een stukje lopen  :-) :-) :-)
Re: Ecos - - PC protocol
Goed idee! Als ik een erthenet shield eens koop ga ik ermee aan de slag :) maar eerst de ModuleDecoder in werking krijgen :)
De DCC library doet nogal serieus moeilijk :S


groeten Dylan

Edit Edwin: quote verwijderd. was volledige vorige bericht
Re: Ecos - - PC protocol
het filmpje./...

Je ziet het volgende :

1. de Ecos
2. De PC
3 het "starten" van de communicatie
4 het opvragen van de loklijst
5 lok starten met druk op de knop
6 de lok die rijdt
7 de lok stoppen....

Het is nog heel primitief en allemaal nog "hard-coded" maar laat zien dat het kan en zelfs simpel is.  Makkelijker dan met SRCP  (tot nu toe)



(als het filmpje nog niet meteen verschijnt, even geduld , upload is ok maar de processing bij JoepTjoep is blijkbaar niet zo snel vandaag)
Re: Ecos - - PC protocol
Is het je trouwens al opgevallen dat de motorgestuurde snelheidsregelaars meedraaien zodra de loc versnelt of vertraagt? ;)
Re: Ecos - - PC protocol
nee, nog niet op gelet....    (eigenlijk wel, hoor).  Maar dat is enkel als die lok toevallig geselecteerd is op zowel de ecos als de pc.
Re: Ecos - - PC protocol
Zo, na een avondje programmeren zijn we er uit, en heb ik de belangrijkste dingen onder de knie, eijn de basis subroutines geprogrammeerd voor het rijden, stoppen, richting wisselene, functies aan en uit zetten, en gegevens in real time opvragen van de ecos (bvb de snelheid, naam, adres, richting en functie statussen van elke loko).

Nu de vraag hoe andere software hier mee om gaat.

Tot nu toe gebruikte ik een "veilige" routine die bij elke ingreep op een lokomotief  (lees: bij elk bevel)  het commando over die loko overneemt, dan de bewerking doet, en dan de loko weer vrij geeft.  Wat me dan opviel is dat de ecos een kerstboom wordt...   Elke keer je een bevel stuurt, flikkeren de  richgtingaanduiders (de pijltjes boven de snelheidsmeter) 2 a 3 keer en dat wordt op den duur irritant, alsook vermoed ik dat op den duur de ecos de pedalen zou kunnen verliezen !

Dus , als er mensen zijn die die ervaring hebben met bvb koploper of i-train (ik noem er maar een paar) en de Ecos, en even kunnen kijken wat er precies gebeurt ?
Ik heb zo een vermoeden dat ik niet zo  "safe" moet spelen en gewoon de controle van een lok kan opnemen op de PC, en dan zolang die virtuele regelaar op de PC aktief is, die controle gewoon vasthouden.   Nadeel is dat je dan met de ecos zelf niet manueel kan ingrijpen, tenzij je dit in je instellingen mee geeft.   Maar je bent in elk geval van dat flikkeren vanaf !     Heeft iemand ervaring of raad ?   Nogmaals DANK !

ter illustratie het filmpje van  13...35  sekonden even bekijken, daar zie je het flikkeren bij elke wijziging vanaf de PC.


Re: Ecos - - PC protocol
Lid sinds: 2006

Forum member sinds 2006

offline
Re: Ecos - - PC protocol
Leuk Dani!!!
Dat je het voor elkaar hebt gekregen.
Als je met de hand de Ecos het zelfde laat doen wordt het dan ook een lichtorgel?

Neem eens kontakt op met Paul Haagsma de bedenker - maker van Koploper en leg uit wat je wilt.
Paul kennende zal hij je zeker opweg helpen.
Ze email adres kun je vinden op www.pahasoft.nl

grt Piet.
Re: Ecos - - PC protocol
Hoi Piet,

Neen, als ik met de hand hetzelfde doe, dan blijft alles gewoon stabiel.   Het is ook enkel wanneer de bewuste lok op het scherm staat van de ecos (in single of multi mode)
Ik weet intussen dat het ligt aan het openen/overnemen/actie nemen/vrijgeve/sluiten van het kanaal.    En ik heb ook al een berichtje gekregen dat het bij gebruik van Koploper niet het geval is, dat hij gewoon "grijs" wordt.   Dus mijn vermoeden is al grotendeels bevestigd.   Van zodra je een rijregelaar oproept, neemt die de controle en laat die pas weer los als je hem sluit, alle akties daartussen maken deel uit van 1 sessie.

Het idee om even met Paul te mailen lijkt me wel goed, als iemand het weet zal hij het wel zijn....   

Dankjewel alweer voor deze insteek, Piet !
Re: Ecos - - PC protocol
Hoi Dani,

meet ook even hoe lang het "openen/overnemen/actie nemen/vrijgeve/sluiten" duurt. Ik wordt hier niet vrolijk van, zeker als je de terugmelding vanaf de Ecos aanzet (request view [lok]). Dan duurt het bij mij zo'n 200 ms, met uitschieters tot 900 ms :warning: Niet echt een lekkere waarde als je de trein door de computer laat optrekken en afremmen, dus meer commando's per seconde wilt sturen, en de lok ook nog op de juiste plek moet stoppen en tegelijkertijd nog meer treinen bestuurd moeten worden. :-(
Re: Ecos - - PC protocol
tot 900 millisekonden ?  dat is onnoemelijk lang in digitale besturingstermen... Een socket verbinding opbouwen en sluiten duurt al een poosje, en dan nog de commando's er bij is zoals je zegt een hele last op je verbinding.    Inderdaad als je daar dan nog meerder dingen tegelijk wil gaan aansturen, en ook nog eens terugmeldingen, kom je in piekmomenten op cyclustijden van enkele sekonden en dan gaan er sowieso "doorschieters" zijn die te ver door rijden of gewoon te laat stoppen en crashes veroorzaken.

Dus : nog even de zaak herbekijken !   Bedankt voor deze waardevolle tip,  RHelder.    Het zal dus één lange sessie worden.
Re: Ecos - - PC protocol
Lid sinds: 2007

Elk vogeltje zingt zoals het gebekt is.

online
Re: Ecos - - PC protocol
Beste Dani,

De centrale is geprogrammeerd om eerst zijn "eigen" werk te doen, dat gaat voor, daarna kijkt hij naar de interface, dus het is niet alleen benodigde tijd, maar ook een niet te beïnvloeden prioriteitslijstje.

Groet, Anne W
Re: Ecos - - PC protocol
Allen - Ik weet dat dit een oud draadje is en wellicht is er een nieuwere waar mijn onderstaande vraag wel al beantwoordt is. Ik gebruik Railware 7 en heb een ESU ECoS-2 centrale. Tot voorkort verliep alles rpima. De laatste Tijd had ik regelmatig last van problemen met de communicatie tussen Railware en de ECoS die na een paar herstarts dan weer werden opgelost. Nu echter krieg ik de boel niet meer aan de praat. Ik heb de IP adressen gecheckt, subnet etc die lijken allemaal goed te staan. Wellicht is er hier iemand die dit probleem herkent en me verder kan helpen? Groet, Marc
Re: Ecos - - PC protocol
Lid sinds: 2009

Light My Train

offline
Re: Ecos - - PC protocol
Legacy modus aangezet?
Re: Ecos - - PC protocol
Hey Wijbe - Dank voor je antwoordt, waar/hoe zet ik de legacy modus aan?
Re: Ecos - - PC protocol
Hey WIjbe - Legacy modus gevonden op de ECoS...aangezet, helft van de wissel werkte weer...daarna alle protocllen gecheckt en bleek dat ik voor de nietwerkende wissels het protocl niet op DCC had gelte. Ook gefit en alles doet het weer. Dank voor je hulp.
Re: Ecos - - PC protocol
 @citaat Nu nog even je toetsenbord controleren >:-D
Re: Ecos - - PC protocol
O wat moet ik dan met mijn toetsenboord doen??
Re: Ecos - - PC protocol
Lid sinds: 2009

Light My Train

offline
Re: Ecos - - PC protocol
Goed om te horen dat het weer werkt Marc!

Nog even een stukje uitleg over de legacy modus, uit de releasenote van update 4.1.

Oftewel oudere versies van programmas die niet meer verder ontwikkeld worden, dient de Legacy modus te worden aangezet, mochten er problemen zijn.

CiteerPC-Interface 2.0:
Wir haben das PC-Interface komplett neu geschrieben, und hoffen nun, das alle Probleme diesbezüglich behoben sind. Es hat wenig Änderungen in der Spezifikation gegeben (nur dort, wo es unbedingt notwendig war, oder es offensichtlich falsch war), so das alle Programme im Idealfall weiterhin funktionieren sollten.
Da es bei einigen Programmen Kompatibilitätsprobleme gegeben hat, gibt es im Setup 3 ein neues Menü mit Einstellungen für die PC-Schnittstelle.

Warnungen nur einschalten, wenn man selber entwickelt. Die ECoS kann dann zusätzlich zum OK eine Warnung ausgeben, wenn die Schnittstelle nicht optimal verwendet wurde. Speziell TouchCab hat mit dieser Einstellung Probleme.Für Koploper und ControlGUI muß der Legacy-Mode eingeschaltet werden. Mit dieser Option verhält sich die ECoS an einigen Stellen, die Probleme verursacht haben, wie früher. Evtl. hilft diese Option auch für andere Programme, die nicht mehr weiterentwickelt werden