1. Hallo Freund der TT-Modellbahn, schön das du zu uns gefunden hast.
    Um alle Funktionen nutzen zu können, empfehlen wir dir, dich anzumelden. Denn vieles, was das Board zu bieten hat, ist ausschließlich angemeldeten Nutzern vorbehalten. Du benötigst nur eine gültige E-Mail-Adresse und dann kannst du dich registrieren.
    Deine Mailadresse wird für nichts Anderes verwendet als zur Kommunikation zwischen uns.
    Die Crew des TT-Boardes

Bauanleitungen für XPress-Geräte

Dieses Thema im Forum "Digitale Bahn" wurde erstellt von 99 4503, 3. April 2007.

?

Ich habe Interesse an einer USB-Interface-Leiterplatte mit Gehäuse s. Post 373

Diese Umfrage wurde geschlossen: 4. November 2012
  1. mit unbestückten LP (Industriequalität, unbearbeitetes Gehäuse), Preis um 15,-€

    28,6%
  2. als Komplettbausatz (mit unbearbeitetem Gehäuse), Preis um 31,-€

    50,0%
  3. an einer fertige LP (unbearbeitetes Gehäuse), Preis steht noch nicht fest, je nach Anzahl um 50,-€

    21,4%
  1. Tobi05

    Tobi05 Foriker

    Registriert seit:
    7. März 2007
    Beiträge:
    2.470
    Zustimmungen:
    10
    Ort:
    Altmark
    Mit der Z21 App geht es auch . Das hab ich damals ja probiert . Was ich nicht testen konnte war die WLan Maus . Und wenn die jetzt funktioniert kann ich mir die beruhigt zulegen wenn sie mir mal über den weg läuft .
     
  2. Tody77

    Tody77 Foriker

    Registriert seit:
    22. Oktober 2007
    Beiträge:
    506
    Zustimmungen:
    3
    Ort:
    Im Süden Brandenburgs
    Hallo Tobi,

    so, wie ich es im Internet gelesen habe, ist auf dem Uno der ATMega328 oder ATMega328P verbaut. Demnach müßte es bei dir klappen, die Firmware von melior auf dein Board zu brennen.

    Er hat aber eine .hex-Datei, welche du mit seinem ASLoader (findest du in seinem Wiki) auf den Arduino via USB überträgst. Man muss beachten, dass für seinen ASLoader Java in der 32bit Version vorhanden sein muss. Solltest du ein 64bit Betriebssystem haben, muss auch das Java in der 32bit Version installiert sein.

    Du hast das Ethernet-Shield verwendet und dann musst du die Firmware-Version Uno mit Ethernet-Shield nutzen.
     
  3. Tobi05

    Tobi05 Foriker

    Registriert seit:
    7. März 2007
    Beiträge:
    2.470
    Zustimmungen:
    10
    Ort:
    Altmark
    Den ASLoader brauch ich nicht . Wenn ich meine Testsockeladapter finde nehme ich den USBasp ansonsten stopf ich den Prozessor einfach in den GALep .
    Aber erstmal muss ich die Tüte mit den 328P suchen . Wenn das ganze nämlich nicht klappt kann ich den alten Prozi wieder reinstecken und bin dann twar wieder auf dem alten stand aber es läuft .
     
  4. Per

    Per Foriker

    Registriert seit:
    10. April 2002
    Beiträge:
    13.364
    Zustimmungen:
    103
    Ort:
    Frankfurt
    WLAN-Maus

    Warum Arduino + WLAN-Shield?
    Warum nicht gleich ESP? An der Menge der I/O kann es nicht liegen.
     
  5. melior

    melior Foriker

    Registriert seit:
    27. Februar 2008
    Beiträge:
    68
    Zustimmungen:
    0
    Ort:
    gelöscht
    Hallo Per,
    für den Arduino gibt es bereits Software. Ich weiß nicht, wie aufwendig es ist, die auf den ESP zu portieren.

    Tschüß André
     
  6. Per

    Per Foriker

    Registriert seit:
    10. April 2002
    Beiträge:
    13.364
    Zustimmungen:
    103
    Ort:
    Frankfurt
    Kommt auf die Quellenlage an. C-Code sollte kein Problem sein, ein Image rückübersetzen wöllte ich auch nicht.
     
  7. topla

    topla Foriker

    Registriert seit:
    7. Juli 2005
    Beiträge:
    193
    Zustimmungen:
    0
    Ort:
    Freital
    ESP als Accesspoint

    Auf dem Trip war ich auch erst, aber die Hardware des ESP schwächelt etwas in Bezug auf die serielle Schnittstelle: die kann keinen 9-Bit-Modus, funktioniert also nicht in Richtung XpressNet.
    Viel interessanter wäre aber die direkte Nutzung des ESP als Accesspoint für die WLAN-Nager (und bei Bedarf auch für die App). Da könnte man den Router einsparen und eine kompakte Baugruppe durch Einstecken in ein beliebiges Xpressnet in Betrieb nehmen.
    Eine kleine Leiterplatte habe ich mal entworfen, darauf wohnt ein ESP8266-12E, eine RS-485-Schnittstelle, eine Loconet-Schnittstelle und ein Anschluss für einen Roco-Booster. Basis ist ein Arduino Mega2560.
    Mit der Software Z21_ESPArduinoUDP_v27.ino läuft der ESP bereits als Accesspoint und man kann sich mit der WLAN-Maus anmelden. Es fehlt jetzt noch die Verbindung zum Xpressnet, da müssen aber die Profis ran, da ich mich weder mit Arduino noch mit dem Netzwerkzeug ausreichend beschäftigt habe.

    Thomas
     

    Anhänge:

  8. Per

    Per Foriker

    Registriert seit:
    10. April 2002
    Beiträge:
    13.364
    Zustimmungen:
    103
    Ort:
    Frankfurt
    Dafür gibt es doch die SoftSeriell-Bibliothek. Die kann man bestimmt auf 9Bit trimmen. Bei dem Leistungsüberschuss des ESP...
     
  9. topla

    topla Foriker

    Registriert seit:
    7. Juli 2005
    Beiträge:
    193
    Zustimmungen:
    0
    Ort:
    Freital
    Mach' mal, ich kann da keine neue Baustelle mehr brauchen, wäre aber sehr interessierter Nutzer.

    Thomas
     
  10. Tody77

    Tody77 Foriker

    Registriert seit:
    22. Oktober 2007
    Beiträge:
    506
    Zustimmungen:
    3
    Ort:
    Im Süden Brandenburgs
    Ihr habt doch geschrieben, dass ihr lieber den MAX483 statt dem MAX485 nehmen wollt. Kann mir jemand sagen, ob ich auch einen MAX481 nehmen kann. Ich will etwas diesbezüglich testen und habe keinen MAX485 oder MAX483 vorrätig.
     
  11. ateshci

    ateshci Foriker

    Registriert seit:
    31. März 2006
    Beiträge:
    3.163
    Zustimmungen:
    92
    Ort:
    Friedberg
    MAX483 hat eine begrenzte Anstiegszeit des Signals, so ist der 483 nur für 0,25 Mbps gedacht, während der 481/485 das nicht hat und somit für 2,5Mbps tauglich ist. Sein Nachteil ist aber, dass er eher EMI erzeugt und bei nicht richtig terminierten Abschlüssen spinnen kann. Da er sich dabei genau wie der 485 verhält, der ja nicht für die Anwendung geeignet zu sein scheint, solltest Du wohl vom Einsatz absehen.
     
  12. Tody77

    Tody77 Foriker

    Registriert seit:
    22. Oktober 2007
    Beiträge:
    506
    Zustimmungen:
    3
    Ort:
    Im Süden Brandenburgs
    Danke Heizer für deine Erklärung. Mir sagen die Datenblätter der Bauteile nicht viel, da ich ohnehin ihre Funktion noch nicht so richtig verstehe. Für mich selbst, habe ich kein Problem damit solche Sachen nach zu bauen. Solange sie Funktionieren ist alles in Ordnung und wenn nicht, stehe ich da wie die Kuh, wenn es blitzt. Ich finde auch nicht die Zeit, mich mit der Materie Bauteile zu beschäftigen.
     
  13. Tobi05

    Tobi05 Foriker

    Registriert seit:
    7. März 2007
    Beiträge:
    2.470
    Zustimmungen:
    10
    Ort:
    Altmark
    Wie sagen manche : "Boah Ey , wat für ne Aktion" :rolleyes:

    Hab mir zwischenzeitlich eine WLan-Maus zugelegt . Ging aber nicht , es ließ sich nicht Einstellen bzw. keine Verbindung und wirres blinken im Display . Also erstmal nen Update auf den neuen Firmwarestand machen . Jetzt wollte die Z21 App auf einmal auch nicht mehr . Das war noch nen Schusslichkeitsfehler meinerseits , hatte einen Port ein klein wenig anders gelegt und das vergessen zu korrigieren . Danach ging es dann . Aber nur bei der Z21 App , die Wlan-Maus ging nur Fahren und Stop , eine Info ob die entsprechende Adresse schon von jemand benutzt wurde wurde nicht angezeigt , ebenso waren die Funktionstasten ausser Betrieb . Und ab und zu schien es als ob sich der Uno einfach aufhängt , dann gab es keine Reaktionen mehr und es half nur noch ein Reset . Also dann mal den Mega rausgeholt und da fingen die Probleme an , denn er hat in jedweder Konfiguration keine Expressnet-Verbindung herstellen können . Letztendlich läuft es jetzt . Aber erst nach Korrektur der Firmware .
    Hatte für den Mega die Expressnet2.1 Library + die 2.3er Ino genommen und die Änderungen der Diff Dateien eingespielt . Leider ist dann im Code ein Fehler :

    #if defined(HAVE_HWSERIAL1)

    funktioniert nicht und er nimmt immer den Seriell Port 0 , egal ob er auf nem Uno oder auf nem Mega läuft . bei nem Uno ist das ja richtig , aber beim Mega will er da schon Debug Informationen ausgeben und auf dem Shield hängt da auch der Programmier-Atmel mit dran .
    Am einfachsten ist es diese Zeile in

    #if defined(DEBUG)

    zu ändern . Denn die Debug Deklaration gibts ja nur beim Mega .
    Keine Angst , die "HAVE_HWSERIAL1" erscheint erst nach durchlauf der Diff Datei an der Stelle , vorher steht da noch

    #if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) //Arduino MEGA

    was auch funktioniert hat . Aber ohne die Diffs gibts keine Reaktion auf die Funktionstasten an der Maus .
    Schlussendlich läuft es jetzt bei mir . Jetzt muss ich nur noch ne neue Platine zeichnen .
     
    Zuletzt bearbeitet: 24. November 2017
  14. melior

    melior Foriker

    Registriert seit:
    27. Februar 2008
    Beiträge:
    68
    Zustimmungen:
    0
    Ort:
    gelöscht
    Hallo Tobi,

    vielen Dank für die Rückmeldung!

    Ich habe das eben mal ausprobiert und einfach einen Schreibfehler nach dem
    #if defined(HAVE_HWSERIAL1) eingefügt. Dann läßt sich der Sketch nicht compilieren. Das zeigt doch, daß der Switch funktioniert, oder?

    Mir kam auch schon der Gedanke, stattdessen "DEBUG" als Schalter zu nehmen. Ich habe das dann aber nicht gemacht, weil der eigentliche Grund, DEBUG und damit SoftwareSerial zu (de-)aktivieren der Mangel an SRAM im Uno ist. Der Leonardo hat 512 Bytes mehr und da ist Debugging kein Problem. Der Leonardo hat aber nur eine serielle Schnittstelle.

    Deine Probleme mit dem Uno könnte ich mir so erklären, daß Du genau in diese Speicherprobleme hineingelaufen bist. Ich habe nach http://michaelnoland.com/reducing-code-size-on-arduino-ethernet-boards/ die Ethernet-Library "gestrippt". Deswegen verbrauchen die von mir vorcompilierten Firmwares vermutlich ein bißchen weniger Speicher.

    Tschüß André
     
  15. Tobi05

    Tobi05 Foriker

    Registriert seit:
    7. März 2007
    Beiträge:
    2.470
    Zustimmungen:
    10
    Ort:
    Altmark
    Beim Uno hatte ich ja das fertige Hex File genommen und mit dem Galep gebrutzelt . Aber es hat nicht alles so funktioniert wie es sollte . Deswegen hab ich den Mega rausgeholt und die Ino geladen da ich die Hex Datei nicht in den Mega rein bekommen habe . Mit der 2.3er Sketch lief es , aber die Maus hatte wieder keine Funktionstasten also hab ich die Änderungen eingespielt und dann lief es nicht mehr . ( die Einstellungja des Ports zur RX/TX Umschaltung hab ich jeweils an meine Bedürfnisse angepasst gehabt )

    als ich später soweit war und gefunden habe woran es lag hatte ich einfach ein

    #ERROR bla!

    anstelle des normalen Befehls nach dem HAVE_HWSERIAL1 eingefügt und er hat es ohne Probleme compiliert . Ich hatte dann noch in allen möglichen Dateien nach dem HWSERIAL1 gesucht und nirgends gefunden , da war mir dann klar das es zumindest bei mir nicht funktionieren kann .

    Ich hab dann das HWSERIAL1 testweise gegen DEBUG ( ist ja nur aktiv wenn für MEGA Compiliert wird ) und danach __AVR_ATmega2560__ ausgetauscht . Da lief das ganze dann . Und das #ERROR an anderer Stelle eingefügt überredete den Compiler zum Abbruch , also funktionierte der Befehl auch .
    Da das ganze nicht nur auf einem 2560 sondern auch auf nem 1280 landen könnte und es evtl. auch mal für andere größere Prozessoren passt bin ich beim DEBUG geblieben . Ausserdem steht im Sketch selber :

    #if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)
    //#define DEBUG //For Serial Port Debugging (Arduino Mega only)
    #endif

    Somit ist das DEBUG nur aktiv wenn ein Mega zur Anwendung kommt und sollte man später das ganze erweitern braucht man nur den Eintrag anpassen und man muss nicht wieder irgendwo tiefer im Code suchen .

    Für die Zuordnung der seriellen Anschlüsse steht In der Expressnet.h im Originalzustand an entsprechender Stelle :


    #if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) //Arduino MEGA
    #define SERIAL_PORT_1
    #undef SERIAL_PORT_0

    #elif defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega644P__) //Sanguino (other pins!)
    #define SERIAL_PORT_1
    #undef SERIAL_PORT_0

    #else //others Arduino UNO
    #define SERIAL_PORT_0
    #undef SERIAL_PORT_1
    #endif


    durch die Diff Datei wird daraus :


    #if defined(HAVE_HWSERIAL1)#define SERIAL_PORT_1
    #define SERIAL_PORT_1
    #undef SERIAL_PORT_0

    #else
    #define SERIAL_PORT_0
    #undef SERIAL_PORT_1
    #endif

    nur hab ich wie gesagt das HAVE_HWSERIAL1 nirgends gefunden . Also springt er immer in die alternative , nur das funktioniert beim Mega nicht . Hatte testweise auchmal die Pins für den RXD0 + TXD0 verbunden nur dann kommt da garnichts und der Mega scheint im Reset zu bleiben .

    Such mal bei Dir an welcher Stelle das HWSERIAL1 vorkommt .
     
  16. melior

    melior Foriker

    Registriert seit:
    27. Februar 2008
    Beiträge:
    68
    Zustimmungen:
    0
    Ort:
    gelöscht
    Hallo Tobi,

    schau mal in $HOME/.arduino15/packages/arduino/hardware/avr/1.6.20/cores/arduino/HardwareSerial1.cpp

    Tschüß André
     
  17. Tobi05

    Tobi05 Foriker

    Registriert seit:
    7. März 2007
    Beiträge:
    2.470
    Zustimmungen:
    10
    Ort:
    Altmark
    So . Hab nochmal gesucht . Diese Datei existiert bei mir nicht . :braue:
    Dann halt über Google . In besagter Datei steht auch nur ein

    #if defined(HAVE_HWSERIAL1)

    aber nirgend der Punkt wo es definiert wird . Also nochmal weiter gucken . Letztendlich steht in der Hardwareserial.h die ich über google finde ein

    #define HAVE_HWSERIAL1

    drin . Bei der auf meinem Rechner steht das aber wiederum nicht drin . :freak:


    Wenn ich dann gucke welche Versionsstände das jeweils sind : ich hab ne ältere Version ...
    Von daher ist soweit alles gut . Bei anderen kann es also auch funktionieren , es kann aber auch sein das sie in die selbe Falle wie ich stolpern .
     
  18. melior

    melior Foriker

    Registriert seit:
    27. Februar 2008
    Beiträge:
    68
    Zustimmungen:
    0
    Ort:
    gelöscht
    Hallo Tobi,
    ... sofern sie den Sketch selbst übersetzen wollen. Das scheint mir bisher eher die Ausnahme zu sein.

    Grundsätzlich würde ich Dir aber schon empfehlen, Deine IDE zu aktualisieren. Ich benutze zur Zeit 1.8.5 und habe keine Probleme damit.

    Tschüß André
     
  19. Tody77

    Tody77 Foriker

    Registriert seit:
    22. Oktober 2007
    Beiträge:
    506
    Zustimmungen:
    3
    Ort:
    Im Süden Brandenburgs
    Ich muss mal die Experten hier um einen Rat fragen.

    Es geht um dieses WLAN-Shield für den Arduino und der Z21-Zentrale. Nun habe ich mich mal versucht schlau zu machen. Es gibt nun diese WLAN-Shields mit ESP8266 (z.B. ESP 01, ESP 07) und ESP8285 (ESP 1). Es gibt da auch noch mehr Varianten. Nun können bei dem ESP8266 maximal 5 gleichzeitige Verbindungen mit Clients verarbeitet werden. Sind bei dem ESP8285 mehr mehr gleichzeitige Verbindungen möglich?

    Über den neueren ESP32 finde ich irgendwie keine Angaben über die maximalen Verbindungen mit Clients.

    Darauf aufbauend stellt sich für mich die nächste Frage: Die ESP WLAN Module sind vom Hersteller mit der AT-Firmware bestückt, welche aber nicht bei dem Projekt von Philipp Gahtow Verwendung findet und gegen seinem eigenen Sketch bestückt. Kann ich den Sketch für ESP von Phillip Gahtow auf jeden dieser ESP WLAN Module laden und dies funktioniert dann? So wie ich es verstanden habe, sollen sich die ESP8266 und ESP8285 Chips von ihrer Funktion identisch sind. Lediglich der Speicher unterscheidet sich bei beiden. Zu dem ESP32 finde ich diesbezüglich keine Angabe.

    Dass alle unterschiedliche Anschlüsse haben, ist mir klar und dies müsste dann angepasst werden.

    Die Frage unter anderem nach dem ESP 07 ist diese, dass dort die Möglichkeit besteht, eine externe WLAN-Antenne die Signalstärke erhöhen kann.

    Wenn es nun so sein sollte, dass alle ESP WLAN Module nur fünf maximale Verbindungen mit Clients zulassen, gibt es dann noch alternativen, welche man verwenden könnte? Mir würde da nur noch ein externer Router über das W5100-Shield einfallen.

    Vielen Dank für eure Antworten.
     
  20. Per

    Per Foriker

    Registriert seit:
    10. April 2002
    Beiträge:
    13.364
    Zustimmungen:
    103
    Ort:
    Frankfurt
    Der ESP 32 ist der größere Nachfolger des 8266. Mehr Speicher, höhere Takztfrequenz und mehr Prozessoren :D. Ja, der 32er hat einen zweiten Prozessor, der sehr wenig Strom verbraucht und viele Kleinigkeiten erledigen kann (Netzwerk z.B.), ohne den großen "anwerfen" zu müssen.
     
  21. Tody77

    Tody77 Foriker

    Registriert seit:
    22. Oktober 2007
    Beiträge:
    506
    Zustimmungen:
    3
    Ort:
    Im Süden Brandenburgs
    Hallo Per,

    aber funktioniert der ESP 32, wie er soll, wenn ich den Sketch dort drauf spiele?

    Kann er mehr als fünf Clients gleichzeitig verwalten?
     
  22. Per

    Per Foriker

    Registriert seit:
    10. April 2002
    Beiträge:
    13.364
    Zustimmungen:
    103
    Ort:
    Frankfurt
    Das kann ich dir nicht sagen.

    Ist natürlich Perlen vor die Säue, der ESP kann deutlich mehr als der Arduino selbst, ihn nur als WLAN-Modul zu nutzen, ist :abgelehnt.
     
  23. Tody77

    Tody77 Foriker

    Registriert seit:
    22. Oktober 2007
    Beiträge:
    506
    Zustimmungen:
    3
    Ort:
    Im Süden Brandenburgs
    Hallo Foriker,

    ich hoffe, ihr habt alle Weinachten gut überstanden.

    Ich beschäftige mich immernoch mit der Z21 von Philipp Gahtow. Auf seiner Website bin ich auf eine Bauanleitung von Andreas Schreiber gestoßen. Diese wird mit dem Arduino Mega bewerkstelligt. Da werfen sich mir wieder einige andere Fragen auf.

    Philipp schreibt auf seiner Website, dass der das Railcom integriert hat. Ich habe das versucht bei dem Schaltplan von Andreas Schreiber nachzuvollziehen und komme zu der Erkenntnis, dass dort der Railcom-Detektor fehlt. Die Signale RAILCOM und DCC_IN vom Arduino laufen ins Leere. Nun habe ich einen Schaltplan von Philipp gefunden, welcher dieses Signal bedient. Diesen Schaltplan habe ich versucht zu integrieren. Allerdings heißt im Schaltplan vom Railcom das Signal RAILCOM_RX. Meine Vermutung ist, dass das RAILCOM_RX dem RAILCOM vom Arduino-Schaltplan entspricht.

    Den Teil der Signale von IN1/IN2 und RAIL1/RAIL2 habe ich in dem Schaltplan vom Arduino Mega zwischen dem TLE5205-2 und PROG_OUT/TRACK_OUT eingefügt. Ich hoffe, dass das jetzt so richtig ist.

    Was es allerdings mit dem Signal DCC_IN auf sich hat, weiß ich leider nicht.

    Kann jemand mal auf den geänderten Schaltplan schauen, ob ich das so richtig eingetragen habe. Ich konnte ihn leider nicht vernünftig als JPG exportieren, nur als PDF.

    Hier die Links zu den Schaltplänen von Philipp Gahtow:

    http://pgahtow.de/wiki/images/Arduino_MEGA_Zentrale.png
    http://pgahtow.de/wiki/images/Z21_globalRailComDetector.png
     

    Anhänge:

  24. Tody77

    Tody77 Foriker

    Registriert seit:
    22. Oktober 2007
    Beiträge:
    506
    Zustimmungen:
    3
    Ort:
    Im Süden Brandenburgs
    Es hat sich erledigt. Ich habe etwas falsch interpretiert und in eine Sackgasse gelaufen. Nach öfteren Lesen der Thematik habe ich festgestellt, dass bei dem Schaltplan von Andreas Schreiber das Railcom integriert ist. Die Schaltung für den integrierten Booster ist eine andere als der Railcomdetektor, welcher auch auf der Seite von P.G. beschrieben wird.
     
  25. Tody77

    Tody77 Foriker

    Registriert seit:
    22. Oktober 2007
    Beiträge:
    506
    Zustimmungen:
    3
    Ort:
    Im Süden Brandenburgs
    Hallo Foriker,

    ich möchte eine regelbare Gleisspannung in dem Layout der Zentrale einbringen. Kann mir jemand sagen, ob man dafür auch DC-DC-Wandler verwenden kann oder gibt es dann dabei ein Problem mit dem Digitalsignal? Auf den Platinen der DC-DC-Wandler sind auch Kondensatoren für die Glättung drauf, wobei ich nicht weiß, ob sie für die Glättung ausreichen. Das wären die favorisierten Modelle:

    https://www.amazon.de/tinxi®-Step-C...pID=413DhUk5SpL&preST=_SY300_QL70_&dpSrc=srch

    https://www.amazon.de/WINGONEER-XL4...F8&qid=1526193904&sr=8-29&keywords=dc+dc+step

    Wenn das nicht funktionieren sollte, wäre dann ein LM350 oder LM338 die bessere Wahl?

    Viele Grüße
     

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden