Table des matières:

Project Aurora : un tapis de souris intelligent pour 20€ : 13 étapes (avec photos)
Project Aurora : un tapis de souris intelligent pour 20€ : 13 étapes (avec photos)

Vidéo: Project Aurora : un tapis de souris intelligent pour 20€ : 13 étapes (avec photos)

Vidéo: Project Aurora : un tapis de souris intelligent pour 20€ : 13 étapes (avec photos)
Vidéo: Elle Était Coincée Donc Ce Policier L'aide 2024, Juillet
Anonim
Project Aurora: un tapis de souris intelligent pour 20€
Project Aurora: un tapis de souris intelligent pour 20€
Project Aurora: un tapis de souris intelligent pour 20€
Project Aurora: un tapis de souris intelligent pour 20€
Project Aurora: un tapis de souris intelligent pour 20€
Project Aurora: un tapis de souris intelligent pour 20€

Par kaira66Suivre à propos de: Je suis juste un gars ordinaire qui aime le bricolage:) En savoir plus sur kaira66 »

L'idée de base est, pourquoi dépenser 50$ pour un tapis de souris RVB qui ne comporte que des jeux de lumière ? D'accord, ils sont cool et ultra-fins, mais ils ajoutent également un logiciel sur votre PC pour personnaliser les couleurs claires qui ne sont pas exactement "légères" si vous considérez qu'il gère juste un tas de leds et ne fait rien d'autre… Alors je veux prendre Les tapis de souris RVB vont encore plus loin, ajoutant "quelques" autres fonctionnalités:

  • boutons capacitifs pour tirer des macros (personnalisables via le logiciel)
  • écran Oled pour afficher des statistiques en temps réel sur votre utilisation CPU/RAM ou tout ce que vous voulez (car pourquoi pas ?)

J'avais quelques objectifs dans ce DIY:

  1. doit être abordable, c'est-à-dire ne doit pas dépasser 30€
  2. doit être facile à reproduire avec des outils communs car tout le monde, en particulier les étudiants comme moi, n'a pas d'atelier (évidemment…)
  3. doit être le plus personnalisable possible

  4. doit être mince. Personne ne veut un tapis de souris de 2 cm d'épaisseur
  5. toute l'électronique doit être à l'intérieur du tapis de souris. Pas d'adaptateurs externes ni de câble propriétaire
  6. le coût total doit être compétitif par rapport aux autres tapis de souris rgb déjà sur le marché

Bon alors, êtes-vous prêt à commencer? Allons-y:)

Étape 1: Pièces et outils

Pièces et outils
Pièces et outils
Pièces et outils
Pièces et outils
Pièces et outils
Pièces et outils

