Märklin My World IR Integration in Rocrail

Post Reply
chrissiMZ
Posts: 82
Joined: 26.12.2018, 18:07
Location: Winden/Pfalz, Germany

Märklin My World IR Integration in Rocrail

Post by chrissiMZ » 14.05.2019, 10:06

Guten Tag,

mein Sohn ist seit einigen Wochen in Besitz einer MyWorld Lok.

Die Lok besitzt einen IR-Empfänger und kann mit einer IR-Fernbedienung gesteuert werden. Sowohl Lok als auch Fernbedienung besitzen einen Umschalter, der zwischen IR 2 Kanälen "A" und "B" wechselbar ist. D.h. pro Anlage sind max. 2 MyWorld-Loks gleichzeitig steuerbar.

Das Ziel: Integration des IR-MyWorld-Protokolls in Rocrail.

Das sind die Schritte, die ich mir bis dahin vorgestellt habe:

- Decodieren (Auslesen) der Fernbedienungs-Codes mit Arduino IRLib
- Emulierung der Fernbedienungs-Codes mit Arduino IRLib -> Steuerung der Loks (ohne die Fernbedienung) mit Arduino
- Integration in Rocrail als Zentrale
- Anlegen der Lok in Rocrail (3 Fahrstufen, Sounds, Licht)
- Verbau verteilter IR-LED's über der Anlage, sodass ein IR-Empfang der Lok gewährleistet ist

Gäbe es für solch ein Projekt hier Support?

Gruss Chrissi

LDG
Site Admin
Posts: 2686
Joined: 18.10.2010, 00:03
Location: near Karlsruhe/Germany

Re: Märklin My World IR Integration in Rocrail

Post by LDG » 14.05.2019, 10:29

Hallo Chrissi,
chrissiMZ wrote:
14.05.2019, 10:06
Guten Tag,

mein Sohn ist seit einigen Wochen in Besitz einer MyWorld Lok.

Die Lok besitzt einen IR-Empfänger und kann mit einer IR-Fernbedienung gesteuert werden. Sowohl Lok als auch Fernbedienung besitzen einen Umschalter, der zwischen IR 2 Kanälen "A" und "B" wechselbar ist. D.h. pro Anlage sind max. 2 MyWorld-Loks gleichzeitig steuerbar.
In anderen/neueren Packungen gibt es weitere (paarweise) "Codes" für die Steuergeräte. Mir selbst ist bis "G/H" bekannt. Damit gehen noch mehr Züge :)
Das Ziel: Integration des IR-MyWorld-Protokolls in Rocrail.
[...]
Gäbe es für solch ein Projekt hier Support?
Du könntest Dein Projekt über eine bereits in Rocrail integrierte Schnittstelle/Protokoll als "externe Zentrale" anbinden. Z.B.: MQTT, RCP, SRCP, ...

Die myWorld Züge lassen sich aber nicht sehr genau steuern. Ich glaube nur 3 Fahrstufen je Richtung und "Halt". Dazu 4 Funktionen. Da die Züge Kunststoffachsen haben gehen eigentlich nur Lichtschranken als Rückmelder. Alternativ: Kamerasystem mit Zugerkennung/-verfolgung -> "mit Kanonen auf Spatzen schießen" :lol:

Gruß,
Lothar
... habe selbst ein paar myWorld-Züge. Bin ja auch schon "3+" :roll:

chrissiMZ
Posts: 82
Joined: 26.12.2018, 18:07
Location: Winden/Pfalz, Germany

Re: Märklin My World IR Integration in Rocrail

Post by chrissiMZ » 14.05.2019, 10:34

Hi Lothar,
LDG wrote:
14.05.2019, 10:29
Da die Züge Kunststoffachsen haben gehen eigentlich nur Lichtschranken als Rückmelder. Alternativ: Kamerasystem mit Zugerkennung/-verfolgung -> "mit Kanonen auf Spatzen schießen" :lol:
ich setze Lichtschranken als Rückmelder ein, das sollte also kein Problem sein.
LDG wrote:
14.05.2019, 10:29
Du könntest Dein Projekt über eine bereits in Rocrail integrierte Schnittstelle/Protokoll als "externe Zentrale" anbinden. Z.B.: MQTT, RCP, SRCP, ...
Ahh ja genau, sowas in die Richtung ist aktuell der "Missing Link". Danke.

