You are not logged in.

  • "amo111" is male
  • "amo111" started this thread

Posts: 459

Location: Walding

Occupation: Automatisierungstechniker

Hobbies: Rudern, Gitarre & Eisenbahnen

Spurweite: H0 what else

  • Send private message

6

Tuesday, December 10th 2019, 7:23am

Der erste große Meilenstein ist geschafft!
Die vorhandenen Komponenten haben allesamt Platz im Gehäuse gefunden und mein Wifi Throttle hat erfolgreich eine Op Session bestanden.
So sieht das ganze aktuell aus:



Wie man auf den Fotos noch unschwer erkennen kann, haben die Bauteile nicht wirklich Platz in dem Gehäuse, deswegen werde ich die Hardware gegen einen normalen ESP32 ohne Display und Laderegelung tauschen.
Ausserdem wird das 0,96" Display gegen ein 1,77" Display ersetzt. Ich hoffe der neue Treiber funktioniert nicht grundlegend anders..

Der exzentrische Drehgeber war ursprünglich dem langen und schmalen ESP Board geschuldet, hat sich jedoch als ziemlich ergonomisch rausgestellt. Für Rechtshänder...
Die Software selbst hat noch ein paar Macken und Kinderkrankheiten, alles Betriebs relevante funktioniert jedoch!
habe gestern bis zu vier Loks im Consist laufen lassen, einfach ankuppeln hinzufügen, richtung auswählen und losfahren. Eine Soundlok hat ein wenig gezickt, also habe ich diese mittig im Consist einfach gelöscht und fertig.
Funktionen werden nur bei der jeweils angewählten Lok angesprochen. Steuern kann man die MU aber über jede enthaltene Adresse.
Zur Zeit muss ich den Consist bei jedem einschalten wieder neu anlegen, in Zukunft werden die MU Adressen jedoch im EEPROM abgelegt werden.

Zitat

Aber ich frage mich, wozu eine Datenbank anlegen? Die kostet doch nur Speicherplatz
Zum
einen weil mich die umsetzung gereizt hat und zum anderen weil die
Definition von Hobby "maximal möglicher Aufwand für minimalst kleinsten
Nutzen" lautet. :D
Angeblich
hat der ESP32 bis zu 4MB SRAM, ich habe bis jetzt allerdings nur
Librarys gefunden die 1024Bytes adressieren können. 1000 Byte sind
allerdings mehr als ausreichend, da ich pro Lok
im Moment nur 12 Bytes brauche. 9 Byte sind die angezeigte ID, 2 Byte die Adresse und 1 Byte die MU Adresse.
Mfg Klaus

Wer einen Rechtschreibfehler findet darf ihn behalten ! :D

Hier gehts nach Montana

  • "MacG" is male

Posts: 171

Location: Dresden

Spurweite: TT und etwas H0

  • Send private message

5

Friday, November 29th 2019, 5:08pm

Interessantes Projekt! Wenn ich mal wieder Zeit habe, wollte ich mich mit dem "SMA30" befassen. Die Bauteile liegen hier schon eine Weile herum.

Ich habe mich noch nicht eingehend mit dem Projekt beschäftigt. Aber ich frage mich, wozu eine Datenbank anlegen? Die kostet doch nur Speicherplatz. Es sollte doch reichen, wie beim Digitrax UT4, die aktuelle Lokadresse auszuwählen. Bzw. in Ergänzung zu diesem alle einzelnen Lokadressen einer Consist auswählen und dann alle gemeinsam ansteuern.
Grüße Mirko

  • "amo111" is male
  • "amo111" started this thread

Posts: 459

Location: Walding

Occupation: Automatisierungstechniker

Hobbies: Rudern, Gitarre & Eisenbahnen

Spurweite: H0 what else

  • Send private message

4

Thursday, November 28th 2019, 12:51pm

Bei meinem Glück.... geich mal auf Holz klopfen^^
Wenn das Projekt keinen spaß machen würde, hätte ich es erst garnicht angefangen, also passt das schon. :)
deinen WiFred kenn ich natürlich. Aber wie bei den käuflichen Objekten, entspricht er nicht 100%ig meinen Vorstellungen.

