Récupération info Switchs sur optocoupleur

Astuces, conseils, infos, tout sur les flip en général (tout type confondu)

Flipper concerné :

Si necessaire, merci de proposer un flipper en relation avec ce sujet.
Règles du forum
Attention, si votre sujet ne concerne pas tous les flippers, merci de poster dans la rubrique DOT, numérique/alpha ou électromécanique.
Répondre
Avatar de l’utilisateur
lioevry
Dept: 91
Rech/Achete: 0 flip
Messages : 3814
Inscription : mar. 11 08, 2015 19:42
Niveau : Confirmé
Pro / revendeur : non
Localisation : essonne 91130

Re: Récupération info Switchs sur optocoupleur

Message par lioevry » dim. 26 01, 2025 18:59

moi je comprends DEFVAL à l'envers
mettre plutôt 0xFF puisque c'est "an opposite value will cause an interrupt"
donc en passant de "1" à "0" une des entrées va générer l'INT
si tu flippes ... le Flipper reste ton plus fidèle partenaire!
http://www.pinballowners.com/lioevry

Avatar de l’utilisateur
cari
Dept: 30
Rech/Achete: 0 flip
Messages : 286
Inscription : mar. 08 06, 2010 14:41
Pas vu depuis 1 mois
Niveau : Débutant
Localisation : Gard limite vaucluse et BDR

Re: Récupération info Switchs sur optocoupleur

Message par cari » dim. 26 01, 2025 21:14

lioevry a écrit : dim. 26 01, 2025 18:59 moi je comprends DEFVAL à l'envers
mettre plutôt 0xFF puisque c'est "an opposite value will cause an interrupt"
donc en passant de "1" à "0" une des entrées va générer l'INT
Complètement exact :x26: , j'ai pas assez dormi cette nuit, je n'ai pas "les yeux devant les trous" bon demain je regarde ça de plus prés.....
Flipper Heavy Metal Meltdown, Excalibur, Jungle lord, Xenon, Big guns, BH, Super orbit, LW3, TAF, Judge dredd
Juke-box jeutel compact, Fléchette Merkur, Baby Bonzini B60, Borne arcade Street Fighter, Soccer....

Avatar de l’utilisateur
cari
Dept: 30
Rech/Achete: 0 flip
Messages : 286
Inscription : mar. 08 06, 2010 14:41
Pas vu depuis 1 mois
Niveau : Débutant
Localisation : Gard limite vaucluse et BDR

Re: Récupération info Switchs sur optocoupleur

Message par cari » mar. 28 01, 2025 20:02

lioevry,
Je vais poser peut être une question bête, car là j'ai du mal à trouvé la bonne configuration pour voir les INT faire leurs boulots lors du déroulement de mon programme.

je n'ai pas contrôlé ce comportement avec les PCF, mais avec la MPC23017 lorsque j'appuis sur un switch du flipper la tension sortie optocoupleur coté return CN10 (de O1 à O7 avec GND RPI) "ligne qui va vers les GPIOA du MPC" la tension chute de 3.9 volts à 3.4 volts ???? cela est il normal ? ou j'ai raté quelque chose.
Flipper Heavy Metal Meltdown, Excalibur, Jungle lord, Xenon, Big guns, BH, Super orbit, LW3, TAF, Judge dredd
Juke-box jeutel compact, Fléchette Merkur, Baby Bonzini B60, Borne arcade Street Fighter, Soccer....

Avatar de l’utilisateur
lioevry
Dept: 91
Rech/Achete: 0 flip
Messages : 3814
Inscription : mar. 11 08, 2015 19:42
Niveau : Confirmé
Pro / revendeur : non
Localisation : essonne 91130

Re: Récupération info Switchs sur optocoupleur

Message par lioevry » mar. 28 01, 2025 20:25

C'est comme-ci tu n'avais pas déclaré le port A ou B du MCP23017 en entrées et qu'il force un niveau "1"

Vérifies cela Stp?
si tu flippes ... le Flipper reste ton plus fidèle partenaire!
http://www.pinballowners.com/lioevry

Avatar de l’utilisateur
cari
Dept: 30
Rech/Achete: 0 flip
Messages : 286
Inscription : mar. 08 06, 2010 14:41
Pas vu depuis 1 mois
Niveau : Débutant
Localisation : Gard limite vaucluse et BDR

Re: Récupération info Switchs sur optocoupleur

Message par cari » mar. 28 01, 2025 20:29

lioevry a écrit : mar. 28 01, 2025 20:25 C'est comme-ci tu n'avais pas déclaré le port A ou B du MCP23017 en entrées et qu'il force un niveau "1"

Vérifies cela Stp?
OK je vérifie comment ? Sinon dans mon programme je les ai biens déclarées en entrées

IODIRA et IODIRB Valeur configurée : 0xFF donc bien réglé en lecture sur les entrées CN10 et CN8
Flipper Heavy Metal Meltdown, Excalibur, Jungle lord, Xenon, Big guns, BH, Super orbit, LW3, TAF, Judge dredd
Juke-box jeutel compact, Fléchette Merkur, Baby Bonzini B60, Borne arcade Street Fighter, Soccer....

Avatar de l’utilisateur
lioevry
Dept: 91
Rech/Achete: 0 flip
Messages : 3814
Inscription : mar. 11 08, 2015 19:42
Niveau : Confirmé
Pro / revendeur : non
Localisation : essonne 91130

Re: Récupération info Switchs sur optocoupleur

Message par lioevry » mar. 28 01, 2025 20:51

Et tu as aussi mis 0x00 dans les registres GPPU pour ne pas utiliser les resistances de pull-up?
Ce composant est une purge côté programmation...! :x25:
Dernière modification par lioevry le mar. 28 01, 2025 20:56, modifié 1 fois.
si tu flippes ... le Flipper reste ton plus fidèle partenaire!
http://www.pinballowners.com/lioevry

Avatar de l’utilisateur
cari
Dept: 30
Rech/Achete: 0 flip
Messages : 286
Inscription : mar. 08 06, 2010 14:41
Pas vu depuis 1 mois
Niveau : Débutant
Localisation : Gard limite vaucluse et BDR

Re: Récupération info Switchs sur optocoupleur

Message par cari » mar. 28 01, 2025 20:56

lioevry a écrit : mar. 28 01, 2025 20:51 Et tu as aussi mis 0x00 dans les registres GPPU pour ne pas utiliser les resistances de pull-up?
Oui j'ai bien mis GPPUA 0X0C et B 0X0D en 0x00 pour ne pas utiliser le pull-up
Flipper Heavy Metal Meltdown, Excalibur, Jungle lord, Xenon, Big guns, BH, Super orbit, LW3, TAF, Judge dredd
Juke-box jeutel compact, Fléchette Merkur, Baby Bonzini B60, Borne arcade Street Fighter, Soccer....

Avatar de l’utilisateur
lioevry
Dept: 91
Rech/Achete: 0 flip
Messages : 3814
Inscription : mar. 11 08, 2015 19:42
Niveau : Confirmé
Pro / revendeur : non
Localisation : essonne 91130

Re: Récupération info Switchs sur optocoupleur

Message par lioevry » mar. 28 01, 2025 20:58

Envoies moi ton prog. J'aurais peut-être une idée lumineuse en le decriptant...?
si tu flippes ... le Flipper reste ton plus fidèle partenaire!
http://www.pinballowners.com/lioevry

Avatar de l’utilisateur
cari
Dept: 30
Rech/Achete: 0 flip
Messages : 286
Inscription : mar. 08 06, 2010 14:41
Pas vu depuis 1 mois
Niveau : Débutant
Localisation : Gard limite vaucluse et BDR

Re: Récupération info Switchs sur optocoupleur

Message par cari » mer. 29 01, 2025 15:49

lioevry a écrit : mar. 28 01, 2025 20:58 Envoies moi ton prog. J'aurais peut-être une idée lumineuse en le decriptant...?
merci lioevry pour tes remarques.

point 1 = # Initialisation GPIO et I2C
GPIO.setmode(GPIO.BCM)
GPIO.setup(INTA, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.setup(INTB, GPIO.IN, pull_up_down=GPIO.PUD_UP)
INTA/B avec Pull_UP interne uniquement si tu as enlevé les resistances externes? C’est bien PUD_UP et pas PULL-UP?

j'ai laissé les résistances externes de 4.7 kΩ sur INTA et INTB vers le GPIO Raspberry (je pensé qu'il n' en avais pas sur les gpio)
du coup je ne laisse que :

Code : Tout sélectionner

# Initialisation GPIO
GPIO.setmode(GPIO.BCM)  # Utilisation du mode BCM (numérotation GPIO)
GPIO.setup(INTA, GPIO.IN)  # Désactivation des pull-ups internes
GPIO.setup(INTB, GPIO.IN)
Point 2 pour IOCONA a déplacer en premier pour être sûr d’être en BANK0 c'est plus judicieux; du coup pour le registre le bit 5 0x20 active SEQOP=0 si je ne me trompe pas, SEQOP=0 signifie que les adresses des registres s’incrémentent automatiquement en lecture/écriture on est d'accord ?.

Code : Tout sélectionner

bus.write_byte_data(MCP23017_ADDR, 0x0A, 0x20) # IOCONA : Active-low INTA + SEQOP = 0
bus.write_byte_data(MCP23017_ADDR, 0x0B, 0x20) # IOCONB : Active-low INTB + SEQOP = 0
Flipper Heavy Metal Meltdown, Excalibur, Jungle lord, Xenon, Big guns, BH, Super orbit, LW3, TAF, Judge dredd
Juke-box jeutel compact, Fléchette Merkur, Baby Bonzini B60, Borne arcade Street Fighter, Soccer....

Avatar de l’utilisateur
lioevry
Dept: 91
Rech/Achete: 0 flip
Messages : 3814
Inscription : mar. 11 08, 2015 19:42
Niveau : Confirmé
Pro / revendeur : non
Localisation : essonne 91130

Re: Récupération info Switchs sur optocoupleur

Message par lioevry » mer. 29 01, 2025 16:41

Non pour le dernier point , c'est l'inverse..!
en mettant 0x20 on met SEQOP=1 et donc pas d'incrément entre 2 lect/ecriture
c'est ce que je propose de tester...
Voir explication Section 1.3.1 “Byte Mode and Sequential Mode" (c'est pas très facile à piger...)
C'est dommage, je vois qu'il existe des cartes à base de PCF8575 (16 bit I/O et 400kbit/s sur le Bus IIC) sans programmations de registres compliquées...
si tu flippes ... le Flipper reste ton plus fidèle partenaire!
http://www.pinballowners.com/lioevry

Répondre