Gruss Chrissi

rjversluis
Site Admin
Posts: 41613
Joined: 10.04.2006, 08:48
Location: Speyer, Germany
Contact:

Re: Märklin My World IR Integration in Rocrail

Post by rjversluis » 14.05.2019, 11:16

Moin,

so neben bei:
Ich kann mich nicht vorstellen das man Jugendliche mit 3 Fahrstufen Loks fürs MoBa gewinnen kann.
Ein Standard Library in Rocrail ist ausgeschlossen.

chrissiMZ
Posts: 82
Joined: 26.12.2018, 18:07
Location: Winden/Pfalz, Germany

Re: Märklin My World IR Integration in Rocrail

Post by chrissiMZ » 14.05.2019, 11:22

Naja, es geht ja darum, dass "seine" Lok auf Papas Anlage fahren darf.
rjversluis wrote:
14.05.2019, 11:16
Ein Standard Library in Rocrail ist ausgeschlossen.
Schade. Aber das hatte ich auch nicht erwartet - ginge mir eher um den Support bei einer User-Library.

rjversluis
Site Admin
Posts: 41613
Joined: 10.04.2006, 08:48
Location: Speyer, Germany
Contact:

Re: Märklin My World IR Integration in Rocrail

Post by rjversluis » 14.05.2019, 11:23

ginge mir eher um den Support bei einer User-Library.
die bekommst du.

chrissiMZ
Posts: 82
Joined: 26.12.2018, 18:07
Location: Winden/Pfalz, Germany

Re: Märklin My World IR Integration in Rocrail

Post by chrissiMZ » 14.05.2019, 11:51

Ich denke das hier ist ein guter Einstieg für mich - da ich beruflich in Python programmiere :D

Quelle

rjversluis
Site Admin
Posts: 41613
Joined: 10.04.2006, 08:48
Location: Speyer, Germany
Contact:

Re: Märklin My World IR Integration in Rocrail

Post by rjversluis » 14.05.2019, 13:24

Ja, das freut mich wenn du das umsetzen würde.
:thumb_up:

chrissiMZ
Posts: 82
Joined: 26.12.2018, 18:07
Location: Winden/Pfalz, Germany

Re: Märklin My World IR Integration in Rocrail

Post by chrissiMZ » 15.05.2019, 17:23

Die Codes konnten bereits ausgelesen werden:

Hardware:
  • IR-Receiver: KY-022
  • Arduini Micro
  • Anschluss
  • Fernbedienung aus Märklin MyWorld
    fb.png
    fb.png (27.9 KiB) Viewed 208 times
Software:
  • Arduino IDE 1.6.13 (Wichtig, da der Compiler mit neueren Versionen Probleme macht)
  • Arduino-IRRemote
  • Sketch aus den examples: IRrecvDump
Erste Erkenntnisse:
  • Es werden immer 4 Codes von der Fernbedienung verschickt.
  • 32 Bits Codes
Schalter auf A

Code: Select all

=== Stop ===

1. Press

Code: 8D82645D (4x)

=== Vorwärts ===

1. Druck: 1380B841 + E6A25FD9 (2x) = Min
2. Druck: 86A83D89 + FBCEB971 (2x) = Mid
3. Druck: 18CFCB25 + 39079981 (2x) = Max

=== Rückwärts ===

1. Druck: 77E19A65 + ED4F541 (2x) = Min
2. Druck: 5054D395 + A630332D (2x) = Mid
3. Druck: CA46D40D + 300C9231 (2x) = Max

=== Funktions-Btn 1: Licht ===

Code: 3B1D2AB5

=== Funktions-Btn 2: Stay Clear ===

Code: 93E58705

=== Funktions-Btn 3: Horn ===

Code: 75CC0931

=== Funktions-Btn 4: doors closing ===