Plexiglas. J'ai pris 2 dalles rectangulaires d'épaisseurs différentes, 2mm et 4mm. Le plus épais est pour la couche intermédiaire où la lumière brille par l'éclairage des bords; vous allez le "sandwitcher" avec les dalles les plus fines, en faisant 3 couches. 2,50€ pièce, donc 5€ en magasin de bricolage local

  • Un Arduino Micro chinois. 2€ d'aliexpress
  • Écran OLED i2c. Vous êtes libre de choisir la taille, il y en a 2: 128x32 ou 128x64… J'avais les deux, j'ai donc décidé d'utiliser le premier. 4€ d'aliexpress
  • Bande led WS2812B RVB. J'avais déjà un 30leds/m comme reste mais vous pouvez aussi opter pour le 60leds/m. Vous obtiendrez ainsi une diffusion de la lumière plus uniforme. 4€ d'aliexpress
  • Emballage plastique adhésif de 1 m. C'est mieux si vous choisissez du papier d'emballage de voiture car il est en vinyle et comporte des canaux spéciaux anti-bulles d'air, ce qui facilitera l'application… mais mon atelier de peinture local avait ces emballages qui sont une version moins chère dudit papier d'emballage, alors j'ai décidé d'essayer ce. 0.50€
  • papier de verre, grain 180 et 240. J'ai pris une feuille pour chacun, c'est largement suffisant. 0.50€
  • 4x résistances 1, 5MOhm, peut-être plus, peut-être moins selon le nombre de boutons capacitifs que vous voulez… J'ai décidé d'en mettre 3, mais je ne suis pas sûr que vous trouverez quelqu'un qui vous vendra 3 résistances de rechange car elles ne coûtent rien. J'en ai acheté une 10-de résistances réglées pour 0,20€.
  • Certains fils, plus fin c'est mieux (0,10 mm c'est parfait). Il y a quelques mois j'ai démonté une vieille radio (déjà cassée) pour voir s'il y avait des pièces en assez bon état à sauver… Je n'ai sauvé que des fils.
  • Fer à souder. J'en ai déjà un, acheté sur Amazon et devinez quoi ? C'était un de ces kits de soudure de Chine. Il est ultra bon marché, mais fait son travail.
  • Pistolet à colle chaude (j'en ai déjà un)
  • Ruban adhésif 2 faces. 2,50€ en magasin de bricolage local.
  • Coupeur. J'en ai utilisé un que j'ai déjà, même si la lame est très usée.
  • Ruban adhésif standard.
  • Marqueur permanent.
  • Une pince à épiler comme il faut pour être précis. Ils sont venus avec le kit de fer à souder que j'ai acheté.
  • Feuille d'étain. Volez-en dans votre cuisine.

Remarque: j'avais déjà un dremel alors j'ai décidé d'essayer de couper le plexiglas moi-même. Cependant, certains magasins de bricolage locaux ont un service de coupe qui vous coûte environ 1€, donc si vous n'en avez pas, ce n'est pas un problème.

Note2: j'ai omis que vous aurez besoin d'un ordinateur pour programmer votre arduino, ainsi que d'un câble pour le brancher mais je pense que c'est évident… Aussi, dans la première fois j'ai utilisé une maquette pour tout tester, spécialement l'écran oled et le bande led.

coût total: ~19€ (disons 20€ pour ajouter un peu d'écart)

Je pense que le prix est juste étant donné que pour le même prix, vous pouvez acheter un tapis de souris RVB chinois qui n'est même pas contrôlé par logiciel, SI Amazon le met en vente.

Étape 2: Capteurs capacitifs

Capteurs capacitifs
Capteurs capacitifs
Capteurs capacitifs
Capteurs capacitifs
Capteurs capacitifs
Capteurs capacitifs
Capteurs capacitifs
Capteurs capacitifs

C'est le capteur que vous allez utiliser comme bouton pour déclencher des macros. En faire un est très simple: découpez un petit carré de papier d'aluminium, prenez un fil, dénudez une extrémité et fixez-le au papier d'aluminium avec du ruban adhésif, en vous assurant qu'ils sont en contact les uns avec les autres.

Cela fonctionne parce que la feuille agit comme une armure de condensateur, et l'autre armure pour compléter un condensateur à plaques parallèles est votre doigt. Entre les deux, il y a un diélectrique: le plexiglas, dans notre cas. Ainsi, en mesurant la capacité, vous pouvez savoir à quelle distance se trouve votre doigt, vous pouvez donc écrire un croquis pour choisir à quelle mesure de capacité déclencher l'état "bouton enfoncé".

Dans les images ci-dessus, vous pouvez voir un capteur capacitif que j'ai fabriqué avec un cavalier, juste pour essayer si la physique fonctionne (spoiler: c'est vraiment le cas), ainsi que le schéma de câblage final. Pour brancher le capteur à l'arduino, vous devez choisir une broche d'envoi et une broche de réception (dans ce cas, D3 et D4 pour la clé 1) et mettre une résistance de 1,5 MOhm entre ces deux.

Étape 3: Couper les dalles de plexiglas

Découpe des dalles de plexiglas
Découpe des dalles de plexiglas
Découpe des dalles de plexiglas
Découpe des dalles de plexiglas
Découpe des dalles de plexiglas
Découpe des dalles de plexiglas
Découpe des dalles de plexiglas
Découpe des dalles de plexiglas

Attention: ne retirez pas le film de protection du panneau avant d'avoir fini de tout couper ou vous risquez de le casser !

Vous devez choisir la taille de votre tapis de souris: le mien mesure 25 cm x 20,6 cm, mais vous pouvez choisir les mesures que vous souhaitez; N'oubliez pas que plus il est grand, plus vous avez besoin de leds, donc le coût total peut augmenter un peu.

Après avoir choisi la taille, dessinez quelques lignes directrices avec un marqueur permanent. Le plexiglas est très facile à couper, vous pouvez simplement utiliser un cutter puis le casser. Parce que mon cutter n'est pas adapté au plexiglas (ne fonctionne même pas correctement pour le papier…) j'ai essayé avec un Dremel. Je n'ai jamais utilisé d'outil rotatif auparavant, mais il y a une première fois pour tout… Je ne savais pas quel bit choisir, ni à quelle vitesse l'utiliser. J'ai décidé d'opter pour un disque de coupe "standard" après avoir essayé la fraise conique (je pense qu'elle est plus adaptée au travail du bois).

