Das Programm fragt nur den Joystick #0 ab. Möglich wäre #0-15. Das kann ich als Variable in die Settings einbauen, nur wo findet man die Nummer unter Windows?
Beiträge von MacG
-
-
@TrainSimTutorials das sollte auch mit dem Saitek Throttle Quadrant funktionieren. Es ist ja auch ein Joystick.
@FabiaLP Die Z-Achse ist der DynBrake zugewiesen, hat aber keine Controller ID! Kannst Du bitte die ID nachtragen oder die Zuordnung der Z-Achse aus der settings.ini löschen. Es würde mich interessieren, ob es dann nach dem Neustart von TS-Fireman funktioniert.
-
Die Schieberegler der Achsen bewegen sich also nicht, wenn eine Lok ausgewählt ist. Das hatte ich noch nicht. Was sagt Windows zum Pult-Controller? Zu finden unter Systemsteuerung > Geräte und Drucker > Pult-Controller > Gamecontrollereinstellungen. Bewegen sich dort die Achsen?
Ich habe in den letzten Tagen festgestellt, dass sich TS-Fireman nicht immer mit dem TSConductor verbindet. Nachdem ich den Server gestoppt und gestartet hatte, klappte es wieder mit dem Verbinden.
-
FabiaLP: Ja, man wird auch Tasten zuweisen können. So ist zumindest der Plan, aber das dauert noch etwas. Die wären auch eine Alternative für den Fahrtrichtungswahlhebel (Reverser). Mit maximal 32 Stück stehen genügend Joystick-Buttons zur Verfügung. Wie ich lese, hast Du ohne Probleme 5 Achsen in Betrieb?! Vielen Dank für die Rückmeldung!
-
Ich habe ein neues Setup erstellt und dieses im ersten Posting hochgeladen. Jetzt sollte die Installation die ini-Dateien an die richtige Stelle kopieren. Falls ihr TS-Fireman schon installiert hattet und die ini-Dateien nicht verschoben habt, dann würde ich eine Deinstallation über das Starmenü > TS-Fireman > Uninstall empfehlen. Danach dann das neue Setup ausführen.
-
Die Software habe ich mal ausgegliedert, hier geht es mit dem TS-Fireman weiter.
-
Jetzt aber. Ich dachte ich kann den Fehler mit den ini-Dateien noch schnell beheben. Dem ist leider nicht so
-
TS-Fireman - Ist ein TCP Client welcher einen TCP Server benötigt. Zur Auswahl stehen die TS-Bridge in den Versionen für 64bit und 32bit und der TSConductor nur 32bit (Bitte separat downloaden und installieren!).
Deshalb auch meine Namenswahl (Heizer), die Engineers (Lokführer) sind ja wir Vielen Dank an Sillo und Dayjay für die tollen TCP Server.
Es setzt die Bewegungen von maximal sechs Joystickachsen in TCP-Befehle um, welche über den TCP Server an den Train Simulator gesendet werden. Ein Empfang von Daten ist auch möglich. Vorerst nutze ich diesen nur für das Auslesen der Controller der aktiven Lokomotive, um eine neue Lok der Auswahlliste hinzuzufügen oder zu modifizieren. Seit dem Update auf 0.9.9.0 ist auch das parallele Ausführen von mehreren Instanzen des TS-Fireman möglich. Wodurch man mehr als nur einen Joystick (auch Arcaze o.ä.) nutzen kann. Dazu können, vom Programm, zusätzliche Verknüpfungen auf dem Desktop angelegt werden.
Für diejenigen unter Euch, welche gerne eine Anleitung als Video hätten, hat OMSIJakob LP freundlicherweise ein Video-Tutorial erstellt.
Für die Verbindung mit dem TCP Server müssen die Einstellungen bearbeitet werden. Die erreicht ihr, wenn ihr TS-Fireman startet und auf "Open settings folder" klickt. Dort müssen in die settings.ini die Werte für den Server (IP und Port) hinterlegt werden und die Joystickachsen werden den jeweiligen Controllern, wie Fahrtregler und Fahrtrichtungswahlhebel zugewiesen. Die Zuordnung der Achsen zu 0 bis 5 steht in der settings.ini. Welche Achse (X-Y-Z etc.) welcher Hebel ist, könnt ihr mit einem Klick auf "Open Gamecontroller" (ab Version 0.9.9.5) aufrufen. Unter "Eigenschaften" >> "Testen" werden die Bewegungen der jeweiligen Achsen angezeigt.
Für eine invertierte Achse-X muss zum Beispiel ein InvertAx0 = 1 eingetragen werden. Das ist für alle Achsen möglich, bis hoch zu InvertAx5. Ein Eintrag für "normale" Achsen mit dem Wert 0 ist nicht notwendig.
Die DeviceID vom Joystick kann während des Programmablaufs geändert werden (wohl notwendig bei Windows 10). Falls die Joystick DeviceID immer eine bestimmte ist, kann diese mit "Save DeviceID" permanent in der settings.ini gespeichert werden. Für das Anlernen der Joysticktasten wird diese ID auch benötigt. Vielen Dank TheLion092 für diesen Hinweis.
Wenn der TCP Server läuft, also auch gestartet wurde, kann eine Lok ausgewählt werden. Eine kleine Auswahl an Lokomotiven habe ich beigefügt. Anders als beim TrainSimHelper müssen hier keine Dateien vom Train Simulator editiert werden. Der Train Simulator kann je nach belieben gestartet werden. Zwischen den Programmen kann an mit ALT-TAB hin und her springen. Ein wechseln der Lok ist im TS-Fireman einfach möglich. Nur eine andere Lok auswählen "Change locomotive" drücken. Schon kann es mit der anderen Lokomotive im TS weitergehen.Die Auswertung aller sechs Joystickachsen ist einzeln getestet. Da ich zurzeit an meinem Arcaze-USB-Interface nur drei nutze, kann ich behaupten, dass die X-, Y- und Z-Achse für die drei Hauptcontroller in TS funktionieren. Beim Anlegen neuer Lokomotiven ("Add a new locomotive") muss man aus der empfangenen Liste nur die ID vom jeweiligen Controller suchen. Ab Version 0.9.9.5 ist die Liste der ControllerIDs nach Spalten sortierbar. VirtualThrottle bzw. Regulator, Reverser und VirtualBrake bzw. TrainBrake haben sich bei mir als Controller bewährt. Manchmal muss man ausprobieren, welche ID funktioniert. Bei vR-Loks wählt man am besten die Controller VirtualThrottle und -Brake aus.
Die "Steps" sind die Fahrstufen, bei einer BR101 z.Bsp. 100, weil es ein stufenloser Fahrtregler ist und bei amerikanischen Lokomotiven meist 8. Die "Steps" kann man auch im TS zählen, wenn man mit der Maus oder der Tastatur den jeweiligen Regler bewegt. Des weiteren kann bei allen Controllern ein freier Min- und Max-Wert gewählt werden. Bei Standard Controllern die einen Bereich von 0 bis 1 haben, muss nichts eingetragen werden. Der Standard für den Reverser (Fahrrichtungswahlhebel) ist weiterhin -1 bis 1. Auch dafür muss nichts eingetragen werden. Für einen anderen Bereich trägt man bei Min und Max den entsprechenden Wert ein. Ein negativer Min-Wert ist nun bei allen Controllern möglich. Wählt man in der Liste eine Zeile aus (ab Version 0.9.9.5) und klickt auf die Achse (z.Bsp. "Throttle and Brake"), werden die nötigen Werte übernommen. Die "Steps" müsst ihr eintragen.
Teilweise haben die Lokomotiven eine "Playable Airhorn". Wer also eine Joystickachse frei hat, kann die ControllerID für das "Horn" dem OtherCtrl zuweisen und 10 Steps oder mehr einstellen. Dann kann man das Signalhorn, wie ein Instrument, spielen.
Das Anlernen der 32 möglichen Joysticktasten habe ich möglichst einfach gestaltet. Was recht viel Arbeit gemacht hat. Für das Hinzufügen einer ControllerID zu einer Taste, betätigt ihr nur kurz selbige Taste an eurem Fahrpult und die entsprechende Joysticktaste (eine von 1 bis 32) wird dann hervorgehoben. Dann tragt ihr die dazu passende ID aus der empfangen Liste ein oder klickt für ein Auslesen der gewählten Zeile (ab 0.9.9.5) auf "ID for selected button". Falls gewünscht, ist auch ein Offset möglich, damit z.Bsp. für das Licht der Wert 2 gesendet wird, ist ein Offset 1 notwendig. Zusätzlich kann ein Kommentar darunter angegeben werden, für was die Taste dient. Dieser wird in der settings.ini für zukünftige Lokomotiven gespeichert. Mit "OK" bestätigt ihr die Übernahme der Variablen für diese eine Joysticktaste. Für jede weitere Taste wieder genauso vorgehen. An den TS wird, ohne eingestellten Offset, dann eine 1 für Taste geschlossen und eine 0 für Taste offen übertragen. Ist es am Fahrpult ein Schalter, wird eine Statusänderung erst an TS übertragen, wenn der Schalter in seiner Position verändert wird.
Über "Modify a locomotive" können die Werte einer vorhandenen Lokomotive editiert werden. Dazu wählt man die Lok aus und klickt auf "Modify a locomotive". Bei den Joysticktasten erscheinen nach kurzem Betätigen der gewünschten Taste die hinterlegten Werte. Nur geänderte Tasten müssen dort mit "OK" bestätigt werden. Das Löschen eines beliebigen Wertes ist möglich.
Kommentare in den INI-Dateien können mit einem führenden Semikolon in der Zeile über oder unter der Variablen eingetragen werden. Nicht dahinter!
Es gibt noch so einige kleine Baustellen. Erstens, weil Programmieren mit AutoIt nur ein kleines Hobby von mir ist und zweitens weil sich mit dem wachsenden Umfang des Programms immer wieder neue Fehler einschleichen. Viel Spaß bei den ersten Testfahrten! Ich hoffe, ich habe es recht selbsterklärend programmiert.
For the connection to the TCP server (TS-Bridge) the settings have to be edited. You can achieve this by starting TS-Fireman and clicking on "Open settings folder". There, the values IP and Port for the server must be stored in the settings.ini and the joystick axes are assigned to the respective controllers, such as throttle lever and direction selector lever.
The assignment of the axes to 0 to 5 is explained in the settings.ini. Which axis (X-Y-Z, etc.) which lever is, at Win7 see under "Start" >> "Control Panel" >> "Devices and Printers". There you will come to your joystick/gamepad. Right-click on the device to open the "Game Controller Properties". Under "Properties" >> "Test" the movements of the respective axes are displayed. There is also a button in the actual version to getting there.
For an inverted axis-X, for example, an InvertAx0 = 1 must be entered. This is possible for all axes, up to InvertAx5. An entry for "normal" axes with the value 0 is not necessary.
The DeviceID of the joystick can be changed during program execution (probably necessary for Windows 10). If the joystick DeviceID is always a specific one, it can be saved with "Save DeviceID" in the settings.ini. For assigning the joystick buttons, this ID is also required.
If the TS-Bridge is running and the server has been started, a loco can be selected at TS-Fireman. I have attached a small selection of locomotives. Train Simulator can be started as you like. Between the programs can jump on with ALT-TAB. Changing the locomotive is easily possible in the TS-Fireman. Just select another loco Press "Change locomotive". Already it can go on with the other locomotive in the TS.
When creating new locomotives ("Add a new locomotive") you only have to search for the ID of the respective controller from the received list. This list is sortable and a line can be read out via click on the Axis-Button (actual version feature). VirtualThrottle or Regulator, Reverser and VirtualBrake or TrainBrake have proven themselves with me. Sometimes you have to try out which ID works. For vR (virtual Railroads) locos, it's best to select the controller VirtualThrottle and Brake.
The "Steps" are the throttle steps, with a German BR101 e.g. 100, because it is a stepless throttle controller and in American locomotives usually 8. The "Steps" can also be counted in the TS if you move the respective controller with the mouse or the keyboard. Furthermore, a free minimum and maximum value can be selected for all controllers. The same for the other axes. The Reverser has normally 2 steps.
The assignment of the 32 possible joystick buttons I have made as simple as possible. To add a ControllerID to a button, press its button on your cab controller (joystick). The corresponding joystick button (one from 1 to 32) will be highlighted. Then you enter the matching ID from the received list. Or with teh actual version read out the selected line per click. If desired, an offset is possible, so, for example, at the light function the value 2 is sent, an offset of 1 will be necessary. In addition, a comment can be given below what the button is for. This will be saved in the settings.ini for future locomotives. With "OK" you confirm the acceptance of the variables for this one joystick button. Repeat the same procedure for each additional button. Without an offset, to the TS is then send a 1 for a pushed button and a 0 for an open. If it is a switch (e.g. a toggle) on the cab controller, a status change is not transmitted to TS until the switch is changed in position.
Update auf 0.9.0.0 vom 24.10.2016
Changelog
- alle 6 ControllerIDs und die zugehörigen Steps werden nun bei einer neuen Lokomotive in die locomotives.ini geschrieben
- nach dem Hinzufügen einer neuen Lok ist kein Neustart vom TS-Fireman mehr erforderlich
- die DeviceID vom Joystick kann während des Programmablaufs geändert werden (notwendig bei Windows 10)
- falls immer eine andere DeviceID als die 0 genutzt wird, kann sie in die settings.ini unter "[Joystick-ID] JoyID = " eingetragen werden
- kleinere Fehler behoben
- der Joystick-Button 1 wird nun ausgewertet (als Taster), die zuzuweisende TS ControllerID schreibt man in die locomotives.ini bei der Lok unter "Button1Id = "
- "Modify a Locomotive" kommt erst in einer der folgenden Versionen
Vielen Dank FabiaLP für das Testen und das Feedback zur Joystick DeviceID!
Update auf 0.9.6.0 vom 05.02.2017
Changelog
- alle 6 Achsen können nun in der settings.ini invertiert werden
- für alle 6 Controller kann man jetzt den zu verwendenden Sendebereich einstellen, bei Standard Controllern mit einem Bereich von 0 bis 1 muss nichts eingetragen werden. Der Standard für den Reverser (Fahrrichtungswahlhebel) ist weiterhin -1 bis 1. Für einen anderen Bereich trägt man bei Min und Max den entsprechenden Wert ein. Ein negativer Min-Wert ist nun bei allen Controllern möglich
- Bugfix: bei schnellen Achsbewegungen wurde nicht der maximale TCP-Wert erreicht (bei invertiert der minimale). Danke an BigBenjy für die Meldung.
- Codeoptimierungen, z.Bsp. beim Speichern in die locomotives.ini
- "Modify a Locomotive" wurde hinzugefügt - eine in der ini vorhandene Lok kann ausgewählt und editiert werden. Leere Felder führen nicht zur Löschung des Eintrages in der locomotives.ini
Vielen Dank Taurus0815 und BigBenjy für das Testen Joystick-Invertierung und des erweiterten Sendebereiches!
Update auf 0.9.7.0 vom 12.03.2017
Changelog
- für alle 32 möglichen Joystick-Buttons kann nun der Status 0 (für offen) oder 1 (für geschlossen) an eine einstellbare ControllerID gesendet werden
- dafür wurde recht umfangreich der Bereich für das Hinterlegen der Werte erweitert. Ihr drückt am Fahrpult kurz die gewünschte Taste und sie wird dann hervorgehoben. Dann tragt ihr die dazu passende ID aus der empfangen Liste ein. Zusätzlich kann ein Kommentar darunter angegeben werden, für was die Taste dient. Dieser wird in der settings.ini für zukünftige Lokomotiven gespeichert. Mit "OK" bestätigt ihr die Übernahme der Variablen für diese eine Taste. Für jede weitere Taste wieder genauso vorgehen. Beim Modifizieren drückt ihr kurz die gewünschte Taste und die hinterlegten Werte werden angezeigt. Nur geänderte Tasten müssen dort mit "OK" bestätigt werden.
- Bugfix: empfangene Liste war nicht vollständig - jetzt werden 12.000 Zeichen akzeptiert
Vielen Dank FabiaLP und BigBenjy für das Beta-Testen der Joystick-Buttons-Auswertung und marvinbart429 für die zu kurze ControllerID-Liste!
Update auf 0.9.9.0 vom 31.12.2017
Es gibt diese Version wie gewohnt als Setup. Dieses erkennt, ob schon ini-Dateien vorhanden sind und überschreibt sie nicht.
Changelog
- Wishlist: nach dem Ändern der JoystickID mit "Increase DeviceID" kann diese nun mit "Save DeviceID" in der settings.ini abgespeichert werden
- bei den Joystick-Buttons kann nun ein Offset eingestellt werden (z.Bsp. beim Licht eine Offset 1 für die Ausgabe einer 2)
- das Ausführen des TS-Fireman ist nun parallel möglich und mit verschiedenen Einstellungen. Dem entsprechend ist das Limit an Achsen und Buttons auf das 9-fache angestiegen
- zum Starten der weiteren Instanzen kann das Programm nummerierte Verknüpfungen auf dem Desktop anlegen. Beim Start der zweiten Instanz werden die zweiten Einstellungen anhand der ersten erstellt. Es ist eine Kopie ohne den Bereich [Main], dieser ist nur der settings.ini vorbehalten. Nur die zweite Instanz kann die Verknüpfung für eine dritte anlegen, die dritte für die vierte und so weiter ... Ist die folgende Verknüpfung schon auf dem Desktop vorhanden, kann diese nicht erneut erstellt werden.
- es bleibt bei einer locomotives.ini. Sollen zwei Instanzen an eine Lok senden, so muss man diese Lok nun zweimal mit verschiedenen Namen anlegen und dann entsprechend auswählen
- ein Programm-Icon hinzugefügt und kleinere Änderungen vorgenommen, z-Bsp. wird nach dem Ausgewählten einer Lok die "Select"-Taste zu einer "Change"-Taste
- Bugfix: ein Gebietsschema mit Punkt als Dezimaltrenner wird nun automatisch erkannt und die Ausgabe entsprechend angepasst
Wishlist
- Daten an "Irregular Notched Lever" senden, also mit unregelmäßig verteilten Raststufen
- bei "Modify a Locomotive" das Löschen von Einträgen in der locomotive.ini ermöglichen, beim einfachen Weg würde die modifizierte Lok ans Ende der locomotives.ini rutschen - find ich nicht gut
-
Tacho- und Druckluftanzeige auf zweiten Bildschirm- gestrichen, Sillo hat mit seinem TS-MFD-Modulares-Führerraumdisplay-MFD-inkl-EbuLa-für-Train-Sim gut Fortschritte gemacht
Vielen Dank an BigBenjy, marvinbart429 und Lorhat für das Beta-Testen der neuen Funktionen!
Update auf 0.9.9.1 vom 25.03.2018
Changelog
- Bugfix: die Joystick-Button Auswertung bei "Add/Modify a locomotive" funktioniert nun auch mit Drehschaltern und ein Dauerimpuls von einem Schalter blockiert nun nicht mehr die Eingabe von ID, Beschreibung und Offset
- kleinere Anpassungen vom Layout bei "Add/Modify a locomotive"
Update auf 0.9.9.2 vom 13.05.2018
Changelog- die Liste der Controller vom TS ist nun formatiert und somit etwas übersichtlicher
- kleinere Anpassungen, falls mal einer von "Modify a locomotive" über das Hauptfenster zu "Add a new locomotive" wechselt
Update auf 0.9.9.5 vom 19.05.2019
Wieder nur die exe-Datei, weil es nur kleinere Veränderungen sind. Wer will kann damit die Version 0.9.9.0 bzw. die vorherige exe-Datei im Programmverzeichnis ersetzen. Ebenfalls kann auch die TS-Fireman.exe an jeden anderen Ort ausgeführt werden. Solange im LocalApp-Verzeichnis die Konfigurationsdateien liegen.
Changelog
- Unterstützung für TS 64bit, mit der TS-Bridge x64 von Sillo <== Dafür vielen Dank!
- direktes Öffnen der Windows-Einstellungen Gamecontroller
- die Liste der ControllerIDs vom TS bei "Add a new locomotive" oder "Modify a locomotive" kann nach Spalten sortiert werden
- wählt man eine Zeile in der Liste aus, werden mit Klick auf die Achse (z.Bsp. "Throttle and Brake") die nötigen Werte übernommen
- Felder mit Standardwerten bleiben leer, diese sind im TS-Fireman verankert
- bei "Modify a locomotive" werden nun Standardwerte aus der locomotives.ini entfernt und die Einträge sortiert
- kleinere Anpassungen
Wishlist (Stand 03.04.2021)
- die Auswertung der Achsen anpassen, damit das "Zittern" der Potentiometer abgefangen wird
- Daten an "Irregular Notched Lever" senden, also mit unregelmäßig verteilten Raststufen, siehe dazu mein Beitrag #148
- Anpassungen des Schaltbereiches zum nächsten bzw. vorherigen Wert bei den Achsen
- ein automatischer Verbindungsaufbau nach dem Start
- automatische Erkennung der Lok im TS und Umschalten zu deren Konfiguration, wenn vorhanden
Vielen Dank an @OMSIJakob LP für das Beta-Testen der neuen Funktionen!
-
Mit dem Amtrak "Coast Starlight" kann man von Seattle bis Los Angeles reisen. Infos und Buchung unter http://www.AmtrakVacations.com
Und falls es mehr um touristische Attraktionen geht, als von A nach B zu reisen, dann kann ich das "Tourist Trains Guidebook" empfehlen.
Ich habe es bisher leider nicht geschafft, mal über den großen Teich zu fliegen und mit dem Mietwagen ein paar Museen und Bahnen zu besuchen
-
Hier mal der heutige Stand. Die notwendigen Daten für die Lokomotiven stehen in einer Datei und werden nach dem Auswählen der Lok geladen. Somit ist es recht einfach die Lok zu wechseln. Was jetzt noch fehlt, ist ein Unterprogramm mit dem man komfortabel die Daten von der aktuellen Lok aus TS auslesen kann und sie dann in die besagte Datei speichert. Des weiteren ist noch eine grafische Oberfläche für einen kleinen Zweitmonitor geplant. Auf dem dann wichtige Daten vom TS, wie Geschwindigkeit und Bremsdruck der Lok, angezeigt werden.
Rechts neben den Schiebereglern der Achsen wird der zugewiesene Controller angezeigt und dazu die individuelle Controller ID der Lok. Ganz rechts stehen unter TCP die Werte, welche zuletzt an TS gesendet wurden.
-
Es ist der normale Steam Ordner. Nur dass er auf einer anderen Partition liegt als das Programm Steam. Mittels Steam habe ich den Ordner angelegt und die Sicherung wiederherstellen lassen.
-
Wie bei mir fehlt Dir wohl die settings.ini im Programmverzeichnis von TSConductor, die kann man selbst anlegen. Das schwierigste ist da wohl, die IP vom PC herauszufinden. Für den Port nimmt man 47811 und den Pfad zur RailDriver.dll findet man unter PlugIns von RailWorks. Das wiederum tief hinter der SteamLibrary liegt.
@Dayjay muss da wohl etwas an seinem Programm anpassen.
-
Gab es bei der Installation einen Fortschrittsbalken oder eine Erfolgsmeldung?
Das Kästchen ist blau, wenn bei der dahinter liegenden Auswahl nur teilweise Haken vergeben sind.
Ich bin im Chat und habe Dir auch eine PN geschrieben.
-
Hallo Frank,
im Web steht, dass eigentlich .NET abwärtskompatibel ist. Aer wenn das Programm eine bestimmte Version voraussetzt und nicht neuere Versionen von .NET akzeptiert, muss man 3.5 installieren.
Bei Win7 gab es, bei meinem PC, noch einen kleinen Haken. Der Installer von Microsoft für .NET 3.5 funktionierte nicht, da Win7 schon mit 3.5 Unterstützung ausgeliefert wird. Diese muss man erst über "Systemsteuerung" >> "Programme und Funktionen" >> "Windows-Funktionen aktivieren oder deaktivieren" (links) aktivieren. Es könnte ein Neustart vom PC nötig sein. Danach lässt sich der TSConductor starten, auch wenn .NET 3.5 nicht in der Liste der installierten Programme auftaucht. Aber die Funktion ist ja aktiviert
Mit meinem Programm bin ich auch etwas weiter gekommen. Jetzt werden nur noch Werte an TS übermittelt, wenn man die Achsen bewegt hat. Es können jetzt bis zu 6 Joystickachsen ausgewertet werden und die dazu entsprechenden Werte werden berechnet und verschickt. Dem Fahrtrichtungshebel (Reverser) habe ich nur drei Stellungen (-1, 0 und 1) zugeordnet. Die minus Eins ist für mich die Hürde bei der Umrechnung der Joystickposition in Werte mit variablen Schritten. Ich weiß, dass man den Hebel für Dampfloks benötigt. Ich muss mal checken, wie der Controller dort heißt und was für Werte er erwartet.
-
Danke, ich werde wohl darauf zurückkommen.
Das mit dem Speichern des letzten Joystickwertes hatte ich eingebaut. Nur habe ich heute erst einen kleinen Fehler entdeckt, welcher diese Abfrage aus hebelte. Jetzt werden wesentlich weniger TCP-Befehle verschickt, aber immer noch ein paar zu viel. Die Kontrolle anhand des letzten, über TCP gesendeten, Befehls will mir nicht gelingen.
Nach einem kleinen Beta-Test (siehe hier) geht es weiter. Die BR 101 ist wiederum eine Lok, welche nicht sauber auf "VirtualBrake" oder "TrainBrakeControl" reagiert. Bei ersterem bremst zwar der Zug, aber der Bremshebel bewegt sich nicht.
-
Hallo Frank,
der Fahrtregler reagiert auf die Y-Achse und ich habe ihn auf 100 Schritte eingestellt. Somit steht jedes einzelne Prozent zur Verfügung.
Leider kommt nun doch eine kleine Hürde. Die IP, welche im TSConductor angezeigt wird, musst Du noch in die TSJoy2TCP.ini eintragen. Vorteil, auch andere können es ausprobieren und falls gewünscht sogar die Joystickachse verändern.
Auf http://tsconductor.dayjay.de/ findest Du den TSConductor und auch eine Anleitung, wie man ihn installiert. Dann führst Du ihn aus und startest den Server. Mein kleines Programm startest Du danach. Denke an die richtigen Einstellungen in der ini-Datei. Mehr gibt es nicht zu beachten. Ob TS vorher schon im Hintergrund läuft oder danach gestartet wird, spielt keine Rolle. Gute Fahrt!
-
Hallo Frank,
das ist ja das schöne am TSConductor, dass es eigentlich nur installiert und gestartet werden muss. Falls es bei Dir ebenfalls nicht klappt, kann ich Dir helfen.
Deine bisherigen Einstellungen vom Arcaze sicherst Du am besten nochmals in einer Datei ab. Eigentlich brauchst Du nur einem Poti eine Achse unter "Analog Gamepad" zuweisen. Die ganzen Einstellung für Schalter und Drehencoder können bleiben.
Die BR 101 lässt die Datenübergabe zu. Wie viele Fahrstufen hat sie denn? Ich kann mit "A" und "D" keine anwählen und somit zählen. Haben E-Loks andere Tastaturbefehle für den Fahrtregler? Die von Dir verwendete Joystickachse brauche ich dann noch. X, Y und Z sind von mir getestet.
Fahrtregler auf "Null" geht nun auch.
-
Für die Amtrak GE P42DC habe ich nun den Fahrtregler als Poti. Okay, sie hat einen kombinierten Hebel von dynamischer Bremse und Fahrstufen. Das ist auch gut so, denn mein kleines Programm kommt nicht bis runter auf Fahrstufe "Null". Das stört aber beim Kombihebel überhaupt nicht. Neben diesem kleinen Bug sendet mein Client auch ununterbrochen Befehle an den TSConductor. Das ist so nicht gewollt, aber es funktioniert ohne Probleme. Besser bekomme ich es leider nicht hin. Mir gehen die Ideen aus.
@RHD2 ich kann Dir das Programm für eine Lok Deiner Wahl mal zum Beta-Testen anpassen. Ich nutze die Joystickachse X, die kann ich aber leicht ändern. Ich besitze nur die dt. Standardpakete vom TS, also Hamburg-Hannover, Köln-Koblenz und München-Garmisch. Ansonsten wäre Deine Mitarbeit bei der Suche nach der ControllerValue und der Anzahl der Fahrstufen der Lok mittels TSConductor erforderlich.
-
@Dayjay Auch mit Adminrechten bekomme ich kein Log im Programmverzeichnis. Ich habe mich jetzt mit dem Hercules Tool als TCP Server beholfen. Dein Server funktioniert ansonsten ja reibungslos.
Programmiertechnisch stoße ich, als Gelegenheitsprogrammierer mit AutoIt, an meine Grenzen. Eine Abfrage, dass mein Tool nur einen TCP-Befehl sendet, wenn auch die Joystickachse bewegt wurde, bekomme ich nicht hin. Somit sendet mein Client dauernd den selben Befehl. Es gibt auch noch weitere kleine Fehler Ich überlege schon, wie ich Dich als Programmierer für meinen Client begeistern kann? -
Nach einigen Stunden Arbeit kommt die Ernüchterung. Nicht jede Lok reagiert auf SetControllerValue() beim Fahrtregler. Egal ob ich den Regulator oder den SimpleThrottle anspreche, die Werte werden vom TS nicht übernommen. Auslesen geht. Das Setzten der Fahrtrichung geht auch. Getestet an der UP SW10 und UP ES44DC.
EDIT: @Dayjay im Installationsverzeichnis wird leider keine Logdatei abgelegt.