[WIP 10%] Manettes sans fils NeoGeo
Page 1 sur 2
Page 1 sur 2 • 1, 2
[WIP 10%] Manettes sans fils NeoGeo
2016/02/06
Une chose est toujours pénible, ces fils... La TV doit toujours se trouver à une distance maximum de la longueur de ces fils... Il y en a marre.
Quel est le projet dans lequel je me lance. Je vais créer 2 modules qui s'adapteront respectivement à la manette et à la console. Ces deux modules communiqueront par un protocole que nous allons définir ensemble ou pas.
Si nous pouvons utiliser un protocole existant pour etre compatible avec des manettes sans fils existantes, nous le feront, sinon nous en définirons un.
Les points de contrôle :
- Définition d'une ergonomie de réglage et d'appairage de notre module
- Choix si nous utiliserons les boutons de la manette ou des boutons supplémentaires pour appairer et régler,
- Choix des fonctions supplémentaires (autoshoot).
J'ai essayé de développer le travail à réalisé. Si quelqu'un a envie de s'investir, c'est le moment. Aujourd'hui j'ai choisi la technologie bluetooth pour être compatible dans un futur proche avec une application tablette / mobile qui permettra de jouer sur notre console favorite avec une tablette (beurk), mais ca pourrait depanner
Dites moi ce que vous en pensez.
Du coup j'ai essayé de faire un diagramme de séquence. Je sais qu'il y a des informaticiens parmi nous, j'espère qu'ils me donneront leur avis :p
2016/02/19
Comme certains ont pu le voir, je n'ai pas été présent cette semaine et je n'ai donc pas beaucoup fait avancer ce WIP... Désolé pour mes lecteurs :p, mais je viens de déménager et j'ai cassé mon téléphone samedi dernier. Je n'avais donc pas internet, mais je n'ai pas chômer.
Travail fait :
Ecriture et lecture des Entrées et des Sorties par l'intermédiaire d'une variable informatique. Ce n'est pas beaucoup, mais c'est déjà ce travail de fait. Pour les plus curieux je donne le code fourni ainsi que des explications plus détaillées.
C'est le schéma de la carte électronique que nous allons utiliser. Comme nous pouvons le voir, nous allons utiliser avoir un grand nombre d'entrées et de sorties à lire pour pouvoir accéder aux différentes données. Ce qui est important maintenant est de faciliter leur manipulation. Nous allons donc regrouper l'ensemble de ces entrées / sorties dans une seule variable qui sera la donnée à échanger par bluetooth.
Nous configurons en entrées / sorties l'ensemble des pins (entrées pour le coté manette et sorties pour le coté console). Il ne reste plus qu'à regrouper l'ensemble des données dans un seul mot en sélectionnant uniquement la partie intéressante du registre que l'on lit / écrit.
- Coté console:
#include "PjtManetteOutput.h"
/* Configuration Microcontroleurs Inputs/Outputs*/
char i8_init_output()
{
char i8_valid_init;
i8_valid_init = 0;
/* Register configuration */
/* 0 : input; 1 : output */
DDRD = 0b11111110; // pin 7 (box weight) to pin 0 (low weight)
DDRB = 0b00111111; // pin 13 (box weight) to pin 8 (low weight)
DDRC = 0b00011111; // pin A5 (box weight) to pin A0 (low weight)
return i8_valid_init;
}
/* Write the outputs with the word data */
char i8_ouput_write(unsigned short ui16_data)
{
char i8_valid_write_output;
i8_valid_write_output = 0;
/* Ecrire l'ensemble des sorties depuis le mot ui16 */
/* BP16 = (ui16_data >> 15) && 1;
* ...
* BP02 = (ui16_data >> 01) && 1;
* BP01 = (ui16_input_read) && 1;
*/
PORTD = (PORTD & 0b00000011) | ((char) (ui16_data << 2));
PORTB = (char) (ui16_data >> 6);
PORTC = (PORTC & 0b11110000) | ((char) (ui16_data >> 12));
return i8_valid_write_output;
}
- Coté Manette:
#include "PjtManetteInput.h"
/* Configuration Microcontroleurs Inputs/Outputs*/
char i8_init_input()
{
char i8_valid_init;
i8_valid_init = 0;
/* Register configuration */
/* 0 : input; 1 : output */
DDRD = 0b00000010; // pin 7 (box weight) to pin 0 (low weight)
DDRB = 0b00000000; // pin 13 (box weight) to pin 8 (low weight)
DDRC = 0b00000000; // pin A5 (box weight) to pin A0 (low weight)
return i8_valid_init;
}
/* Read the inputs and return them in word data */
unsigned short ui16_input_read()
{
unsigned short ui16_input_read;
ui16_input_read = 0;
/* Ecrire l'ensemble des entrées dans le mot ui16 */
/* ui16_input_read = BP16 << 15 +
* ...
* BP02 << 1 +
* BP01;
*/
ui16_input_read = ((unsigned short) PIND >> 2) |
((unsigned short) PINB << 6) |
((unsigned short) PINC << 12);
return ui16_input_read;
}
La prochaine étape va être de gérer des interruptions temporaires pour que je puisse venir contrôler régulièrement l'état de mes entrées et écrire régulièrement mes sorties. Cette interruption permettra aussi de nous faire évoluer dans les graph d'état (figure 1 et figure 2). Cette étape consistera à contrôler toutes les 5ms si les entrées de la manette ont changées ou non. (Je l'ai fait hier soir)
Lorsque celles ci-changent, il devra avoir une mise à jour des registres pour faire évaluer les entrées et sorties
Je vous tiendrais avancé de la suite du projet
Bisous
Dernière édition par lbontron le Sam 27 Fév 2016 - 9:47, édité 7 fois
Re: [WIP 10%] Manettes sans fils NeoGeo
Tout ça, c'est du Klingon pour moi mais ça a l'air cool
Moi, je branche et je joue
Moi, je branche et je joue
cypher- Scellé
- Messages : 4581
Date d'inscription : 25/10/2015
Age : 47
Localisation : 62
Re: [WIP 10%] Manettes sans fils NeoGeo
J'en pense que t'es calé, en électronique! ^^
J'avais suivi ta consolisation de slot MVS, j'avais l'impression que tu mangeais un Big Tasty en même temps, tellement ça paraissait simple pour toi.
J'aime bien aussi, alors je vais suivre le projet de près.
J'avais suivi ta consolisation de slot MVS, j'avais l'impression que tu mangeais un Big Tasty en même temps, tellement ça paraissait simple pour toi.
J'aime bien aussi, alors je vais suivre le projet de près.
_________________
Sigmax- Near-mint
- Messages : 808
Date d'inscription : 25/10/2015
Localisation : Blast City
Re: [WIP 10%] Manettes sans fils NeoGeo
On est parti. On va commencer par la partie que j'aime le moins, les IHM...
Il y a plusieurs choses à faire. Il faut appairer le récepteur et l'émetteur et je pensais pouvoir paramétrer certaines fonctions (autoshoot).
Il y a plusieurs solutions qui s'offrent à nous :
2. Régler sur la carte électronique.
Avantages : Simple pour le programmeur. Pas de risques de confusion de l'état en cours.
Inconvénients : Pénible, car il faut toujours accéder à la carte électronique (pas de montage en interne possible)
3. Un mélange des deux (Boutons sur l'électronique console + manette).
Avantages : Permet d'avoir des modules fermés. Pas besoin de les démonter.
Inconvénients : Il faut que les taches ne soient pas trop complexes (Appuyer sur 4 boutons + joystick en bas + le bouton programmer du module).
Je donne mon avis, j'opterais pour la solution 3.
On appui sur les 4 boutons pendant 2sec + le bouton sur le second module pour appairer.
On appui sur 1 boutons pendant 2sec + le bouton sur le second module pour enregistrer la touche a faire en autoshoot. (Pas possible de le faire en jeu, mais possible de l'activer ou desactiver avant de jouer).
Maintenant j'ai besoin de vos avis...
Il y a plusieurs choses à faire. Il faut appairer le récepteur et l'émetteur et je pensais pouvoir paramétrer certaines fonctions (autoshoot).
Il y a plusieurs solutions qui s'offrent à nous :
- 1. Régler avec les boutons des manettes.
- Avantages : On branche (ou on soude) et on ne retouche jamais la partie électronique. Les paramètrages et l'appairage se feront avec les touches
- Inconvénients : Trouver des combinaisons qui ne risquent pas d'être utilisées en jeu. Comment savoir si on est en mode réglage ou non ? LED ? Buzzer ? Afficheur 7 segments ? Autres ?
Je donne mon avis, j'opterais pour la solution 3.
On appui sur les 4 boutons pendant 2sec + le bouton sur le second module pour appairer.
On appui sur 1 boutons pendant 2sec + le bouton sur le second module pour enregistrer la touche a faire en autoshoot. (Pas possible de le faire en jeu, mais possible de l'activer ou desactiver avant de jouer).
Maintenant j'ai besoin de vos avis...
Re: [WIP 10%] Manettes sans fils NeoGeo
C'est beau tout ça
Je vois pas trop comment ce sera réalisé, ça marchera à piles ? comment ce sera relié au niveau de la console ?? Directement soudé ?
Une idée du prix, même vague ?
ça a l'air cool et utile mais tres flou pour moi...
Je vois pas trop comment ce sera réalisé, ça marchera à piles ? comment ce sera relié au niveau de la console ?? Directement soudé ?
Une idée du prix, même vague ?
ça a l'air cool et utile mais tres flou pour moi...
_________________
Sanjuro a écrit:en Special Guest Star, WRC dans le rôle de theWave
ancien directeur du service de renseignements NGS, il a le bras long comme un anaconda sous stéroïdes, si un gros bonnet doit se coucher, c'est qu'il en a donné l'ordre.
theWave- Pièce unique
- Messages : 10164
Date d'inscription : 25/10/2015
Re: [WIP 10%] Manettes sans fils NeoGeo
Ça se branchera sur la sortie manette de la console (pas besoin de batterie) et de l'autre côté c'est manette donc il y aura une batterie.
Re: [WIP 10%] Manettes sans fils NeoGeo
Je suis d'avis de faire le plus simple et le plus fonctionnel possible...
cypher- Scellé
- Messages : 4581
Date d'inscription : 25/10/2015
Age : 47
Localisation : 62
Re: [WIP 10%] Manettes sans fils NeoGeo
lbontron a écrit:Ça se branchera sur la sortie manette de la console (pas besoin de batterie) et de l'autre côté c'est manette donc il y aura une batterie.
OK je vois mieux.
ça va pas couter une blinde ça ??
_________________
Sanjuro a écrit:en Special Guest Star, WRC dans le rôle de theWave
ancien directeur du service de renseignements NGS, il a le bras long comme un anaconda sous stéroïdes, si un gros bonnet doit se coucher, c'est qu'il en a donné l'ordre.
theWave- Pièce unique
- Messages : 10164
Date d'inscription : 25/10/2015
Re: [WIP 10%] Manettes sans fils NeoGeo
pour la version 1 ca va couter un peu cher, car je ne vais rien optimisé. Si je compte la version finale (qui sera dans un petit moment), je pense que le prix sera accessible.
Je ne peux pas encore donné de prix. Pour le moment je fais du fonctionnel, j'optimiserais par la suite
Mais je pense que pour 30-40€ les deux modules pourront etre fabriqués. (Ce qui risque d'etre le plus cher c'est le montage des composants sur pcb)
A voir si je peux en faire au boulot :p
Je ne peux pas encore donné de prix. Pour le moment je fais du fonctionnel, j'optimiserais par la suite
Mais je pense que pour 30-40€ les deux modules pourront etre fabriqués. (Ce qui risque d'etre le plus cher c'est le montage des composants sur pcb)
A voir si je peux en faire au boulot :p
Re: [WIP 10%] Manettes sans fils NeoGeo
OK, à 30/40 euros ça reste accessible,je voyais un truc bien plus cher.
_________________
Sanjuro a écrit:en Special Guest Star, WRC dans le rôle de theWave
ancien directeur du service de renseignements NGS, il a le bras long comme un anaconda sous stéroïdes, si un gros bonnet doit se coucher, c'est qu'il en a donné l'ordre.
theWave- Pièce unique
- Messages : 10164
Date d'inscription : 25/10/2015
Re: [WIP 10%] Manettes sans fils NeoGeo
En soit les PCBs vont couter 5€ à l'unité. Les composants cher sont le micro 5€ et le module bluetooth 3€ et les connecteur que j'ai payé 0,60€. Le reste c'est donné. Donc ca fait du 20€ par carte. Soit 40€ pour un emetteur et un recepteur. Après tout pourra être revu a la baisse
Re: [WIP 10%] Manettes sans fils NeoGeo
Par contre je vous ai posé une question, il faudrait m'aider ma bande...
Re: [WIP 10%] Manettes sans fils NeoGeo
Ben, c'est surtout pour toi vu que peu de monde s'y connait!Je dirais 3 comme toi...
cypher- Scellé
- Messages : 4581
Date d'inscription : 25/10/2015
Age : 47
Localisation : 62
Re: [WIP 10%] Manettes sans fils NeoGeo
En faite la ce sont les besoins des utilisateurs (vous) qui vont définir ce qu'il faut faire. Je pense que c'est le plus pratique et que ca ne risque pas d'influer le fonctionnement en jeu.
Re: [WIP 10%] Manettes sans fils NeoGeo
Pareil que cypher, tu me parles Klingon là...
Fais au mieux man ! C'est toi le boss !
Fais au mieux man ! C'est toi le boss !
_________________
Sanjuro a écrit:en Special Guest Star, WRC dans le rôle de theWave
ancien directeur du service de renseignements NGS, il a le bras long comme un anaconda sous stéroïdes, si un gros bonnet doit se coucher, c'est qu'il en a donné l'ordre.
theWave- Pièce unique
- Messages : 10164
Date d'inscription : 25/10/2015
Re: [WIP 10%] Manettes sans fils NeoGeo
C'est du chinois pour le moment mais je ne demande qu'à comprendre, si tu as la patience d'expliquer en même temps.
Sinon option 3 si c'est pas trop galère a réaliser.
Sinon option 3 si c'est pas trop galère a réaliser.
Spike Spiegel- Scellé
- Messages : 2116
Date d'inscription : 25/10/2015
Localisation : A l'ouest
Re: [WIP 10%] Manettes sans fils NeoGeo
Les gars j'ai besoin d'une petite information. Est ce que toutes les manettes ont les boutons A, B, C et D ? Ou certaines n'ont que les boutons A, B, C ???
Re: [WIP 10%] Manettes sans fils NeoGeo
Tous les sticks ont les 4 boutons, select et start.
cypher- Scellé
- Messages : 4581
Date d'inscription : 25/10/2015
Age : 47
Localisation : 62
Re: [WIP 10%] Manettes sans fils NeoGeo
Pour rentrer dans le mode "paramétrage", il serait pas plus simple d'utiliser le bouton "start" pendant 5secondes plutot que les boutons A, B, C et D ???
Re: [WIP 10%] Manettes sans fils NeoGeo
Ben oui l'ami mais faut voir si ça ne pose pas de problème...
cypher- Scellé
- Messages : 4581
Date d'inscription : 25/10/2015
Age : 47
Localisation : 62
Re: [WIP 10%] Manettes sans fils NeoGeo
Pour moi non :p
Je vais meme faire en sorte de traiter comme j'ai envie l'information
(up)
Je vais meme faire en sorte de traiter comme j'ai envie l'information
(up)
cypher- Scellé
- Messages : 4581
Date d'inscription : 25/10/2015
Age : 47
Localisation : 62
Re: [WIP 10%] Manettes sans fils NeoGeo
T'en es où l'ami?
cypher- Scellé
- Messages : 4581
Date d'inscription : 25/10/2015
Age : 47
Localisation : 62
Re: [WIP 10%] Manettes sans fils NeoGeo
J'ai fait la mise à jour de la semaine (à l'instant).
J'ai bossé un peu et je pense continuer sur ce rithme qui est tranquille
La semaine prochaine je pense gérer les interruptions et donc les évolutions des etats.
Je pense que je dois me faire un petit planning pour me challenger
J'ai bossé un peu et je pense continuer sur ce rithme qui est tranquille
La semaine prochaine je pense gérer les interruptions et donc les évolutions des etats.
Je pense que je dois me faire un petit planning pour me challenger
Page 1 sur 2 • 1, 2
Sujets similaires
» recherche mario kart 7 svp pour mon fils
» dernier firmware r4i 3ds sdhc v1,83b pour mon fils svp
» [WIP 100%] Réparation d'un PCB World Rally sans son
» [TEST] manettes ONLINE Super Nintendo pour Switch
» Manette sans fil pour Mega SG
» dernier firmware r4i 3ds sdhc v1,83b pour mon fils svp
» [WIP 100%] Réparation d'un PCB World Rally sans son
» [TEST] manettes ONLINE Super Nintendo pour Switch
» Manette sans fil pour Mega SG
Page 1 sur 2
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum