paint-brush
Comment j'ai fabriqué et vendu des badges électroniques - Partie 1 : Conception et prototypage de la carteby@thip
502
502

Comment j'ai fabriqué et vendu des badges électroniques - Partie 1 : Conception et prototypage de la carte

David7m2024/01/19
Read on Terminal Reader

J'ai pensé que je commencerais par quelque chose de simple, quelque chose qui me permettrait de tester non seulement le terrain de l'assemblage de PCB, mais aussi celui du commerce électronique. Mon plan était de proposer un petit article que je pourrais concevoir de manière réaliste et soumettre à la fabrication en moins d'une journée, puis, je l'espère, le vendre assez facilement sur un marché comme Etsy. Je m'attendais à ce que le côté conception et fabrication soit la partie la plus difficile et que lister le produit sur Etsy soit facile, mais c'était bien l'inverse comme vous le verrez si vous continuez à lire !
featured image - Comment j'ai fabriqué et vendu des badges électroniques - Partie 1 : Conception et prototypage de la carte
David HackerNoon profile picture



J'ai écrit cette série d'articles principalement pour moi-même, ou du moins pour quelqu'un qui essaie de fabriquer quelque chose d'électronique à vendre. Si c'est votre cas, j'espère que cela vous aidera dans votre voyage ! Si vous souhaitez simplement voir le produit final, vous pouvez le trouver sur https://hortus.dev/products/social-battery .


C'est un long article, je l'ai donc divisé en morceaux pour le rendre un peu plus facile à digérer. Ceux-ci sont:


  1. Conception et prototypage de la carte (cet article)
  2. Vendre les prototypes en ligne
  3. Passer du prototype à la production

Introduction

Un rendu 3D de la conception dans KiCad


Je voulais expérimenter le service d'assemblage de JLC PCB - même si j'ai conçu et fabriqué des PCB nus avant de placer et de souder les composants manuellement, j'ai en tête des projets futurs qui ne seront pas pratiques à souder à la main en raison à la fois de la quantité et taille des composants.


Il est assez étonnant de constater à quel point ce service est bon marché quand on pense à ce que cela implique, mais il reste suffisamment cher pour qu'il puisse être un peu intimidant de remettre votre argent, puis d'attendre de savoir si vous avez commis une erreur qui pourrait ruiner le résultat final.


J'ai pensé que je commencerais par quelque chose de simple, quelque chose qui me permettrait de tester non seulement le terrain de l'assemblage de PCB, mais aussi celui du commerce électronique. Mon plan était de proposer un petit article que je pourrais concevoir de manière réaliste et soumettre à la fabrication en moins d'une journée, puis, je l'espère, le vendre assez facilement sur un marché comme Etsy.


Je m'attendais à ce que le côté conception et fabrication soit la partie la plus difficile et que lister le produit sur Etsy soit facile, mais c'était bien l'inverse comme vous le verrez si vous continuez à lire !

Le produit

J'ai fait un rapide tour d'Etsy pour voir le genre de choses que les gens vendaient avec succès et que je pouvais fabriquer. J'ai trouvé quelques exemples de personnes fabriquant des badges électroniques - le projet parfait ! Il s'agissait principalement de LED avec un motif de clignotement aléatoire ou prédéfini sur une carte de forme originale.


Cela me paraissait bien, mais je voulais essayer quelque chose d'un peu plus interactif et significatif que je pourrais vendre pour suffisamment d'argent pour réaliser une marge raisonnable sur un petit nombre d'unités initiales.


En regardant les badges à épingles ordinaires vendus sur Etsy, j'ai vu un tas d'épingles en émail « Social Battery » avec un indicateur coulissant. Ceux-ci m'ont immédiatement semblé être quelque chose auquel a) je pourrais m'identifier personnellement (les gens font des blagues sans fin sur ma batterie sociale…), b) serait vraiment amusant en version électronique, et c) serait facile à concevoir - juste un quelques LED, un interrupteur et un microcontrôleur pour relier le tout !

Conception et prototypage de la carte

Confiant en mes compétences, j'ai élaboré un schéma de circuit rapide dans Kicad. J'ai décidé d'utiliser un ATtiny13A - principalement parce que j'en avais quelques-uns sous la main lors d'un projet précédent et parce que j'ai une bonne expérience avec des puces similaires.


Si vous ne le connaissez pas, l'ATtiny13A est un petit microprocesseur 8 bits avec 6 broches IO et fait partie de la famille de MCU AVR. Il est similaire aux puces ATmega qui ont historiquement été au cœur de la plupart des Arduinos, sauf que ses capacités sont beaucoup plus limitées.


L'avantage est que la gamme de puces ATtiny est plus petite et moins chère, donc si vous n'avez pas besoin de beaucoup de mémoire ou de périphériques, alors elles sont géniales ! (bien que peut-être un peu daté maintenant avec la variété infinie de puces ARM disponibles).


J'ai disposé le PCB de mon circuit dans KiCad, puis je lui ai fait cracher les gerbers et les fichiers de perçage (qui sont utilisés pour fabriquer le PCB), ainsi que la nomenclature et les fichiers de placement (qui sont utilisés pour assembler les composants sur les PCB) . Je les ai soumis à JLC PCB pour voir s'ils étaient capables de les traiter correctement.


