RE: Projektvorstellung: Low-Cost Eigenbau-S88 mit Atmega/Arduino

#1 von fantux , 24.11.2019 14:38

Hallo Stummis,

als Teil eines größeren Projekts ist ein kleines "Abfallprojekt" entstanden, dass nichtsdestotrotz für den einen oder anderen praktisch sein könnteDa Bilder ja bei uns Stummis sehr beliebt sind, hier erstmal ein ebensolches:



Letzte Weihnachten habe ich an meiner neuen Steuerung gefeilt und hatte dabei den Bedarf, einen Mikorcontroller mit jeder Menge Input-Pins auszustatten. Dafür eignen sich prinzipiell S88-Decoder - davon hatte ich aber nur noch einen und vor den Feiertagen war auch garantiert nichts mehr Online zu bekommen. Also habe ich mein Elektroniklager durchsucht und dabei noch jede Menge Atmegas (8, 168, 32 gefunden, die von einem anderen Projekt übrig geblieben sind. Bei richtiger Konfiguration (interner Takt, keine serielle Schnittstelle) lassen sich aus einem Atmega 18 IO-Pins rauskitzeln.

Damit war die Lösung für mein IO-Problem schnell klar: ich programmiere die Atmegas als simple Schieberegister. Sidenote: Ein Atmega 8 ist sogar billiger als die vier Chips, die man für einen "regulären" S88-Decoder braucht. Meinen funktionalen Prototypen könnt ihr in diesem Bild sehen:



Weil das Zusammenlöten und selberbauen von Steckern aber ziemlich lange dauert (ich glaube, ich habe 3 Tage für den Prototypen gebraucht) habe ich Platinen entworfen und bei Dirty PCB ätzen lassen.



In diesem Jahr habe ich für die nächste Version meiner Steuerung die geätzten Platinen verwendet (erstes Bild). Bauzeit für die Platinen im Bild waren gerade mal 2h - inklusive eines Fädeldrahtes, um eine fehlende Leiterbahn der ersten Version zu überbrücken. Die fehlende Leiterbahn ist in v2 des PCB-Design schon ergänzt.

Die Platinen sind so entworfen, dass man einen Masseanschluss und 16 Eingänge zur Verfügung hat. Alle Eingänge sind mit PullUps versehen. Außerdem sind auf den Platinen zwei Jumper vorgesehen, die der Atmega auslesen kann. Meine aktuelle Firmware verwendet die nicht, aber man könnte damit z.B. die IO-Bänke zwischen "Eingang" und "Ausgang" umschalten lassen. Ebenso ist ein Programmer-Anschluss auf der Platine vorgesehen - den habe ich aber noch nicht ausprobieren können. Die S88-Anschlüsse sind so angeordnet, dass man die Platinen entweder anreihen kann (siehe Bild) oder dass man vorne und hinten Stecker- oder Pfostenleisten auflöten und alles mit Steckern verbinden kann. Die Steckerbelegung ist (hoffentlich ) kompatibel zu "herkömmlichen" S88-Steckern. Die Platine funktioniert mit 3.3V und 5V. Mehr als 5V sollte man aber lieber nicht draufgeben, außer man braucht sehr dringend durchgebratene Atmegas.

Die Firmware arbeitet rein Interrupt-Getrieben: Wenn die Zentrale die PS-Leitung zieht, werden alle 16 IOs eingelesen. Wenn die Zentrale an der Clock wackelt, wird das nächste Bit am Data Out ausgegeben und das nächte Bit vom Data In gelesen. Ich habe die Software mit den aggressivsten mir bekannten Timings ausprobiert (Intellibox 1) und habe keine Timing-Probleme finden können. Meine Atmegas laufen mit 8MHz internem Takt. Wenn man Strom sparen möchte, könne man auch versuchen, mal nur 1MHz Takt zu konfigurieren.

Ihr könnt Software und PCB (KiCad) hier finden: ShiftRegisterEmulator

Als Gegenstück eignet sich (außer einer IB oder CS2) auch ein beliebiger uC, der den Bus z.B. mit der AsyncShiftIn-Bibliothek auslesen kann.

Falls jemand nachbauen möchte: Viel Spaß! Ich habe übrigens auch noch ein paar Platinen übrig, die ich bei Interesse abgeben könnte.

Gruß,
fantux


Märklin Keyboards, LocoNet und MobileStation2 vernetzten: Neues Leben für Märklins Keyboard 6040 - Connect 6021 light - mit Code!

Das Aussteigen und Blumenpflücken während der Fahrt ist strengstens untersagt!


burgheim und Aurel_B haben sich bedankt!
fantux  
fantux
InterCity (IC)
Beiträge: 665
Registriert am: 29.01.2012
Gleise Märklin C
Spurweite H0
Stromart Digital


RE: Projektvorstellung: Low-Cost Eigenbau-S88 mit Atmega/Arduino

#2 von burgheim , 01.03.2022 13:03

Hallo fantux,

Dein S88-Projekt sieht sehr gut aus. Danke für die Vorstellung hier im Board.

Hast Du den Programmer-Anschluss inzwischen testen können?

Viele Grüße
Markus


burgheim  
burgheim
Beiträge: 1
Registriert am: 12.04.2021
Spurweite H0
Stromart DC, Digital


RE: Projektvorstellung: Low-Cost Eigenbau-S88 mit Atmega/Arduino

#3 von Hägar , 10.01.2023 17:20

Hallo fantux,

ich wollte mir deine Hardware von Github ansehen da ich die Module ganz pfiffig finde, hierzu habe ich mir die Dateien auf dem Rechner gespeichert und leider konnte ich das KiCad Projekt weder mit der V5.1.12 noch mit der aktuellen V6.0.10 von KiCad öffnen.
Es kam immer eine Fehlermeldung, dass in verschiedenen Zeilen (line x '=' expected) ein = erwartet wird und die Schaltplandatei sei keine (does not appear to be an Eeschema file).
Mit welcher KiCad Version muss ich das Projekt öffnen bzw. kann mir jemand sagen was ich falsch mache.

Vielen Dank für eine kurze Info
Viele Grüße
Joachim


Hägar  
Hägar
Beiträge: 1
Registriert am: 02.01.2023


RE: Projektvorstellung: Low-Cost Eigenbau-S88 mit Atmega/Arduino

#4 von risto987 , 11.03.2024 16:47

Hallo fantux,

vorab noch, dass ich bisher etliche Bastelprojekte mit div. Arduinos und Raspberry Pis, auch Picos realisiert habe, aber alles ohne Moba-Bezug. Programmiert habe ich die MPUs ausschließlich mit der Arduino IDE.
ich bin auf Deine S88 gestoßen, als ich nach einer kostengünstigen Lösung für Rückmeldungen gesucht habe. Zum Testen habe ich das erstmal auf einem Steckbrett zusammengesteckt, allerdings mit einem Arduino Nano, weil der gerade greifbar war. Der Sketch lässt sich ja problemlos hochladen und die Pins habe ich entsprechend verdrahtet.
Die Zentrale ist eine Z21PG mit Arduino MEGA, auch noch im Teststadium auf Platte. Bevor ich anfange, das Ganze zu bauen, wollte ich doch erstmal schauen, ob und wie es zusammenspielt.
Software verwende ich RocRail.
Aber irgendwie läuft es nicht. Der Arduino wird mit dem PS-Impuls auch aktiv und sendet was, aber es wird nicht sichtbar.
Muss ich vielleicht beim Arduino Nano was zusätzlich beachten?

Danke für eine kleine Info.
Viele Grüße
Stefan


risto987  
risto987
Beiträge: 1
Registriert am: 19.02.2024
Ort: Dresden
Spurweite TT
Stromart Digital


RE: Projektvorstellung: Low-Cost Eigenbau-S88 mit Atmega/Arduino

#5 von vikr , 11.03.2024 17:32

Hallo Fantux,

Low-Cost Eigenbau-S88 mit Atmega/Arduino

Zitat von fantux im Beitrag #1


Weil das Zusammenlöten und selberbauen von Steckern aber ziemlich lange dauert (ich glaube, ich habe 3 Tage für den Prototypen gebraucht) habe ich Platinen entworfen und bei Dirty PCB ätzen lassen.



Ihr könnt Software und PCB (KiCad) hier finden: ShiftRegisterEmulator
kannst Du kurz erläutern, was Du gegenüber den mehr als fünfzehn Jahre alten Selbstbau-Lösungen auf Arduinobasis (von Rudy, Paco und den vielen anderen) mit Deiner Umsetzung vor fünf Jahren verbessern konntest?

MfG

vik


im Übrigen - Märklin am liebsten ohne Pukos, z.B. als Trix


vikr  
vikr
ICE-Sprinter
Beiträge: 6.311
Registriert am: 23.10.2011
Gleise M, C u. K.
Spurweite H0, N
Stromart Digital, Analog

zuletzt bearbeitet 11.03.2024 | Top

   

Märklin CU 6021 durch moderne Zentrale ersetzen?
App für Ipad

  • Ähnliche Themen
    Antworten
    Zugriffe
    Letzter Beitrag
Xobor Einfach ein eigenes Forum erstellen
Datenschutz