Zum Inhalt springen

Arduino Pinball Controller


Black Knight

Empfohlene Beiträge

vor 40 Minuten schrieb bontango:

nehme aber an das hier hängt mit der AC Relais Steuerung zusammen

Dann würde ich aber annehmen, dass die Spulen bis einschl. Nr. 8 betroffen wären, die Nummern der problematischen Spulen liegen aber alle höher.  
Ich kann da bisher leider überhaupt keinen Zusammenhang erkennen. Es hat auch nichts mit 'Special Solenoids' zu tun. 
Nur mal als Beispiel: ein Slingshot klappt, der andere aber nicht. Außerdem funktioniert nur einer von 3 Bumpern :my_huh:

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

Ich sehe gerade im Rollergames Manual dass dort das A/C Relais die Nummer 12 hat, ich gehe aber (ausser beim Road Kings) davon aus dass das auf Nummer 14 liegt (was beim Pinbot und F14 auch richtig ist).

Lass uns das erst mal gerade ziehen.

Ich muss dann ne extra Routine für A/C auf 12 machen.

Road Kings läuft ja wie gesagt auch auf 12, hat aber ja noch ein paar andere Unterschiede, lass uns hoffen dass

nicht noch mehr Varianten dazu kommen ...

Hast Du ne Übersicht welche SYS11 jetzt mit No 12 und welche mit No 14 laufen?

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 13 Minuten schrieb bontango:

Hast Du ne Übersicht welche SYS11 jetzt mit No 12 und welche mit No 14 laufen?

Nein, das weiß ich leider auch nicht, aber die meisten scheinen das A/C Relais auf 12 zu haben.

Macht es Sinn dafür ein neues Setting einzuführen? Dann müsste der Nutzer die Nummer des A/C Relais einmal einstellen. Das habe ich beim Testmode des BaseCode genauso gemacht.

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 1 Stunde schrieb Black Knight:

Macht es Sinn dafür ein neues Setting einzuführen?

Ich habe ja eh eine Systemkennung SYS11A, SYS11B, ... in der lisyminigames.csv, ich würde default jetzt solenoid #12 als AC relais nehmen und wenn der Kennung ein Unterstrich folgt auf #14 umschalten.

Pinbot & F14 haetten dann jetzt "SYS11A_" als kennung, wenn wir noch welche finden ist das licht zu ändern.

OK?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Leider keine Verbesserung.

Zitat