La nomenclature et les fichiers de placement ont nécessité quelques ajustements par défaut pour les obtenir dans le bon format (il s'avère que je l'ai fait à la dure, et il existe un plugin beaucoup plus simple pour KiCad qui fait tout parfaitement en un seul clic).


JLC PCB maintient une assez grande bibliothèque de composants qu'ils gardent en stock pour les commandes d'assemblage. Cependant, dans mon cas, l'ATtiny13a n'était pas disponible, j'ai donc dû le commander. C'était assez simple en utilisant leur service d'approvisionnement mondial. J'ai pu trouver le fournisseur proposant le meilleur prix pour la quantité dont j'avais besoin, puis laisser JLC PCB les commander à leur entrepôt en mon nom.


Pendant que j'attendais, je me suis dit que je pourrais aussi bien tester ma conception et commencer à travailler sur le code, et je suis content de l'avoir fait car j'ai immédiatement découvert un problème ! Ma conception utilisait cinq des broches IO disponibles sur l'ATtiny13a pour piloter directement les LED (la sixième étant utilisée pour surveiller le bouton).


Ce dont je n'avais pas réalisé/me souviens depuis la dernière fois que j'ai commis cette erreur (oui, c'est déjà arrivé), c'est que l'une de ces E/S est également la broche de réinitialisation. Vous pouvez l'utiliser, mais il n'est pas capable de fournir beaucoup de courant, et en l'attachant au sol via une LED, je maintenais la puce dans un état de réinitialisation permanente.


Une façon de contourner ce problème consiste à brûler un fusible sur la puce qui désactive définitivement la fonctionnalité de réinitialisation de la broche, la transformant en une E/S normale. Le problème, c'est que vous ne pouvez programmer la puce qu'une seule fois (à moins que vous ne possédiez un programmateur haute tension, ce qui n'est pas mon cas), et étant donné ma propension à apprendre les choses à la dure, cela semblait potentiellement assez inutile !


L'autre option consiste à trouver un moyen de faire plus avec moins de broches afin que la broche de réinitialisation puisse rester seule. Ceci peut être réalisé en utilisant une technique appelée charlieplexing qui vous permet d'adresser beaucoup plus de LED que le nombre de broches disponibles.


Vous pouvez ensuite parcourir ces LED, les allumer et les éteindre individuellement à un rythme élevé pour donner l'impression que plusieurs sont allumées en même temps grâce à la persistance de la vision .


Dans mon cas, je pilote les quatre LED vertes à partir de 3 broches et la LED rouge avec une broche dédiée. Ce n'est pas l'exemple le plus efficace de charlieplexing, car je pourrais piloter toutes les LED des trois broches, mais garder le rouge sur une broche dédiée permet un code plus simple en matière de programmation.


J'ai révisé mon schéma de circuit et la conception de mon PCB, puis j'ai réexporté les fichiers nécessaires et les ai envoyés à JLC PCB pour fabriquer et assembler un premier ensemble de cinq prototypes.


Un peu plus d'une semaine plus tard, j'ai reçu mes prototypes, et j'en étais vraiment content ! Il y avait quelques choses que je voyais que je devais changer :


  1. Je n'avais pas vraiment prévu comment j'allais programmer les planches. Je venais de sortir les broches de programmation AVR et j'espérais le meilleur. C'était bien pour cinq prototypes car je pouvais fixer les fils de programmation avec le plus petit morceau de soudure, mais cela deviendrait très fastidieux très rapidement à grande échelle.


  2. La pointe de la fixation à l'arrière a été soudée sur un support de terre. Cela aurait été bien, sauf que la masse thermique de la pointe et le plan de masse de la carte rendaient difficile une bonne jonction. Il dépasse également très près de la cage métallique positive du support de batterie, ce qui signifie qu'il y avait de fortes chances qu'un court-circuit accidentel se produise si des personnes plaçaient/attachaient le badge sur/sur des surfaces conductrices.


  3. Le contact négatif de la batterie n'était pas assez visible, j'ai donc dû y ajouter un peu de soudure pour établir une bonne connexion. Encore une fois, ce n'est pas la fin du monde pour un petit nombre de prototypes, mais c'est pénible si je devais faire cela pour des tas.


C’étaient tous des correctifs simples à mettre en œuvre. J'ai ajouté un en-tête de programmation approprié qui pourrait être utilisé avec un gabarit de broches pogo pour une programmation rapide et répétable.


J'ai déconnecté la pointe du plan de masse afin qu'il s'agisse de son propre petit îlot de cuivre déconnecté qui chaufferait plus facilement et ne provoquerait pas de courts-circuits.


Et j'ai élargi le contact négatif de la batterie afin qu'elle ait plus de surface pour établir une connexion solide.


Le code est assez simple. Je garde une trace du mode dans lequel se trouve le badge, représenté par un nombre entier qui est décrémenté à chaque fois que vous appuyez sur le bouton. Ensuite, je boucle et fais clignoter chaque LED lors de mon parcours, comme dicté par le mode. Lorsque le mode 0 est atteint, je le réinitialise au numéro d'origine, puis je mets l'ATtiny en mode veille.


Une nouvelle pression sur le bouton déclenche l'interruption qui réveille la puce et recommence tout le processus.


Dans l’ensemble, j’étais très satisfait des résultats, ce qui signifiait qu’il était temps de voir si je pouvais les vendre !


Vous pouvez lire mon expérience dans le prochain article de cette série .