Ich beschloss, einen Artikel über ein sehr einfaches Gerät zu schreiben, das an zwei Abenden hergestellt wurde. Es hat ein langjähriges Problem gelöst, über das ich mich sehr freue und das ich bis heute benutze. Es hat ungefähr 3 Monate lang richtig funktioniert. Genau das ist am Ende passiert. Wer interessiert sich bitte unter der Katze.

Sie haben also das Ergebnis gesehen. Beginnen wir die Geschichte von weitem.
Ich habe einen Laptopständer (für mich dient er als Hauptcomputer und ist daher immer eingeschaltet). Und der Ständer ist nicht einfach. Zum Abkühlen können Sie 3 Kühler anschließen, den Ständer an USB anschließen und die Kühler drehen sich. Wenn die Kühler erfolgreich installiert wurden, fällt sie vom Prozessor um 7 Grad ab. Im Allgemeinen ist die Sache notwendig. Alles wäre in Ordnung, aber die Kühler im Stand drehen sich ehrlich gesagt immer mit voller Leistung - was bedeutet, dass in der Stille ein ständiges monotones Rascheln herrscht. Es war, als hätte jemand eine kleine Kettensäge im Ständer gestartet. Hier ist der eigentliche Schuldige des Artikels:

Eines schönen Abends, als Pakete mit Aliexpres kamen, "genoss" ich das Schweigen des Standes in der Stille. Und er hat sich entschieden - genug für mich. Es wurde beschlossen, den Stand auf USB zu verwalten. Die Hand hat bereits versucht, eine Art stm32f1 mit Hardware-USB zu schlagen. Und dann dämmerte es mir - es gibt einen Digispark (das gleiche Attiny85, nur auf der Platine). Günstig, bereits mit einer Bindung für Software-USB, ideal für diese Aufgabe - auf einen Transistor zu klicken. Ich breitete für ihn einen schnellen kleinen Schal mit einem Mosfet aus, der von einem der Stifte gesteuert wird, und einen Platz für eine RGB-LED.
Es stellte sich so heraus:

Unter dem Spoiler gibt es eine Erklärung der Details auf der Tafel und ein Bild zum Drucken, wenn jemand wiederholen wird:
Teileliste und Leiterplattenbild
U2 - irlml6244trbpf - mosfet
R3-0603 10k Widerstand
R1, R2 - 0603 220 Ohm Widerstand
R4 - 0,25 W 220 Ohm Widerstand
U6 ist eine RGB-LED, die jedoch nicht gelötet wurde. Meiner Meinung nach ist er überflüssig.
Bitte beachten Sie, dass die USB-Mutter auf diesem Board auf der falschen Ebene geschieden ist!Unter dem zu druckenden Bild befindet sich eine Druckbreite von 0,93 Zoll.

Ich habe es auf transparentem Papier für Laserdrucker in 2 Kopien gedruckt und es in eine vollständig undurchsichtige Fotomaske geklebt. Dies ist ein solcher Trick für diejenigen mit Fotolackproblemen. Ich schnitt ein Stück Glasfaser, klebte einen Fotolack in Wasser, glättete es mit einer Plastikkarte und bügelte es bei 60 Grad. Foto:

Als nächstes erfolgte die Belichtung und das Ätzen in Zitrone und Peroxid sowie nach Entfernen des Fotolacks und schließlich Bohren und Verzinnen. Das Endergebnis vor dem Versiegeln der Komponenten:

Die Komponenten wurden gelötet (ja, was zu löten - ein USB-Stecker, ein Paar SMD, ja Digispark selbst). Es gab keine Pfosten in der Verkabelung - ich markierte meinen Mutter-USB auf der falschen Schicht, was sie auf den Kopf stellte. Im Allgemeinen hätte ich die Karte lieber über ein dünnes Kabel mit dem Computer verbunden, aber das ist übrigens so. Das Ergebnis, das Sie auf dem ersten Foto gesehen haben.
Es blieb, den Code zu schreiben. Zuerst wollte ich Makefile und reines C verwenden, entschied aber, dass Arduino Ide schneller ist. Ich habe es getan. Das einzige ist, dass der chinesische Digispark nicht über USB gehen wollte, bis ich den offiziellen Hex-Bootloader mit meinem Programmierer gepatcht habe. Danach wollte ich Code mit PID-Kontrolle und Lüfterscheibe schreiben, überlegte es mir aber anders. Infolgedessen wird im Digispark der Code, der nur die virtuelle serielle Schnittstelle abhört, und wenn einer dort angezeigt wird, die Lüfter eingeschaltet, wenn Null ihn ausschaltet.
Jetzt gab es ein Teil für den Computer. Ich habe einen Laptop unter Linux, also habe ich ein Bash-Skript geschrieben und es in Autoload gestopft. Alles, was es tut, ist, nach unserem Digispark in der Liste der Geräte zu suchen. Es analysiert die Ausgabe des Sensorbefehls alle N Minuten und wenn Temperatur> 80 1 sendet, wenn <60 0 sendet .
Das Gerät arbeitete 3 Monate lang stabil. Das Leben ist angenehmer geworden. Unten finden Sie den Bash-Skriptcode.