Car-PC.info

Eingabe & Steuerung - Powermate-Umbau

moflash - Mi 02 Jun, 2004 21:02
Titel: Powermate-Umbau
Ich werde in den nächsten Tagen anfangen, ein ähnlich zum Powermate funktionierendes Gerät zu bauen. Dabei soll es so aussehen, wie die I-Drive-Steuerung von BMW.

Werd dann die Tage berichten, wie weit ich gekommen bin. Mit Bildern und so.

Den original I-Drive Bedienknopf habe ich bereits bestellt. (BMW-Teile-Nr. 65826933610) Kosten bei meinem Vertragshändler 28,07 EUR + Porto und Verpackung. Jetzt darf ich nicht mehr als 25 EUR für den Rest ausgeben, um immer noch unter Powermate-Niveau zu bleiben Smile
sTAr - Mi 02 Jun, 2004 21:33
Titel:
Das könnte aber Eng werden oder?!
moflash - Do 10 Jun, 2004 23:16
Titel: Kennt sich jemand mit Treibern aus???
So Freunde, ich habe jetzt auch einen passenden Drehimpulsgerber gefunden: http://www.neuhold-elektronik.at/catshop/product_info.php?cPath=41_56_153&products_id=361

Info für die Bestellung bei Neuhold Elektronik, Austria: Mindestbestellwert 10,00 EUR, Versand nach Deutschland 5,00 EUR. Kreditkarte oder Vorkasse möglich. Versand sofort nach Zahlungseingang.

Jetzt bin ich dabei mich zu informieren, wie man Treiber schreibt. Kennt sich damit jemand aus? Einen einfachen XP Treiber für ein USB-Gerät...

Weiter gehts Smile
JojoS - Fr 11 Jun, 2004 07:56
Titel:
an so einem Treiber dürftest du mehrere Wochen dransitzen wenn du keine Erfahrung mit Treibern und PnP hast...
Einfacher ist das hier: http://www.codemercs.com/PortWarriorD.html . Sind fertige Prozessoren mit verschiedener IO-Hardware, u.a. auch für Maushardware. Mit dem IO-Warror24 (gibts auch bei Segor) habe ich schon mal gespielt, funktioniert ganz ordentlich. SDK und Softwarebeispiele in Delphi, C und VB sind dabei.
Dein Encoder müsste sich aber auch an einfacher Maus-Hardware anschliessen lassen, einfach eine mechanische Maus schlachten. Die haben auch eine Doppel-Gabellichtschranke. Über USB kann man mehrere Mäuse gleichzeitig anschliessen und mit DirectInput sollte es möglich sein die als Eingabe in eigenen Programmen zu verwenden.
moflash - Fr 11 Jun, 2004 09:54
Titel:
Hi JojoS,

hab mir grad mal das Bild angesehen von dem CodeWarrior: Da ist ja fast nix drauf Sad - für über 50,00 EUR... Kannst Du nicht mal einfach so ein Foto von Vorder- und Rückseite der Platine machen??? Smile Nur so, um zu sehen wie das geht. Man ist ja neugierig...
JojoS - Fr 11 Jun, 2004 10:28
Titel:
Ich habe den IO-Warrior24, der hat parallele I/O's, einen I2C Bus, einen Anschluss für LCD und eine IR-Empfängerdiode drauf. Lade dir von der der www.codemercs.com Site mal das SDK runter, in der Beschreibung sind auch Fotos von den Platinen. Ist wirklich nur eine Handvoll von Bauteilen, das IC macht das komplette USB Interface. Die IC's kriegt man auch einzeln (auch beim c't Heise-Verlag).
Der Mouse-Warrior ist eine spezielle Version die die 90° Phasenverschobenen Signale für einen Drehgeber auswerten kann, den habe ich auch nicht benutzt.
moflash - Fr 11 Jun, 2004 13:46
Titel:
Du scheinst ein wenig Ahnung zu haben, also frag ich jetzt mal ganz dumm:

Habe mir eine billige USB-Maus gekauft und sie vorsichtig geöffnet. Ich war erstaunt, dass da kaum Bauteile drin sind. Ein Chip, ein paar SMD-Teile. That's ist. Habe nur die Platine angeschlossen und die meisten Funktionen konnte ich noch ausführen. Allerdings nicht den Cursor bewegen, weil optisch Sad

Jetzt ist meine Frage folgende: Wie kann ich den Cursor mit der Maus steuern? Ich hätt gern ne Tab-Funktion. Immer einen Schritt weiter oder zurück und dann bestätigen oder auch nicht, etc. Das kann man doch prinzipiell mit der Maus gar nicht?

Wie kann ich meinen Drehgeber (s. Link oben) denn nun einbauen???
moflash - Fr 11 Jun, 2004 13:54
Titel:
Ist nen echt dämlicher Post. Was ich doch sagen will, ist folgendes Smile

Ich möchte keinen Powermate kaufen, sondern einen selberbauen. Einfach, weil es auch Spaß machen soll, mal wieder was zu basteln. Allerdings muss ich mich in USB erst einarbeiten...

Möchte als Ausgangspunkt den o.g. Drehgeber verwenden. Dieser unterstützt links/rechts und Bestätigung. Möchte diesen nun (egal wie) über USB anschließen und dann als Eingabegerät, wie Powermate, verwenden. Ein kleines Tool evtl, mit dem man die Funktionen (Linksdreh = leiser, Rechtsdreh = lauter, Drücken = Enter, etc.) zuweisen kann.

Bin für jeden Tipp dankbar.
JojoS - Fr 11 Jun, 2004 14:26
Titel:
deshalb war mein Tipp auch 'mechanische Maus'. Die Rollkugel treibt zwei Rädchen ein, eins für X und eins für Y Achse. Die Rädchen drehen eine Schlitzblende die in einer Gabellichtschranke sitzt. Die Gabellichtschranke hat eine Leuchtdiode auf der einen Seite und _zwei_ Fotodioden auf der anderen. Zwei sind nötig für die Richtungserkennung. Das Teil von Neuhold dürfte ebenfalls Impulsausgänge haben. Die LS in der Maus müsste auf einer Seite Masse und + über Vorwiederstand haben (Leuchtdiode) und auf der anderen Seite die zwei Schaltausgänge von den Fotodioden und vermutlich auch nochmal Masse. Muss man vielleicht etwas rumprobieren.
Und Softwaremässig eben DirectInput verwenden. Habe damit nur mal einen Joystick abgefragt, bin da auch nicht mehr sooo fit. Man kann aber die Eingabegeräte auflisten lassen und findet damit auch seine Mäuse.
moflash - Fr 11 Jun, 2004 17:13
Titel:
Du meinst, dass ich anstatt der zwei Rädchen und dem linken Mausknopf einfach mal den Drehgeber dranpacken soll? Das hört sich gut an.

Aber:

Ich kann doch eine komplett 2-dimensionale Cursersteuerung nicht durch links/rechts-Bewegung ersetzen?!?!?!? Den linken Mausschalter wohl.

Was meinst Du mit DirectInput???
JojoS - Fr 11 Jun, 2004 18:24
Titel:
Richtig, die Mäusehardware wäre gut für zwei Drehgeber. Ich weiss du möchtest nur einen benutzen, deshalb muss man ein Programm schreiben (Treiber ist nicht nötig) das die DirectInput Funktionen von DirectX nutzt und statt der Mausbewegung z.B. festgelegte Zeichen an eine Applikation schickt. Also nur die Maushardware nutzen (die kriegst du ja nachgeworfen) und den Rest per Software.
moflash - Fr 11 Jun, 2004 18:30
Titel:
Geht das auch mit VB? Ich mein, VB kann ich eh nicht, aber ich hab das Visual Studio hier und könnt da was mit machen. Aber das wäre perfekt. Danke für Deine hilfreichen Tipps Smile Smile Smile
moflash - Fr 11 Jun, 2004 20:21
Titel:
Hab mich ein bisschen eingelesen und folgenden Ansatz zustande gebracht (s. Anhang).

Dabei werden die Werte in einer .dat-Datei abgespeichert und beim Laden ausgelesen und als Werte für die Aktionen genommen.

Jetzt muss ich nur noch einen Weg finden, die Mausbefehle in Tastaturbefehle zu wandeln.

Weißt Du, wie das geht???
moflash - Fr 11 Jun, 2004 20:22
Titel:
Hier das Bild:
JojoS - Fr 11 Jun, 2004 21:49
Titel:
das mit der Software ist leider nicht so einfach, Windows hat da wieder so eine Eigenart: es macht alle angeschlossenen Mäuse zu einer 'Supermaus'.
Ab WindowsXP gibt es ein 'RawInput' mit dem man die verschiedenen Mäuse auslesen kann. Jetzt müsste es nur noch klappen dem Desktop eine Maus zu klauen damit der iDrive nicht den Mauszeiger bewegt. Die Drehung in Tasten umzusetzen ist nicht das Problem.
moflash - Fr 11 Jun, 2004 23:10
Titel:
Ich bin mittlerweile zu folgenden Erkenntnissen gelangt:

Mein Programm nützt nix.

Ich brauche zunächst ein kleines Tool, welches über Autostart geladen werden kann, ohne dass man es sieht. Es soll ja im Hintergrund arbeiten. Da ist es ziemlich unbrauchbar, wenn über Autostart meine Einstellungs-Box kommt.

Ich habe diverse Scripts ausprobiert, die Maus-Events auslesen können. Dabei konnte ich die X/Y-Mauspositionen auslesen, dann welcher Button gedrückt wurde und ob es ein einfacher oder ein Doppelklick war. Langer Klick fehlt weiterhin. Allerdings beschränkte sich das auf den Bereich innerhalb des Forms.

Die Doppelklickgeschwindigkeit kann ich auch auslesen und neu zuweisen.

Vielleicht geht die globale Abfrage ja mit diesem Script unter http://www.vbarchiv.net/archiv/tipp_878.html ???

Dann ist aber die Frage, wie ich den Maus-Event in ein Tastatur-Event wandeln kann. Habe noch keine Zuweisungsmöglichkiet entdeckt......
moflash - Fr 11 Jun, 2004 23:13
Titel:
Ach meinst Du, dass ich 2 Mäuse anschließen möchte? Nein. Das soll nur im Notfall und dann auch speziell erfolgen. Im Normalfall muss es mit einer umgebauten Maus + versteckter Tastatur gehen!!!
JojoS - Fr 11 Jun, 2004 23:50
Titel:
ich möchte es auf jedenfall mit Maus (oder Touchscreen, kommt aufs gleiche raus) und Drehrad laufen haben. Sonst wäre es ja zu einfach...
Morgen spiele ich nochmal mit dem RawInput rum, in der knappen Doku waren auch Optionen rauszulesen eine App im Hintergrund mit Mausevents zu versorgen. Das läuft aber nur unter XP.
moflash - Sa 12 Jun, 2004 12:10
Titel:
Ahh ok, hab ich verstanden. Wenn ich mehr als eine Maus an einem Computer angeschlossen habe, funktionieren sie wie eine einzige Addition aus ihnen. Dann müssten wir eine Maus eindeutig identifizieren können. Habe ich aber noch nicht geschafft, denn wir Du sagst, findet der nur eine Maus. Über RawInput habe ich so gut wie nichts gefunden Sad
moflash - Sa 12 Jun, 2004 18:20
Titel:
Hi JojoS,

und bist Du schon weiter gekommen? Würde mich interessieren, ob Du's geschafft hast. Also mit VB kann man RawInput glaube ich vergessen, mit C++ dagegen wohl kein Problem.

Ich habe herausgefunden, dass sich das Programm als ServiceProzess in einen Stealth-Mode versetzt und "im Hintergrund" arbeiten kann. Dabei ist es in der Lage jede Eingabe zu lesen und zu verarbeiten.

Habe jetzt aber noch konkrete Fragen

Auslesen einer der beiden Mausachsen und Umwandlung in Befehle:
Maus - begrenzt im Intervall der Auflösung (0 und 1024)
Drehgeber - unbegrenzt in pos. wie neg. Richtung

Code:

If MousePos > TmpMousePos Then
 ' Positive Drehrichtung, da neuer Wert größer als alter
Else
 ' Negative Drehrichtung, da neuer Wert kleiner als alter
End If


Dann muss aber immer gelten:

Code:

' Ende des rechten Bildschirms fast erlangt
If MousePos > 1000 Then MousePos = 500 End If
' Ende des linken Bildschirms fast erlangt
If MousePos < 10 Then MousePos = 500 End If


Nur als Beispiel. Oder bin derart auf dem Holzweg? Mir scheint, als würdest Du genau wissen was ich meine. Hast Du da einen konkreten Tipp für mich?
JojoS - Mo 14 Jun, 2004 10:34
Titel:
bin am WE nicht zu viel gekommen. http://link.mywwwserver.com/~jstookey/arcade/rawmouse/
ist ein ein interessanter Link mit etwas Code zum RawInput (in C/C++). Ich hatte noch ein bischen mit .Net / DirectX9 probiert, aber ich bekomme MouseEvents nur parallel zum Cursor oder exclusiv wenn die Testapp im Vordergrund ist, das ist noch nicht.
Auf der Homepage wird noch ein CPNMouse Project verlinkt, das ist ein Treiber für mehrere Mäuse. Dieser Ansatz könnte auch klappen, habe ich noch nicht probiert.
Den Neuhold Drehgeber habe ich auf jedenfall auch mal bestellt.
moflash - Di 15 Jun, 2004 16:12
Titel:
Auf die Seite bin ich auch gekommen. Dabei ist mein Problem, dass ich mit C/C++ nichts anfangen kann. Versteh's einfach nicht auf Anhieb Sad Ich denke, ich werde mal ein kleines Programm in VB schreiben, das Mausbewegungen in Tastaturbefehle umwandelt. Die Lösung ist dann allerdings nur für 1 Eingabegerät gedacht Sad
moflash - Di 15 Jun, 2004 22:32
Titel:
Beim Auseinandernehmen meiner Maus ist mir aufgefallen, dass in ihr die Elektronik etwas anders verbaut war. Das Mausrad ist seitlich angebracht und direkt an einen Drehgeber angeschlossen.

Denke, dass man das Proket auch über Mausrad und dessen Button laufen lassen kann. Das hat den Vorteil, dass es nicht zu Überschneidungen mit einem TS kommt.

Was meint Ihr?
moflash - Do 17 Jun, 2004 17:22
Titel:
Der Drehgeber ist eingetroffen Smile Ein echt gutes Gerät. Kompakte Bauform, schöne Rasterung und der Druckpunkt ist nicht zu lasch. Werd ich gleich mal probieren...
ibutep - Do 17 Jun, 2004 18:40
Titel:
bin schon mal gespannt, hab eure bemühungen verfolgt, nur leider hab ich gar keeeeine ahnung von elektronik, sonst würd ich auch rumprobieren
JojoS - Fr 18 Jun, 2004 10:16
Titel:
das Ding müsste hier auch bald ankommen, dann bastel ich da auch weiter
moflash - Fr 18 Jun, 2004 16:15
Titel:
Hallo,

hast Du Dir schon weitere Gedanken gemacht? Wenn ja, dann zeig mal her Smile Ich habe meine Pläne etwas umstrukturiert. Werde gänzlich auf die Verwendung einer Maus verzichten. Das wird zu kompliziert. Denn wenn die Maus betätigt wird gibt sie ja immer noch ihren ursprünglichen Befehl ab + den von uns generierten. ==> Fehlerquellen

Mein Plan

Verwenden von USBIO. Der generische Gerätetreiber USBIO ermöglicht Win32-Applikationen den direkten Zugriff auf USB-Geräte, wie er standardmäßig nur für Kernel-Mode-Treiber zur Verfügung steht. Der USBIO-Treiber kann mit beliebigen Arten von USB-Geräten eingesetzt werden. Die Entwicklung eines speziellen Kernel-Mode-Treibers entfällt.

Download Freeware: http://www.thesycon.de/usbio/eng/dl_usb_l.htm

Der Vorteil: Das USB-Gerät taucht gar nicht als Maus auf und kann so unabhängig von einem TS benutzt werden. Desweiteren reduzieren sich dann auch die Bauteile, denn mehr als einen IC und ein Quarz werden wir nicht brauchen...

Meine Software

Wird über Autostart geladen. Startet dann das zuvor angegebene Programm automatisch und arbeitet vollständig im Hintergrund. Es liest alle Daten ein und gib es das festgelegte Fenster weiter. Bin jetzt dabei noch den Timer umzusetzen, damit ich zwischen Einfach-, Doppel- und Langklick unterscheiden kann.

Bei SingleClick > 4 Sek schließt das Programm alle Anwendungen und fährt das System sauber runter Smile
funt4stic - Fr 18 Jun, 2004 18:55
Titel:
Na das hört sich ja super an. Ich habe nämlich auch nen Powermate habe aber ehrlichgesagt keine Ahnung wie ich den einigermaßen schlicht ins cockpit integrieren soll, der is einfach zu groß.

Gruß
Jan
JojoS - Sa 19 Jun, 2004 13:06
Titel:
kurz nachdem ich das gestern geschrieben hatte brachte der Paketdienst ein Päckchen aus Österreich... Haber gerade mal 3 alte Mäuse seziert, aber alle haben die Fotodioden an + zusammengeschaltet. Damit ist die einfache Maushardware nicht passend für die Grayhill Encoder Sad
Werde jetzt nochmal probieren die Dinger an meinen IOWarrior anzuschliessen. Das wird klappen, aber wenn man die einfachen IO-Ports nutzt kann man nicht gleichzeitig den I2C Bus und das LCD-Interface benutzen. Ich werde doch nochmal das MausWarrior IC bestellen, das scheint mir die sauberste Lösung zu sein.
moflash - So 20 Jun, 2004 20:23
Titel:
Hallo,

unter dem Link http://www.ak-modul-bus.de/technik/port.html habe ich einen sehr interessanten IC gefunden. Dieser scheint auch hervorragend mit VB zusammenzuarbeiten. Habe denen eine Mail geschickt und angefragt, ob sich der IC für unser Projekt eignet. Meld mich, wenn ich Antwort erhalte.

Muss jetzt noch Statistik lernen Sad

Mo
JojoS - So 20 Jun, 2004 21:21
Titel:
das Teil wird funktionieren, ist aber unverschämt teuer (einzeln 20,00 Euro !).
Habe gerade den Encoder an meinem IO-Warrior zum Laufen bekommen. Die Drehrichtung, Takte und Tastendruck werden korrekt gelesen. Man darf nur nicht zu schnell am Rad drehen, ist aber trotzdem sehr präzise zu bedienen. Der IOW24 Chip kostet bei Segor 13,63 Euro. Auch kein Schnäppchen, aber immerhin... Das Teil ist gut dokumentiert und es gibt einige Programmbeispiele in Delphi, C/C++ und auch VB.
Ich habe mein Proggi in C# mit .Net und DirectInput gebaut, das ist insgesamt nicht zu kompliziert und kann satt erweitert werden. Code stelle ich gerne zur Verfügung.
Der IOW24 hat 16 freie Eingänge, ich habe vor mehrere Encoder (3 Stück) anzuschliessen. Einer soll für MP3 Bedienung, einer für Telefon und einer für sonstiges sein. Drei Knöppe kann man einfach lokalisieren und es entfällt das Menuhangeln für die wichtigsten Funktionen. Als nächstes möchte ich in die Software einen MP3 Player einbauen und verschiedene Bedienungen ausprobieren, dazu sollen noch 2-3 Tasten angeschlossen werden.
Zum IOWarror gibt es ein SDK, das kostet aber mit Versand ca. 65 Euro. Das kann man sich für diese Anwendung sparen, als einzige weitere Bauteile neben dem IC braucht man 2 Kondensatoren für die Glättung der Versorgung und einen Widerstand und die USB-Buchse (oder das USB Kabel von Nachbars Maus abschneiden).
moflash - So 20 Jun, 2004 21:50
Titel:
Das hört sich ja riesig an. Würde das gerne mal in Aktion bewundern Smile Hab ich das jetzt richtig verstanden:

Ich kaufe bei Segor:
den IOW24 Chip für 13,63
Kondensatoren
den Widerstand
und die USB-Buchse

Dann kann ich mit der Dokumentation ein Programm in VB schreiben, das DirectInput benutzt???
moflash - So 20 Jun, 2004 21:51
Titel:
Könntest Du nicht einmal ein paar Bilder vom Versuchsaufbau und vom Proggi posten? Evtl. an meine Mail oder PM???
JojoS - So 20 Jun, 2004 22:29
Titel:
yepp, genauso sollte das klappen. DirectInput geht auch mit VB6, du brauchst evtl. das SDK von MS, gibts aber kostenlos als Download. Der Code ist noch eine grobe Baustelle, so zwischen F1 und EM reingehackt...
Im Code lasse ich mir erst die verfügbaren Devices auflisten, der IOW taucht als 'Plain I/O' in der Liste auf. Wird von XP als PnP Gerät erkannt und man muss dann ein 'Device' mit der einmal festgelegten Guid erzeugen. Die muss man sich einmal in einer Konfig merken damit die Zuordnung fest ist (dadurch kann man dann mehrere IOW's anschliessen). Dann meldet man mit 'SetEventNotification' ein Event an das bei Änderung gefeuert werden soll. Ein anderer Thread läuft im Kreis und wartet auf ein Event. Wenn das kommt werden im 'ButtonReaderThread' die drei Bits EncoderA,B und Button gelesen. Nach der Auswertung habe ich die Richtung mit der ich einfach einen Zähler rauf- oder runterzähle. An dieser Stelle kann man natürlich auch einen Tastendruck simulieren (geht in VB glaube ich mit SendKey), aber ich möchte wie geschrieben direkt die MP3 Funktion realisieren.
Wenn das ganze etwas mehr Form angenommen hat mache ich mal ein komplett Paket daraus, wäre natürlich auch gut wenn Furious oder andere das in die CarPC Software integrieren.

Code Snippets:


Code:
      private void listDevices_DoubleClick(object sender, System.EventArgs e)
      {
         DeviceItem di = (DeviceItem)listDevices.SelectedItem;

         _iow24 = new Device(di.DevGuid);

         MessageBox.Show(_iow24.DeviceInformation.ProductName);

         eventFire = new AutoResetEvent(false);
         _iow24.SetEventNotification(eventFire);
         _iow24.Acquire();

         // create ButtonReadThread
         threadData = new Thread(new ThreadStart(this.ButtonReaderThread));
         threadData.Start();
      }


Code:
      Thread threadData = null;
      AutoResetEvent eventFire = null;
      delegate void UIDelegate();

      private Device _iow24;
      private DeviceList _dl;

      bool EncoderA = false;
      bool EncoderB = false;
      bool EncoderAOld = false;
      bool EncoderBOld = false;
      bool EncoderChanged = false;
      bool EncoderButton = false;
      bool EncoderDirection = false;
      int EncoderPos = 0;

      public void ButtonReaderThread()
      {
         while(Created)               
         {
            eventFire.WaitOne(-1, false);
               
            try
            {
               EncoderA = _iow24.CurrentJoystickState.GetButtons()[8] != 0;
               EncoderB = _iow24.CurrentJoystickState.GetButtons()[9] != 0;
               EncoderButton = _iow24.CurrentJoystickState.GetButtons()[10] != 0;

               EncoderChanged = (EncoderA != EncoderAOld) || (EncoderB != EncoderBOld);

               if (EncoderChanged)
               {
                  if (EncoderA != EncoderAOld)
                  {
                     if (EncoderA)
                        EncoderDirection = !EncoderB;
                     else
                        EncoderDirection = EncoderB;
                  }
                  if (EncoderB != EncoderBOld)
                  {
                     if (EncoderB)
                        EncoderDirection = EncoderA;
                     else
                        EncoderDirection = !EncoderA;
                  }

                  if (EncoderDirection)
                     EncoderPos++;
                  else
                     EncoderPos--;
               }

               EncoderAOld = EncoderA;
               EncoderBOld = EncoderB;
            }
            catch(InputException)
            {
               continue;
            }
            if (Created)
               this.BeginInvoke(new UIDelegate(UpdateUI));
         }

moflash - Di 22 Jun, 2004 12:45
Titel:
Würde gerne heute noch ein paar Bauteile einkaufen gehen. Komme leider nur zu Conrad. Kannst Du mir mal die Werte für Konsensatoren und Widerstände geben? Ist das eine USB-Typ A??? Gibt es nicht auch bei Conrad einen entsprechenden IC? Oder ist der dann mit der Treibersoftware nicht kompatibel? Grüße Mo
JojoS - Di 22 Jun, 2004 13:33
Titel:
Hole dir das SDK zu dem Chip, da ist alles drin:
http://www.codemercs.com/Downloads/SDK.zip
Bei Conrad gibts den Chip nicht, und wenn dann wäre er ja doppelt so teuer... Am besten bei www.segor.de bestellen, da kriegst du auch die anderen Bauteile. Nur die Katalogsoftware da ist etwas ätzend.
Der Chip ist übrigens auch von Cypress wie das Teil von ak-modul-bus. Codemercs vertreibt den dann mit eigener Programmierung und dem SDK, deshalb gibts den nicht überall.
JojoS - Di 22 Jun, 2004 13:49
Titel:
unter Artikelschnellsuche 'Warrior' eingeben, der IOW-24 P ist es dann.
USB-B Buchse Printmontage: USB-B BU
unter EVQWTA-S20-15B findest du dort auch einen Winkelencoder.
Sonst brauchst du nur noch 1 Widerstand 1k, 1 Elko 10 mue/16V und 1 Kondensator 100 nF. Passt alles auf ein bischen Lochraster Platine, bei den paar Verbindungen braucht man nicht unbedingt eine geätzte Platine. Die Eingänge haben interne PullUp's, man kann also einfach mehrere Tasten gegen Masse anschliessen. Im IOWarriorDatasheet ist auch beschrieben wie z.B. ein Relais über einen Transistor angeklemmt wird, hatte mir dafür gleich ein paar von den billigen Relais von Neuhold mitbestellt.
Und nu viel Spass beim Basteln...
moflash - Di 22 Jun, 2004 13:49
Titel:
Danke für die Info. Aber was ist mit den restlichen Bauteilen? Die würde ich dann schon gerne gleich kaufen. Braucht man für den IC kein Quarz um ihn zu takten???
JojoS - Di 22 Jun, 2004 13:52
Titel:
nö, der grosse Bruder IOW40 braucht einen, der IOW24 kommt ohne aus.
moflash - Fr 09 Jul, 2004 17:59
Titel:
Hallo JojoS,

wie sieht's aus? Leider hatte ich so viel um die Ohren, dass ich gar keine Zeit hatte, mich unserem Projekt zu widmen. Ich habe meinen Chip nun hier und würde ihn gerne probieren, aber mir fehlen die Bauteile (morgen Conrad). Wie muss ich die anschließen? Will den Chip ja nicht direkt schrotten, dafür war er zu teuer Sad Würde mich freuen, wenn Du mir noch ein paar Infos geben kannst!!!
JojoS - Fr 09 Jul, 2004 22:49
Titel:
kann ich morgen machen, habe gerade nochmal den IOW24 nachgeordert. Den Schaltplan zeichne ich mit Eagle, habe da aber auch erst gerade mal die USB Buchse plaziert...
Aber das wird schon.
moflash - Sa 10 Jul, 2004 19:57
Titel:
So, habe bei Conrad eingekauft. Leider waren Deine Angaben zu den Bauteilen nicht 100% vollständig, deshalb musste ich das nehmen, was mir am ehesten zusagte. Habe mal etwas mehr gekauft...

1 x WIDERSTAND KOHLE 0,25 W 5% 1K BF 0207
1 x WIDERSTAND METALL 1 W 1% 1K BF 0414
1 x ELKO 10/16AX
1 x ELKO 100/16AX
1 x IC-Fassung
1 x USB-Buchse Typ B

Du kannst mir auch mit der Anschlussbelegung über die Pins helfen. Wäre super, wenn ich heute noch ein bisschen basteln könnte Smile
JojoS - Sa 10 Jul, 2004 20:08
Titel:
heute klappt das nicht mehr, aber lade dir mal das SDK vom IOW runter:
http://www.codemercs.de/Downloads/SDK.zip
da ist alles beschrieben. Die USB Belegung müsste da auch drin sein, sonst irgendwo aus dem Netz hergoogeln. Für den Anfang brauchst du nur plus und minus von der USB Buchse und D+ und D- und den 1k R an den IOW Chip verdrahten. Den 10 mue Elko dann noch über die Versorgungsspannung. Wenn du das an den Rechner anschliesst muss Windows ein HID Device finden.
moflash - Sa 10 Jul, 2004 20:12
Titel:
Jeps, habe das SDK auf dem Rechner. Aber gefunden habe ich da nichts. Also kurz zusammengefasst:

Welcher der oben genannten Widerstände ist der richtige? Wo muss der Widerstand zwischen? Der Elko muss über + und - 5V der USB-Buchse?

Vielen Dank.
furious - So 11 Jul, 2004 02:01
Titel:
Hallo Jungs!
ich habe diesen Thread eben mal überflogen und finde die ganze Sache recht interessant. Erstmal erwähne ich, was ich an Nachteilen am Powermate sehe:

1. Preis
2. Keine Rasterbewegung (man sollte fühlen, ob man nun ein Eintrag weiter ist oder nicht; kein stufenloses Drehen)
3. nach einem Absturz und neu hochfahren reagiert bei mir das PWM nicht mehr und ich muss nochmals neustarten Sad

Wenn diese Nachteile zu beseitgen ist, wäre ich sogar an einer "Massenproduktion" eurer Hardware integriert (für unser geplantes C.E.S.-WebShop Wink).

Die feste Integration in C.E.S. ist selbstverständlich!

Noch ein Tipp: das alles lässt sich auch ohne viel Aufwand als "Tastatur" bauen: einfach ne alte Tastatur auseinandergenommen, die Matrix-Folien durchgecheckt (welche Taste welche Kontakte schließt) und entsprechend viele Tasten angeschlossen Razz

Aber die USB-Lösung ist natürlich eleganter Wink

Das kann man aber alles richtig schön klein zusammenpacken hoffe ich?! Evtl. kriegt man diesen BMW-iDrive-Schalter drauf?

Das wäre super! Ich bin schonmal Kunde!

Bis dann!
JojoS - So 11 Jul, 2004 12:01
Titel:
@moflash: in dem SDK ist ein PDF, da ist der Schaltplan drin. IOWarriorDatasheet.pdf, S. 23. Der R ist ist zwischen Pin 11 und 15.
JojoS - So 11 Jul, 2004 12:15
Titel:
@Furious:
freut mich noch einen Verbündeten gefunden zu haben.
die genanten Nachteile gibts bei der Selbstbaulösung nicht. Ich habe jetzt zwei verschiedene Drehgeber, beide mit 30 Raststellungen je Umdrehung.
Die Hardware besteht im wesentlichen nur aus IOW24 IC, das kann man natürlich sehr kompakt bauen. Der IOW hat verschiedene Modi, entweder 16 freie IO Leitungen oder Sonderfunktionen wie LCD Ansteuerung, IR-Empfänger oder I2C Interface. Mit diesem Teil hat man also jede Menge weiterer Möglichkeiten.
Parallelport wäre vielleicht etwas einfacher, aber solche Hardware möchte ich nicht: USB ist universeller, einfachere Kabel, 2 bis 3 Hubs in Auto und Kamera, Maus, Kbd usw. anschliessbar,...
Und den iDrive Knopp hat moflash ja als erstes gekauft. Ob es mechanisch passt muss er sagen, die Drehgeber haben Standard 6 mm Achsen.
Elluminatus - Di 03 Aug, 2004 11:06
Titel:
Wann ist denn mit einem ersten Ergebnis zu rechnen *mal vorsicht anfragt* ich wollte mir eigentlich heute nen PowerMate kaufen, aber wenn es eine bessere Alternative Zeitnah zu haben gibt....

Sagt mal was Smile
furious - Di 03 Aug, 2004 11:13
Titel:
@JojoS:
Ich habe letzter Zeit immer mehr Probleme mit dem PowerMate Sad ansich gefällt der mir ja total, aber nach einem Absturz ist der immer tod..... sonst hat es "gelangt", wenn ich zweimal gebootet habe, aber nun muss die spannung komplett weg, bis es wieder geht....
Wie war das nochmal: mit deiner Lösung hat man eine, mit Rasterstellung???! Smile ich bin mit dem PowerMate materialistisch eigentlich voll zufrieden (von der Bedienung her und so). Nur die Rasterstellung fehlt mir.....
Ist es möglich, dass du mir eines der ersten Exemplare zusammenbaust und zuschickst, damit ich evtl. direkt in C.E.S. einbinden kann?? Ich denke eine Gegenleistung werden wir finden Smile
Anakin - Mo 30 Aug, 2004 18:49
Titel:
bin grade dabei, mit nem kollegen, das audi mmi umzubauen. auch dort ist eine art idrive vorhanden, welches wir umbauen. die normale tastentsteuerung verläuft per usb tastatur ...
Vik - Mo 30 Aug, 2004 21:34
Titel:
Hab ich das nun richtig verstanden? Ich kann an den IO-Warrior24 3 drehencoder ohne viel aufwand anschliessen und kann das ganze dann auch programmieren? Kann ich dann auch den encoder von segor nehmen: EVQWTA-S20-15B ???
Ist es dann noch möglich weitere Taster anzuschliessen? Wär ja das perfekte input device Very Happy
NightWatcher - Mo 30 Aug, 2004 22:34
Titel:
hey, mich interessiert das auch riesig, da ich kurz davor war, nen PowerMate zu kaufen.
Aber sowas hier ist ja viel Interessanter, da er wohl um einiges kleiner Sein kann Smile

Leider habe ich keine Ahnung von der ganzen Sache und muss mich deshalb wohl noch solange gedulden, bis alles fertig ist... Sad
JojoS - Di 31 Aug, 2004 18:35
Titel:
hallo, war eine Zeit lang weniger aktiv wg. Urlaub und viel Arbeit. Ich werde am kommenden WE nochmal eine Beschreibung in Angriff nehmen.
@vik: ja, der encoder von segor wird auch funktionieren, der arbeitet mechanisch. Rastet aber auch ein und fühlt sich ok an. Habe das Teil auch hier rumliegen.
Ich habe ein kleines Stück Software gemacht zur Richtungserkennung und Pulszählung, läuft in .NET mit DirectX9. Sollte aber auch in VB klappen, werde das dann an Furious schicken damit es gleich in C.E.S. eingebaut werden kann.
Aber bitte noch ein paar Tage Geduld.
NightWatcher - Di 31 Aug, 2004 18:38
Titel:
Paar Tage kann ich gut verkraften, wenn es dann perfekt ist Wink
Vik - Di 31 Aug, 2004 18:39
Titel:
OK danke aber brauch ich denn noch großartig bauteile zum anschliessen oder is das mit n paar teilen getan? Hab keine Geduld mehr....will basteln ^^
JojoS - Di 31 Aug, 2004 18:46
Titel:
dann verfolge den Thread mal ein bischen zurück, habe ich schonmal geschrieben. Es gibt ein komplettes Kit für Faule, kostet aber über 60€ mit Versand usw., nur die Teile (IOW24 Chip, ein paar R/C's, USB Buchse) kostet unter 20€. Dazu nur noch 1-3 Drehgeber (Neuhold oder Segor) und ein paar Taster. Kann man auch Lochraster Platine aufbauen, ist wirklich nicht viel.
Vik - Di 31 Aug, 2004 19:50
Titel:
Okay danke dass ist eigentlich alles was ich wissen wollte. Dann werd ich mal in den nächsten Tagen bestellen und ein wenig basteln und coden^^.
NightWatcher - Di 31 Aug, 2004 19:53
Titel:
@VIK, stell mal bitte ne Liste auf, was du bestellst.

Ich muss jetzt eh bei Conrad bestellen und würde dann auch schonmal paar Sachen ordern. Nur blicke ich hier net ganz durch in dem Thread Sad

PS: Bitte mit Artikel Nummern.
glow - Di 31 Aug, 2004 19:55
Titel:
@night
wär bei so ner bestellung auch mit dabei!
Vik - Di 31 Aug, 2004 19:57
Titel:
Ich werd wohl nur den IOW24 und 1-3 encoder bestellen. kleinteile wie kondensatoren und widerstände hab ich entweder zuhause oder bekomm die bei der arbeit. platine wird auch bei der arbeit geäzt...aber nun düs ich erstmal zur spaßkasse und wenn kohle endlich da is dann geht die bestellorgie für den carpc los....^^
NightWatcher - Di 31 Aug, 2004 19:57
Titel:
@glow, dann müssen wir nur hoffen, das Vik so Kameradschaftlich ist und uns die Sachen postet!! Wink

Aber wie ich ihn kenne... *FG* Razz
glow - Di 31 Aug, 2004 20:03
Titel:
eben... Razz Dancing Banana Razz
Vik - Di 31 Aug, 2004 20:09
Titel:
Mädels, siehe letzter post auf seite 3 Razz
War grad bei Spaßkasse und die blöde Reichswehr hat mein Geld immer noch nicht überwiesen. Ich dreh hier gleich durch ey...muss also noch warten mitm bestellen Sad


[OT]
Nein Björni ich leb nich hintern Mond. Jeder kennt doch die Weltmetropole Völlenerfehn Razz
[/OT]
NightWatcher - Di 31 Aug, 2004 20:10
Titel:
[OT]
Lebst ja auch hinterm Mond *LOL*
[/OT]
furious - So 26 Sep, 2004 22:56
Titel:
Was ist nun aus dem Projekt geworden? Ich halte es mit meinem PowerMate nicht mehr aus Sad kann man diese Drehregler nicht einfach an die Pins einer alten Tastature anschließen und vorrübergehend so fahren?

EDIT:
Dieses Teil (vom Anfang dieses Threads): http://www.neuhold-elektronik.at/catshop/product_info.php?cPath=41_56_153&products_id=361

Wenn man an die entsprechenden Pins eine Schaltung hängt, und an dem Drehregler dreht, wird diese Schaltung dann kurzweilig geschlossen und wieder gelöst (also z. B. wie gesagt eine alte Tastatur, welche beim schließen zweier Adern die entsprechende Taste sendet)?
Oder benötigt man bei diesem Drehregler haufen elektronik davor?
EricB - Mo 27 Sep, 2004 00:15
Titel:
Hallo,

an eine alte Tastatur geht sicherlich nicht ohne Elektronik bei dem Drehimpulsgeber.

Ich habe schon mal über eine Sache ein wenig getüftelt, habe aber keinen Drehimpulsgeber für einen Test.

Was wäre, wenn man den Regler mit einer alten Mouse-Hardware (Scrollrad) verbindet. Da ist ja auch nicht mehr drinnen als eine kleine "Lichtschranke". Nur halt nicht so aufgebaut, dass man es ohne Platine und Gehäuse der Mouse verwenden kann.

Mann braucht dann noch eine Software, mit der man auf die verschiedenen Befehle reagieren kann. Und man könnte da ja auch verschiedene Befehlsebenen programmieren:

Ebene 1: Drehen ohne 'Klick'
Ebene 2: Kurzer 'Klick' und Drehen
Ebene 3: Langer 'Klick' und Drehen

Ich habe jetzt gerade so einen Geber bestellt. Werde mal schauen, ob ich da aus einer Mouse was basteln kann...

Ciao
Eric

PS: @Furious: Hast du meine PN gelesen?
roan - Mo 27 Sep, 2004 00:26
Titel:
Aber wenn du das Scrollrad benützt hast du ja den Maustreiber, sprich das normale scrollrad, ob das da so leicht ist mit dem kurzen und langen klick
EricB - Mo 27 Sep, 2004 01:20
Titel:
Ja, stimmt schon, dass ich da die 'normalen' Mausfunktionen habe.

Aber ich kann ja per Software auf das Scrollereigniss reagiren und alles mögliche dann anstellen damit. Je nachdem wo ich mich im Fenster befinde ("ActiveControl" für die VB-Coder) kann man ja entscheiden, ob ich wirklich scrollen will, oder was anderes passieren soll.

Ist aber derzeit nur Theorie. Weil ich erst mal in den Überlegungen bin, wie ich ein eigenes Bedienteil für einen Car-PC machen kann. Ich mag nämlich das "Schaltgefühl" von einer Taste viel lieber als einen Touchscreen. Habe aber nooch keine Ahnung, ob´s wirklich was wird...

Ciao
EricB
roan - Mo 27 Sep, 2004 01:27
Titel:
"Schaltgefühl" gleich reicht nicht ein "Tastergefühl" Very Happy

nimm einen NUM block und integriere die Tasten
EricB - Mo 27 Sep, 2004 01:35
Titel:
Klar das "Tastergefühle" Wink

Ja, dem Num-Block habe ich für weitere Funktionen vorgesehen. (bze. eine zerlegte Tastatur.) Nur für´s Scrollen will ich was komfortables haben. Das gefällt mir von den OEM-Navis am Besten und ist auch sehr einfach zu bedienen.
roan - Mo 27 Sep, 2004 01:40
Titel:
aber was genau hast du damit vor? wenn du die scroll funktion benutzen willst bist du programm abhängig. z.B. eine text eingabe für ein navi prog. geht so nicht. Du bist allso programm abhängig.
EricB - Mo 27 Sep, 2004 02:03
Titel:
Da könnte ich mir ein OSK bauen, dass ich mit dem Scrollrad bedienen kann... siehe Attachment.

Aber ich bin ja noch am Beginn mit meinen Tests
roan - Mo 27 Sep, 2004 02:32
Titel:
sorry bin mac user nur mein auto ist noch windoof
Roadrunner - Fr 22 Okt, 2004 16:40
Titel:
Hi Leute,

wie schauts aus! Wäre auch einer der ersten Kunden! Mit sicherheit!

Habe auch schon die Mechanik um das "Real;-)-IDrive-Feeling" zu realisieren, also drehen rechts/links, klicken und drücken nach vorne/hinten und rechts/links! Brauche eben noch die Elektronik und vor allem die Software!

Also, wie weit seid ihr und kann man da noch weitere Taster intigrieren?
furious - Fr 22 Okt, 2004 16:48
Titel:
@roadrunner:
Ich warte hier auch schon vergeblich auf ein Endprodukt... hoffe es wird noch was... das PowerMate selber kotzt mich total an, da es nach einem normalen Neustart einfach nicht mehr will.... woher hast du deine Elektronik?? Foto? Daten?
Roadrunner - Fr 22 Okt, 2004 16:52
Titel:
Ich habe nur die Mechanik mit den oben aufgeführten Fuktionen ("Steuerwegen")! Die Elektronik und die Software fehlen mir leider noch...

Foto mache ich dir noch!

Noch was anderes: Wie kann ich in C.E.S. den Schatten hinter den Schriften wie Uhr etc. entfernen? Passt nicht wirklich in meinen Skin...
tow-b.de - Fr 08 Apr, 2005 13:19
Titel:
erstmal respekt vor der Leistung und ich wäre auf jeden Fall auch interessiert daran Smile

@jojoS: Was machst du denn beruflich? In wo lernt man sowas? Also kombiniert programmieren C und Platinen selber zusammenbauen etc.. oder hast du das nebenbei angeeignet? Habe momentan nämlich ne Ausbildung als Anwendungsentwickler (hauptsächlich Win mit c/c++) gemacht und werde im Herbst wohl studieren (müssen Sad ). Aber mehr richtung Hardware fände ich schon interessant..

edit: mist, waren ja noch mehr seiten im thread Smile naja egal frage steht trotzdem *ggg*..
Pingu - Di 23 Aug, 2005 12:00
Titel:
Sorry, das ich den alten Thread wieder rauskram, aber was ist denn jetzt aus dem Umbau geworden?
Ist ja jetzt schließlich schon ein Jahr her...

Bin auch an solch einer Lösung interessiert. Nur Neuhold hat den Drehimpulsgeber jetzt nichtmehr in seinem Sortiment Sad

@JoJoS
Hast du daran weitergearbeitet? Funktioniert die Software soweit?
Fragen über Fragen ... Wink

@moflash
Passt eigenlich der Drehimpulsgeber ohne weitere anpassungs arbeiten auf den I-Drive Knopf?

PS: Die PowerMate hat es in der Zwischenzeit in die Kinos geschafft! Im aktuellen Film "The Island" sieht man Sie ziemlich am Anfang im Zimmer des Lincoln 6 Echo an der Wand hängen!

Gruß PINGU
JojoS - Di 23 Aug, 2005 14:18
Titel:
ich mache an der SW weiter wenn die Hardware endlich kommt. Ich habe jetzt einen anderen Joystick/Drehgeber bestellt, siehe den anderen Thread hierzu. Im Moment bin ich aber viel Unterwegs und weiss garnicht ob die Geber schon geliefert wurden, die sind schon 4 Wochen überfällig.
Pingu - Di 23 Aug, 2005 17:41
Titel:
Ahh OK, hab jetzt den anderen Thread auch gefunden.

Sollte dieser Thread hier wieder in den weiten dieses Forum verschwinden Wink und es stösst jemand auf grund der Suche darauf -> Mit dem "anderen Thread" is dieser hier gemeint.
Die etwas ellegantere Lösung als das was hier vorgeschlagen wurde.

Gruß PINGU
Alle Zeiten sind GMT + 1 Stunde
Powered by phpBB2 Plus and Kostenloses Forum based on phpBB