[170.257909][0.819257] LISY_W_SOLENOID_HANDLER: Solenoid:9, changed to 1 ( AC is 1)
[170.257947][0.000038] LISY_W_SOLENOID_HANDLER: Solenoid:9, changed to 1 ( AC is 1)
[170.378924][0.120977] LISY_W_SOLENOID_HANDLER: Solenoid:9, changed to 0 ( AC is 1)
[170.378953][0.000029] LISY_W_SOLENOID_HANDLER: Solenoid:9, changed to 0 ( AC is 1)
[171.515363][1.136410] LISY_W_SOLENOID_HANDLER: Solenoid:10, changed to 1 ( AC is 1)
[171.515401][0.000038] LISY_W_SOLENOID_HANDLER: Solenoid:10, changed to 1 ( AC is 1)
[171.635964][0.120563] LISY_W_SOLENOID_HANDLER: Solenoid:10, changed to 0 ( AC is 1)
[171.635994][0.000030] LISY_W_SOLENOID_HANDLER: Solenoid:10, changed to 0 ( AC is 1)
[172.275914][0.639920] LISY_W_SOLENOID_HANDLER: AC-Relais changed to 0
[172.275950][0.000036] LISY_W_SOLENOID_HANDLER: AC-Relais changed to 0
[172.794846][0.518896] LISY_W_SOLENOID_HANDLER: Solenoid:11, changed to 1 ( AC is 0)
[172.794880][0.000034] LISY_W_SOLENOID_HANDLER: Solenoid:11, changed to 1 ( AC is 0)
[172.897545][0.102665] LISY_W_SOLENOID_HANDLER: Solenoid:11, changed to 0 ( AC is 0)
[172.897575][0.000030] LISY_W_SOLENOID_HANDLER: Solenoid:11, changed to 0 ( AC is 0)
[174.059771][1.162196] LISY_W_SOLENOID_HANDLER: AC-Relais changed to 1
[174.059814][0.000043] LISY_W_SOLENOID_HANDLER: AC-Relais changed to 1
[174.180466][0.120652] LISY_W_SOLENOID_HANDLER: AC-Relais changed to 0
[174.180496][0.000030] LISY_W_SOLENOID_HANDLER: AC-Relais changed to 0
[175.337884][1.157388] LISY_W_SOLENOID_HANDLER: Solenoid:13, changed to 1 ( AC is 0)
[175.337934][0.000050] LISY_W_SOLENOID_HANDLER: Solenoid:13, changed to 1 ( AC is 0)
[175.441925][0.103991] LISY_W_SOLENOID_HANDLER: Solenoid:13, changed to 0 ( AC is 0)
[175.441957][0.000032] LISY_W_SOLENOID_HANDLER: Solenoid:13, changed to 0 ( AC is 0)
[176.599261][1.157304] LISY_W_SOLENOID_HANDLER: Solenoid:14, changed to 1 ( AC is 0)
[176.599302][0.000041] LISY_W_SOLENOID_HANDLER: Solenoid:14, changed to 1 ( AC is 0)
[176.724195][0.124893] LISY_W_SOLENOID_HANDLER: Solenoid:14, changed to 0 ( AC is 0)
[176.724228][0.000033] LISY_W_SOLENOID_HANDLER: Solenoid:14, changed to 0 ( AC is 0)
[177.864268][1.140040] LISY_W_SOLENOID_HANDLER: Solenoid:15, changed to 1 ( AC is 0)
[177.864311][0.000043] LISY_W_SOLENOID_HANDLER: Solenoid:15, changed to 1 ( AC is 0)
[177.985063][0.120752] LISY_W_SOLENOID_HANDLER: Solenoid:15, changed to 0 ( AC is 0)
[177.985095][0.000032] LISY_W_SOLENOID_HANDLER: Solenoid:15, changed to 0 ( AC is 0)
[182.939744][4.954649] LISY_W_SOLENOID_HANDLER: Solenoid:19, changed to 1 ( AC is 0)
[182.939790][0.000046] LISY_W_SOLENOID_HANDLER: Solenoid:19, changed to 1 ( AC is 0)
[183.060676][0.120886] LISY_W_SOLENOID_HANDLER: Solenoid:19, changed to 0 ( AC is 0)
[183.060719][0.000043] LISY_W_SOLENOID_HANDLER: Solenoid:19, changed to 0 ( AC is 0)
[185.458058][2.397339] LISY_W_SOLENOID_HANDLER: Solenoid:21, changed to 1 ( AC is 0)
[185.458105][0.000047] LISY_W_SOLENOID_HANDLER: Solenoid:21, changed to 1 ( AC is 0)
[185.578893][0.120788] LISY_W_SOLENOID_HANDLER: Solenoid:21, changed to 0 ( AC is 0)
[185.578925][0.000032] LISY_W_SOLENOID_HANDLER: Solenoid:21, changed to 0 ( AC is 0)

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Meiner Meinung nach müsste doch bei Spulen ab dem AC Relais sowohl das Relsis (als erstes) und dann die Spule angesteuert werden. Danach Spule aus, AC aus.

Das selbe dann bei der nächsten Spule? 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Die Spulennummern im Log decken sich mit denen im Manual? 1-8 sind OK, der Rest nicht?

Zieht das AC Relais überhaupt an? Hat ja auch ne Nummer größer 8...

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 3 Stunden schrieb Volley:

Müsste bei den Spulen nicht das AC Relais gleichzeitig mit anziehen????

Ja, aber das betrifft nur die Spulen von 1 bis 8 und die habe ich aus dem Log herausgenommen, da sie kein Problem zeigen.

vor einer Stunde schrieb Volley:

Die Spulennummern im Log decken sich mit denen im Manual? 1-8 sind OK, der Rest nicht?

Es funktionieren alle Spulen bis auf 16, 17, 18, 20 und 22. Die werden laut Log einfach übergangen.

vor einer Stunde schrieb Volley:

Zieht das AC Relais überhaupt an? Hat ja auch ne Nummer größer 8...

Das A/C Relais ist Spule 12 und funktioniert.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Habs gefunden:

[104.576271][0.000040] LISY_Mini: HW Rule set for solenoid:15 and switch:33
[104.576330][0.000059] LISY_Mini: HW Rule set for solenoid:16 and switch:34
[104.576382][0.000052] LISY_Mini: HW Rule set for solenoid:17 and switch:35
[104.576431][0.000049] LISY_Mini: HW Rule set for solenoid:19 and switch:36
[104.576481][0.000050] LISY_Mini: HW Rule set for solenoid:21 and switch:37


wenn eine HW rule gesetzt ist ignoriere ich derzeit die Kommandos

Link zu diesem Kommentar
Auf anderen Seiten teilen

OK, das macht Sinn, aber das deckt sich nur teilweise mit den Spulen, die bei mir nicht funktionieren - das sind ja 16, 17, 18, 20 und 22. 

Einige Kommandos scheinen auch durch zu kommen, zumindest wird hier Spule 15 angesprochen, obwohl sie eine Special Solenoid ist:

Zitat

[152.625150][0.039489] LISY_W_SOLENOID_HANDLER: Solenoid:5(29), changed to 0 ( AC is 1)
[152.625178][0.000028] LISY_W_SOLENOID_HANDLER: Solenoid:5(29), changed to 0 ( AC is 1)
[152.685505][0.060327] LISY_W_SOLENOID_HANDLER: Solenoid:3(27), changed to 0 ( AC is 1)
[152.685529][0.000024] LISY_W_SOLENOID_HANDLER: Solenoid:3(27), changed to 0 ( AC is 1)
[152.745990][0.060461] LISY_W_SOLENOID_HANDLER: Solenoid:2(26), changed to 0 ( AC is 1)
[152.746021][0.000031] LISY_W_SOLENOID_HANDLER: Solenoid:2(26), changed to 0 ( AC is 1)
[154.161737][1.415716] LISY_W_SOLENOID_HANDLER: Solenoid:15, changed to 1 ( AC is 1)
[154.161773][0.000036] LISY_W_SOLENOID_HANDLER: Solenoid:15, changed to 1 ( AC is 1)
[154.337954][0.176181] LISY_W_SOLENOID_HANDLER: Solenoid:15, changed to 0 ( AC is 1)
[154.337984][0.000030] LISY_W_SOLENOID_HANDLER: Solenoid:15, changed to 0 ( AC is 1)
[158.000090][3.662106] LISY_W_SOLENOID_HANDLER: Solenoid:8(32), changed to 1 ( AC is 1)
[158.000268][0.000178] LISY_W_SOLENOID_HANDLER: Solenoid:8(32), changed to 1 ( AC is 1)
[158.044173][0.043905] LISY_W_SOLENOID_HANDLER: Solenoid:8(32), changed to 0 ( AC is 1)
[158.044204][0.000031] LISY_W_SOLENOID_HANDLER: Solenoid:8(32), changed to 0 ( AC is 1)
[158.060271][0.016067] LISY_W_SOLENOID_HANDLER: Solenoid:8(32), changed to 1 ( AC is 1)
[158.060297][0.000026] LISY_W_SOLENOID_HANDLER: Solenoid:8(32), changed to 1 ( AC is 1)
[158.164408][0.104111] LISY_W_SOLENOID_HANDLER: Solenoid:1(25), changed to 1 ( AC is 1)
[158.164443][0.000035] LISY_W_SOLENOID_HANDLER: Solenoid:1(25), changed to 1 ( AC is 1)

Kann es sein, dass nicht alle Kommandos für diese Spulen angefangen werden? 
Ich habe nämlich gerade nochmal einen Test gemacht und da blieb der linke Slingshot (Spule 15) plötzlich dauerhaft aktiv, was mich eine Sicherung gekostet hat.

Link zu diesem Kommentar
Auf anderen Seiten teilen

ahrg, das war mal wieder so ne Zählung fängt bei Null an Geschichte

das mit den doppelten debug Eintrag war übrigens NUR im debug

war auch beim sound debug so, allerdings da mit leicht verändertem String

Neues update ist online ....

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 18 Minuten schrieb bontango:

Neues update ist online ....

Jup, die Spulen funktionieren im Spiel jetzt alle und er lässt die Special Solenoids im PinMame-Spulentest aus. Das finde ich aber auch OK; wer seine Spulen testen möchte kann das ja im Testmode des BaseCode tun.

vor 20 Minuten schrieb bontango:

das mit den doppelten debug Eintrag war übrigens NUR im debug

war auch beim sound debug so

Beim Solenoid-Debug sind sie tatsächlich weg, aber beim Sound-Debug sind sie noch da:

Zitat

loading rom 0: rolr-u26.lu3
loading rom 1: rolr_u27.l2 
done
[139.305491][0.455561] play soundindex 0 on board 1 
[142.277014][2.971523] timer experid, nvram delayed write
[146.491408][4.214394] play soundindex 0 on board 1 
[146.493109][0.001701] play soundindex 3 on board 1 
[156.272973][9.779864] play soundindex 3 on board 1 
[156.274879][0.001906] play soundindex 4 on board 1 
[165.453728][9.178849] play soundindex 4 on board 1 
[165.454473][0.000745] play soundindex 7 on board 1 
[174.520752][9.066279] play soundindex 7 on board 1 
[174.523504][0.002752] play soundindex 11 on board 1 
[186.617700][12.094196] play soundindex 11 on board 1 
[186.619610][0.001910] play soundindex 14 on board 1 
[197.563558][10.943948] play soundindex 14 on board 1 
[197.564667][0.001109] play soundindex 12 on board 1 
[088.180878][67754890.616211] play soundindex 12 on board 1 
[088.181922][0.001044] play soundindex 0 on board 1 
LISY80_SIG_HANDLER: received SIGUSR1

Soll ich mal versuchen herauszufinden, ob Lisy die doppelten Soundkommandos tatsächlich an den APC sendet oder ob's die nur im Log gibt?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Lisy sendet für jeden Sound tatsächlich immer zwei Kommandos. Diese kommen allerdings nicht gleichzeitig, sondern er sendet das Kommando nochmal wenn der Sound wieder beendet werden soll also unmittelbar bevor der nächste Sound startet. Man kann das im Log schon sehen:

Zitat

loading rom 0: rolr-u26.lu3
loading rom 1: rolr_u27.l2 
done
[149.099703][0.537073] play soundindex 0 on board 1 
[152.002010][2.902307] timer experid, nvram delayed write
[165.516799][13.514789] play soundindex 0 on board 1 
[165.517518][0.000719] play soundindex 3 on board 1 
[173.868148][8.350630] play soundindex 3 on board 1 
[173.868951][0.000803] play soundindex 4 on board 1 
[179.834594][5.965643] play soundindex 4 on board 1 
[179.835323][0.000729] play soundindex 7 on board 1 
[184.696521][4.861198] play soundindex 7 on board 1 
[184.697243][0.000722] play soundindex 11 on board 1 
[192.832439][8.135196] play soundindex 11 on board 1 
[192.833170][0.000731] play soundindex 14 on board 1 

An den Zeitstempeln sieht man, dass zwischen beiden Kommandos immer ein paar Sekunden liegen - das ist die Zeit, die der Sound läuft bevor der nächste aktiviert wird.

Ich habe das jetzt zusätzlich vom APC mitloggen lassen und das sieht genauso aus.

Link zu diesem Kommentar
Auf anderen Seiten teilen

@Black KnightKurzes Feedback damit dDu weisst das ich dich nicht vergessen habe 😉

ich habe mir eben mal den Altsound code angeschaut

https://github.com/vpinball/pinmame/blob/master/src/wpc/snd_alt.h

der verwendet die selben Daten wie mein soundhandler, bin zwar noch

nicht 100% durchgestiegen aber bin auf recht gute Infos zu

den Soundcodes 0x55 & 0xAA gestossen

-> Zeile 617

-> if (((cmd_buffer[3] == 0x55) && (cmd_buffer[2] == 0xAA)) // change volume?

Da sind wir doch auch mal drüber gestolpert?

Ich stöber am WE weiter ....

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 48 Minuten schrieb bontango:

Kurzes Feedback damit dDu weisst das ich dich nicht vergessen habe

Danke dafür. Ich komme mir schon vernachlässigt vor. 😉

vor 49 Minuten schrieb bontango:

Da sind wir doch auch mal drüber gestolpert?

Ja, aber bei uns waren es die 0x6X Kommandos, die für die Lautstärke zuständig waren und das scheint auch bei System11C noch so zu sein.

Dieser Teil hier scheint sich mehr auf die WPC Soundboards zu beziehen.

Zitat
if ((core_gameData->gen == GEN_WPCDCS) ||
(core_gameData->gen == GEN_WPCSECURITY) ||
(core_gameData->gen == GEN_WPC95DCS) ||

(core_gameData->gen == GEN_WPC95))

Gibt Altsound überhaupt für System11 oder heissen die Typen nur WPC und System11 steckt da irgendwo mit drin?

vor 59 Minuten schrieb bontango:

Ich stöber am WE weiter ....

Bin gespannt. Ansonsten klingt die Musik nämlich super; ich habe mittlerweile auch das automatische Looping implementiert, so dass die Musikstücke nicht mehr auslaufen wenn man nur lang genug wartet. Das hat auch die Größe der Musikdaten stark reduziert, da die Stücke teilweise nur unterschiedliche Intros haben, aber das gleiche Hauptthema 'loopen'. 
 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Irgendwie haben die pinmame Jungs wohl mit WPC angefangen, WPC Verweise tauchen immer wieder auf ( der ganze pin spezifische source für fast alle Flipper (auch Gottlieb) steht z.B. im Unterverzeichnis ./wpc

Bei pinsound habe ich nen direkten Verweis auf SYS11C gefunden. Pinsound unterdrückt einfach jeden zweiten Soundbefehl. Könnte ich auch so machen ....

 

 if (pinsound_studio_enabled && init_pinsound == FALSE)
        {
                if (!strcmp(sndbrd_typestr(0) ? sndbrd_typestr(0) : sndbrd_typestr(1), "WMSS11C"))
                {
                        sys11_patch = TRUE;
                        sys11_counter = TRUE;
                }
                else
                        sys11_patch = FALSE;

                init_pinsound = TRUE;


.

.

.

und dann später:

.

 if (init_pinsound)
        {
                // skip instruction every 2 instr
                if (!(sys11_patch && sys11_counter))
                {


.

.

     // skip instruction every 2 instr
                sys11_counter = !sys11_counter;

 

 

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

OK, wenn das alle System11C betrifft dann macht es tatsächlich Sinn, das bei dir abzufangen - du unterscheidest ja sowieso zwischen den verschiedenen Generationen. 
Bei mir müsste man das in die Exceptions für jedes betroffene Gerät einbauen.

Gibt es sowas auch für System11B? Die haben nämlich teilweise dieselbe Sound HW wie 11C.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Momentan kann ich aber noch gar nicht sicher sagen, ob es bei System11B auch vorkommt. Es ist halt nur naheliegend, wenn die HW identisch ist.

Weißt du eigentlich, wie man beim PinMame SW mäßig (also ohne APC oder so) bestimmte Schalter auslösen kann, damit er ins Spiel geht? Ich würde das nämlich gerne mal beim Windows und beim Raspi PinMame mit den Rollergames ROMs machen, um zu sehen ob unsere ständig neu startenden Musikstücke ein reines Problem von Unix PinMame ist. Dazu muss man allerdings wirklich ins Spiel gehen, denn der PinMame Musiktest funktioniert beim Rollergames ja komischerweise einwandfrei.

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 1 Stunde schrieb bontango:

ich hoffe ich erwische immer den zweiten und nicht den ersten? IMHO ist das im pinsound code Zufall ...

Scheinbar filterst du tatsächlich den ersten Befehl raus, denn im Musiktest fangen die Musikstücke jetzt immer erst an, wenn sie eigentlich aufhören sollten.  
Komischerweise passiert das nur bei der Musik, der Soundtest klingt korrekt. :my_huh:

vor 21 Stunden schrieb bontango:

Ja, du kannst da alles über die Tastatur simulieren. Wenn Du 'TAB' drueckst kommt ein Menu

Stimmt TAB war's. Mein Videoautomat war zu lange defekt, daher habe ich den ganzen Mame Kram wieder vergessen.

Ich habe den folgenden Test jetzt am Windows-PinMame gemacht: Rollergames emuliert, die Schalter für die Balltruhe gesetzt und ein Spiel gestartet. Das funktioniert einwandfrei und das Log für die Kommandos zeigt zwar auch die doppelten Soundkommandos aber das eigentliche Problem mit den ständig neu startenden Musikstücken kommt hier nicht vor.

Weißt du, wie ich das gleiche jetzt mit dem Lisy-PinMame machen kann? Kann ich unter Lisy auch einen X-Server starten oder läuft PinMame auch in der Konsole?  
Das Ziel wäre, da denselben Test zu wiederholen - wenn wir dann die Neustarts bei der Musik sehen, dann wüssten wir, dass es ein Unix-PinMame Problem ist.

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