Code: B4F6D651

Schalter auf B

Code: Select all

=== Stop ==

1. Press

Code: E0D56025 (4x)

=== Vorwärts ===

1. Druck: EC7BDEC1 + 2A331349 (2x) = Min
2. Druck: A4CF9E71 + 1FBF0CAD (2x) = Mid
3. Druck: 696BC37D + FDEF99ED (2x) = Max

=== Rückwärts ===

1. Druck: FBCEB971 + 1829111
2. Druck: FF867F9 + 96066781
3. Druck: D9971AF1 + A630332D

=== Funktions-Btn 1: Licht ===

Code: 80B8FD91 + BB7D9D1D

=== Funktions-Btn 2: Stay Clear ===

Code: 2366CF89

=== Funktions-Btn 3: Horn ===

Code: 41804D5D

=== Funktions-Btn 4: doors closing ===

Code: 77E19A65 + 300C9231

chrissiMZ
Posts: 82
Joined: 26.12.2018, 18:07
Location: Winden/Pfalz, Germany

Re: Märklin My World IR Integration in Rocrail

Post by chrissiMZ » 27.05.2019, 18:36

Kennst sich jemand mit den IR-Libraries von Arduino hier aus?

Ich teste aktuell mit der IRLib2 und mein Sketch sieht wie folgt aus:

Sendet 4x Stop:

Code: Select all

#include <IRLibSendBase.h>    //We need the base code
#include <IRLib_HashRaw.h>    //Only use raw sender

IRsendRaw mySender;

void setup() {
  Serial.begin(9600);
  delay(2000); while (!Serial); //delay for Leonardo
  Serial.println(F("Every time you press a key is a serial monitor we will send."));
}
   
void loop() {
  if (Serial.read() != -1) {
    //send a code every time a character is received from the 
    // serial port. You could modify this sketch to send when you
    // push a button connected to an digital input pin.
    mySender.send(0x8D82645D,32,38);//Pass the buffer,length, optionally frequency, orig = 36
    delay(30);
    mySender.send(0x8D82645D,32,38);
    delay(30);
    mySender.send(0x8D82645D,32,38);
    delay(30);
    mySender.send(0x8D82645D,32,38);
    Serial.println(F("Sent signal."));
  }
}
Die Test-IR-Receiver-Diode empfängt etwas, allerdings scheinen die Timings noch nicht zu stimmen. Die Test-LED blinkt nun ungefähr gleich schnell wie wenn ich Fernbedinung betätige - allerdings verarbeitet der myWorld Zug die Infos nicht. Hat da jemand ne Idee?

Per
Posts: 734
Joined: 11.01.2012, 13:11
Location: FFM

Re: Märklin My World IR Integration in Rocrail

Post by Per » 28.05.2019, 11:42

chrissiMZ wrote:
27.05.2019, 18:36
Hat da jemand ne Idee?
Du könntest einen zweiten Arduino als Empfänger aufbauen und die Signale vergleichen.

chrissiMZ
Posts: 82
Joined: 26.12.2018, 18:07
Location: Winden/Pfalz, Germany

Re: Märklin My World IR Integration in Rocrail

Post by chrissiMZ » 28.05.2019, 11:45

Per wrote:
28.05.2019, 11:42
chrissiMZ wrote:
27.05.2019, 18:36
Hat da jemand ne Idee?
Du könntest einen zweiten Arduino als Empfänger aufbauen und die Signale vergleichen.
Die Idee hatte ich auch - allerdings kann ich im ArduinoIDE nur einen Seriellen Monitor gleichzeitig offen haben. Bin da noch Neuling aber versuche dranzubleiben.

Per
Posts: 734
Joined: 11.01.2012, 13:11
Location: FFM

Re: Märklin My World IR Integration in Rocrail

Post by Per » 28.05.2019, 11:49

Du kannst ja ein Signal mit der FB senden und anschließend das andere mit den Arduino. Wichtig ist ja erstmal, dass die Grundlagen (Timing, Befehlsstruktur) passen.

Post Reply

Return to “BastelEcke (DE)”