Liebes Forum, ich hätte da ein Projekt, bei dem ich nicht weiß, ob das machbar wäre: Über USB möchte ich einen Schalter/Taster an meinen PC anschließen und diesen mit Java so zu programmieren, dass er beispielsweise Aufnahmen bei Audacity startet und stoppt. Wäre das machbar? Und wenn ja, wie? Mit vielen Grüßen ein auf eure Hilfe bauender James
Am einfachsten wäre natürlich, wenn Du ein HMI Device nehmen würdest. Da nen Schalter dran löten: https://www.pearl.de/a-PX4067-1112.shtml
ach ... du kannst ja einfach die Shortcuts in Audacity so definieren, dass die zur Tastatur/Schalter passen. Dann brauchst du kein Java.
Oder gleich ein Elgato Stream Deck oder sowas, falls man doch mehr machen will, als an/aus.
DSP_Anfänger schrieb: > ach ... du kannst ja einfach die Shortcuts in Audacity so definieren, > dass die zur Tastatur/Schalter passen. Dann brauchst du kein Java. Schon, aber ich hätte den Schalter gerne etwas weiter vom PC verlegt. Da reicht die Tastatur nicht aus.
James F. schrieb: > Schon, aber ich hätte den Schalter gerne etwas weiter vom PC verlegt. Da > reicht die Tastatur nicht aus. Definiere etwas weiter??
knipsy schrieb: > Definiere etwas weiter?? Mit etwas weiter meinte ich, dass ich den Schalter/Taster an Kabel anschließe und somit wenn nötig durch den ganzen Raum verlegen könnte. Wobei ich mit einer Entfernung von ca. 50cm zufrieden wäre. LG James
Marcus schrieb: > James F. schrieb: >> Wäre das machbar? > Nicht von Dir wenn Du hier schon fragst! Was meinst du damit? Sorry, bin B. Grfisstutzig. Hast bestimmt schon mal von mir gehört ;). Nee aber im Ernst: Wie kann ich das bewerkstelligen?
Die Frage nach Java und nach Audacity sind zwei verschiedene Baustellen. Es gibt zum Beispiel Bluetoothpedale, mit denen man meines Wissens per Treiber Tastatureingaben simulieren kann. Damit sollte sich auch Audacity steuern lassen. Vor Jahren habe ich mal einen Taster in Java eingelesen. Der Taster war am Mikrocontroller, der über einen FTDI-Chip eine USB-Verbindung zum Computer hatte. Da damals Java keine USB-Kommunikation unterstützt hat oder ich zumindest nicht wusste wie, habe ich mit Hilfe des FTDI-Treibers und des JNI in C eine Zwischenschicht geschrieben, um Treiber und Java zu verbinden. Was davon brauchst du?
Bei USB hast du immer das Problem dass das ein recht komplexes Protokoll ist. Nicht nur der Master (PC) braucht einen USB-Stack, auch der Slave (Maus, Tastatur, Headset...) müssen die "USB-Sprache" sprechen. Das heißt einen einfachen Taster kriegst du am USB grundsätzlich nicht angeschlossen (zumindest nicht ohne dreckigste Hacks). Früher, mit Parallelport usw. ging das noch. Du brauchst also zwingend ein Gerät was bereits USB spricht, am besten etwas was sich als Tastatur ausgibt. Schau dir mal sowas an: https://www.amazon.de/USB-PushButton-benutzerdefiniert-konfigurierbar-Kunststoffgeh%C3%A4use/dp/B00IXIM6BC Ein Javaprogramm sollte dafür auch nicht nötig sein. Einfach die Audacity-Tastenkombi fürs Aufnehmen simulieren. Oder, bei komplexeren Abfolgen, irgendwas mit AutoIT zusammenschuster.
James F. schrieb: > knipsy schrieb: >> Definiere etwas weiter?? > > Mit etwas weiter meinte ich, dass ich den Schalter/Taster an Kabel > anschließe und somit wenn nötig durch den ganzen Raum verlegen könnte. > Wobei ich mit einer Entfernung von ca. 50cm zufrieden wäre. also da ist das Kabel meiner Tastatur länger. Mit USB kannst du erst mal 5m weit gehen. Die Strecke zwischen USB-Device und Schalter ist erst mal 'unbegrenzt' man muss halt nur die Eingangsbeschaltung entsprechend auslegen. Sascha
Wenn du nicht soviel selber frickeln willst: https://shop.codemercs.com/de/keywarrior/ (Disclaimer: Selber nie genutzt, wird hier nur gerne empfohlen)
:
Bearbeitet durch User
James F. schrieb: > Liebes Forum, > ich hätte da ein Projekt, bei dem ich nicht weiß, ob das machbar wäre: > Über USB möchte ich einen Schalter/Taster an meinen PC anschließen und > diesen mit Java so zu programmieren, dass er beispielsweise Aufnahmen > bei Audacity startet und stoppt. > > Wäre das machbar? Und wenn ja, wie? > Mit vielen Grüßen ein auf eure Hilfe bauender > James Du nimmst diesen Chip: https://www.microchip.com/wwwproducts/en/MCP2221A Den gibts auch bei Reichelt. Der hat UART, I2C und 4 IO-Pins. An einen der IO-Pins klemmst Du deinen Taster an (gegen GND schaltend), plus einem Pullup-Widerstand (10k oder so). Dann nimmst Du das zugehörige JNI-Interface dazu: https://ww1.microchip.com/downloads/en/DeviceDoc/MCP2221%20Java%20Native%20Interface.zip und da steht dann alles weitere drin. fchk
Wie währe es denn mit eine IO Warrior? https://www.codemercs.com/de/io Ich hab die Teile sehr gern, für schnell mal IO an den Computer ohne großen Aufwand.
Sorry für den doppelpost mit dem IoWarrior, da war der Ernst schneller... Noch einfacherer Lösung: in der Bucht gibt es günstig gebrauchte Tastaturen von https://www.prehkeytec.de/ da ist die Software zur Konfiguration kostenlos und du kannst den Tasten alle möglichen Tasten und Tastenkombinationen zuweisen.
ich hab sowas mit einem Digispark gemacht um Bildschirmseiten per Fusstaster umblättern zu können. Der Digispark kann als Tastatur programmiert werden und so Programme ohne Zusätze beeinflussen. Da muss man sonst nix programmieren.
> Schon, aber ich hätte den Schalter gerne etwas weiter vom PC verlegt. Da > reicht die Tastatur nicht aus. Du steckst die in den USB Port, lötest ein Kabel parallel zu einer Taste, legst das 20m bis zum Nachbarn und lötest dort nen Taster dran. Bei Audacity stellst Du den Shortcut für Record und Stop auf diese Taste. Kein Java, kein JNI nix. Fertig. Genauso hat's mein Opa nach dem Krieg auch mit der Schreibmaschine gemacht. Auch ohne Java. Er damit die Plattenaufnahmen gestartet.
Es gibt unzählige fertige Lösungen, vom Fussschalter mit USB bis zur zusätzlichen Nummerntastatur, und per USB mit niedriger Datenrate geht das bis 5 m sowieso und mit Verlängerungen noch mehr. Georg
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.