Comme vous pouvez le voir sur les photos, le résultat est plutôt bon même si le bord est assez rugueux. À la fin de cette étape, vous devriez avoir 3 rectangles identiques, dont 2 de 2 mm d'épaisseur et un (qui va au milieu) de 4 mm d'épaisseur. Cela se traduira par un tapis de souris de 8 mm d'épaisseur qui n'est pas aussi grand qu'il n'y paraît, c'est à peine perceptible, du moins pour moi car j'ai l'habitude de reposer mon poignet complètement sur la surface du tapis et non sur le bord.

Étape 4: sculpter la couche intermédiaire

Sculpter la couche intermédiaire
Sculpter la couche intermédiaire
Sculpter la couche intermédiaire
Sculpter la couche intermédiaire
Sculpter la couche intermédiaire
Sculpter la couche intermédiaire
Sculpter la couche intermédiaire
Sculpter la couche intermédiaire

cette étape n'implique que la couche intermédiaire, il suffit donc de prendre le panneau de 4 mm et de ranger le reste.

A l'aide d'un feutre indélébile, tracez quelques lignes en surface: ces lignes doivent former un canal qui sera le logement de la bande led. Ils doivent être larges de la même manière que votre bande est de +1 cm pour laisser de la place pour câbler les broches d'extrémité sans tracas. C'est parfaitement bien si vous choisissez de couper un cadre au lieu d'une forme en U comme je l'ai fait, en fait c'est encore mieux car vous aurez encore plus d'espace pour une "gestion des câbles" plus tard… pensez juste à laisser quelque chose au milieu pour contraster votre poids de main soutenant le plexiglas plus fin que nous allons utiliser pour tout fermer.

Aussi, dessinez un logement dans la partie supérieure du panneau pour l'arduino et un en bas à gauche pour l'écran oled. Sur les photos, vous pouvez voir que j'ai fait un trou avec un foret juste comme point de départ pour la coupe.

À propos des boutons, j'ai commencé ce projet en prévoyant de câbler 4 boutons mais je pensais qu'ils étaient trop nombreux et j'avais peur que les câbles ne rentrent pas, alors j'ai opté pour 3 à la place. Cette fois, je n'ai pas percé de trou à travers le panneau mais je me suis arrêté à environ mi-hauteur, je l'ai fait parce que le fil est en contact avec la feuille en utilisant simplement du ruban adhésif et est utile pour avoir une surface dure derrière, donc ça a gagné ne tombez pas dans le trou si quelque chose ne va pas (c'est-à-dire que le câble se détache en glissant). Pour ce faire, j'ai utilisé un foret conique.

Étape 5: Couche inférieure et supérieure

Couche inférieure et supérieure
Couche inférieure et supérieure
Couche inférieure et supérieure
Couche inférieure et supérieure
Couche inférieure et supérieure
Couche inférieure et supérieure

Commençons par la couche inférieure: il vous faut 2 trous, un correspondant au boîtier de l'écran, et un correspondant au boîtier de l'arduino. C'est ça.

La couche supérieure n'a en fait pas besoin d'un trou mais vient maintenant l'une des étapes les plus difficiles de cette construction: l'arduino fait 7 mm d'épaisseur, ce tapis de souris fait 8 mm d'épaisseur (2+2+4 mm), le panneau supérieur fait également 2 mm d'épaisseur comme le bas (que nous avons déjà percé) nous devons donc acheminer un rectangle de 1 mm de profondeur pour avoir un panneau d'épaisseur de 1 mm dans la partie correspondant au port usb arduino. Ce n'est pas une chose difficile à faire, mais avoir un outil rotatif aide beaucoup ici.

Sur la photo, vous pouvez voir que j'ai également fait quelques canaux pour tout câbler plus facilement.

Étape 6: tout poncer

Tout poncer
Tout poncer
Tout poncer
Tout poncer
Tout poncer
Tout poncer

Il est temps de lisser les bords. Là où il y a plus de bords rugueux, utilisez un grain 180. Vous devez poncer les bords à l'intérieur et à l'extérieur du cadre, cela se traduira par un éclairage uniforme et doux.

Une fois que vous avez terminé, retirez le film protecteur de tous les panneaux et nettoyez le tout avec un scottex humide.

Astuce: vous pouvez être plus à l'aise pour poncer en enroulant une fine bande de papier sur une petite brique de bois; de cette façon, vous aurez une meilleure adhérence et vous pourrez appliquer une pression uniforme sur la surface du papier en contact avec le bord.

photos bonus: j'avais vraiment hâte de voir le résultat de l'éclairage de bord (je n'en ai jamais vu en vrai !) alors j'ai essayé de faire briller des leds à travers le panneau: le résultat est juste bluffant. La "forme sombre" sur les diodes est une feuille d'étain que j'ai utilisée pour améliorer la réflectivité (j'ai aussi essayé sans, mais l'utiliser donne une énorme différence).

Étape 7: Temps d'emballage

Temps d'emballage !
Temps d'emballage !
Temps d'emballage !
Temps d'emballage !
Temps d'emballage !
Temps d'emballage !

Yayyy:)

Cette étape concerne uniquement le panneau inférieur: prenez le papier cadeau et découpez-le de manière à obtenir un rectangle plus grand que la taille de votre tapis de souris (mais pas trop, il suffit de prendre 2 cm de chaque lunette). C'est maintenant comme si vous appliquiez une protection d'écran sur votre smartphone: avant de décoller l'adhésif, assurez-vous que la surface est parfaitement propre. Commencez à appliquer d'un côté en vous aidant d'un outil lisse comme une carte de crédit, cela éliminera les bulles d'air.

Une fois que vous avez terminé, vous pouvez attacher ensemble la couche inférieure et la couche intermédiaire à l'aide de petits morceaux de ruban adhésif 2 faces, comme vous pouvez le voir sur les photos. Vous pouvez également voir que j'ai mis un autre papier d'aluminium le long de certains bords, je l'ai fait juste pour améliorer la réflectivité le long des côtés où il n'y a pas de led.

Étape 8: Test de l'électronique

Tester l'électronique
Tester l'électronique
Tester l'électronique
Tester l'électronique
Tester l'électronique
Tester l'électronique
Tester l'électronique
Tester l'électronique

Vous ne voulez pas commencer à souder quelque chose qui ne fonctionne même pas, n'est-ce pas ? Nous devons tester l'écran oled et la bande led. Pour ce faire, j'ai utilisé un arduino de rechange dont j'ai soudé tous les en-têtes, car j'avais besoin de l'utiliser sur une maquette. Le câblage est exactement le même que celui de l'étape 2, n'oubliez pas que l'écran DOIT être branché sur les broches A6-A5 car ce sont les lignes de communication i2c.

Pour les tester, vous pouvez utiliser le code ici. N'oubliez pas que pic.h est un fichier d'en-tête, vous devez donc l'importer dans votre IDE.

Résultat attendu: la bande led doit s'estomper de toutes les couleurs tandis que l'écran doit imprimer le logo Asus ROG.

Vous pouvez également simplement utiliser les exemples par défaut à l'intérieur des bibliothèques des composants (j'ai choisi la bibliothèque FastLED pour gérer la bande rgb), à vous de choisir. Bien sûr, n'oubliez pas d'ajouter les bibliothèques à l'IDE arduino !

Étape 9: Envelopper le panneau supérieur

Envelopper le panneau supérieur
Envelopper le panneau supérieur
Envelopper le panneau supérieur
Envelopper le panneau supérieur
Envelopper le panneau supérieur
Envelopper le panneau supérieur

