ich möchte mit einem Arduino, ESP32 oder ähnliches die Bewegungsdaten einer USB Maus abfangen, manipulieren und anschließend an den PC via USB weitergeben.
Hintergrund: ich möchte, wenn ich zwischen mehreren PCs wechsele den gleichen Bewegungsfaktor bei der Maus vorfinden. Beispiel: User 1 arbeitet mit dem PC, verstellt die Mauseinstellungen, damit diese für ihn passen. Passt dann für mich nicht mehr.
Normalerweise würde man vorschlagen dedizierte Windows Benutzer zu nehmen, geht leider aus Lizenztechnischen Gründen nicht.
Technisch geht das, die Kiste verhält sich gegenüber dem PC wie eine Maus und liefert (umgerechnete) Bewegungsdaten und gegenüber der Maus wie ein abfragender PC, es teicht wohl auch USB 1.1.
Aber das du das hinkriegst, halte ich für zweifelhaft, selbst wenn du einen uC mit 2 eingebauten USB Interfaces nimmst statt dem 'Arduino/ESP32'.
Wenn du wenigstens 2 Beispiele finden würdest, eins für eine Maus und eins für einen eine Maus abfragenden USB Master. Ich wüsste für letzteres keines auf <irgendeinem> uC.
Und dann kommt trotzdem jemand und verstellt die Mausempfindlichkeit auf dem PC, nutzlos ist das ganze also auch noch.
Da geht es nicht um Windows selbst, sondern um individual Software, die nur unter einem speziellen Nutzer läuft. Und diese ist nicht anpassbar.
Ich bin da unschuldig, da nicht auf meinem Mist gewachsen.
Und wie soll der Arduino/wasauchimmer erkennen, wie die Mauseinstellung
am PC verändert wurde und gegenregeln?
Das soll er auch nicht, er soll nur die Daten nehmen, mit eine Faktor bearbeiten und die Daten weiterleiten. Die Mauseinstellungen werden dann nicht mehr angetastet.
Und das verhindert dann wie, daß User 1 die Einstellungen ändert?
Jeder USER bekommt dann ein eigenes Modul mit seinen eigenen Einstellungen.
Somit brauchen die User nicht in die Einstellungen.
Das Ganze ist ein Politikum.
Wäre der Mist mit der Software nicht, dann gäbe es das Problem nicht.
Es liegt an der proprietären Software.
Ansonsten was die Hardware-Lösung angeht: Vermutlich wird es einfacher sein, vom Mikrocontroller aus eine PS2 Maus einzulesen als eine USB-Maus.
Hier ist zB ein erstbestes Sucheregebnis was das hingekriegt hat:
https://www.youtube.com/watch?v=CMv6bJRJzyY
Nach dem Link muss man wohl ausprobieren, ob die moderne Maus den Fallback auf PS2 noch unterstützt (wenn die Maus den USB-PS2 Adapter im Lieferumfang hat kann man davon wohl ausgehen, weiß nicht ob solche heute noch käuflich sind).
Ansonsten was die Hardware-Lösung angeht: Vermutlich wird es einfacher
sein, vom Mikrocontroller aus eine PS2 Maus einzulesen als eine
USB-Maus.
Hier ist zB ein erstbestes Sucheregebnis was das hingekriegt hat:
https://www.youtube.com/watch?v=CMv6bJRJzyY
Nach dem Link muss man wohl ausprobieren, ob die moderne Maus den
Fallback auf PS2 noch unterstützt (wenn die Maus den USB-PS2 Adapter im
Lieferumfang hat kann man davon wohl ausgehen, weiß nicht ob solche
heute noch käuflich sind).
Dass das möglich ist weiss ich. Der Rechner wurde aber zugenagelt, dass keine eigenen Scripts ausgeführt werden können und dürfen.
Die Abteilung, die dafür zuständig ist, hat kein Interesse daran Scripts anderer Mitarbeiter zu testen.
Hintergrund: ich möchte, wenn ich zwischen mehreren PCs wechsele den
gleichen Bewegungsfaktor bei der Maus vorfinden. Beispiel: User 1
arbeitet mit dem PC, verstellt die Mauseinstellungen, damit diese für
ihn passen. Passt dann für mich nicht mehr.
Normalerweise würde man vorschlagen dedizierte Windows Benutzer zu
nehmen, geht leider aus Lizenztechnischen Gründen nicht.
OK, das Problem habe ich soweit verstanden. Aber die beabsichtigte "Lösung" ist doch irgendwie völlig schwachsinnig.
ich möchte mit einem Arduino, ESP32 oder ähnliches die Bewegungsdaten
einer USB Maus abfangen, manipulieren und anschließend an den PC via USB
weitergeben.
Dann müsstest du an diesem noch zu konstruierenden Gerät zwischen "Normalbenutzer" und "Besonderer-DU-Benutzer" umschalten. Und hoffentlich niemals nicht vergessen, diesen Schalter auf Normalbenutzer zurückzusetzen, wenn du den PC verläßt. Weil dann natürlich der Normalbenutzer wiederum seine Einstellungen ändern würde, so dass die mit dem "Gerät" schaltbaren Einstellungen wieder nur für ihn passen würden (allerdings dann in der DU-Einstellung, die "Normalbenutzer"-Einstellung würde dann für keinen mehr passen)...
Tja, es hat schon seine Vorteile, logisch denken zu können...
Da kommt man dann leicht darauf, dass es doch vieles einfacher wäre, eine PC-Anwendung zu schreiben, mittels derer man halt schnell zwischen zwei Profilen der Mauseinstellungen wechseln kann. Innerhalb eines einzigen Windows-Benutzerprofils.
Dann ist das doch eine dankbare Aufgabe für die IT-Abteilung.
Die machen die Kiste dicht, also haben sie folglich den Job an den Hacken, für arbeitsfähige Konfigurationen zu sorgen.
Die mouse settings aus der registry exportieren (deine settings) und als shortcut aufn Desktop legen ? Bei Bedarf doppelklick drauf und rebooten... regeditor ist nen systemtool und sollte auch user registry Einträge importieren...
Dann müsstest du an diesem noch zu konstruierenden Gerät zwischen
"Normalbenutzer" und "Besonderer-DU-Benutzer" umschalten. Und
hoffentlich niemals nicht vergessen, diesen Schalter auf Normalbenutzer
zurückzusetzen, wenn du den PC verläßt.
Eventuell könnte man ein Zeichen Tablet emulieren? Die funktionieren aus OS sicht genau so wie eine Maus, aber die Koordinaten sind Absolut. Dann kann man die Mausgeschwindigkeit noch so sehr anpassen, das sollte dann ja keinen Effekt haben?
Wie ich bereits geschrieben habe. Die Kiste wird zugenagelt bleiben. Eigene Scripts und Applikationen sind nicht erlaubt.
Also bleibt nur die externe Alternative.
Und ja, ich habe schon einen Antrag gestellt, das Ganze Softwareseitig zu lösen. Wurde abgelehnt, da der Aufwand zu groß und mit jedem neuen Nutzer des Pcs eine weitere Mauseinstellung dazu käme. Ich verstehe ja Eure Einwände, aber solange die Verantwortlichen blocken, laufen Eure Ideen ins Leere.
Die mouse settings aus der registry exportieren (deine settings) und als
shortcut aufn Desktop legen ? Bei Bedarf doppelklick drauf und
rebooten... regeditor ist nen systemtool und sollte auch user registry
Einträge importieren
Wenn der Rechner zugenagelt ist, machst Du nix. Dann gibts auch kein Regedit.
Ihr dürft nicht von einem Privatrechner ausgehen, das ist ein Firmenrechner, der entsprechende Einstellungen hat die kaum etwas erlauben.
Wie ich bereits geschrieben habe. Die Kiste wird zugenagelt bleiben.
Eigene Scripts und Applikationen sind nicht erlaubt.
Also bleibt nur die externe Alternative.
Nicht wirklich. Das ist keine Alternative. Wenn du nicht mal das zu begreifen vermagst...
ich möchte mit einem Arduino, ESP32 oder ähnliches die Bewegungsdaten
einer USB Maus abfangen, manipulieren und anschließend an den PC via USB
weitergeben.
Du brauchst einen USB-host, der das dekodiert. Das ist nicht so ganz einfach, lässt sich aber hiermit lösen:
Nicht wirklich. Das ist keine Alternative. Wenn du nicht mal das zu
begreifen vermagst...
Du musst nicht gleich persönlich werden.
Und es ist eine Alternative, auch wenn sie Dir nicht gefällt.
Eine Softwarelösung scheidet aus, wie ich bereits geschrieben habe.
Also wieso Dein Angriff?
Habe ich irgendwas geschrieben, womit ich Dich angegriffen habe, dass dann so eine Reaktion von Dir kommt?
Nicht wirklich. Das ist keine Alternative. Wenn du nicht mal das zu
begreifen vermagst...
Was Du nicht verstehen möchtest, obwohl ich es hier schon oft genug beschrieben habe: natürlich wäre eine Softwarelösung die beste Wahl. wenn aber eine Softwarelösung nicht infrage kommt, da der Rechner Softwareseitig unangetastet bleiben muss, kannst Du Dich auf den Kopf stellen, wie Du willst, dann wird Dein vehementes Drängen Software einzusetzen auch nicht Zielführend sein.
Ich habe mal gesehen, dass man auch mit dem Wireshark die USB Transfers aufzeichnen lassen kann.
Es würde wohl reichen, Wireshark zu installieren und dann USB mitzuschneiden.
Aktuell ist hier keiner installiert, um mal zu testen. Aber in der Firma hatte ich das gesehen.
Wenn die Firma das verlangt, muss sie sich auch um das Problem kümmern. Es ist nicht die Aufgabe des Anwenders, dafür eine Lösung zu suchen. Und ohne ein 1 Stück Hardware oder Software dazwischen wird das nicht funkionieren. Wenn die Firma das Gerät dicht gemacht hat, ist es mit Sicherheit auch verboten eine fremde Hardware und wenns auch nur ein Maus Simulator ist anzuschliessen.
Wenn die Firma das verlangt, muss sie sich auch um das Problem kümmern.
...
Wenn die Firma das Gerät dicht gemacht hat, ist es mit Sicherheit auch
verboten eine fremde Hardware und wenns auch nur ein Maus Simulator
ist anzuschliessen.
Ja, als erstes würde ich der IT-Abteilung das Problem schildern und um
irgendeine Lösung bitten. Ob es ein Software- oder ein Hardwarelösung
wird, kann die IT selber entscheiden. Führt dies nicht zum Erfolg, würde
ich um die Erlaubnis bitten, einen selbstgebastelten Maus-Adapter
anzuschließen, was natürlich ein gewisses Vertrauen vonseiten der IT
voraussetzt. Wenn auch dieser Wunsch abgelehnt wird, muss man das halt
so hinnehmen.
Wenn die IT die Erlaubnis tatsächlich erteilt, wäre IMHO ein CH32V203
eine gute Option. Der kostet fast nichts und hat die beiden benötigten
USB-Ports bereits an Bord:
Hier gibt es ein Board dafür, bei dem du allerdings die zweite
USB-Buchse selber anbringen musst (die dafür benötigten Signale sind
über die Stiftleisten herausgeführt):
Bei diesem Board hier ist alles komplett, dafür ist es etwas teurer und
mit einem (für das Vorhaben überflüssigen) LCD-Anschluss und einem
SD-Karten-Slot ausgestattet:
Das letztgenannte Board hat wohl einen USB-Bootloader installiert. Ohne
diesen Bootloader wird noch ein Programmier-/Debug-Adapter (WCH-LinkE)
für ein paar Euro benötigt.
Softwarebeispiele für Tastatur-Maus-Kombi (Host und Device) gibt es
hier:
ich hatte vergessen zu sagen, dass eine externe Lösung erlaubt ist.
Es geht hier um Lizenztechnische und Vertragsrechtliche Bedingungen.
Der Hersteller der Software, die an den Windows User gebunden ist, untersagt ausdrücklich jegliche Art von zusätzlicher Software oder Scripts, um eine einwandfreie Funktionalität ihrer Software zu gewährleisten. Es geht hier um Spezialsoftware im Laborbereich in Kombination mit Spezial Hardware. Deswegen ist der Rechner zugenagelt. Die Firma lässt jedoch Dongles zu.
Es geht hier um Spezialsoftware im Laborbereich in
Kombination mit Spezial Hardware. Deswegen ist der Rechner zugenagelt.
Die Firma lässt jedoch Dongles zu.
Dennoch könnte eine andere Maus mit Taster zur Einstellung der Geschwindigkeit die pragmatischste Lösung für euch sein. Probiere es mal aus.
..oder einfach eine zweite Maus. Früher(tm) war es sogar unter Windoofs möglich, den Mäusen unterschiedliche Sensitivitäten zuzuweisen, vielleicht funktioniert das ja noch.
Die ungewöhnliche Form hilft mir, entzündliche Reizungen im Arm (durch Reibung der Knochen gegeneinander) zu vermeiden. Diese Maus hat zwei Geschwindigkeitsstufen.
Und wer installiert die Treiber für die Maus wenn da keine fremde Software drauf darf?
Und nochmal für mein Verständnis
Ist die Installation der Kiste wirklich verrammelt, also nur benutzerrechte und per Richtlinien das starten von fremden Dateien verhindert und dann auch ggf keine fremde Hardware und ggf auch USBSticks, kein Internet, etc
Ist die Installation der Kiste wirklich verrammelt
Ja, die Kiste ist wirklich verrammelt.
Es gibt auch nur eine Hand voll Admins, die auf die Kiste Zugriff haben.
Spezialsoftware und Hardware im hohen 6-stelligen Bereich. Deswegen die entsprechenden Vertragsbedingungen.
Die Firma möchte Regressansprüche verhindern und sich absichern.
Das ist doch alles Quatsch. Wenn es so waere, koennte der D.A.U.
an den Mauseigenschaften ueberhaupt nichts verstellen.
Aber genau das ist das Problem. Jeder User will seine eigenen Einstellungen und versucht diese zu verändern, was die anderen User dann sehr erfreut, so dass es Diskussionen gibt (Schichtwechsel). Die Mauseinstellungen werden nicht verrammelt, weil die Admins der Meinung sind, die User könnten das unter sich ausmachen. Das gibt aber alles nur Ärger, da keine Einigung machbar.
Alles total irre.
Deswegen die Idee mit dem externen Modul.
Es musste sogar die Bildschirmauflösung fixiert werden, da laufend dran rumgefingert wurde und es Diskussionen gab.
Klassischer Fall von "Soziales Problem & Technische (nicht funktionierende) Lösung".
Was machst du wenn der andere kein Modul nutzen kann/will, zu doof, bösartig oder vergesslich ist?
Was machst du wenn der mal einfach so 1600dpi statt 800 testet und du dein 800-zu-200-Modul nicht nutzen kannst weil es ja jetzt auch zu schnell ist?
Wenn "die IT" die Rechner so verrammelt, das man nicht mal eben mit einem Skript (das auch nichts anderes macht als automatisiert irgendwo zu klicken) Standard-Windowseinstellungen setzen kann, dann sollen sie gefälligst auch die Standardeinstellungen für die Maus festlegen. Dann hat der Kollege halt Pech.
Oder man kauft einen Touchscreen, der ist absolut.
Oder du schließt eine andere Maus an. Das ist ja komischerweise erlaubt, weil interessanterweise automatische Mausklick- und Eingabegeräte in Form einen Sticks frei erhältlich sind und auch absolut kein Risiko darstellen, wenn sie z.B. Kommandozeileneingaben machen oder mit anderen Tricks den Rechner knacken.
Da haben die Admins dann aber gepennt, aber alles andere wird zugemacht. Ja nee is klar.
Du musst halt einfach nicht arbeiten können weil der Jupp das ganze System außer Betrieb verstellt hat, dann sollten deine Vorgesetzten schon Druck auf die IT geben damit die Maschine wieder läuft.
Wenn es erst eine neue Maus gibt, wenn die alte verschlissen ist, dann muss sie eben schnell verschleißen... ;)
Denk dran: wenn Opa keine Lust hat Oma beim Abtrocknen zu helfen, muss nur einer der guten Teller runterfallen und er muss dass nie wieder machen!
Du wirst es nicht jedem Recht machen können, das ist richtig.
Ich koordiniere nur die IT und die Produktion.
Ich(selbst IT) wurde eingeschaltet, da die Fronten zwischen Produktion und IT verhärtet sind. Um die beiden wieder an einen Tisch zu bekommen, brauche ich die Akzeptanz von beiden.
Aber Eure Ideen fließen da mit ein.
Um die beiden wieder an einen Tisch zu bekommen,
brauche ich die Akzeptanz von beiden.
Das geht dann nur, wenn beide sich den Arbeitsplatz einstellen können.
Das muss man dann einfach mit AutoIt oder evtl. Powershell oder einem Registryeintrag setzen und gut. Da gibt's dann ein "michaelsmaus.exe" und ein "juppsmaus.exe" und fertig.
Das ist weder ein Sicherheitsrisiko noch sonst etwas. Das kann doch jeder Depp in 10 Minuten zusammenhacken, das sollte den IT-Betreuern locker von der Hand gehen. Vermutlich benutzen die selber sowas, um sich die immer wieder vorkommenden Aufgaben zu automatisieren, wenn nicht sind sie ihr Geld eh nicht wert.
Ok war mit nicht bewusst das ihr genau diese Maus kennt... es gibt genug Mäuse mit zusatztasten, usb wireless bt dongle, etc die machen ohne Treiber nur Grundfunktionen oder auch mal gar nix...
einer USB Maus abfangen, manipulieren und anschließend an den PC via USB
weitergeben.
(Embedded) Linux auf einem billigen Linux-Controller (RasPi, BeagleBone oder ähnliches) mit je einem Host und einem Client-Port kann das. Zwar nicht ganz "out of the box", aber der gesamte low-level-Kram ist da.
mit configfs kann man ein HID-Device auf einem Peripheral-USB-Port simulieren. Das sieht der angeschlossene PC dann als Maus
die Mausseite legt beim Anstecken ein normales Input-Device an und sendet Events nach /dev/input/event*
die Events kann ein Daemon abfangen, modifizieren und als HID codiert über das configfs dem angeschlossenen PC als Maus-Events präsentieren
configfs korrekt aufzusetzen ist etwas knifflig (und ich hab das für eine Maus auch noch nicht gemacht), aber es gibt im Internet viele Beispiele zu finden.
(Embedded) Linux auf einem billigen Linux-Controller (RasPi, BeagleBone
oder ähnliches) mit je einem Host und einem Client-Port kann das. Zwar
nicht ganz "out of the box", aber der gesamte low-level-Kram ist da.
mit configfs kann man ein HID-Device auf einem Peripheral-USB-Port
simulieren. Das sieht der angeschlossene PC dann als Maus
die Mausseite legt beim Anstecken ein normales Input-Device an und
sendet Events nach /dev/input/event*
die Events kann ein Daemon abfangen, modifizieren und als HID codiert
über das configfs dem angeschlossenen PC als Maus-Events präsentieren
configfs korrekt aufzusetzen ist etwas knifflig (und ich hab das für
eine Maus auch noch nicht gemacht), aber es gibt im Internet viele
Beispiele zu finden.
Interessant,
Braucht dann aber für den Raspi eine externe Tastatur zur Auswahl der Usersettings, sollte machbar sein. Und ob ich da einen Raspi oder einen Arduino o. Ä. nehme ist auch egal.
Man könnte das Inputdevice auch ungefiltert ans Outputdevice schicken.
Btw: ich habe etwas anderes in Erfahrung bringen können...
... der betreffende Rechner wurde von der Herstellerfirma zugenagelt. Der Rechner befindet sich nicht mal in einer unserer Domänen, der Datenaustausch zwischen dem Rechner und unserer Firma erfolgt im Hintergrund via FTP. Und unsere Admins haben noch nicht einmal Zugriff auf das Teil(wovon ich fälschlicherweiser ausgegangen bin - erst auf Nachdruck bekam ich diese Info - erklärt auch, warum sich die IT-Kollegen sperrten).
Am einfachsten wäre, dass die Lieferfirma das ganze Softwaretechnisch löst. Dies würde wiederum Geld kosten.
User 1
arbeitet mit dem PC, verstellt die Mauseinstellungen, damit diese für
ihn passen. Passt dann für mich nicht mehr.
Normalerweise würde man vorschlagen dedizierte Windows Benutzer zu
nehmen, geht leider aus Lizenztechnischen Gründen nicht.
Technische Lösungen für soziele Probleme? Die Leute versuchen das immer wieder. Hat sich wohl immer noch nicht rumgesprochen, daß das nicht funktioniert.
Findet halt eine Mauseinstellung, die für beide funktioniert. Oder beißt in den sauren Apfel und lizensiert die Software zweimal.
PS: habe den Thread jetzt erst ganz gelesen. Das ist ja noch schlimmer als gedacht. Der Hersteller, die eigene IT und zwei Benutzer. Und alle arbeiten gegeneinander, statt miteinander. Kein Wunder daß in Deutschland nichts vorangeht.
Der Hersteller scheint(!) unsinnige Forderungen zu stellen. Wenn ein Bundle aus Hard- und Software lizensiert wurde, was ist da eigentlich das Problem zwei Benutzer zuzulassen? Oder gar das Problem dabei, beliebige Desktop-Shortcuts zuzulassen?
Der IT mache ich mal (ausnahmsweise) keinen Vorwurf. Die versucht es allen Seiten recht zu machen, will sich aber nicht in die Nesseln setzen.
Ich sehe den schwarzen Peter eigentlich bei den beiden Benutzern. Warum muß der eine der beiden eigentlich "die Mauseinstellungen" verändern? Und wenn er es "muß" und man ihn nicht übergehen kann (wohl der Eigentümer) dann gehört das System jetzt ihm ganz allein. Kann dann halt kein anderer damit arbeiten.
Dann würde ich eine PS/2-Maus nehmen. Die lässt sich deutlich einfacher
dekodieren als eine USB-Maus.
Jetzt wirds putzig lol
Wie bereits oben vorgeschlagen: Auslesen einer PS2-kompatiblen Maus, aber natürlich Weitergabe an den PC mittels USB-HID. Für letzteres gibt es viele Arduino-Examples, für ersteres findet man in Google auch Projekte, hier nur mal eins:
https://www.youtube.com/watch?v=CMv6bJRJzyY
(Sorry falls du lieber Text liest als Videos schaust, war jetzt das schnellste für mich, aber ist auch ein Git Link dabei).
Sorry Walter, ich hatte Dich im ersten Anlauf missverstanden.
Ich habe verstanden, was Du meinst.
Ich hatte in den 80ern mal einen Maustreiber geschrieben, mal sehen, ob ich den Quellcode noch habe. War in MSC mit Inlineassembler programmiert.
Gruß
Michael
p.s. manchmal braucht man nur den richtigen Schubs
Wie bereits oben vorgeschlagen: Auslesen einer PS2-kompatiblen Maus,
aber natürlich Weitergabe an den PC mittels USB-HID. Für letzteres gibt
es viele Arduino-Examples, für ersteres findet man in Google auch
Projekte, hier nur mal eins:
https://www.youtube.com/watch?v=CMv6bJRJzyY
(Sorry falls du lieber Text liest als Videos schaust, war jetzt das
schnellste für mich, aber ist auch ein Git Link dabei).
Hallo Lenny, die Weitergabe via USB habe ich schon letztes Jahr realisiert.
Das Auslesen werde ich mir antun, je nachdem wie die Obrigkeit entscheidet.
Natürlich geht das der IT locker von der Hand.
Ist aber ein Vertragsbruch.
Eine Software, bei der es Vertragsbruch ist, wenn man per Skript automatisiert einen Parameter setzt, der explizit freigegeben ist?
Ich kann kaum glauben das so eine Klausel in irgendeiner Form juristisch wirksam ist.
einen USB-Host zu implementieren ist kein Anfängerprojekt.
Man muss das Rad nicht unbedingt neu erfinden. Für die Optioen
"ähnliches" habe ich oben bereits einen Weg vorgeschlagen, wie das Ganze
(vermutlich) ganz leicht umgesetzt werden kann.
Ein Linux-SBC, wie von Nikolaus vorgeschlagen, geht natürlich auch, ist
aber IMHO ein wenig oversized, braucht mehr Strom (und damit evtl. ein
eigenes Netzteil) und braucht Zeit zum Booten (ok, das braucht der
Windows-Rechner auch ;-)).
Ein kleiner Mikrocontroller wie der CH32V203 braucht mit ca. <5mA
höchstens so viel Strom wie die angeschlossene Maus (und kann zusammen
mit dieser vom selben USB-Port versorgt werden), kostet nur einen
Bruchteil eines Linux-SBCs und ist praktisch sofort nach dem Einschalten
verfügbar.
Aber wahrscheinlich ist auch die µC-Lösung zu aufwendig, denn:
Wenn ich es richtig verstehe, geht es ja um einen einzelnen PC mit zwei
Usern. Die pragmatischste Lösung ist es wohl, einfach zwei von den
beiden Usern selber ausgewählte Mäuse anzuschließen, die bzgl.
DPI-Auflösung, Größe und Bauform exakt deren Vorlieben entsprechen.
Kommt ein dritter User hinzu, der sich mit keiner der beiden
existierenden Mäuse anfreunden kann, wird eben noch eine weitere
gekauft ;-)
Btw: die ersten IBM PS/2 Rechner mit 10MB HD kosteten damals 5-stellig.
und eine Maus alleine von IBM 3-stellig. Krank.
Bevor es PS/2 gab: Die erste bezahlbare Maus für PX-XT kompatible war die Genius GM 6+, die kostete "nur" noch 130 DM.
Eine 20MB Platte >1000 DM. Eine Speichererweiterung von 256K auf 640K war eine lange Erweiterungskarte mit 54 64Kx1 Rams.
...
Darum muss ich mich gottseidank nicht kümmern.
Aber ich kenne das aus der Vergangenheit, dass Firmen Spezialsoftware in Kombination mit Hardware verkaufen und entsprechende Restriktionen, auch Vertraglicher Natur, einbauen, um sich vor Regressansprüchen zu schützen. Was man auch verstehen kann(da geht's mal schnell in die Millionen). Wenn ich selbst Spezial-Software entwickeln und vertreiben würde, würde ich mich auch absichern, um im Fehlerfall nicht haftbar gemacht zu werden.
Wenn man solche Spezialsoftware kauft und es diese nur von einem Hersteller gibt(ja, so etwas gibt es noch), hat man entweder die Wahl, dem Kauf zuzustimmen, oder abzulehnen. Unsere Firma möchte sich da sauber halten, also hat man dem Kauf zugestimmt, mit allen vertraglichen "Einschränkungen"
Man muss das Rad nicht unbedingt neu erfinden. Für die Optioen
"ähnliches" habe ich oben bereits einen Weg vorgeschlagen, wie das Ganze
(vermutlich) ganz leicht umgesetzt werden kann.
Ein Linux-SBC, wie von Nikolaus vorgeschlagen, geht natürlich auch, ist
aber IMHO ein wenig oversized, braucht mehr Strom (und damit evtl. ein
eigenes Netzteil) und braucht Zeit zum Booten (ok, das braucht der
Windows-Rechner auch ;-)).
Ein kleiner Mikrocontroller wie der CH32V203 braucht mit ca. <5mA
höchstens so viel Strom wie die angeschlossene Maus (und kann zusammen
mit dieser vom selben USB-Port versorgt werden), kostet nur einen
Bruchteil eines Linux-SBCs und ist praktisch sofort nach dem Einschalten
verfügbar.
Aber wahrscheinlich ist auch die µC-Lösung zu aufwendig, denn:
Wenn ich es richtig verstehe, geht es ja um einen einzelnen PC mit zwei
Usern. Die pragmatischste Lösung ist es wohl, einfach zwei von den
beiden Usern selber ausgewählte Mäuse anzuschließen, die bzgl.
DPI-Auflösung, Größe und Bauform exakt deren Vorlieben entsprechen.
Kommt ein dritter User hinzu, der sich mit keiner der beiden
existierenden Mäuse anfreunden kann, wird eben noch eine weitere
gekauft ;-)
Sorry, das mit den Usern war nur ein plakatives Beispiel.
Es geht da um mindestens 3 verschiedene User(3 Schichten).
Also um mehr als 3 User(Krankheit, Urlaub etc. berücksichtigt)
ie pragmatischste Lösung ist es wohl, einfach zwei von den
beiden Usern selber ausgewählte Mäuse anzuschließen, die bzgl.
DPI-Auflösung, Größe und Bauform exakt deren Vorlieben entsprechen.
Sicher. Oder zwei PowerShell-Skripte mit "Set-MouseSpeed" auf dem Desktop.
Aber manchmal muss man ja im "Corporate"-Umfeld eine unpraktische Lösung mit immens hohem Aufwand vorweisen, bis auch nur irgendein "Stakeholder" sich zu einer pragmatischen Lösung prügeln lässt.
Ist das nicht etwas overkill? Ein RPi 3b sollte das doch auch können.
(Oder auch ein RPi Zero 2 WH, aber der hat nur einen USB Port, dann müsste man die GPIOs und PS/2 nutzen, das wäre recht kompliziert.)
Aber manchmal muss man ja im "Corporate"-Umfeld eine unpraktische Lösung
mit immens hohem Aufwand vorweisen, bis auch nur irgendein "Stakeholder"
sich zu einer pragmatischen Lösung prügeln lässt.
Ist das nicht etwas overkill? Ein RPi 3b sollte das doch auch können.
(Oder auch ein RPi Zero 2 WH)
Da gibt es aus der Retro-Ecke einen Vortrag zu einem ähnlichen USB-HID Fall,
da hatte sich der Autor dann für einen RasPi-Pico oder Raspi-Zero entschieden.
Rein als bare-metal-Interface betrachtet ist das mit den dreistelligen MHz-Zahlen natürlich Overkill, aber da aber einige der OS-Layern laufen wollen für USB und man nicht alle Software selbst schreiben will, wurde es auch bei disem Projekt (Tastaturadapter moderne Tastatur an good old Homecomputer) auch eine 100+MHz Maschine.
Also kein Over²-Kill mit 2+GHz Quad-Core, sondern nur einfacher Over-Kill ;-)
... ich finde es cool, dass die Anteilnahme so gross ist und ich bin für jede Eurer Infos dankbar, man lernt immer dazu und wenn es nur dazu dient eine Sinnesänderung herbeizuführen;-)
Aber ich möchte nicht schuld sein , wenn das Ganze hier zu sehr ausartet.
Da ich eh warten muss, bis eine Entscheidung getroffen wurde, wäre es sicherlich sinnvoll, hier einen freeze zu machen, bis ich Euch über die getroffene Entscheidung berichten kann.
Nochmals vielen Dank an Euch für die Infos, Anregungen, Mühe und Nerven.
Wenn die IT die Erlaubnis tatsächlich erteilt, wäre IMHO ein CH32V203
eine gute Option.
...
Es war tatsächlich möglich, mit recht wenig zusätzlichem Code die beiden
Beispielprogramme von Github zu einer Anwendung zu vereinen, die die
Mausdaten mit einem vorgegebenen Faktor multipliziert/dividiert.
Man schaltet das Board dann einfach zwischen PC und Maus, und schon wird
die Maus schneller oder langsamer. Lustig wird es, wenn man einen
negativen Faktor vorgibt (vielleicht mal ein netter Aprilscherz) ;-)
Das Ganze ist aber eher als Proof-of-Concept zu sehen, da die Software
nach den Änderungen wie Kraut und Rüben aussieht und nur mit Mäusen mit
einem bestimmten Datenformat (jeweils 1 Byte für Buttons, X, Y, und Rad)
funktioniert. Für die Unterstützung beliebiger Mäuse müsste man noch die
Deskriptoren der Maus an den PC weiterreichen und für die Umrechnung die
X/Y-Werte gemäß den Vorgaben im Report-Descriptor aus den empfangenen
Daten heraus- und wieder hineinfieseln.
Das Board mit dieser Software braucht 9 mA bei 96 MHz CPU-Takt,
wahrscheinlich kann man den Verbrauch durch Heruntertakten und
Deaktivieren nicht benötigter Komponenten noch deutlich senken. Zum
Vergleich: die verwendete Maus (eine billige Logitech) braucht 14 bis 36
mA, je nachdem, wie schnell sie bewegt wird.
Man schaltet das Board dann einfach zwischen PC und Maus, und schon wird
die Maus schneller oder langsamer. Lustig wird es, wenn man einen
negativen Faktor vorgibt (vielleicht mal ein netter Aprilscherz) ;-)
Vielen Dank für die Info.
Mal vom Aprilscherz abgesehen, war das genau meine Idee.
Aber wie gesagt warte ich damit, bis eine Entscheidung gefallen ist.
Aber privat könnte ich mir das mal ansehen.
Ich habe in der Vergangenheit einen Midi Controller gebastelt, der die Daten analog(Din) empfängt und sendet. Das wäre jetzt cool die Midi Daten auch via USB zu empfangen und zu verarbeiten.