Anzeige:
THEMA: Kennt Ihr schon DCC++? (5)
ich habe einige "0815" Zubehördecoder, die NRMA-kompatibel sind (WDecN-TN)
siehe auch hier:
https://mobatron.4lima.de/2020/03/nmra-kompatibler-zubehoerdecoder
Diese Decoder werden über diverse CV-Parameter parametriert. Das habe ich, leider erfolglos, über JMRI --> neue Lok --> NMRA --> accessory Decoder versucht.
Hinter diesem Decoder scheint sich auch ein Lokdecoder zu verbergen, denn es gibt Reiter für Motor usw. und damit nicht geeignet um einen Funktionsdecoder zu bearbeiten.
Hat jemand eine Idee, wie das geht und ob überhaupt DCC Zubehördecoder parametrierbar sind?
Viele Grüße
Christian
welche Version von JMRI benutzt Du denn?
Hier ein "Snapshot" aus der Version 5.5.7,
da gibt es unter ---> NMRA accesory decoders
keine Reiter für Motor!
Es gibt dort genau drei Reiter: "Lokparkeintrag", "Basis", "CV-Tabelle" , das ist alles!
Hat auch erstmal nichts mit DCC++ zu tun.
Falls Du das benutzt, wäre dann auch die Hardwarekonfiguration interessant
Gruß, Günter
Die von Spider42 zu diesem Beitrag angefügten Bilder können nur von registrierten Usern gesehen werden - Login
so etwas hätte ich erwartet. Offensichtlich mache ich da was falsch.
Ich habe Decoder Pro Version 5.6+R89a87446 eben noch einmal neu installiert und vorher alle backup gelöscht.
Bei mir sieht das Bild vollkommen anders aus. Erreicht über +neue Lok --> NMRA--> NMRA Accesserydecoders
siehe Bild.
Ups. Was mache ich falsch?
Viele Grüße
Christian
Die von rudwe zu diesem Beitrag angefügten Bilder können nur von registrierten Usern gesehen werden - Login
Die meisten DCC Befehle sind in DCCEX implementiert aber nicht alle. Da kann man sich überlegen ob man die braucht und dann ob man sie in DCCEX implementiert oder ob man sie vom Computerprogramm aus als Hex Bytes schickt. Dazu müsste JMRI das können.
Wir implementieren gern neue nützliche DCC Befehle, ältere (14 Fahrstufen jemand?) eher nicht so gern, da darf der sie braucht gern selber ran. Ist ja open source.
Grüße,
Harald.
PS: Die anderen Entwickler hängen alle auf unserem Discord rum.
hier noch die Hardwarekonfiguration
ARDUINO UNO
StandardMotorshield (Deek.Robot)
über USB vom UNO zum PC verbunden, dort läuft WIN11
Viele Grüße
Christian
Grüße,
Harald.
als Anlage ein Auszug aus dem Handbuch des Decoders WDecN-TN, entwickelt von Herrn Gerhard Clemens.
Ich glaube aber, dass ich zunächst ein JMRI-Problem habe und ich überhaupt keinen NRMA-kompatiblen Zubehördecoder anwählen kann. Damit kommt natürlich auch ein falsches Protokoll zum Arduino.
Viele Grüße
Christian
Die von rudwe zu diesem Beitrag angefügten Bilder können nur von registrierten Usern gesehen werden - Login
gibt es eine Version, die mit USB seriell funktioniert? Die JMRI Decoder Pro Bilder sind in 5.6 und 5.5.7 bei mir gleich falsch.
Deshalb glaube ich, dass das Problem vorm Monitor sitzt.
Viele Grüße
Christian
Ich weiss nicht so viel über JMRI wie andere, vor allem in unserem Discord haben wir ein paar Experten.
Grüße,
Harald.
habe jetzt das Fenster so wie Christian, lag wohl an meinen Einstellungen,
so gesehen scheint also alles ok...
Die nächste Frage wäre jetzt mal, ob du irgendwelche CVs auslesen kannst,
also zunächst ---> "Neue Lok" und dann in diesem Fenster unten --->"Typ aus Decoder auslesen" drücken
Tut sich dann etwas?
Gruß,
Günter
Welche Version von DCC-EX benutzt Du? Aktuell ist 5.0.0
Zitat - Antwort-Nr.: | Name:
als Anlage ein Auszug aus dem Handbuch des Decoders WDecN-TN, entwickelt von Herrn Gerhard Clemens.
Bis jetzt kann DCCEX noch nix mit den Kommandos für die Signalbilder. Da müsste man zuerst einmal festlegen as denn im DCCEX Protokoll an die Zentrale geschickt wird damit am anderen Ende solch DCC rauskommt.
Vorschläge?
Grüße,
Harald.
ich habe DCC++Ex in Version 5.0.7 aufgespielt. Das Fensterthema hat sich aus meiner Sicht geklärt. Es gibt in den Voreinstellungen Lokpark-->Programmierer die Möglichkeit zu Abwahl leerer Reiter, das hatte ich vorher nicht gesehen.
Ich habe deine Aktivitäten versucht. Nach neue Lok --> Typ aus Decoder auslesen wird im Fenster unten links angezeigt "read MFG ID CV8", was ich auch erwartet habe. Die Proggleis- LED (Klemmen B) auf dem Motorshield bleiben aus. Es kommt also der Befehl nicht durch, aus meiner Sicht.
Weitere CV-Werte lassen sich nicht auslesen, da meldet sich "Programmer in use"
Harald,
der Decoder und DCC++ funktionieren, mit den Werkseinstellungen, wenn ich diese über iTrain ansteuere ohne Probleme. Man muss aber die Eigenschaften, wie sich der Decoder verhalten soll, in diversen CV eintragen. Natürlich auch die Adressen. Das möchte ich mit JMRI erreichen .
Mit freundlichem Gruß
Christian
Die von rudwe zu diesem Beitrag angefügten Bilder können nur von registrierten Usern gesehen werden - Login
ich denke ich bin dann mal raus ...
Falls Du noch weitere Versuche anstellen willst, es gibt im JMRI unter dem Register DCC++
den "DCC++ Trafic Monitor", evtl. liefert der Dir nützliche Informationen.
Gruß,
Günter
ich bin schon lange raus und hoffe auf Harald und seine Freunde.
Vielen Dank trotzdem für deinen Versuch zur Unterstützung.
Mit freundlichem Gruß
Christian
Zitat - Antwort-Nr.: | Name:
Ich habe deine Aktivitäten versucht. Nach neue Lok --> Typ aus Decoder auslesen wird im Fenster unten links angezeigt "read MFG ID CV8", was ich auch erwartet habe. Die Proggleis- LED (A) auf dem Motorshield bleiben aus. Es kommt also der Befehl nicht durch, aus meiner Sicht.
Das Proggleis ist normal B.
Der Monitor zeigt an was los ist. CV lesen und schreiben sollte wie bei allen anderen Decodern auch gehen.
Man kann auch einzelne Kommandos im DCC Kommandofenster geben, z b. R 8.
Kann gerade nur begrenzt testen, da Urlaub.
Grüße ,
Harald.
Grüße,
Harald.
ich wünsche einen schönen Urlaub.
Ich habe alle möglichen Varianten zu NMRA-Decodern (auch die RAW) getestet. Ohne Erfolg. Es erfolgt keine Rückmeldung.
Ich habe heute aber versucht einen Lokdecoder, den ich vor einiger Zeit mal auslas. Leider musste ich feststellen, dass das Auslesen eines Lokdecoders weder auf dem Hauptgleis noch auf dem Proggleis funktioniert (weder über JMRI noch iTrain). Das verblüfft mich. Kann das jemand probieren? Daraus kann ich schlussfolgern, ob auf meinem System irgendetwas nicht klappt,
Vielen Dank.
Zuerst man rausfinden ob die Rückmeldung/Stromfühlung einen Huscher weg hat. Dazu braucht man den DCC++ Traffic Monitor und das DCC++ Kommandofenster von JMRI oder eben irgend ein Program für Serielle Kommunikaton (Arduino IDE, EX-Installer, PuTTY...). Ich mach das lieber mit einem normalen Seriellen Terminal weil da bin ich dann sicher dass sich JMRI nicht einmischt.
Kommandos sind z.B <1> (alle Gleise an) oder <R 8> (CV 8 auslesen) und im JMRI Kommandofenster kann man die <> weglassen.
Mein erster Test ist <1> und dann 1 Sekunde Kurzschluss auf MAIN und PROG und mal nachsehen ob der Kurzschluss im Monitor gemeldet wird. Wenn ja, dann ist zumindest der Stromfühler OK. Damit kann man auch rausbekommen welches Gleis welches ist (also PROG und MAIN). Das wird auch mit <=> angezeigt (seit DCCEX 5.0).
Mein zweiter Test wäre dann Lok aufs PROG Gleis und dann <D ACK ON><R 8> und das sollte einen ganzen Haufen Diagnostik erzeugen wo man sieht was passiert.
Dann mal herzeigen was die Diagnostik so ausspuckt.
Grüße,
Harald.
DCC-EX unterstützt eine Vielzahl von Pins als Input z.B. zur Verwendung als Belegtmelder.
Nun möchte ich gerne bei einem Wechsel von 0 auf 1 und von 1 auf 0 auf einem Input einen DCC-Befehl senden.
Pin X1 von 0 -> 1 = Weiche Y gerade
Pin X1 von 1 -> 0 = Weiche Y abzweigend
oder
Pin X2 = 1 -> Lokfunktion Fx dauerhaft an, Pin Z = 0 -> Lokfunktion Fx dauerhaft aus.
oder
Pin X3 von 0 -> 1 = DCC Befehl Funktion für xSekunden aktiv, dann wieder inaktiv (z.B. zum Abkuppeln)
Kann man so etwas heute schon Konfigurieren (event. über ExRail) oder wäre das etwas für eine zukünftige Weiterentwicklung von DCC-Ex? Was haltet ihr von solch einer Funktionalität?
Man könnte über ein paar einfache Taster, Schalter oder GBM verschiedene DCC Funktionen aktivieren. (z.B. Bei allen Loks Licht an
Gruß Uli
https://dcc-ex.com/ex-rail/overview.html#gsc.tab=0
Aus dem Stehgreif:
AUTOSTART SEQUENCE(1)
AT(X1) //AT blockiert die Sequenz
IFTHROWN(Y) CLOSE(Y)
FOLLOW(1)
AUTOSTART SEQUENCE(2)
AT(-X1)
IFCLOSED(Y) THROW(Y)
FOLLOW(2)
Vielleicht solltem man noch ein DELAY reinstecken.
Man braucht keine Angst haben viele Sequenzen zu starten. Eine pro Sensor ist kein Problem. Die laufen alle pseudo-gleichzeitig.
Bei dem Beispiel mit der Lok... Immer die Frage: Welche Loknummer solls denn sein? Aber ja, man kann eine Loknummer in eine AUTOMATION geben und DANN wird die "abgefahren". Sollte man mit einem Knöpfchen in EngineDriver verknüpfen können. Aber frag den Chris im Discord, der ist der Experte für EXRAIL.
Bei allen Loks Licht an geht nicht so gut da EXRAIL sozusagen nicht weiss welche Loks es gibt.
Aber les dich mal ein. Vor allem die Beispiele. Man muss andersrum denken, aus Sicht der Lokführers.
Grüße,
Harald.
Nun muss ich erst mal eine Testumgebung aufbauen.
Viele Grüße Uli
alles Gute zum neuen Jahr. Zurück vom Urlaub über Weihnachten und den Jahreswechsel habe ich wieder Zeit mich mit DCC++ zu beschäftigen.
Entsprechend deinem Rat habe ich mit dem JMRI Traffic-Monitor und SEND DCC beschäftigt und dabei unerwartetes festgestellt.
Hier die Ausgabe nach <1> und <=>
15:00:58.226: [1] TX: Track Power ON Cmd
15:00:58.232: [* Track A sensOffset=0 *] RX: DIAG: Track A sensOffset=0
15:00:58.235: [* Track B sensOffset=0 *] RX: DIAG: Track B sensOffset=0
15:00:58.236: [p1 MAIN] RX: Power Status: Name:MAIN Status:ON
15:00:58.238: [* LCD2:Power On MAIN *] RX: DIAG: LCD2:Power On MAIN
15:01:18.911: [=] TX: Request TrackManager Config: '='
15:01:18.911: [= A MAIN] RX: TrackManager:= A MAIN
15:01:18.911: [= B MAIN] RX: TrackManager:= B MAIN
Ich hätte in der letzten Zeile B PROG erwartet. Möglicherweise interpretiere ich das auch falsch.
Ebenfalls führte ich den Kurzschlusstest, wie empfohlen durch.
Hier das Ergebnis bei Kurzschluss auf B:
15:10:12.455: [* TRACK B ALERT 2223mA *] RX: DIAG: TRACK B ALERT 2223mA
15:10:12.466: [* TRACK B CURRENT (100msec ignore) 2226mA *] RX: DIAG: TRACK B CURRENT (100msec ignore) 2226mA
15:10:12.566: [* TRACK B POWER OVERLOAD 2226mA (max 1497mA) detected after 100msec. Pause 40msec *] RX: DIAG: TRACK B POWER OVERLOAD 2226mA (max 1497mA) detected after 100msec. Pause 40msec
15:10:12.612: [* TRACK B POWER RESTORE (after 40msec) *] RX: DIAG: TRACK B POWER RESTORE (after 40msec)
Das stimmt so nach meiner Meinung.
Bei Kurzschluss auf A passiert nichts im Monitor, auf der Motorplatine dunkeln sich aber die LED leicht ein.
Ist meine Platine im "Eimer" oder habe ich das noch etwas falsch eingestellt?
Eine weitere Frage habe ich noch zu den Befehlen. Ich habe noch keine Liste zu den Befehlen finden können, immer nur Beispiele. Über einen Hinweis wäre ich dankbar.
Viele Grüße
Christian
suchst du so etwas?
https://github.com/DCC-EX/CommandStation-EX/wiki/DCC-EX-Command-Reference
VG Uli
Ich nehm auch gern die Ausgabe von Anfang an mit Version und Motorshield.
Zitat - Antwort-Nr.: | Name:
Ich hätte in der letzten Zeile B PROG erwartet. Möglicherweise interpretiere ich das auch falsch.
Hast du den Installer angewendet und da "kein PROG" oder so gewählt? Dann kann der Sketch der generiert wird kein PROG.
Ist das ein Uno?
Bei Kutzschluss sollte sowohl bei A als auch bei B eine Warnung erscheinen und das Gleis abgeschaltet werden.
Die Abschaltung wird gesteuert von der Spannung an A0 (für A) und A1 (für B) die bei Kurzschluss von nahe 0V auf so 4V oder so steigen sollte. Wenn das nicht geht wie es soll ist was am shield oder Arduino faul.
Die Analogeingänge kann man recht leicht versehentlich mit Spannung > 5V schrotten. Ja, ausprobiert. Wenn man einen Eingang oder Ausgang geschrottet hat kann man die Pins mit einer eigenen Definition des Motortreibers und ein paar Patchkabeln in Software und Hardware umlegen.
Beim Standardshield kann man A0-A2 und A1-A3 verbinden und dann kommt man in den Genuss von den Schutzdioden die bei A2 und A3 verbaut sind.
Grüße,
Harald.
ja, genau das suchte ich. Ich habe auf der DCC++Ex Web-Seite gesucht und nicht im github. Danke.
Hallo Harald,
vielen Dank für deine Hinweise.
Zitat - Antwort-Nr.: | Name:
Ich nehm auch gern die Ausgabe von Anfang an mit Version und Motorshield.
Ok, merke ich mir für das nächste Mal.
Ja.
Ja, habe ich. Aber ich kann mich nicht erinnern, ob es da eine Auswahlmöglichkeit gab. Das werde ich in den nächsten Tagen untersuchen. Ansonsten wiederhole ich die Ladeprozedur noch einmal, dann über die IDE.
Das Verhalten A0 werde ich mir ebenfalls in den nächsten Tagen ansehen. Falls A0 tot ist, beschäftige ich mich mit dem Umkonfigurieren der Analogein/-ausgänge.
Viele Grüße
Christian
läuft es eigentlich auch auf dem Uno R4 mit onboard WLAN?
Grüße, Peter W
Zitat - Antwort-Nr.: | Name:
Beim Standardshield kann man A0-A2 und A1-A3 verbinden und dann kommt man in den Genuss von den Schutzdioden die bei A2 und A3 verbaut sind.
Hallo Harald,
Einfach eine Draht-Brücke zwischen A0-A2 und A1-A3? Gilt dies auch für andere Boards?
Ich habe folgende Motorshields:
a) Deek-Robot MOTOR SHIELD
b) DIY More L298NH Motor Shield
c) DCC-EX EX-MotorShield8874
V. Grüße Uli
ich habe versucht meine Problemchen in den Griff zu bekommen und bin einen Schritt weiter.
Ausgang : ARDUINO UNO, Deek-Robot Motor Shield
Ich benutzte den EX-Installer und stellte fest, dass im Fenster "Install Ex Station" Track Manager ausgegraut ist und nicht zur Verfügung steht. Der Trackmanager lässt sich nicht aufrufen. Nach compilieren und laden findet man im DeviceMonitor:
<* License GPLv3 fsf.org (c) dcc-ex.com *>
<* NO HAL CONFIGURED! *>
<* Found PORTB pin 13 *>
<* Pin 15 Max 1497mA (501) *>
<* Found PORTB pin 12 *>
<* Pin 14 Max 1497mA (501) *>
<= A MAIN>
<= B MAIN>
<iDCC-EX V-5.0.7 / UNO / STANDARD_MOTOR_SHIELD G-3bddf4d>
<* LCD3:Ready *>
<p0>
<* LCD2:Power Off *>
<* LCD3:Free RAM= 491b *>
Beide Ausgänge des Motor Shield stehen auf MAIN.
Ich habe die gleiche Prozedur noch einmal wiederholt und einen MEGA 2560 benutzt.
Hier ist jetzt der TrackManager anwählbar und ich kann den Ausgängen A und B in gesonderten Fenster MAIN und PROG zuweisen. Im Device Monitor erhält man dann, die eigentlich von mir auch erwartete Eintragung für MAIN und PROG für A und B
<* License GPLv3 fsf.org (c) dcc-ex.com *>
<* WARNING: Check I2C SCL line for short/pullup *>
<* No I2C Devices found *>
<* MCP23017 I2C:0x20 Device not detected *>
<* MCP23017 I2C:0x21 Device not detected *>
<* Found PORTB pin 13 *>
<* Pin 55 Max 1497mA (501) *>
<* Found PORTB pin 12 *>
<* Pin 54 Max 1497mA (501) *>
<= A MAIN>
<= B PROG>
<iDCC-EX V-5.0.7 / MEGA / STANDARD_MOTOR_SHIELD G-3bddf4d>
<* EXRAIL RoutCode at =FFFFCB54 *>
<* EXRAIL 24b, fl=256 *>
<* LCD3:Ready *>
<p0>
<* LCD2:Power Off *>
<* LCD3:Free RAM= 5203b *>
<= B PROG>
<= A MAIN>
Die Ausgänge lassen sich jetzt auch mit <1 MAIN> bzw <1 PROG> und entsprechend <0> bzw <1/0 JOIN> sauber schalten.
Es entsteht für mich die Schlussfolgerung, dass der UNO für PROG nicht konfigurierbar ist und keine Programmiermöglichkeit hat, jedenfalls nicht über den EX-Installer.
Im nächsten Schritt werde ich mich mit der Programmierung von Loks und meinem eigentlichem Problem, der Parametrierung von NMRA-Decodern widmen und die Ergebnisse berichten. Läuft das mit dem MEGA2560, werde ich versuchen den UNO über die IDE zu kompilieren und zu laden und testen, ob dort irgendwo eine Einstellung für PROG zu finden ist.
Viele Grüße
Christian
Die von rudwe zu diesem Beitrag angefügten Bilder können nur von registrierten Usern gesehen werden - Login
Danke für den Link. Schauen wir mal was die Zeit bringt, irgendwann wird man nicht drum herum kommen.
Einstweilen portiere ich erst einmal meinen eigenen DCC-Generator.
Grüße, Peter W.
Zitat - Antwort-Nr.: 30 | Name: rudwe schrieb am 09.01.24 10:14
Hallo,
ich habe versucht meine Problemchen in den Griff zu bekommen und bin einen Schritt weiter.
Ausgang : ARDUINO UNO, Deek-Robot Motor Shield
Ich benutzte den EX-Installer und stellte fest, dass im Fenster "Install Ex Station" Track Manager ausgegraut ist und nicht zur Verfügung steht. (...)
Moin,
Ich kann es nicht nachvollziehen, warum um alles in der Welt steckt man seinen Ehrgeiz darein, unbedingt alle Module in den UNO zu quetschen?
Es reicht schon sich die Dokumentation zu DCC-EX durchzulesen, um festzustellen, dass man im UNO nicht unendlich Platz hat und demzufolge solche Module im Installer dann eben nicht auswählbar sind.
Selbst wenn du es selber noch so oft compilierst (VS Code ist im übrigen hilfreicher als die Arduino IDE) wirst du es nicht schaffen dies im UNO unterzubringen! - Der Vorhandene Speicher reicht irgendwann nicht mehr.
Wo ist das Problem statt eines UNO einen MEGA zu nutzen?
Viele Grüße, Franzi
Nirgendwo. Ich begann mit einem UNO und fand bisher nur Einschränkungen für WiFi und Ethernet. Ich fand bisher (zugegeben in lese nicht ständig und möglicherweise zu oberflächlich) keine Einschränkungen zum PROG-Betrieb. Wenn dem so ist, dann ist es auch gut. Meine Ausführungen dienen dazu, jedenfalls nach meiner Meinung, eine Klärung zu meinem Problem zu finden.
Viele Grüße
Christian
Also die Info ist für die Version 5.0.7.
Zitat - Antwort-Nr.: | Name:
Schauen wir mal was die Zeit bringt, irgendwann wird man nicht drum herum kommen.
Zum Uno R4 Wifi: Das ist leider eine richtg bescheuerte Konstruktion. Zu wenig RAM und das Wifi über Serie angeschlossen (also ungefähr wie AT mit dem ESP8266), nicht mal via WifiNINA. Dann auch noch recht teuer. Nee, ich quetsch doch nicht die ganze Familie in die Weltklasse. setzt noch nen Schwiegermuttersarg drauf und dann fällt er um. Klar, ist auch ein Auto. Aber nicht für uns.
Wer Lust hat kann natürlich auch DCC-EX protieren und so dem Projekt beitragen, ich wüßte aber andere Baustellen die mehr Sinn machen (*). Das gleiche gilt übrgends für das Arduino Giga Dingens mit den 2 oder 3 (wie man jetzt zählt) CPUs. Da hat schon jemand portiert (unser Code is recht portabel) und dann haben wir festgestellt dass die Firmware auf dessen Ethernet nur maximal 3 TCP Verbindungen zulässt. Jubel! Beim der 4. WiThrottle App hat man dann die Supportcalls. Zum Vergleich: Mega+ESP8266: 5, ESP32: 10.
Wenn ihr eine kompakte Zentrale mit Wifi wollt, nehmt einen ESPduino32 für 15 EUR (oder billiger) und lötet eien 300Ohm Widerstand drauf (das fixt einen HW bug).
https://dcc-ex.com/reference/hardware/microcont...32-espduino-32-board
Grüße,
Harald.
(*) Mehr Tester für das Ethernetshield, Entwicklung der Kombination Nucleo+ESP32 (WifiNINA), Weiterentwicklung vom XpressNet Parser (so dass das mal ins Alphastadium kommt) u.s.w.
Ich habe jetzt noch mal meinen UNO ausgegraben und die aktuelle Prod. Version installiert.
Mit dem DCC-EX Installer ist es mir nicht gelungen, bei Aktivierung des PROG-Modus kam die Meldung zu wenig Speicher. Mit der Arduino IDE 1.8.19 hat es dann geklappt. Nach der Deaktivierung der EEPROM Routinen habe ich noch Free RAM = 99 Byte. Bei den Versionen 4.1.x waren es ca. 500 Byte.
13:07:03.541 -> <* License GPLv3 fsf.org (c) dcc-ex.com *>
13:07:03.541 -> <* NO HAL CONFIGURED! *>
13:07:03.541 -> <* Found PORTB pin 13 *>
13:07:03.541 -> <* Pin 15 Max 1497mA (501) *>
13:07:03.541 -> <* Found PORTB pin 12 *>
13:07:03.541 -> <* Pin 14 Max 1497mA (501) *>
13:07:03.588 -> <= A MAIN>
13:07:03.588 -> <= B PROG>
13:07:03.588 -> <* I2C Device found at 0x27, GPIO Expander or LCD Display? *>
13:07:03.588 -> <* I2C clock speed set to 100000 Hz *>
13:07:03.588 -> <* 16x2 LCD configured on I2C:0x27 *>
13:07:03.682 -> <* LCD0:DCC-EX v5.0.7 *>
13:07:03.682 -> <* LCD1:Lic GPLv3 *>
13:07:03.728 -> <iDCC-EX V-5.0.7 / UNO / STANDARD_MOTOR_SHIELD G-3bddf4d>
13:07:03.728 -> <* LCD3:Ready *>
13:07:03.728 -> <p0>
13:07:03.728 -> <* LCD2:Power Off *>
13:07:03.728 -> <* LCD3:Free RAM= 99b *>
Achtung: Daten im RAM und der Programmcode im Progmem sind auf AVR verschiedene Sachen.
Grüße,
Harald.
der AVR 328 ist für die Aufgabe schon etwas sehr klein.
Warum man sich sträubt mit dem Uno R4 zumindest Beta zu gehen ist mir noch nicht wirklich verständlich. Das Board kann man überall kaufen, ein Motorshield drauf stecken, fertig. Und das WLAN Modul ist auch schon drauf.
Als Vorteil sehe ich dass Vin jetzt bis 24 V möglich ist, weil jetzt ein Schaltregler drauf ist. Da kann man problemlos 18 V Startset Netzteil oder 19 V Laptop Netzteil anschließen ohne dass man die Platine himmelt und dann funktionieren auch die alten Motorshields mit der bipolaren Brücke problemlos - der Spannungsabfall ist dann auch wurscht.
Der Preis ist ja nicht wirklich ein Thema wenn man sich sowas einmal zulegt oder von mir aus 5x im Verein.
Grüße, Peter W
Ich denke auch die Kinderkrankheiten der neuen "R4 USB Bridge" mit dem die neue Wififirmware auf dem ESP32-S3 angebunden wird darf sich gern jemand anderes antun. Beispiel: https://github.com/arduino/uno-r4-wifi-usb-bridge/pull/20 Ich versteh wirklich nicht warum die Leut von Arduino bei zwei CPUs die beide noch massig Pins übrig haben eine Verbindung über eine neue SERIELLE Schnittstelle (also nur 2 Pins) gewählt haben anstelle einfach wieder WifiNINA anzuwenden. Auch ist es ein ARM so dass man die Timer portieren müsste. Also wenn man sich neue CPUs antun will: Da gibts interresantere Chips.... RP-(2040)-PICO-W zum Beispiel. Außerdem läuft unser Kod schon auf STM32, wer soll das denn alles unterhalten?
Zitat - Antwort-Nr.: | Name:
Als Vorteil sehe ich dass Vin jetzt bis 24 V möglich ist, weil jetzt ein Schaltregler drauf ist. Da kann man problemlos 18 V Startset Netzteil oder 19 V Laptop Netzteil anschließen ohne dass man die Platine himmelt und dann funktionieren auch die alten Motorshields mit der bipolaren Brücke problemlos - der Spannungsabfall ist dann auch wurscht.
Warum man vor allem beim Mega den ollen Linearregler nicht schon längst mit einem pinkompatiblen Schaltregler bis so 24V ersetzt hat weiss auch keiner. Wenn der dann abraucht (sogar bei erlaubten 12V in kommt da wegen der Verluste der Wärmetod recht früh wenn man nur die 5V etwas mehr belastet), dann ist Arduino nicht so die Premiummarke die sich im Preis von den Clones abhebt.
Klar, man möchte ein Laptop Netzteil nehmen (wenn das doppelte Quadrat drauf ist dann sogar abgesegnet) und mit dem EX-Motorshield das wir entwickelt haben geht das auch gut, weil das hat dann den Regler drauf. Das Standardshield macht sowieso wenn man in H0 oder noch größer unterwegs ist recht bald schlapp. Das EX-Shield, so populär es ist, kann man aber auch noch verbessern (einfacher, billiger, usw). Ich schreib ja meistens Software aber unsere Hardwaregruppe ist schon wieder am Werkeln was man da noch machen könnte. Ich verrate es wenn es soweit ist.
Grüße,
Harald.
heute hatte ich nun endlich mal Zeit um das neu Shield "EX-MotorShield8874"
auszuprobieren, zusammen mit DCC-EX 5.0.7...
Wow ! Ich bin begeistert!
Per TrackManager den B-Ausgang von "Prog" auf "DC" geschaltet und
einwandfrei mit einer alten analogen Lok gefahren
digital gesteuert (via JMRI) - das ist einfach GENIAL.
Gruß,
Günter
wenn man weder vor GIT noch vor dem ESP32 Angst hat, dann kann man ab heute die Branch devel-z21 runterladen, #define Z21_PROTOCOL im config.h anmachen und dann gleichzeitig mit der Z21 App mit sowohl Loks, Weichen und Sensoren kommunizieren. Die Weichen und Sensoren müssen in DCC-EX schon definiert sein. Das funktioniert zwar in meinen Tests, ist aber noch sehr im Beta, so es ist eine gute Idee sich auch im Discord anzumelden ( https://discord.gg/UWBuuWbP ) und sich den Kanal #beta-testers freischalten zu lassen. Über USB kommen auch jede Menge Mitteilungen die wenn was nicht funktioniert von Intresse sein können. Ich hab nicht die geringste Ahnung ob es mit der Wifi Multimaus auch funktioniert.
Aber wie gesagt, funktioniert nur mit dem ESP32 als CPU, nicht mit dem "normalen" Arduino.
Grüße,
Harald.
Kurzanleitung:
Loks: In der Z21 einstellen mit DCC 128 Fahrstufen 1-127 kurz und 128-9999 lang
Weichen: In der Z21 auf die in DCC-EX mit <T...> definierte Weichenadresse stellen.
Sensoren: In der Z21 Uhl 63320 auswählen und beide Adressen auf die in DCC-EX mit <S....> definierte Sensoradresse stellen.
Sehr interessantes Projekt, leider habe ich gerade keinen ESP32 mit Motorschield zum Testen herumliegen und auch keine WLAN-MultiMaus.
Macht es Sinn für weitere DCC-EX Entwicklungen sich vom Arduino MEGA zu verabscheiden und auf den ESP32 zu wechseln oder wird es in naher Zukunft noch besser geeignete Hardware geben, die schon im Test ist ?
In naher Zukunft kommt ein neues Release, das beinhaltet dann alles was z.Z. im Devel zu finden ist. Mit den neuen Release kommt auch eine Liste von Hardware auf die wir und konzentrieren werden. Der ESP32-WROOM (aber nicht die anderen ESP32 Varianten) ist dabei. Auch wird eine Liste von STM32 CPUs dabei sein. STM32 mit Ethernet (also Kabel) ist zwar in der Entwicklung aber da muss noch mehr getan werden. Für STM32 und Wifi bräuchte man einen einfachen ESP32, da reicht auch der abgespeckte ESP32-C3.
Die einfachste Platform für mehr Funktionalität übers Netzwerk wird aber der ESP32-WROOM sein. So viel falsch machen kann man bei dem Preis doch eigentlich nicht, oder?
Grüße,
Harald.
ich habe auch durch Zufall die DCC Ex gefunden und mit ESP32 und Motorschield eine Zentrale aufgebaut. Mit Engine Driver lassen sich die Lok's super fahren. Die Einrichtung hat einfach geklappt.
Nun zu meinem Anliegen, wie könnte ich 8 Rückmelder ( mit Optokopplern) an diese Hardware bekommen? Beim Mega gibt es ja jede Menge freie I/O pins, aber ich habe noch keine Schaltung oder Beschreibung für die ESP32 Variante gefunden.
Außerdem würde mich die Automatik sehr interessieren, einfacher Gleiskreis mit Bahnübergang und 2 Signalen, geht das zum Beispiel über Skript mit Tasten ohne PC Anbindung?
Ich meine Taste drücken und dann Schranke(Servo) zu, Signal(Servo) auf Fahrt und der Zug fährt eine Runde.
Grüße an alle
Matthias
Wenn man I2C auf 3.3V angleicht kann man auch einen mega als pinextender nutzen.
Für Skripts seh dir Mal auf der dccex Seite EXRAIL an. Das löst solche Aufgaben einfach ohne angeschlossenen PC. Die Logik wird mit der Zentralensoftware verlinkt und auf die Zentrale geladen.
Grüße,
Harald.
ich habe mich mal in die DCCEX eingelesen und auch Gleisbesetztmelder ( 7 Abschnitte) über einen MCP 23017 Baustein über I2C angeschlossen. Ging alles relativ einfach. Auch JMRI und Engine Driver funktioniert super, auch gleichzeitig.
Für so eine kleine Anlage optimal.
Nun meine Frage, kann DDCEX auch Servos ansprechen die an anderen Decodern aufgeschaltet sind?
Speziell meine ich die Moba Led Lib, da sind meine 2 Signale und eine Schranke über DCC Adressen 411-413 dran.
Steuern eines Zubehördecoders mit<a linear_address activate>, bin ich da richtig?
Oder muss ich da ein Modul mit PCA9685 verwenden und die Servopositionen neu einstellen?
Bei EXRAIL sind es ja ein paar Dateien die zu bearbeiten sind, um automatisch auf "Knopfdruck" zu fahren und da werde ich mich als nächstes "reinfuchsen".
Grüße
Matthias
hast du einen Link zum Branch devel-z21 bzw. kann ich diesen verwenden?
https://github.com/DCC-EX/CommandStation-EX/tree/devel-z21
git clone https://github.com/DCC-EX/CommandStation-EX.git
git checkout devel-z21
Dann mit Arduino IDE oder PlatformIO für ESP32 kompilieren und uploaden (ach, Deutsch ist so schööön geworden).
Grüße,
Harald.
Mit der alten Roco z21 App bekomme ich eine Verbindung und der serielle Monitor zeigt auch sinnvolle Ausgaben, nur die Lok fährt nicht (die Track Power LEDs flackern nur etwas herum)
Mit der neuen z21 App (schwarzes Logo) klappt es auch nicht besser. Die Gleispannung lässt sich nicht einschalten.
Der POWER Status wechselt zwischen POWER SC <--> POWER Off
Es liegt wohl am ausgewählten Board in der Arduino IDE!? Ich habe mich für ESP32-WROOM-DA entschieden, aber die Pin-Zuordnung zum Motorshield ist wohl fehlerhaft.
++++ PS. Problemlösung gefunden: Board Wemos D1 R32
Die ersten Test sind absolviert. Hierbei gibt es noch Verbesserungspotential:
1. Betrifft nur die neue Schwarze Z21 App: Mit dem Stopp Button oben rechts kann man zwar die Gleispannung ausschalten, aber nicht wieder ein.
2. CV lesen klappt sowohl im Programmiermodus als auch im POM-Modus, wobei er dabei immer auf Track B zugreift, finde ich aber nicht ganz so schlimm. CVs schreiben klappt jedoch weder im Programmiermodus noch im POM-Modus.
3. Starte ich die APP Engine Driver, so wird diese sofort wieder beendet.
1. Wie ist jetzt die Strategie von Roco da, ersetzt die schwarze App Version 1.4.7 (200+MB) von Weihnachen 2022 zu 100% die rote Version 2.6.9 (12MB) von 2017?
Das mit der Gleisspannung seh ich mir an.
2. CV lesen sollte doch nur im Servicemodus gehen, PoM-lesen geht nur mit RailCom Detektor und das haben wir nicht. CV schreiben sollte in beiden Varianten funktionieren, seh ich mir mal an was da fehlt.
3. Ist seit Vorgestern erledigt (ich hab es glatt geschafft einen Bug in ED herauszukitzeln)
Grüße,
Harald.
ich dachte die alte App wäre schön längere Zeit obsolet? Wir im Verein benutzen jedenfalls ausschließlich die schwarze Version 1.4.7.
Grüße, Peter W
zu 2. Wenn ich im POM-Modus "CV lesen" drücke, fängt die Lok auf dem Programmiergleis an zu ruckeln und die CV wird ausgelesen.
zu 3. Dann warte ich mal auf die nächste Version von Engine Driver
Du brauchst nicht auf den nächsten ED warten, einfach dccex updaten (dann ist die Version nicht mehr 5.X.Y und ED ist happy). Oder in version.h 5.66.77 reinschreiben. Dann kann man auch gleichzeitig mit ED anschließen und da den Strom einschalten.
Grüße
Harald.
Zitat - Antwort-Nr.: | Name:
Du brauchst nicht auf den nächsten ED warten, einfach dccex updaten (dann ist die Version nicht mehr 5.X.Y und ED ist happy). Oder in version.h 5.66.77 reinschreiben. Dann kann man auch gleichzeitig mit ED anschließen und da den Strom einschalten.
Verstehe ich das richtig, wenn ich devel-z21 neu downloade und in den ESP lade, ist der Absturzfehler in ED nicht mehr da?
Lag es nur am #define VERSION "5.X.Y" ??
Grüße Uli
Nur registrierte und eingeloggte User können Antworten schreiben.
Einloggen ->
Noch nicht registriert? Hier können Sie Ihren kostenlosen Account anlegen: Neuer N-Liste Account
Zum Seitenanfang
© by 1zu160.net;