Avant de commencer, vous devez mesurer la taille de la zone visible de votre écran, par rapport aux bords du panneau. Si vous ne souhaitez prendre aucune mesure, vous pouvez mettre des couches de scotch sur l'écran, dessiner avec le marqueur un rectangle entourant la partie visible et découper le long des bords: vous venez de réaliser une protection d'écran aux dimensions parfaites pour votre écran. Collez ensuite la "protection écran" sur le plexiglas et commencez à emballer: comme il a une légère épaisseur, vous pourrez voir les bordures à travers le film plastique.

Donc, enveloppez le panneau supérieur comme nous l'avons fait auparavant, mais dans cette étape, il est crucial d'éviter les bulles d'air, car ce sera la surface sur laquelle glissera votre souris. plus il y a de bulles d'air, moins votre souris aura de précision de suivi.

Une fois que vous avez terminé, avec un couteau exacto, coupez une fenêtre pour voir l'écran. Encore une fois, la lame doit être neuve sinon ça ne sera pas bon (oui je sais, j'ai été stupide et j'ai utilisé le même cutter merdique mais j'ai précipité les dernières étapes parce que j'étais trop excité pour le voir fini… une bonne raison pour en faire un autre:D).

Astuce: vous ne pouvez pas choisir une surface complètement réfléchissante (comme le noir poli/satiné) pour le papier sinon votre souris ne fonctionnera pas. Au lieu de cela, choisissez une finition mate comme je l'ai fait. Le wrap look carbone devrait également fonctionner, ainsi que la bombe autocollante mais si vous optez pour le look carbone, considérez qu'il n'est pas plat à cause de la "finition 3D" (=votre souris sera plus bruyante en glissant).

Étape 10: Tout câbler

Câblage de tout
Câblage de tout
Câblage de tout
Câblage de tout
Câblage de tout
Câblage de tout

Nous y sommes presque: il est temps de câbler toute l'électronique à l'intérieur du tapis de souris.

Tous les composants doivent être sans goupille: s'il y en a, dessoudez-les. Vous ne pouvez pas ajouter d'épaisseur supplémentaire, par exemple, ma bande LED est livrée avec des fils supplémentaires soudés, j'ai donc décidé de tout enlever car les fils étaient trop épais. Tous les câbles doivent être mesurés avec suffisamment de précision, sauf ceux reliés à l'écran qu'il vaut mieux laisser un peu lâche, pour vous aider à faire les derniers réglages.

Sur les photos, vous pouvez voir que la bande led est pré-soudée avec un connecteur propriétaire, j'ai donc juste coupé la protection thermorétractable qu'ils ont mise et tout dessoudé; De plus, l'écran oled était livré avec des broches pré-soudées, donc encore une fois, j'ai dû les retirer avant de continuer. J'avais 2 pièces de rechange de 2 leds chacune et depuis que j'ai décidé de mettre 4 leds de chaque côté (donc mon tapis de souris a un total de 4x3=12 leds), j'ai soudé ces 2 pièces ensemble juste en faisant un "pont" entre les connecteurs utilisant de l'étain.

J'ai utilisé de la colle chaude pour m'aider à tout maintenir en place et en fait cela a très bien fonctionné.

Lorsque vous êtes prêt, coupez une autre feuille d'étain et collez-la sur les LED avec le côté réfléchissant tourné vers la source de lumière, cela améliorera considérablement la réflectivité.

Étape 11: fermeture du tapis de souris

Fermeture du tapis de souris
Fermeture du tapis de souris
Fermeture du tapis de souris
Fermeture du tapis de souris

C'est la dernière étape. Une fois que vous avez tout câblé et testé, coupez quelques petits carrés de ruban adhésif 2 faces et placez-les dans les coins, puis centrez l'écran avec la fenêtre que vous avez faite à l'étape 9 et fixez-le en place à l'aide de colle chaude.

Lorsque vous êtes prêt à le fermer, choisissez un point de départ à partir duquel aligner le panneau sur les deux autres.

Étape 12: Programmation

La programmation
La programmation
La programmation
La programmation
La programmation
La programmation
La programmation
La programmation

