Hey! Das ist meine Interpretation des beliebtenDeejProjekt!
Was ist ein Deej?
Es ist ein Satz physischer Schieberegler, mit denen Sie die Lautstärke verschiedener Anwendungen auf Ihrem Computer steuern können!
Warum sollte ich das wollen?
Hast du schon einmal ein Spiel gespielt, und das Spiel ist zu laut?
Hattest du Freunde auf Discord, die du nicht hören konntest (oder vielleicht zu gut hören konntest)?
Mit dem "deej" kannst du hinüberreichen und die Lautstärke einzelner Anwendungen mit physischen Schiebereglern erhöhen oder verringern! Keine Notwendigkeit, mit Alt+Tab aus deinem Spiel herauszugehen!
Was werde ich brauchen, um mein eigenes zu machen?
- (Etwas) Programmiererfahrung: Es gibt nicht viel Programmierung, aber es gibt ein bisschen.
- Teile: Eine Teileliste ist unten enthalten.
- Werfen Sie einen Blick auf das Projekt, um weitere Informationen zu erhalten:https://github.com/omriharel/deej
Dinge, die dieses Projekt einfacher machen werden, aber nicht unbedingt notwendig sind.
- Lötkolben: Wird zum Verdrahten sowie zum Einsetzen der Messinggewindeeinsätze verwendet.
- Löterfahrung
- Verkabelungserfahrung
- Arduino-Erfahrung (ehrlich gesagt, ist dieses Projekt ein ziemlich guter Einstiegspunkt, um zu lernen, wie man Mikrocontroller programmiert)
- Multimeter: Erleichtert es, herauszufinden, wohin die Pins auf deinen Schaltern gehen.
Teileliste
Einige der unten stehenden Links führen zu nicht verfügbaren Teilen. Für diese müssen Sie einen Ersatz finden.
| Name | Link | Menge | Notizen |
|---|---|---|---|
| Teyleten Robot ESP32-S3-DevKitC-1 | https://www.amazon.com/dp/B0B6HT7V7P | 1 | Es gibt einen kleinen Kondensator unter der BOOT-Taste. Entferne ihn. |
| Slide Potentiometer Einzeln linear | https://www.amazon.com/dp/B07QVQ67MV | 5 |
Dies ist die Modellnummer: SC609N. Die physischen Abmessungen betragen 15,5 mm Breite und 88 mm Länge. Der Schaft ist etwa 9 mm breit, und die Schrauben sind 80 mm auseinander positioniert. |
| Messinggewindeeinsätze | https://www.amazon.com/dp/B0CNVXWQYZ | 8 | |
| M3x6mm Schrauben | https://www.amazon.com/dp/B07CMRQ3TB | 10 | Die meisten/alle M3x6mm-Inbusschrauben sollten funktionieren. |
| M3x12mm Schrauben | Du kannst diese so ziemlich überall finden. | 4 Minuten | Die meisten/alle M3x12mm-Inbusschrauben sollten funktionieren. |
Zusätzlich zu den oben genannten Teilen sollten Sie in Erwägung ziehen, einige Überbrückungskabel zu kaufen, die in Elektronik-Kits üblich sind. Wenn Sie es sorgfältig planen, könnten Sie dies zusammenbauen, ohne etwas löten zu müssen.
Gedruckte Teileliste
Deckel: 1
Basis: 1
Knopf: 5
Versammlung
Die Verkabelung ist unordentlich, aber die physische Montage ist ziemlich einfach. Schiebe alle 5 Schieberpotentiometer in den Deckel und schraube sie mit den M3x6mm-Schrauben ein.
Danach verwenden Sie einen Lötkolben oder etwas anderes, das heiß wird, um die Messinggewinde in die Basis einzuführen. HINWEIS: Es gibt 2 Messingeinführungsstellen pro Ecke der Basis. Eine auf der Oberseite, am nächsten zum Deckel, und eine auf der Unterseite. Die Einführungen auf der Unterseite sind optional, aber die auf der Oberseite sind nicht optional.
Nachdem die Messinggewindeeinsätze eingesetzt wurden, verwenden Sie die M3x12mm-Schrauben, um den Deckel anzuschrauben.
Verkabelung
Das hängt wirklich davon ab, welche Potentiometer du gekauft hast. Für die, die ich verlinkt habe, ist Pin 1 Ground, Pin 2 ist der variable Pin und Pin 3 ist 3,3Vcc.
Deine Potentiometer könnten etwas anders sein. Du kannst sie in Echtzeit mit dem seriellen Monitor testen, nachdem du den Deej Arduino-Sketch auf den Mikrocontroller hochgeladen hast.
Während dies nicht die einzigen Pins sind, die Sie auf dem Board verwenden können, sind die Pins 9-13 alle nahe beieinander und sind alle ADC-Pins (also werden sie für dieses Projekt funktionieren).
Egal was, du musst den Ausgangsstift (oder variablen Stift) finden und ihn an einen ADC-Stift auf dem ESP32-Mikrocontroller anschließen. Jeder Schieberegler wird an einen separaten ADC-Stift angeschlossen. (Ich schlage vor, Pins 9 bis 13 zu verwenden)
Zusätzlich zum Anschließen der ADC-Pins müssen Sie sicherstellen, dass jeder Schieberegler eine Verbindung zu Ground und VCC hat (entweder 5V oder 3,3V, je nachdem, welche Sie gekauft haben. Auch hier können Sie dies mit einem seriellen Monitor testen). Wie Sie dies tun, liegt bei Ihnen.
Programmierung
Das deej-Projekt erwartet, dass die Schiebereglerwerte zwischen 0 und 1023 (einschließlich) liegen, aber der ESP32-S3-DevKitC-1 geht von 0 bis 4095 (einschließlich), so dass der Standard-Sketch, der im deej-GitHub-Repository zu finden ist, nicht sofort funktionieren wird (oder besser gesagt, er wird funktionieren, aber Sie werden Ihre Lautstärke maximieren, nachdem Sie ein Viertel des Weges h
Die Lösung ist zum Glück ziemlich einfach. Du musst nur eine Zeile Code ändern. Ich werde die genaue Zeile zeigen und dann den gesamten Sketch einfügen, nur um der Vollständigkeit willen.
Zeile #23 inDeej-5-Sliders-Vanilla.inoMuss von diesem geändert werden:
analogSliderValues[i] = analogRead(analogInputs[i]);
Zu diesem:
analogSliderValues[i] = (int)(((u_int64_t)analogRead(analogInputs[i])) * 1023 / 4095);Hier ist die vollständige Skizze:
const int NUM_SLIDERS = 5; const int analogInputs[NUM_SLIDERS] = {9, 10, 11, 12, 13}; int analogSliderValues[NUM_SLIDERS]; void setup() { for (int i = 0; i < NUM_SLIDERS; i++) { pinMode(analogInputs[i], INPUT); } Serial.begin(9600); } void loop() { updateSliderValues(); sendSliderValues(); // Tatsächlich Daten senden (die ganze Zeit) // printSliderValues(); // Für Debugging delay(10); }Eine Alternative dazu, wenn Sie sich beim Programmieren in Golang wohler fühlen, besteht darin, einfach den Go-Code so zu ändern, dass er Werte bis zu 4095 akzeptiert. Wie auch immer, die Wahl liegt bei Ihnen.
Modellquelle