Das simple WifiThrottle finde ich intressant. Veblüffende Ähnlichkeiten zu mienem :whistling:

Die Umsetzung mit der Folientastatur finde ich jedoch besser als mit Kipp Schalter.
Mfg Klaus

Wer einen Rechtschreibfehler findet darf ihn behalten ! :D

Hier gehts nach Montana

Posts: 351

Location: Bremerhaven

Hobbies: T-Trak irgendwo in der Wüste

Spurweite: N

  • Send private message

3

Thursday, November 28th 2019, 12:29pm

Sehr cool! Klingt, als ob demnächst ein Hersteller sowas auf den Markt bringt, bei den vielen Selbstbau-Projekten, die gerade auftauchen :D

Ich bin selbst ja nicht mit Z21-Protokoll unterwegs, sondern mit wiThrottle, kann daher nur mäßig bei dem unterstützen, womit du gerade startest - aber nur als Tipps, was geht, und ein bisschen Eigenwerbung, werfe ich mal eine Liste der Projekte in den Raum, die ich so kenne :)

Der "SMA30" https://model-railroad-hobbyist.com/node/35652 - ein relativ "einfach zusammensteckbares" wiThrottle-Gerät, gut dokumentiert
Der "Lanbahn Fred" https://lanbahn.net/wordpress/hardware/lanbahnfredi/
Und mein "wiFred" https://newHeiko.github.io/wiFred bzw. https://github.com/newHeiko/wiFred

MfG, Heiko

  • "GMO-Frisco" is male

Posts: 706

Location: Baden

Occupation: Rentner

Hobbies: Modellbahn, FREMO

Spurweite: H0

  • Send private message

2

Thursday, November 28th 2019, 10:46am

Hallo Klaus,

sehr interessantes Projekt. :ilike:

Berichte bitte weiter über den Fortschritt.
...
Grüße Hardy
Fremo Member since 2011
...
GULF MOBILE & OHIO sowie FRISCO und ILLINOIS CENTRAL (GULF)

H0 - damit man's auch ohne Brille sieht

  • "amo111" is male
  • "amo111" started this thread

Posts: 459

Location: Walding

Occupation: Automatisierungstechniker

Hobbies: Rudern, Gitarre & Eisenbahnen

Spurweite: H0 what else

  • Send private message

1

Thursday, November 28th 2019, 8:17am

Z21 Wifi Throttle

Hallo Forum!
Nachdem ich schon des öfteren über die Z21 App und die fehlenden Funktionen der WlanMaus gemäckert habe, habe ich nun selbst Hand angelegt.
Bei meinen Recherchen zu dem Thema bin ich auf einen Beitrag im 1zu160 Forum gestoßen, der die selbe ausgangs Problematik hatte wie ich. https://www.1zu160.net/scripte/forum/for….php?id=1105384
Weil man das Rad nicht jedes mal neu erfinden muss, habe ich eiskalt abgekupfert. :D
Was soll das ding können?
Der Grundgedanke war einen einfachen Handregler zu bauen mit dem Consistbildung möglich ist, am besten so simpel wie möglich. Führende Lok auswählen, mit Tastenkombination in Untermenü wechseln und Lok ohne MU Zuweisung hinzufügen, fertig.
Ebenso soll der Handregler Kabellos und mit Akku sein. Mehr Anforderungen gibt es eigentlich nicht.
Ich will mit dem ding keine Weichen stellen, keine Fahrstraßen schalten und auch keine CVs programmieren. Wie ein Fremo Fred nur eben Kabellos.
Umsetzung:
Zuwerst war die Idee, dann die Ratlosigkeit. Als Automatisierungstechniker habe ich zwar Programmierkentnisse, jedoch nicht ohne Unterstützung einer Software und nicht in dem Ausmaß. Zudem beschränken sich meine C++ Fähigkeiten auf das korrekte Buchstabieren.
Zuerst wurden ein paar Tutorials absolviert, zuerst das Thema Endlos Encoder, dann das Display, Matrix Tastatur und Wifi. eigentlich alles kein Hexenwerk.
Man muss sich nur ordentlich an der Nase nehmen und seine eigenen Programmier Standarts einhalten. Nomenklatur, Programmstruktur usw...
Nachdem alle Elemente erfogreich angebunden und getestet waren ging es an das eigentliche Programm. Ich wusste dass ich eine Lok Datenbank brauchen werde also war dass der erste logische Schritt.

