Fabrication

Liste des composants

Sparkfun Pro Micro 🧠

💲 Officiel : https://www.sparkfun.com/products/12640
💲 Clone (Amazon) : https://www.amazon.fr/KeeYees-ATmega32U4-Développement-Leonardo-Bootloader/dp/B07FQBQ4Z6
💲 Clone (Aliexpress) : https://fr.aliexpress.com/item/1871481789.html?spm=a2g0s.9042311.0.0.20aa6c37z4qLog

Voici le "cerveau" de notre instrument, pour cette tâche nous allons utiliser un clone de Sparkfun Micro.
Souvent confondu avec l'Arduino Micro, le Sparkfun Pro Micro est plus petit mais n'a pas les broches A4 / A5 / D11 / D12 / D13 / D17 (SS)

📗 Les plans sous Eagle (et fusion 360) sont disponibles sous licence open source.

image-1592737001274.png

Cette carte se programme comme un Arduino Uno, mais elle est capable d'émuler le fonctionnement d'un périphérique USB (Un clavier / Une souris / Un joystick et un instrument midi) car elle utilise un atmega32u4 (au lieu du atmega328 sur l'arduino uno)

⚡ J'ai utilisé la version 5V, les capteurs capacitifs fonctionnant en 3.3V, on pourrait simplifier le circuit en utilisant la version 3.3v.

image-1592651307379.png

Capteurs Capacitifs MPR121 🖐️

💲 Officiel : https://www.sparkfun.com/products/retired/9695
💲 Clone (Amazon) : https://www.amazon.fr/TECNOIOT-Breakout-Capacitive-Controller-Keyboard/dp/B084BVLXCB
💲 Clone (Aliexpress) : https://fr.aliexpress.com/item/32821362153.html

Les capteurs MPR121, réagissent quand on les touchent avec la main 🖐️, ou avec un objet conducteur 🔧.
Il nous suffit donc d'exposer la broche à l'aide de pastilles de soudures, ce qui nous permet de créer les formes que nous voulons.

📗 Les plans sous Eagle (et fusion 360) sont disponibles sous licence open source.

Chaque module est capable de gérer 12 pads et il est possible d'en utiliser 4 à la fois (46 Pads)

image-1592738426233.png

Ces modules communiquent en i²c, il ne nécessite que 2 broches (SDA / SCL) pour pouvoir l'utiliser, peut importe le nombre de MPR121 utilisés.

image-1592821864446.png

Boutons 🟩

💲 Sparkfun : https://www.sparkfun.com/products/15326
💲 Amazon : https://www.amazon.fr/POPESQ®-Interrupteur-instantane-Momentary-A2105/dp/B07DRRX4P3
💲 Aliexpress : https://fr.aliexpress.com/item/32834276752.html

Grâce à l'économie de broches que les capteurs capacitifs nous offrent, il est possible d'ajouter 10 boutons sur les broches restantes sur le Sparkfun micro.

Les boutons sont reliés sans résistances à l'Arduino grâce aux résistances de rappel (pull-up resistors) intégrées à celui-ci

4 des boutons sont placés au niveau des potentiomètres et les 6 autres à coté.

image-1592651246681.png

Potentiomètres ⚫

💲 Amazon : https://www.amazon.fr/potentiometre-Simple-lineaire-Conique-rotatif/dp/B018S9GUKI
💲 Aliexpress : https://fr.aliexpress.com/item/33051479190.html

Le Sparkfun micro a 4 sorties analogiques, parfait pour gérer 4 potentiomètres.
Ceux ci vont nous permettre de régler des effets / synthétiseurs au sein des logiciels de musique assisté par ordinateur.

La résistance mécanique des potentiomètres est uniquement soutenu par les soudures.

image-1592651282428.png

Afficheur OLED 128x64 🖼️

💲 Aliexpress :  https://fr.aliexpress.com/item/32957159545.html

Ces afficheurs de 128x64 utilise la technologie OLED, à la différence des afficheurs LCD, le contraste est plus élevé , l'image très clair (car chaque pixel sont éclairés individuellement).
Ils fonctionnent en i²c et utilise donc les mêmes broches que pour les capteurs capacitifs.

Certains modules inversent les broches VCC / GND et d'autres ont plus de broches car ils utilisent le protocoles SPI, faites très attention en les commandant.

image-1592821990945.png

Régulateur de tension 5v vers 3.3v ⚡

💲 Aliexpress :  https://fr.aliexpress.com/item/32718499724.html

Tout les modules de régulation de tension n'ont pas les broches aux même endroit.
Il faut qu'il est Vo / GND / Vi

Le sparkfun Micro 5v n'a pas de broche 3.3V, il va donc nous falloir réduire la tension à 3.3v afin d'alimenter les capteurs capacitifs.image-1592822592555.png

Convertisseur de niveau logique ⚡

💲 Sparkfun : https://www.sparkfun.com/products/12009
💲 Amazon : https://www.amazon.fr/Hiletgo-modules-convertisseur-bidirectionnel-canaux/dp/B07F7W91LC
💲 Aliexpress : https://fr.aliexpress.com/item/4000587260340.html

Afin que les capteurs capacitif communique avec le Sparkfun micro il nous faut aussi un convertisseur de niveau (Logic Level Converter)

Celui-ci est alimenté d'un coté en 5v (HV) et de l'autre en 3.3v (LV) est converti le signal i²c (SDA/SCL) entre ces deux tensions (HV1 / HV2 <--> LV1 / LV2)

image-1592822867471.png

image-1592822832378.png

 

 

Commande du PCB

Téléchargement du gerber 📁

Afin de commander les PCB, nous avons besoins du gerber de celui-ci

Le format de fichier Gerber est le standard de-facto utilisé pour transmettre des informations concernant la fabrication des circuits imprimés. Il contient la description des diverses couches de connexions électriques (les pistes, les pastilles, les plages CMS, les vias…).

Vous pouvez les télécharger sur github
📁 Gerbers: https://github.com/usini/m1d1_36/releases

image-1592654662356.png

Commande du PCB 💲

Après avoir essayer plusieurs fournisseurs, le seul a avoir un prix raisonnable pour un PCB de cette taille est JLCPCB.
5 exemplaires du PCB coûtent 12.16€, et en livraison rapide le tout revient à 28.69€ soit 5,7€ le PCB.

image-1592654745709.png

Toutefois la commande d'un PCB est a peu près identique sur chaque plateforme, voici les étapes pour commander le PCB

Aller sur https://jlcpcb.com/ puis cliquer sur QUOTE NOW

image-1592654849579.png

Cliquer sur le bouton Add your gerbers et ajouter le fichier m1d1_36_gerbers_v1.zip 📁 

image-1592655142488.png

image-1592655016637.png

Vous n'avez pas besoin de changer la moindre option, mais si vous voulez la couleur noir (par ex.) vous pouvez la changer ici (cela augmentera la durée de fabrication)

image-1592655064119.png

 

Assemblage du PCB

Modification sur le MPR121 ✂️

Attention si vous ne faites pas cette modification, les MPR121 dont les adresses sont modifiés physiquement bloqueront l'exécution du programme.
https://electronics.stackexchange.com/questions/325702/how-to-cut-the-add-to-gnd-trace-on-a-mpr121-capacitive-touch-sensor#325714

✖️ Les clones de MPR121 ont un défaut, on ne peut pas changer leur adresse i²c, et donc en utiliser plusieurs.
Pour changer l'adresse d'un MPR121, il suffit de relier la broche ADD soit au 3V, au SDA ou au SCL

Pas de panique, même si cela semble un peu risqué, c'est une modification relativement simple (avec les bons outils)
Pour que cela marche, il faut couper une piste (par ex à l'aide d'un petit tournevis plat)
                                                                                                                                                                                                     Grattez la surface entre les deux pads de soudures jusqu'à ce que le contact soit rompu (vérifier ceci à l'aide d'un multimètre)

image-1593679699671.png

image-1592739672087.png

Soudure des composants

Ici rien de bien compliquer, le sens de chaque module est indiqué sur le PCB.

Vous pouvez utiliser des broches 2.54mm femelles si vous voulez pouvoir retirer les modules (mais cela augmentera la hauteur des modules)
Pour l'afficheur c'est plus embêtant vu qu'il ne sera pas soutenu correctement.

J'attends de recevoir les composants pour souder les PCB restants et documenter la fabrication

Programmation

La programmation de la carte est relativement simple,

Vous pouvez télécharger la dernier version ici
Code : https://github.com/usini/m1d1_36/releases

Bibliothèques

Toutes les bibliothèques peuvent s'installer à l'aide du gestionnaire de bibliothèques

Téléversement

Choisissez la carte Arduino Micro, le port correspondant à votre carte et appuyez sur téléverser.

image-1592740064079.png

Les Arduino Micro ont parfois du mal à être programmer car elle change de port série (COM sous Windows) avant que le programme se copie.
Si c'est le cas appuyez sur le bouton RESET après avoir lancer le téléversement.

Si vous n'arrivez pas à la programmer, vous pouvez vérifier que la programmation se passe bien en changeant ce paramètre dans les préférences

image-1592740199422.png

Configuration

Il est possible de changer les notes des pads (capNote) dans l'onglet settings.h ainsi que les valeurs CC (Control Change) des boutons et des potentiomètres.

image-1592740257795.pngimage-1592824427419.png

 

image-1593680020114.png

Points à améliorer