まこと の ブログ

MaKoTo no burogu — Journal de bord…

Aller au contenu | Aller au menu | Aller à la recherche

Mot-clé - Impression3D

Fil des billets - Fil des commentaires

samedi, 27 décembre 2025

Pocket SDVX pico, Makoto's edition -5-

Suite des précédents travaux :

Je ne me suis pas rendu compte du temps qui passait − autour d'une année lol − assez occupé sur d'autres sujets en partie chroniqués parmi ces pages…
Mais enfin ! J'ai compilé toutes mes sources, apporté les corrections nécessaires et mis tout cela en ordre pour que cela soit digeste et exploitable.
Je vais donc décrire tout ça, en espérant que cela en motive certain·e·s à se lancer dans la reproduction de l'objet, et pourquoi pas dans des améliorations/modifications ou de nouvelles fonctions. Vous me montrerez ça !

  • Hors usage personnel, la seule condition au repartage étant de respecter la licence CC-BY-SA 4.0 voulue par Speedy Potato, l'auteur originel du contrôleur sur lequel j'ai basé mes travaux, en citant également Woody Tsai (je n'ai pas trouvé de sources le concernant, il ne semble pas partager ses travaux autrement qu'en mode « hey tavu ce que j'ai fait… », la jeunesse en mal de reconnaissance sur les rézo ou bien en mode portfolio d'une activité lucrative, mais puisque je me suis inspiré de son idée de dessin… Voilà).
  • On trouvera donc en annexe à ce billet deux archives.

Pocket-SDVX-Pico MAKOTO final.zip :

Cette archive contient deux dossiers principaux et une liste des composants électro-mécaniques dans un fichier tableur.

  • Le dossier PRODUCTION, pour celleux qui souhaiteraient reproduire tel quel mon contrôleur :

− Il y a les fichiers STL pour imprimer les pièces 3D.
− Les fichiers vectoriels SVG pour la découpe laser en PMMA transparent.
− Et les fichiers Gerber dans plusieurs archives zip pour faire fabriquer les plaques. On a besoin de la plaque PCB qui constitue le circuit électronique et la plaque PLATE qui constitue la plaque décorative supérieure.

Cette dernière existe en 3 versions,
PLATE est celle que je présente ici, depuis le début de ces travaux,
PLATE2 est quasi identique sauf qu'elle ne présente pas deux grands trous ronds pour les boutons d'encodeur − knob −, mais deux petits trous pour laisser juste dépasser la tige de l'encodeur, donc dans le cas où l'on souhaiterait que le knob soit placé au dessus de la plaque et non incrusté comme c'est le cas avec la PLATE. Ce qui laisse la liberté de choix pour le diamètre des knob !
PLATE3 est prévue pour être utilisée à la manière des modèles Pocket SDVX Pico v4 ou v5 originels, c'est à dire qu'on va clipser les switchs MX dans cette plaque, et qu'il n'y aura pas d'autres plaque par dessus. J'en parlais dans le premier billet sur le sujet, avant de faire d'autres choix techniques qui m'ont menés à la PLATE.
Donc avec PLATE3 on n'utilisera pas les supports de switch MX imprimé 3D, ni les plaques en découpe laser, Le contrôleur sera alors moins épais et le cadre formant le boîtier n'ira pas avec non-plus. Il faudra que vous bricoliez quelque chose vous-même car je n'ai pas mené cette version à son terme.

  • Et pour fabriquer tout ça ?? Une petite vidéo sous-titrée !

En complément, je reposte la vidéo de l'assemblage 3D du billet N°3 en bas de cette page.

  • Le dossier SOURCES, pour celleux qui souhaiteraient modifier quoique ce soit au contrôleur :

− Il y a les ressources Kicad 7 pour la PCB et les PLATE, PLATE2, et PLATE3.
− Les fichiers FreeCAD 1.0 pour la modélisation 3D et 2D.
− Ainsi que les fichiers des graphismes que j'ai mis tant de temps à dessiner,
qui ont permis de fabriquer les ressources du dossier PRODUCTION que j'ai décrites.

Le contenu de l'archive est aussi disponible sur github :

Firmware Pico-Game-Controller-20220705-v4 Makoto-edition.tar.gz :

Comme son nom l'indique, elle contient le firmware du contrôleur USB.

  • Le binaire à flasher sur le Raspberry Pi Pico se trouve dans le dossier build_uf2

Pour opérer, il suffit de maintenir le bouton poussoir du Rpi Pico enfoncé tout en connectant le câble USB-C à l'ordinateur, puis de relâcher la pression.
Un média amovible est alors monté automatiquement par le système d'exploitation de votre machine, et il suffit alors de glisser le fichier Pico_Game_Controller_Makoto-edition.uf2 dans ce média. Sitôt fait, le média sera automatiquement démonté et le Rpi Pico redémarrera. En principe le contrôleur de jeux doit alors être disponible dans l'ordinateur.

Le reste des fichiers constituent les sources du programme que j'ai modifié pour prendre en charge les leds et boutons supplémentaires, ainsi que les différents modes de couleurs additionnels.
Le SDK Rpi pico est lui aussi inclu, ce qui fait que si on a gcc, cmake et ninja installés sur son ordi, il suffira de lancer depuis le dossier build les commandes :

cd build
cmake ..
ninja

pour obtenir le binaire dans le sous-dossier build/src en fin de compilation.
Si ça se passe bien, on pourra ensuite modifier le programme à loisir en éditant les fichier .c et .h disponibles dans le dossier src présent à la racine.
Sinon, on peut aussi faire ça avec l'usine à gaz Visual Studio code

  • Ce programme est donc basé sur le firmware 20220705, à ce que j'ai compris le dernier en date que j'ai trouvé concernant la v4 du contrôleur qui m'a servi de modèle.

Le contenu de l'archive est aussi disponible sur github :



  • Voilà, je pense que j'ai fait le tour de la question, on termine avec ça :

samedi, 13 décembre 2025

Pocket SDVX pico, Makoto's edition -4-

Suite des précédents travaux :

Le fond :

Au départ il était prévu que le dessous de l'appareil soit constitué d'une plaque imprimée 3D, notamment car celle-ci doit venir s'appuyer sur la plaque électronique afin de rigidifier la structure. Pour cela il est nécessaire de prévoir tout un tas de creux dans la plaques afin que la matière ne viennent pas contre les pattes soudées des composants.

  • J'ai à nouveau dû imprimer la pièce en deux morceaux, ainsi que des petites plaquettes


qui vont servir à consolider le collage à la cyanoacrylate.

  • Sont prévu les trous pour accueillir des inserts fileté de 4 mm de diamètre à destination des pieds en caoutchouc où des ventouses !


  • Voici l'intérieur de la plaque avec la vis de la ventouse qui dépasse. Il sera donc coupé à dimension.


On peut donc alterner à loisir entre pieds ou ventouses, à l'aide d'un tournevis pour le premier et en tournant l'objet à la main pour la seconde.
La vis dans le coin est celle qui ferme ce couvercle de fond, et elle sera complémentent cachée par le pieds en caoutchouc.

Plus tard j'ai envisagé la possibilité d'utiliser des plaques de PMMA transparente à la place de l'impression 3D. J'ai simplement eu l'idée de demander la découpe de deux plaques, une de 3 mm d'épaisseurs qui comporterait non pas les creux mais des trous, et l'autre de 2 mm pour venir fermer le tout.

  • La première plaque de 3 mm, puis la seconde de 2 mm par dessus :


  • La plaque de 2 mm est tout de même trouée pour laisser passer l'épaisseur du port USB du Rpi Pico qui reste là, et permettre d'appuyer sur son bouton de programmation.


Voulant suivre la même logique pour la fixation des pieds/ventouses, j'avais prévu des trous larges dans la plaque de 3 mm pour y mettre les inserts.

Mais ce fut une idée assez galère, car en fondant le PMMA boursouffle un peu en repoussant la matière fondue à la surface, ce qu'il a fallu gratter afin d'aplanir le périmètre autour de l'insert. Et comme l'insert dépasse dans la plaque de 2 mm, il a fallu élargir et le chanfreiner le trou correspondant… Bref, pas une partie de plaisir, alors qu'il suffisait de prévoir un trou plus petit et de le tarauder pour y créer le filetage qui aurait permis de visser les pieds/ventouses directement dans le PMMA, plastique suffisamment dur pour cela.

Autre déconvenue aussi, je l'évoquais dans ma série sur le pincab, le contour des plaques découpées au laser présente un angle de 3°, ce qui n'avait pas posé de problème pour la plaque de protection du dessus, mais ici, avec 3 + 2 mm d'épaisseur, c'est suffisant pour gêner quelque peu la mise en place des plaques. Il a donc fallu limer les 4 champs des deux plaques, afin de les redresser à 90°.

  • C'est tout bon, elles rentrent maintenant bien à plat, ouf !



Finitions :

Je l'évoquais plus haut, pour estomper la jointure du cadre du boîtier, j'ai une solution qui ne fonctionne qu'avec du plastique ABS.

En effet, le solvan qui permet de ramollir ce plastique n'est autre que l'acétone, et il est alors aisé de se confectionner du mastique coloré qu'on va utiliser pour combler toutes les imperfections. Une fois bien sec il suffira de limer et poncer jusqu'au résultat attendu. Toutefois il faut faire attention au ratio acétone/quantité de plastique, car j'ai remarqué que si la mixture est trop diluée, en séchant elle laisse des micro-bulles blanches assez disgracieuses.

  • Alors on verra toujours l'emplacement de la jointure, mais ça jure moins et au toucher, on ne la ressent plus sous les doigts.


  • On peut aussi pousser la chose jusqu'à poncer toute la pièce, de plus en plus fin…


Et ensuite polir et lustrer la surface jusqu'à obtenir cette brillance !

  • Une dernière chose à faire, est de chanfreiner les trous sur les plaques en PMMA pour permettre d'engager des vis à tête fraisée à fleur de la surface.



Fonctionnalités :

  • Une petite vidéo qui montre le montage des ventouses et leurs utilité :

J'ai dû bricoler le firmware d'origine afin de pouvoir attribuer des fonctions aux cinq boutons que j'ai ajouté sur les tranches.
Ceux de la tranche inférieure sont vu comme des boutons de gamepad et pourront servir en cours de partie.
Tandis que ceux de la tranche supérieure sont là pour configurer la déco.

Celui de gauche pour basculer entre le mode « color cycle » qui présente une vague de couleurs défilantes et le mode « turbocharger » qui permet aux « knobs » d'animer la vague de leds en rouge ou en bleu.
Celui de droite incrémente d'une couleurs parmi douze.

  • Pour bien comprendre, voici tout cela montré dans cette petite vidéo :


Lire la suite...

mercredi, 10 septembre 2025

IQS−PGM - Labels pour cartouche de jeu DIY

Suite de l'aventure précédente :
Parlons étiquettes !

Quelques personnes ont réalisés des scans et partagés des créations originales d'étiquettes sur les forums que j'ai visité pour construire tout ça.
Il y a des étiquettes à coller sur les EEPROMS et des étiquettes de tranche de cartouche pour identifier les jeux.

  • J'ai rassemblé toutes celles qui me plaisaient bien pour en faire une planche A4 (en annexe à ce billet), imprimée sur un papier spécial étiquette.

L'encre est censée résister aux rayures sur ce papier, mais j'ai pu constater sur les petites étiquettes que ce n'était pas si évident. J'ai donc apposé un film transparent autocollant sur les étiquettes de tranche afin de les protéger. Quant aux petites, il était trop tard pour cela.

  • J'en ai aussi imprimé sur papier standard pour évaluation, en les disposants ainsi sans collage, car je ne parviens pas à me décider ^^;



Je vous laisse avec une galerie de photo des cartouches, qui montre un peu comment elles sont construites.

  • ESPGaluda :



  • Dodonpachi Dai-ou-jou :



  • Ketsui :



dimanche, 24 août 2025

IQS−PGM - Cartouche de jeu DIY N°3

Suite de l'aventure précédente :

  • On termine le travail, ici avec le jeu Ketsui.

Fluffy a prévu la possibilité de pouvoir jouer aussi au « mode arrange » (à priori un mode de jeu non officiel bricolé par un bidouilleur).

On utilisera un petit interrupteur branché sur le cavalier « JP2 » pour l'activer, suivit d'un reset du système IGS−PGM.


  • Il faut à nouveau souder 2 cartes ! Pas de photos à exposer, c'est la même chose que montré dans le billet précédent…


La programmation :

1 − Extraire les binaires pour les EEPROM 27c322 :
Télécharger sur le net la rom mame avec la mention « BL », ici : ketbl.zip
À priori celle-ci devrait peser 22,1 Mio (23240460 octets)

  • À l'aide du script python rom_gen.py qu'on aura pris soins d'extraire préalablement, exécuter :
python3 rom_gen.py ketbl.zip

Qui va générer le dossier « ketsui_rg » contenant les binaires à flasher sur les puces. (le dossier « bios_rg » n'est pas utile)

  • Exécuter ensuite :
python3 rom_gen.py -b pgm_bios_single_pcb_vxxxJP.u42 PGM\ Program\ Files.zip


Qui va générer dans le dossier « ketsui_rg » le fichier « ketsui_p1_trap.bin ».
Utiliser le fichier « ketsui_p1_trap.bin » à la place du fichier « ketsui_p1.bin » précédemment généré par la rom, permet d'utiliser le cavalier « JP2 » pour activer le « mode arrange ».

2 − Programmer les EEPROM 27c322 :
Se référer au billet précédent pour plus de détails sur la procédure de programmation et obtenir l'archive de scripts.

3 − Placer les EEPROM 27c322 sur les PCB :
Se référer pour cela aux sérigraphies, et faire attention au sens d'orientation des puces !

4 − Programmer la GAL : ATF16V8B qui va en position U6 :
Écrire le fichier PGM-RG-U6.jed.

5 − Programmer la GAL : ATF16V8B qui va en position U5 :
Écrire le fichier PGM_RG_U5_ESP.jed. Oui c'est le même fichier que ESPgaluda pour Ketsui.

NB : JP2 permet de sélectionner la ROM normale ou la rom Arrange 1.7 : Sans cavalier > Jeu original et Avec cavalier > mode Arrange.

Mise en cartouche et tests :

  • Pour que ce soit donc plus pratique, j'ai collé un micro-switch à l'intérieur de la cartouche, relié aux « pins headers » de JP2. On peut le basculer de l'extérieur, alors que la cartouche est insérée dans le système de jeu, à l'aide d'un truc fin comme un cure-dents.


  • Dans la vidéo, d'abord le mode normal, puis j'ai basculé le micro-switch avant de faire le reset pour redémarrer le système et montrer le « mode arrange » :


À suivre…

- page 1 de 18