#DIY-MacroPad
Explore tagged Tumblr posts
Text
Eigenes MacroPad bauen: mit Raspberry Pi Pico zum Effizienz-Booster

Wie du dir ein MacroPad mit dem Raspberry Pi Pico aufbaust und programmierst, zeige ich dir hier in meinem neuen Beitrag. Dieses MacroPad kann ein echter Effizenz-Booster sein und dich bei deiner täglichen Arbeit unterstützen. https://youtu.be/GCuJPVpsVTY In der ersten Version hatte mein MacroPad lediglich sechs Tasten und lief schon recht gut, die zweite Version habe ich um drei weitere Tasten und drei Rotary Encoder erweitert und somit auf das nächste Level gehoben. Ein zusätzliches Feature ist ein einfacher Schiebeschalter, mit welchen man programmatisch die Tasten doppelt belegen kann.
Warum kann ein MacroPad ein Effizienz-Booster sein?
Ein MacroPad kann die Produktivität erheblich steigern, indem es wiederkehrende PC-Aktionen auf einfache Weise automatisiert. Hier sind die wichtigsten Vorteile: - Zeitersparnis: Ein Knopfdruck ersetzt wiederholte Tastenkombinationen und Menüaktionen. - Personalisierte Steuerung: Es lässt sich individuell programmieren, um häufig genutzte Funktionen direkt auszuführen. - Vereinfachung komplexer Prozesse: Mehrere Arbeitsschritte können in einem Makro zusammengefasst werden. - Fehlerreduktion: Automatisierte Abläufe minimieren menschliche Fehler. - Ergonomische Vorteile: Weniger wiederholte Handbewegungen reduzieren körperliche Belastung. - Anpassung für verschiedene Programme: Das MacroPad kann je nach Software unterschiedliche Befehle übernehmen. - Multitasking-Unterstützung: Es erleichtert das parallele Arbeiten mit mehreren Programmen. Insgesamt wird die Arbeit schneller, einfacher und komfortabler.
Was wird für den Aufbau eines MacroPad's benötigt?
Für das hier vorgestellte MacroPad habe ich nachfolgende Bauteile benötigt: - einen Raspberry Pi Pico* - zwei 26 Pin Buchsenleisten*, 2,54 mm Rastermaß - sechs 12x12mm Printtaster* mit farbigen Köpfen - eine Lochrasterplatine* - diverse Litzen 20 AWG* Statt dem alten Raspberry Pi Pico könntest du auch das Model mit WiFi nutzen und so ggf. mit etwas mehr Aufwand ein drahtloses Modell erstellen.
Bauteile - MacroPad Raspberry Pi Pico Hinweis von mir: Die mit einem Sternchen (*) markierten Links sind Affiliate-Links. Wenn du über diese Links einkaufst, erhalte ich eine kleine Provision, die dazu beiträgt, diesen Blog zu unterstützen. Der Preis für dich bleibt dabei unverändert. Vielen Dank für deine Unterstützung! Werkzeuge Neben einer vernünftigen Lötstation oder Lötkolben benötigst du noch: - einen Seitenschneider - eine Abisolierzange - eine Flachzange Die Flachzange benötigst du, um die starren 20 AWG Kabel zu biegen. Natürlich geht dieses auch mit der Hand nur so, hast du schöne 90° Winkel. Warum nicht den neuen Raspberry Pi Pico 2?
Der neue Raspberry Pi Pico 2 hat derzeit (Stand 10.10.2024) einen Hardware-Bug welcher die Verwendung für dieses Projekt derzeit ausschließt. Siehe https://github.com/adafruit/circuitpython/issues/9541.
Flashen des Mikrocontrollers für die Programmierung in CircuitPython
Um automatisierte Aktionen ausführen zu können, sind spezielle Features erforderlich, die nur CircuitPython bietet. Dazu muss der Mikrocontroller zunächst mit einer speziellen UF2-Datei bespielt werden, die es ermöglicht, CircuitPython auf dem Raspberry Pi Pico auszuführen. Diese Datei wird auf den Pico übertragen, indem man ihn in den Bootloader-Modus versetzt und die UF2-Datei auf das erscheinende Laufwerk kopiert. Die UF2-Datei bekommst du unter https://circuitpython.org/board/raspberry_pi_pico/. Zunächst musst du deinen Pico vom Computer trennen, um anschließend die Taste BOOT gedrückt zu halten und die Verbindung wieder herzustellen. Wenn dieses geschehen ist, dann solltest du ein neues Laufwerk im Explorer finden. Im nächsten Schritt musst du dann die UF2-Datei auf dieses Laufwerk kopieren oder per Drag'n Drop ziehen. Der Mikrocontroller wird dann automatisch geflasht und neu gestartet.


Aufbau der Schaltung - Taster am Raspberry Pi Pico
Auf dem MacroPad kannst du einfache Taster, Touchsensoren, analoge Joysticks und auch Rotary Encoder verbauen. Im Nachfolgenden zeige ich dir zunächst eine Schaltung mit einem Taster.

Schaltung - Raspberry Pi Pico mit zwei Taster Statt einfache Taster kannst du ebenso auch Touchsensoren verwenden, diese gibt es sehr günstig im 10er-Pack auf Aliexpress bereits ab 1,15 € zzgl. Versandkosten. Im Nachfolgenden verwende ich den kleinen XIAO RP2040 welchen ich dir bereits im Beitrag Seeed Studio XIAO RP2040 – ein Zwerg mit großer Leistung vorgestellt habe. Dieser hat denselben Chip wie der originale Raspberry Pi Pico und kann somit problemlos eingesetzt werden.
XIAO RP2040 mit drei Taster auf Breadboard
XIAO RP2040 mit drei Touchsensoren auf Breadboard
Programmierung des MacroPad in CircuitPython
Für die Programmierung verwende ich die Entwicklungsumgebung Thonny, diese kannst du dir unter https://thonny.org/ kostenfrei für Windows, Linux und macOS herunterladen. Du könntest ebenso auch den MU-Editor verwenden oder auch Visual Studio etc. jedoch ist die Thonny IDE schlank und trotzdem sehr mächtig und daher meine erste Wahl bei der Entwicklung von kleinen Programmen auf dem Mikrocontroller. Schritt 1 - programmieren eines Tasters mit CircuitPython am RP2040 Als Erstes erstellen wird ein Programm, welches das Event eines Tasters auswertet. Da wir in der Schaltung die Taster ohne PullUp / PullDown Widerstand angeschlossen haben, müssen wir dieses programmatisch lösen. import board from digitalio import DigitalInOut, Direction, Pull import time taster = DigitalInOut(board.D0) taster.direction = Direction.INPUT taster.pull = Pull.UP def main(): while True: if not taster.value: print("Taster wurde gedrückt!") time.sleep(0.5) main() Schritt 2 - ausführen einer Tastaturaktion via Taster Damit eine Aktion über die Tastatur oder Maus ausgeführt werden kann, benötigen wir das Modul Adafruit HID welches wir vom GitHub Repository Adafruit / Adafruit_CircuitPython_HID als ZIP-Datei herunterladen können. Auf der Seite https://docs.circuitpython.org/projects/hid/en/latest/ findest du eine sehr ausführliche Übersicht in englischer Sprache zum Funktionsumfang des Moduls. Im nachfolgenden Beispiel wird bei Tastendruck der kleine Buchstabe a an der Position des Cursors geschrieben. import board from digitalio import DigitalInOut, Direction, Pull import time import usb_hid from adafruit_hid.keyboard import Keyboard from adafruit_hid.keycode import Keycode from adafruit_hid.keyboard_layout_win_de import KeyboardLayout kbd = Keyboard(usb_hid.devices) taster = DigitalInOut(board.D0) taster.direction = Direction.INPUT taster.pull = Pull.UP def main(): while True: if not taster.value: kbd.press(Keycode.A) time.sleep(0.09) kbd.release(Keycode.A) main() Möchte man einen großen Buchstaben schreiben, so muss man wie beim Schreiben auf der Tastatur die Shift-Taste gedrückt halten. kbd.press(Keycode.SHIFT) kbd.press(Keycode.A) time.sleep(0.09) kbd.release(Keycode.A) kbd.release(Keycode.SHIFT) Der Funktion press & release können auch mehr als nur ein Parameter vom Typ Keycode übergeben werden, somit können wir den obigen Code auch deutlich schlanker schreiben. kbd.press(Keycode.SHIFT, Keycode.A) time.sleep(0.09) kbd.release(Keycode.SHIFT, Keycode.A) Schritt 2.1 - deutsches Tastaturlayout verwenden Per Default verwendet das Adafruit Modul ein englisches / amerikanisches Tastaturlayout, somit fehlen die Umlaute und auch verschiedene Tasten sind umbelegt, zum Beispiel liegt auf der Taste Z der Buchstabe Y usw. Um dieses zu lösen, gibt es eine Python-Datei, welche wir vom GitHub Repository Neradoc / Circuitpython_Keyboard_Layouts unter /libraries/layouts/ herunterladen können. import board from digitalio import DigitalInOut, Direction, Pull import time import usb_hid from adafruit_hid.keyboard import Keyboard from adafruit_hid.keycode import Keycode from adafruit_hid.keyboard_layout_win_de import KeyboardLayout kbd = Keyboard(usb_hid.devices) kbd_layout = KeyboardLayout(kbd) taster = DigitalInOut(board.D0) taster.direction = Direction.INPUT taster.pull = Pull.UP def main(): while True: if not taster.value: kbd_layout.write("Hier steht ein sehr langer Text!") time.sleep(0.5) main() Schritt 3 - Schreiben von Texten via Tasteraktion Möchte man längere Texte ausgeben, so kann man die zuvor bereits gezeigte Funktion write am Keyboard_Layout Objekt verwenden. kbd_layout.write("Hier steht ein sehr langer Text!") Schritt 3.1 - Dictionary für unterschiedliche Taster Wenn du mehrere Taster an deinen Mikrocontroller angeschlossen hast, dann empfiehlt es sich die Texte auszulagern. Hier bietet sich wiederum ein Dictionary an in welchem man die Texte in Schlüssel / Wertepaare auslagern kann. Im nachfolgenden Code verwende ich Touchsensoren vom Typ TTP223 welche ich dir bereits im Beitrag Arduino Lektion 92: kapazitiver Touch Sensor für den Arduino vorgestellt habe. Der Vorteil ist zusätzlich das man noch eine Rückmeldung via aufleuchten einer LED erhält und man diese Taster unter Abdeckungen anbringen kann.
XIAO RP2040 mit drei Touchsensoren auf Breadboard import board from digitalio import DigitalInOut, Direction, Pull import time import usb_hid from adafruit_hid.keyboard import Keyboard from adafruit_hid.keycode import Keycode from adafruit_hid.keyboard_layout_win_de import KeyboardLayout textbausteine = { "taster1":"Taster 1 wurde betätigt!", "taster2":"Der Taster 2 wurde gedrückt!", "taster3":"Am Taster 3 wurde ine Aktion ausgelöst!" } kbd = Keyboard(usb_hid.devices) kbd_layout = KeyboardLayout(kbd) taster1 = DigitalInOut(board.D0) taster1.direction = Direction.INPUT taster1.pull = Pull.DOWN taster2 = DigitalInOut(board.D1) taster2.direction = Direction.INPUT taster2.pull = Pull.DOWN taster3 = DigitalInOut(board.D2) taster3.direction = Direction.INPUT taster3.pull = Pull.DOWN def main(): while True: if taster1.value: kbd_layout.write(textbausteine) if taster2.value: kbd_layout.write(textbausteine) if taster3.value: kbd_layout.write(textbausteine) main()
Fazit - MacroPad mit Raspberry Pi Pico
Ein MacroPad lässt sich, wie du gesehen hast, mit dem Raspberry Pi Pico ganz unkompliziert umsetzen. Mit ein paar Tastern kannst du den hier gezeigten Code einfach nutzen und nach deinen Wünschen anpassen. Falls du anstelle von Tastern Touchsensoren verwenden möchtest, kannst du diese dezent hinter Gehäusen oder Oberflächen platzieren. So lassen sich Aktionen ausführen, ohne dass jemand bemerkt, wie sie ausgelöst werden. Read the full article
0 notes
Text
~~~Welcome to my Blog~~~
Hey y'all, I'm Ramie, welcome to my blog! I'm a weird trans girl who loves tabletop role-playing games, mecha, board games, horror, math, science, and storytelling! My hobbies include painting minis and folding origami. If you have any questions or considerations, please tell me!
I write ttrpgs, check them out here: https://socialistwolfgirl.itch.io/
Bluesky: @socialistwolfgirl.itch.io
Magic: the Gathering player? Check out my current commander decks here: https://archidekt.com/folders/921877
Important posts:
Old pinned post (a call to action): https://www.tumblr.com/justaboutdead/733270259035963392/emergency-notice-there-is-a-severe-lack-of-sexy?source=share
Citizen Sleeper Essay: https://www.tumblr.com/justaboutdead/780597556942127104/a-brief-informal-analysis-of-citizen-sleeper-1-and?source=share
Daisy Bell Essay: https://www.tumblr.com/justaboutdead/741112113719918592/house-of-leaves-2001-and-daisy-bell-and-why-its?source=share
On the Beach Essay (that got fully eaten by the tumblr algorithm before): https://www.tumblr.com/justaboutdead/738034545041014784/on-the-beach-by-nevil-schute-and-running-out-of?source=share
Quick Recommendations below the keep reading (trying to avoid super duper common ones):
Video-games: Rainworld, Outer WIlds, Lunacid, South Scrimshaw Pt. 1, Soma, Darksouls II (it's the best one, sorry), How Fish is Made, Devil Daggers, Dusk, Northern Journey, Citizen Sleeper 1+2, Caves of Qud, Armored Core For Answer (6 is very good too and more accessible), A Short Hike, Milk inside a bag of milk inside a bag..., If Found
Tabletop Role-playing Games: Mork-Borg, Deadlands, Ex-Novo, Dialect, Orbital Blues, Mothership, Salvage Union, Do You Remember Rock?, Death in Space
Books: Annihilation, Wolf in White Van, Roadside Picnic, Cat's Cradle, The Lathe of Heaven, Monstrous Regiment
Films: The Thing(1984), The Wind Rises, When Marnie Was There, Cowboy Bebop: Knockin' on Heaven's Door, Blood Tea and Red String, Abe Lincoln Vampire Slayer (great Discord movie), Stalker (1979), The Wicker Man (1973), Rocky Horror Picture Show (Ofc)
Shows: Cowboy Bebop, Gunbuster (1988), Skip and Loafer, Midnight Mass (pretty neat for a modern netflix show) (sorry i dont watch that many shows)
(Recordings of) Plays: Vanya w Andrew Scott, Abigail Thorn's The Prince, 2008 King Lear with Ian McKellan, Falsettos pro shot, and (for Sillys) Overly Sarcastic Production's Macbeth,
Bands: The Mountain Goats, Laura Jane Grace/Against Me!, Dear Landlord, Sincere Engineer, This Will Destroy You, Onsind, Rutterkin, HappyHappy, The Menzingers
Other: Oxventure (ttrpg actual play studio), Libre Office Suite (Free computer software)
My Setup:
Keyboard: Keychron Q14 pro + Duckypad diy macropad
Mouse: Razor Deathadder v3
Headphones: Beyerdynamic DT 770 pros
General Specs: AMD Ryzen 9 5900x, NVIDIA RTX 4070, 64 gigs of ram, and 7 noctua nf-f12 ippc 3000 PWMs so I can rev it like a motorcycle
(yeah, im lucky enough to have disposable income, and people from which I have been able to source a lot of parts/peripherals used for cheap over the years)
#introductory post#media recs#book recommendations#music recommendation#movie recommendation#video game recommendations
4 notes
·
View notes
Video
tumblr
WaifuPad Startup animation and a chime
#waifupad#waifu#macropad#diy#electronics#adobe illustrator#illustrator#macro#soldering#pcb#controller#device#productivity#vector graphics#usb#shortcut#keystroke#arduino
99 notes
·
View notes
Photo

“My open source DIY 10-keys macropads.” via u/Pimentoso on reddit
21 notes
·
View notes
Photo
WaifuPad Prototype
#waifupad#macropad#waifu#diy#electronics#adobe illustrator#illustrator#macro#soldering#pcb#controller#device#productivity#vector graphics#usb#shortcut#keystroke#arduino
65 notes
·
View notes
Photo

WaifuPad Making of
#macropad#waifu#waifupad#diy#electronics#adobe illustrator#illustrator#macro#soldering#pcb#controller#device#digital art#productivity#vector graphics#usb#shortcut#keystroke#arduino
69 notes
·
View notes
Photo
WaifuPad
#macropad#waifu#waifupad#diy#electronics#adobe illustrator#illustrator#macro#soldering#pcb#controller#device#digital art#productivity#vector graphics#usb#shortcut#keystroke#arduino
44 notes
·
View notes
Photo

WaifuPad Assembling
#waifupad#waifu#macropad#diy#electronics#adobe illustrator#illustrator#macro#soldering#pcb#controller#device#productivity#vector graphics#usb#shortcut#keystroke#arduino
33 notes
·
View notes
Photo
WaifuPad:
Opacity 0—100% Rotation 45° or 5° CW / CCW Flip Horizontal / Vertical Scale up / down
#macropad#waifu#waifupad#diy#electronics#adobe illustrator#illustrator#macro#soldering#pcb#controller#device#productivity#vector graphics#usb#shortcut#keystroke#arduino
52 notes
·
View notes
Photo
WaifuPad UI
#macropad#waifu#waifupad#diy#electronics#adobe illustrator#illustrator#macro#soldering#pcb#controller#device#digital art#productivity#vector graphics#usb#shortcut#keystroke#arduino#ui#gui#icons#overlay
33 notes
·
View notes
Photo
WaifuPad Character
#itemnemenee#galka#галка#macropad#waifu#waifupad#diy#electronics#adobe illustrator#illustrator#macro#soldering#pcb#controller#device#digital art#productivity#vector graphics#usb#shortcut#keystroke#arduino
35 notes
·
View notes
Photo
Modifying KY-040 rotary encoder to low-profile
By cutting its shaft and re-shaping its stem, I decreased its height from 28 mm to 13 mm
from WaifuPad
#rotary encoder#encoder#low-profile#slim#mod#modification#electronic#electronics#craft#diy#file#saw#arduino#pcb#module#component#ky040#ky-040#rotary#macropad#keypad#keyboard#geek#waifu#waifupad#adobe illustrator#illustrator#macro#soldering#controller
19 notes
·
View notes
Photo
WaifuPad
#macropad#waifu#waifupad#diy#electronics#adobe illustrator#illustrator#macro#soldering#pcb#controller#device#digital art#productivity#vector graphics#usb#shortcut#keystroke#arduino
12 notes
·
View notes
Photo
WaifuPad: Sleek and slim
#macropad#waifu#waifupad#diy#electronics#adobe illustrator#illustrator#macro#soldering#pcb#controller#device#digital art#productivity#vector graphics#usb#shortcut#keystroke#arduino
18 notes
·
View notes