J'ai décidé d'écrire un article sur un appareil très simple réalisé en deux soirées. Il a résolu un problème de longue date, dont je suis très heureux et que je l'utilise à ce jour. Cela a fonctionné correctement pendant environ 3 mois. En fait, c'est ce qui s'est finalement produit. Qui sont intéressés, s'il vous plaît, sous le chat.

Vous avez donc vu le résultat. Commençons l'histoire de loin.
J'ai un support pour ordinateur portable (pour moi, il sert d'ordinateur principal, et il est donc toujours allumé). Et le support n'est pas simple, pour refroidir, vous pouvez attacher 3 refroidisseurs, brancher le support sur USB et les refroidisseurs tourneront. Si les refroidisseurs sont installés avec succès, il baisse de 7 degrés par rapport au processeur. En général, la chose est nécessaire. Tout irait bien, mais les glacières du stand, franchement, tournent toujours à pleine puissance - ce qui implique qu'en silence il y a un bruissement monotone constant. C'était comme si quelqu'un avait démarré une petite tronçonneuse dans le stand. Voici le véritable coupable de l'article:

Un beau soir, alors que les colis arrivaient avec des aliexpres, j'ai «apprécié» le chant du stand en silence. Et il a fermement décidé - assez pour moi. Il a été décidé de gérer le stand sur USB. La main a déjà tendu la main pour gifler une sorte de stm32f1 avec une clé USB matérielle. Et puis il m'est apparu - il y a un digispark (le même attiny85, uniquement sur la carte) pas cher, déjà avec une liaison pour logiciel usb, idéal pour cette tâche - pour cliquer sur un transistor. Il a déployé pour lui une petite écharpe rapide avec un mosfet contrôlé par l'une des broches, et une place pour une LED RGB.
Il s'est avéré comme ceci:

Sous le spoiler, il y a une explication des détails sur le tableau et une image à imprimer si quelqu'un va répéter:
Liste des pièces et image de la carte de circuit imprimé
U2 - irlml6244trbpf - mosfet
R3-0603 résistance 10k
R1, R2 - 0603 Résistance 220 ohms
R4 - Résistance 0,25 W 220 ohms
U6 est une LED RGB, mais elle n'a pas soudé. À mon avis, il est superflu.
Veuillez noter que la mère USB sur cette carte est divorcée sur la mauvaise couche!Sous l'image à imprimer se trouve une largeur d'impression de 0,93 pouces.

Je l'ai imprimé sur du papier transparent pour imprimantes laser en 2 exemplaires, je l'ai collé dans un masque photo complètement opaque. C'est une astuce pour ceux qui ont des problèmes de résine photosensible. J'ai coupé un morceau de fibre de verre, collé une résine photosensible dans de l'eau, l'ai lissée avec une carte en plastique, je l'ai repassée à 60 degrés. Photo:

Viennent ensuite l'exposition et la gravure dans un citron et du peroxyde, et après avoir retiré la résine photosensible et enfin percé et étamé. Le résultat final avant l'étanchéité des composants:

Les composants ont été soudés (oui quoi souder - un connecteur usb, une paire de smd, oui digispark lui-même) Il n'y avait pas de jambages dans le câblage - j'ai marqué maman USB sur la mauvaise couche, ce qui l'a fait se retourner. En général, j'aurais préféré que la carte soit connectée à l'ordinateur sur un cordon fin, mais c'est le cas, d'ailleurs. Le résultat que vous avez vu sur la première photo.
Restait à écrire le code. Au début, je voulais utiliser le makefile et le C pur, mais j'ai décidé que l'arduino était plus rapide. Je l'ai fait. La seule chose est que le digispark chinois ne voulait pas passer par USB jusqu'à ce que j'aie corrigé le chargeur hexadécimal officiel avec mon programmeur. Après cela, j'ai voulu écrire du code avec un contrôle PID et une cale de ventilateur, mais j'ai changé d'avis. Par conséquent, sur digispark, le code qui écoute simplement le port série virtuel, et s'il apparaît, il allume les ventilateurs, si zéro l'éteint.
Maintenant, il y avait une partie pour l'ordinateur. J'ai un ordinateur portable sous linux, j'ai donc écrit un script bash et l'ai inséré dans le chargement automatique, il ne fait que chercher notre digispark dans la liste des appareils, il analyse la sortie de la commande des capteurs toutes les N minutes et si la température> 80 envoie 1, si <60 envoie 0 .
L'appareil a fonctionné de manière stable pendant 3 mois. La vie est devenue plus agréable. Voici le code du script bash.