La partie matérielle est terminée mais maintenant il est temps de passer la tête en mode programmation: jusqu'à présent, vous pouvez simplement contrôler votre tapis de souris en chargeant des croquis à l'aide d'arduino IDE, ce qui n'est pas si mal si vous avez beaucoup de temps à perdre à éditer chacun chronométrer plusieurs lignes de code: mieux vaut avoir un logiciel en arrière-plan sur votre ordinateur, qui communique directement avec Arduino via une communication série.

Heureusement pour vous, j'ai tout open source sur ce projet donc sur mon dépôt Github vous pouvez trouver le firmware arduino ainsi que le logiciel à exécuter sur votre ordinateur: bien sûr si vous voulez essayer de tout faire par vous-même c'est parfaitement bien, en fait c'est la partie la plus ennuyeuse de ce bricolage, donc si vous n'avez pas envie de le faire, pas de problème. Les PR sont les bienvenus, bien sûr ! le programme n'est pas encore terminé, en fait il peut juste faire des choses basiques comme régler des leds individuelles ou avec une certaine disposition mais je suis étudiant et je n'ai pas beaucoup de temps libre:S

Dans les images, vous pouvez voir quelques tests que j'ai effectués pendant le processus de construction de tout, si je devais les placer sur une chronologie faite de ces étapes de bricolage, je choisirais de les insérer à l'étape 8 mais j'ai décidé de ne pas les inclure car, vous savez, ils ne font que coder et tester, y compris étudier des solutions pour avoir le meilleur éclairage de bord possible (comme varier le nombre de leds et la distance entre elles pour obtenir une lumière uniforme sans trop mélanger les couleurs individuelles). J'ai également inclus une image sur une tentative avec l'écran oled pour afficher des statistiques en temps réel sur mon ordinateur (cpu, utilisation de la RAM, etc.) et quelques autres sur le développement de l'interface utilisateur.

Étape 13: Profitez

Prendre plaisir!
Prendre plaisir!
Prendre plaisir!
Prendre plaisir!

Merci d'avoir lu cette instructable ! c'est le premier que j'ai écrit et comme vous l'avez peut-être deviné, c'est aussi mon tout premier projet de bricolage jamais réalisé auparavant. Je me suis vraiment amusé à le faire et j'aime vraiment tout partager, alors j'ai adoré garder à l'esprit pendant toutes ces étapes que j'allais publier ce projet pour que tout soit disponible pour tout le monde. Si vous avez des questions, n'hésitez pas à les poser! Et les suggestions pour d'autres améliorations sont également les bienvenues, bien sûr.:)

Je veux passer quelques mots sur les choix que j'ai fait concernant le logiciel:

  1. J'ai choisi Java comme langage de programmation car c'est le langage utilisé pour écrire l'IDE arduino donc il me fournit une communication série sans faille avec la carte, aussi c'est "écrire une fois exécuté partout" (cit.) donc, étant donné que j'ai prévu de partager ce projet avec tout le monde, prendre en charge plusieurs plates-formes comme Windows et Linux n'est pas si mal après tout
  2. Si je choisissais plutôt C# comme langage de programmation, je serais en mesure de me connecter directement à d3d12 pour utiliser l'écran oled comme affichage FPS (essentiellement de la même manière que FRAPS) mais en sacrifiant la portabilité pour une telle fonctionnalité, ce n'est pas un choix judicieux, à moins pour moi
  3. Je sais, l'interface utilisateur est plutôt nulle LOL, le fait est qu'un constructeur vous facilite la vie si vous voulez une interface statique mais ce n'est pas le cas car vous pouvez choisir le nombre de leds que vous avez, alors j'ai opté pour la plus merdique mais la plus polyvalente Solution. Vous êtes libre de créer vos propres graphiques personnels et c'est ce que je vais faire… peut-être.
  4. Une autre amélioration pourrait consister à implémenter le moteur SteelSeries pour afficher les statistiques du jeu lorsque vous jouez à CS:GO ou à tout autre jeu pris en charge par cette bibliothèque… mais je ne peux pas exécuter ces jeux sur mon ordinateur portable, donc je ne pourrais même pas pouvoir pour commencer à essayer avec ça. Peu importe!

Conseillé: