Zum Inhalt springen

Arduino Pinball Controller


Black Knight

Empfohlene Beiträge

vor einer Stunde schrieb Black Knight:

Das wird vermutlich das Flipper-Relais sein. Bei mir sind die beiden Flipper einfach die Spulen 23 und 24.

Zwei Spulen, d.h. Du hast das aufgeteilt und benutzt kein Relais!?

Dann würde es ja Sinn machen wenn Du die 25 für die Steuerung BEIDER Flipper nimmst?!

 

Im Anhang vorbab der Plan der LISY_Mini. Wie gesagt reicht es für die ersten Tests erst einmal wenn Du R1 ( 10K UP von GPIO11 nach 3.3 Volt) anlegst.

Die anderen Einstellungen sind dann (ohne Belegung) 'default', d.h er startet fest Jungle Lord ( oder Black Knight was Dir lieber ist ..)

Ich mach das noch, mehr oder weniger, kompatibel zu den anderen LISYs, d.h. der S1(8er bank) ist für Optionen.

Dann kommen noch 5 Jumper für das Debugging, plus ne DIP Bank für die Spieleauswahl und noch zwei/drei DIP-Bänke die dann je nachdem was LISY_mini steuert jeweils anders belegt sind.

EDIT: Ach ja, die Leuchtdioden haben nen eingebauten Vorwiderstand für 5 Volt, wenn Du normale nimmst brauchst Du noch seperate Widerstände ...

 

vor einer Stunde schrieb Black Knight:

ch wusste schon, warum ich die Dinger bisher ignoriert habe.

Sind die denn 'speziell' ? In meinem jugendlichem Leichtsinn dachte ich dass die einfacher zu handeln sind als die Alphanumerischen ...

lisy_mini_02_SCH.PDF

Bearbeitet von bontango
Link zu diesem Kommentar
Auf anderen Seiten teilen

  • Antworten 1,6Tsd
  • Erstellt
  • Letzte Antwort

Top-Benutzer in diesem Thema

  • Black Knight

    642

  • bontango

    438

  • Volley

    100

  • jabdoa

    97

Top-Benutzer in diesem Thema

Veröffentlichte Bilder

35 minutes ago, bontango said:

Zwei Spulen, d.h. Du hast das aufgeteilt und benutzt kein Relais!?

Die sind auch im Original aufgeteilt, werden aber dann von einem Relais mit zwei Kontaktpaaren geschaltet. Ich habe das Relais jetzt weggelassen und behandle die beiden einfach als zusätzliche Spulen 23 und 24. Die modernen MOSFETs sind besser als die meisten Relais und als pures overengineering habe ich für die Flipper noch bessere Transistoren verwendet.

Aber du hast Recht, vermutlich ist es einfacher wenn ich Kommandos an Spule 25 abfange und dann die Flipper an- und ausschalte.

43 minutes ago, bontango said:

Im Anhang vorbab der Plan der LISY_Mini. Wie gesagt reicht es für die ersten Tests erst einmal wenn Du R1 ( 10K UP von GPIO11 nach 3.3 Volt) anlegst.

Ich habe ja jetzt einen 3B+ gekauft, die Belegung des 40Pin Connectors ist hoffentlich identisch, oder?

Bis jetzt hoffe ich ja noch, euch mit Bier und Würstchen ködern zu können, wenn die Platinen da sind, dann könnten wir das Ganze gemeinsam in Betrieb nehmen - sonst tippen wir uns hier wahrscheinlich die Finger wund.

45 minutes ago, bontango said:

In meinem jugendlichem Leichtsinn dachte ich dass die einfacher zu handeln sind als die Alphanumerischen ...

Ja, das habe ich auch gedacht, aber die Dinger sind leider komplett anders, da sie mit BCD Codes arbeiten und beide Displayzeilen in 16Bytes gequetscht werden. Eigentlich hätte ich es besser wissen sollen, da ich vor 15 Jahren mal eine LED Version der Sys7 Displays entworfen habe, aber das habe ich wohl erfolgreich verdrängt.

Jetzt kippe ich noch zwei Bier auf meinen Frust und morgen sehen wir dann weiter.

Frank

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Was macht denn der einbeinige C10 da oben in deinem MiniLisy? Fehlt da ein GND Symbol?

Bearbeitet von Black Knight
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 3 Stunden schrieb Black Knight:

Ich habe ja jetzt einen 3B+ gekauft, die Belegung des 40Pin Connectors ist hoffentlich identisch, oder?

Bis jetzt hoffe ich ja noch, euch mit Bier und Würstchen ködern zu können, wenn die Platinen da sind, dann könnten wir das Ganze gemeinsam in Betrieb nehmen - sonst tippen wir uns hier wahrscheinlich die Finger wund.

Ja, Belegung ist identisch, und bzgl. Bier und Würstchen wird sich sicher noch was ergeben, der Köder zieht ... 😉

vor 3 Stunden schrieb Black Knight:

Was macht denn der einbeinige C10 da oben in deinem MiniLisy? Fehlt da ein GND Symbol?

Ja, ist noch 'im Aufbau', bitte die 'Sound Control' und den 'PHAT Anschluss ignorieren', das ist noch nicht fertig

Link zu diesem Kommentar
Auf anderen Seiten teilen

Unglaublich. Jetzt habe ich ewig gekämpft, um so einen ätzenden Bug zu finden, den ich mir überhaupt nicht erklären konnte. Heute habe ich dann festgestellt, dass es weder am APC noch an meinem Programm lag. Stattdessen ist wohl ein BCD nach 7 Segment Dekoder auf der Displayplatine gestorben und hat manche Ziffern einfach nicht mehr angezeigt. Neue Displayplatine eingebaut und schon geht's.

Vor dem Umbau habe ich den JL noch gespielt, da ging's noch - so was blödes.

Die Kommas kommen noch, für die muss wohl ein kleiner HW Adapter her.

Frohe Ostern

Frank

P1020491.JPG

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ja, sowas ist ärgerlich, aber wer soll sowas ahnen ... ?

Sind das auf dem Bild die LED Displays von denen Du gesprochen hast?

Und wieso HW Adapter für die Kommas, fehlt da was am APC?

 

Grüsse

Ralf

Link zu diesem Kommentar
Auf anderen Seiten teilen

1 hour ago, bontango said:

Sind das auf dem Bild die LED Displays von denen Du gesprochen hast?

Ja genau. Was da jetzt den Geist aufgegeben hat, war unser über 15 Jahre alter Prototyp. Vielleicht ist durch mein Gefrickel ja eine Lötstelle aufgegangen oder sowas - diese selbst geätzten Protos sind ja doch empfindlicher als ‚normale‘ Boards. Ich kann mir allerdings gar nicht vorstellen, welche Lötstelle so irre Fehler produzieren könnte. Aber das ist was für nach Ostern; jetzt ist das Wetter einfach zu schön.

1 hour ago, bontango said:

Und wieso HW Adapter für die Kommas, fehlt da was am APC?

Ja, es gibt da einen dicken Stecker, der eigentlich für die Ansteuerung des Sound-Boards zuständig ist und in den Williams noch die beiden Kommaleitungen reingefummelt hat. Ich kann im Nachhinein gar nicht mehr sagen, ob ich diesen Stecker damals absichtlich ignoriert oder schlicht übersehen habe. Ich hatte ja nie wirklich vor die numerischen Displays zu unterstützen, da ich den APC ja für Homebrew gebaut habe und ich die numerischen dafür ungeeignet finde. Ich hätte den dicker Stecker dafür also sowieso nicht eingebaut.

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 16 Stunden schrieb Black Knight:

jetzt ist das Wetter einfach zu schön.

Ja, das Wetter ist wirklich Super, ich löte jetzt auf der Terasse 😁

Zu den Displays: Hast Du da bereits etwas veröffentlicht, ist die Doku zu haben? Würde mich interessieren ...

 

Gruesse

Ralf

Link zu diesem Kommentar
Auf anderen Seiten teilen

5 minutes ago, bontango said:

Zu den Displays: Hast Du da bereits etwas veröffentlicht, ist die Doku zu haben? Würde mich interessieren ...

Das haben wir damals auf der Homepage eines Freundes veröffentlicht.

Auf dieser Basis habe ich ja dann im Rahmen meines APC Projektes die alphanumerischen Sys7 Displays gebaut, deren Doku auf GitHub unter Hardware steht. Mit den Dingern hat man auch keinen Ärger mit Kommas oder ähnlichem Zeug.

Aber egal, wer den APC wirklich mit Sys7 Originaldisplays betreiben und Kommas haben will, muss dann halt noch etwas löten. So ungefähr müsste das wohl aussehen:

Gruß

Frank

Sys7_Cable.png

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 27 Minuten schrieb Black Knight:

dann im Rahmen meines APC Projektes die alphanumerischen Sys7 Displays gebaut

Ah, OK Danke!

Wenn ich mir Displays (nach)baue, sollte ich also direkt die alphanumerische Variante zulegen?!

Hast Du die Platinen schon mal produziert, bzw. produzieren lassen?

Evtl. könnte man ja mal einen Satz bei den Chinesen ordern, bzw. da Mindestmenge 5 sind, dann 5*Credit, 5*Driver & 20*Display ..

 

btw: deinen LED-Driver habe ich gerade erst gesehen ... Hab sowas auch für LISY gebaut, bei mir 'natürlich' auf PIC Basis ...

 

LED_Driver.png

Link zu diesem Kommentar
Auf anderen Seiten teilen

Zum rumspielen sind die numerischen Mist, die machen nur Sinn, wenn man nichts selbst machen, sondern nur PinMame nutzen will.

Die alphanumerische Sys7 Variante habe ich noch nicht produzieren lassen. Da man die ausschließlich mit dem APC nutzen kann wollte ich erst mal abwarten, ob überhaupt Bedarf besteht.

Die Dinger sind auch relativ aufwändig, da man so viele einzelne Platinen braucht. Wenn du nur programmieren und basteln willst, wäre ein Display mit 2x Alpha und 2x numerisch ohne Credit vollkommen ausreichend. Davon habe ich auch noch ein paar Boards da.

Ich würde dir aber auch das Display aus meiner F-14 leihen, die ist sowieso noch auf Jahre eine Dauerbaustelle, aber dafür müsste man ein neues Displaykabel besorgen (oder basteln), da ich das Originalkabel zur Zeit mit dem APC verwende.

Am Besten, wir bequatschen auch das bei einem Bier vor Ort, dann kannst du dir das Zeug gleich ansehen.

Bin jetzt den Rest des Tages offline, also bis morgen.

Gruß

Frank

Link zu diesem Kommentar
Auf anderen Seiten teilen

Habe jetzt kurz entschlossen einen 'Comet', ohne MPU und mit defekten Displays erstanden. Der muss jetzt 'nur noch' den Weg von Dresden hierher finden.

Mal schauen ... Ihr habe nicht zufällig ne Spedition die Ihr empfehlen könnt?

D.h. ich würde jetzt gerne den Weg ' alphanumerische Sys7 Variante' einschlagen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ja cool. Das hört sich nach einem idealen Bastelgerät an.

Bei einer Spedition kann ich dir leider nicht helfen, aber das mit dem Sys7 Alpha kriegen wir wohl hin. Wenn die APC Boards wirklich so gut sind, dann würde ich die Platinen für 5 Sets einfach auch bei dem Laden bestellen. Ich könnte zwar auch die Ätzmaschine anwerfen, aber alleine das umständliche Löten von beiden Seiten ist die paar Euro für ein durchkontaktiertes Board wert. Und wenn dir die Wartezeit zu lang wird, habe ich sicherlich noch ein Leihdisplay in meinem Fundus.

Unsere Boards sind übrigens angeblich in Liege.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wie oben schon erwähnt brauchen wir allerdings noch ein System11 Displaykabel oder eigentlich zwei denn mir fehlt auch noch eins. Idealerweise kein Sys11c, denn die sind wieder etwas anders.

Weiß jemand, wo man sowas her bekommt? Im Notfall müsste es sonst wohl die Crimpzange richten.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ein Flachband Kabel gibt es zusätzlich noch.

Du kannst das auf dem Bild meines Pinbot in meinem allerersten Post sehen, da geht ein Flachbandkabel nach links zum Display und oberhalb verläuft auch noch ein bläulicher Kabelstrang. Die Williams Displays bis WPC sind ziemlich dumm, da muss also jedes Steuersignal einzeln rüber geführt werden.

Das kannst du auch im APC Schaltplan sehen, rechts neben dem Display Block sind die ganzen Stecker: 1J8 (Display Segments 2) ist das Flachbandkabel und 1J5, 1J6 sowie 1J7 gehören zu dem Kabelstrang. Zusätzlich sind da auch noch die Versorgungsspannungen für's Display drin, aber die kommen vom Powerboard.

Aber wenn ich das auf die Schnelle richtig sehe, dann hast du Glück. Comet ist ja System9 und Williams hat mit Sys9 die Displaystecker geändert und schon die Belegung eingeführt, die später auch Sys11 hatte. D.h. bei deinem Comet müsste schon ein passender Kabelstrang dabei sein. Dann brauchen wir tatsächlich noch ein simples Flachbandkabel, um die Signale für die zusätzlichen Segmente übertragen zu können.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hört sich gut an, mal schauen wenn der Comet hier ist ...

Arduino ist Heute aus China eingetroffen, und das erste 'blink Programm' erfolgreich installiert.

Jetzt würde ich ihn gerne an die LISY Mini hängen und sehen ob die sich verstehen, was muss ich tun?

Du hattest glaube ich angemerkt dass bei Betrieb ohne HW, also mit nacktem Due, noch kleine Änderungen am Prg. gemacht werden müssen?

Gruesse

Ralf

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Ralf,

wenn keine SD Karte mit gespeicherten Einstellungen da ist, dann kommt die APC Software mit 'Base Code' als Spielmodus hoch. Den kann man dann zwar ändern, aber dazu braucht man ein Display und Schalter.

Da du beides noch nicht hast, müsstest du die Grundeinstellung so ändern, dass er im 'USB control' Modus hoch kommt. Es gibt dazu im 'Betriebssystem'-Teil APC.ino ziemlich weit oben ein Array namens APC_defaults, wo diese Standardeinstellungen gesetzt werden. Darunter steht, welches Byte für was gut ist.

const byte DisplayType = 0;							// which display is used?
const byte ActiveGame = 1;							// Select the active game
const byte NofBalls = 2;							// Balls per game
const byte FreeGame = 3;							//	Free game mode?
const byte DimInserts = 4;                          // Reduce lighting time of playfield lamps by 50%
const byte Volume = 5;                             	// Volume of the speaker
const byte LEDsetting = 6;                          // Setting for the APC_LED_EXP board
const byte DebugMode = 7;                           // debug mode enabled?

ActiveGame ist also Byte 1 und wieder etwas tiefer steht, welche Spielmodi zur Zeit verfügbar sind:

char TxTGameSelect[4][17] = {{" BASE  CODE     "},{" BLACK KNIGHT   "},{"    PINBOT      "},{"  USB  CONTROL  "}};

Demnach ist 'USB Control' der vierte Modus in der Liste, also für das Array die Nummer 3.

Du müsstest also das zweite Byte in APC_defaults auf 3 setzen, also so:

const byte APC_defaults[64] =  {0,3,3,1,0,0,0,0,		 	// system default settings

Dann sollte es klappen.

Viel machen kannst du damit natürlich immer noch nicht, aber du könntest ihm z.B. eine Null schicken (get connected Lisy Hardware) und er sollte mit "APC"\0 antworten. Du kannst auch Lampen ein und ausschalten und danach den Status abfragen u.s.w.

Ich habe jetzt übrigens das Menüsystem soweit geändert, dass man sich auch nur mit Num Displays zurecht finden kann. Als nächstes kommen jetzt die Kommas und dann bin ich schon fast soweit, mich mit dem Raspi zu beschäftigen.

Gruß

Frank

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Frank,

mmmh, derzeit scheitert es bei mir noch an den Basics,

Ich habe mir den Code von github runtergeladen und entpackt in Ordner 'APC-master'

Dann 'doppelklick' auf APC.ino, und es öffnet sich die Arduino IDE, soweit so gut:

drei Probleme:

1 - er meckert rum, dass er das in einen Sketch Ordner mit Namen 'APC' verschieben will, wenn ich das bestätige sehe ich den code

2 - aber bei mir sieht das array anders aus, alte Version auf github??

const byte APC_defaults[64] = {0,3,1,0,0,0,0,0, // system default settings
 
const byte ActiveGame = 0; // Select the active game
const byte NofBalls = 1; // Balls per game
const byte FreeGame = 2; // Free game mode?
const byte DimInserts = 3; // Reduce lighting time of playfield lamps by 50%

3 - wenn ich es zum duehochladen will, meckert er dass er die sdfat.h nicht findet ..

 

Help! 😐

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ups, du hast Recht - ich habe das Displaysetting ja an den Anfang geschoben, damit man es auch im Blindflug mit numerischen Displays irgendwie finden kann. Bei der Version auf GitHub ist ActiveGame noch ganz vorne, d.h. du musst die Null am Anfang von APC_defaults auf 3 setzen.

Das mit den Namen ist bei der Arduinoumgebung so, das Verzeichnis muss den Namen des Hauptprogramms haben.

Die sdfat.h musst du nachinstallieren. In der einfachen Arduino IDE macht man das unter Sketch -> Bibliothek einbinden -> Bibliotheken verwalten...

Da suchst du nach sdfat und drückst auf 'Installieren' und das sollte es gewesen sein.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Danke, bin einen Schritt weiter und kann das Programm hochladen (APC_defaults ist geändert)

Es zeigt sich auch ein serielles Interface am Raspberry (ich muss an den 'native USB' am Arduino, richtig?) aber kommunikation geht noch nicht.

Hab auch mal putty auf seriell 115.200 konfiguriert und via Windows angeschlossen (COM6)

aber wenn ich sende ( z.b. code 0 via ALT und Numpad) kommt nix zurück ...

Irgendeine Idee, bzw. Test/Debugmöglichkeit

Link zu diesem Kommentar
Auf anderen Seiten teilen

Nein, es ist der Programming Anschluss, über den du auch programmiert hast.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ja, da kommt etwas aber irgendwie nur schleppend, wie hast Du das bei Dir getestet?

Mit putty kommt nur manchmal und auch nur mit Zeitverzögerung die Strindanwort 'APC', über den Raspi bekomme ich Schmutzeichen.

Könnte es sein dass ich da noch was 'umbiegen' muss ohne die angeschlossene Hardware?

Ich frage mich auch wie der Arduino umschaltet zwischen dem senden/empfangen im Programm und dem programmieren über den selben Port.

(Hab da im beim googeln was von 'SerialUSB' gelesen, was wohl die andere USB Schnittstelle anspricht)

Vielleicht fällt Dir ja was ein.

Für Heute soll gut sein ..

Gruesse

Ralf

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Moin Ralf,

beim DUE sitzt noch ein zweiter Controller am Programming USB Anschluss. Der bekommt von der IDE mitgeteilt, ob als nächstes ein neues Programm oder nur serielle Daten kommen und je nachdem versetzt er den Hauptcontroller in dem Programmiermodus oder leitet die Daten einfach durch. Da sollte sich also nichts ins Gehege kommen können.

ich habe übrigens gerade einen frischen Arduino aus der Schublade genommen, die Master Version von GitHub darauf geschrieben, ActiveGame auf 3 geändert und ohne APC an ein Terminalprogramm gehängt. Bei mir klappt das einwandfrei, ich kann keine Verzögerung o.ä. bemerken; das Ding reagiert sofort.

Ich benutze HTerm unter Windows und sende 8 Daten- und ein Stopbit, kein Parity. Einzig komisch ist, dass ich schon mehrere APC\0 als Antwort bekomme, sobald ich bei HTerm auf Connect drücke - da scheinen also beim Connect schon irgendwelche Nullen gesendet zu werden.

Läuft die Arduino IDE bei dir gleichzeitig noch? Da gibt es nämlich einen 'Seriell Monitor' der auch auf die serielle Schnittstelle zugreift. Nicht, dass sich da was beisst.

Ich habe dir mein HTerm Fenster mal angehängt, vielleicht kannst du an den Einstellungen ja was erkennen.

Gruß

Frank

 

Hterm.png

Link zu diesem Kommentar
Auf anderen Seiten teilen

Morgen Frank,

habe es gerade mal ausprobiert, kommt nichts zurück. Einmal hab ich haufenweise Strings "Error=24" oder so

zurück bekommen, leider kann ich das nicht mehr nachstellen ...

- Muss ich den Arduino noch mit nem seperaten netzteil betreiben, oder reicht der USB Anschluss?

- APC defaults sieht bei mir so aus: APC_defaults[64] =  {3,3,1,0,0,0,0,0,

- eventuell hat mein Chinaclone nen Schuss oder braucht ein update?

 

2019-04-24 11_44_01-Window.png

Link zu diesem Kommentar
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

×
×
  • Neu erstellen...

Wichtige Information

Datenschutzerklärung und Registrierungsbedingungen