Limitiert durch den Flash Speicher des ESP32 fasst die Datenbank maximal 40 Loks. (9-Stellige ID, 4-Stellige Adresse von 1 -9999, Adresse MU 0-255). Die 9 Stellige ID ergibt sich aus den Anforderungen, Bsp.: BNSF-6735.
Die Datenbank inkl. Menüführung waren mit Abstand die Aufwendigsten Punkte, haben aber einen wichtigen Grundstein der Software gelegt.

Was kann das Ding bis jetzt?
Die komplette Datenbankverwaltung funktioniert bereits, es können Lokomotiven angelegt und auch wieder gelöscht werden. Dabei wird auch überprüft ob Einträge (ID, Adresse) bereits vorhanden sind.
Es können im Fahrmenü Lokomotiven angewählt werden, gefahren werden und die Funktionen 0-9 geschalten werden. Durch den Endlos encoder ist es auch möglich stoßfrei zwischen mehreren fahrenden Loks zu wechseln.
Was soll noch realisiert werden?
als nächstes steht das Consisting an. dadurch dass ich in der Datenbank bereits eine MU Adresse vorgesehen habe, sollte dass kein allzu großes Problem mehr werden. am liebsten würde ich so viele Loks wie möglich in einem

Consist zulassen, in der realität hängt diese Zahl jedoch von der UDP übertragung ab. diesen Punkt werde ich noch austesten müssen wieviel Loks ohne merkbare Zeitverzögerung gleichzeitig angesprochen werden können.
Ebenso fehlen noch sämtliche Einstellungsmöglichkeiten und verschiede Fahr Modi.
Zum them Fahrmodi habe ich noch folgendes vor:
Notching soll global für alle Loks aktiviert werden können. Dabei wird durch wird pro Fahrstufe(Notch 0-8) eine DCC Fahrstufe 0-128 ausgegeben., wobei die Lok nach einer fixen Rampe beschleunigt.
Ist die angewählte Notch kleiner der DCC Fahrstufe, "rollt" die Lok langsam aus. Durch drücken des Encoder Taster wird die Lok aktiv abgebremst.
Ebenso mächte ich in ferner Zukunft die Beschleunigung und Verzögerung von der angehängten Last beeinflussen lassen. dazu soll die Zuglänge in Wagen angegeben werden können.
Wenn alle Funktionen implementiert sind, soll das Projekt in ein ordentliches Gehäuse mit 2,4" Display umziehen aber dass ist noch Zukunftsmusik!

Es bin ich ganz schön ins schwafeln gekommen :rolleyes:
Das Projekt hat mich die letzten zwei Wochen ganz schön vereinnahmt, gut dass es nun im entstehen ist :)
Anbei noch ein paar Bilder.



Versuchsaufbau.


Fahrmenü: oben aktuelle Fahrstufe, Mitte: Lok ID und Richtungspfeil, unten: Scale Speed 0-70MPH und Statusanzeige der Funktionen 0-9.


Keine Ahnung warum das Bild gedreht ist ...
Prinzipieller Aufbau sämtlicher Menüs. Mit den Encoderrad wird durch die einträge gescrollt, mit Klick auf den Encoder wird das jeweilige Untermenü ausgewählt.

Lok erstellen: Mit dem Encoderrad wird durch die 9 stellige ID gescrollt, per Klick kann man die aktuelle Stelle bearbeiten und durch drehen A-Z oder 0-9 auswählen.
Ist die ID fertig eingetragen scrollt man zu "weiter" und bestätigt mit Klick. danach kommt man zur Adresseingabe, diese erfolgt per Keypad.
Danach erscheint entweder eine Info dass die Lok erfolgreich angelegt und im EEPROM gespeichert wurde, oder eine Fehlermeldung (Doppelter Eintrag, Adresse belegt, Datenbank voll)
Mfg Klaus

Wer einen Rechtschreibfehler findet darf ihn behalten ! :D

Hier gehts nach Montana

Similar threads