Projektidee "USB RetroArduInput"

Auswahl, Einrichtung und Betrieb von Rechnern und Komponenten
S+M
DOS-Übermensch
Beiträge: 1059
Registriert: Mo 10. Jun 2013, 17:04
Wohnort: BW

Re: Projektidee "USB RetroArduInput"

Beitrag von S+M »

Es nimmt Gestalt an, schön :like:

Mit welchem Programm hast du das Gehäuse erstellt?
Benutzeravatar
Win311Freak
Norton Commander
Beiträge: 116
Registriert: Sa 29. Jan 2022, 01:53

Re: Projektidee "USB RetroArduInput"

Beitrag von Win311Freak »

Zwar noch nicht alles gelesen.
Aber das Design der Box ist dir echt gut gelungen, Respekt. 8-) 8-) 8-)
Benutzeravatar
Dark_Lord
CONFIG.SYS-Autor
Beiträge: 261
Registriert: So 25. Mai 2008, 19:44
Wohnort: Nähe Köln
Kontaktdaten:

Re: Projektidee "USB RetroArduInput"

Beitrag von Dark_Lord »

S+M hat geschrieben: Mi 23. Mär 2022, 23:10 Es nimmt Gestalt an, schön :like:

Mit welchem Programm hast du das Gehäuse erstellt?
Das Gehäuse habe ich mit FreeCAD erstellt. Da die Platine ein KiCAD Produkt ist und KiCAD STLs rauslassen kann, war es relativ einfach, mit Hilfe dieser Modelle in KiCAD die entsprechenden Platzierungen für die Bolzen zu bauen.

Das Slicing übernimmt Cura (habe heute durch Zufall erfahren, dass Cura jetzt Monotone Top Layer und Ironing beherrscht, damit dürften die hässlichen Streifen auch verschwinden und evtl. durch das bessere Oberflächenfinish auch die Schrift, sofern man beim Filamentwechsel sauber arbeitet, blob-frei bleiben.

Die Farbgebung kommt übrigens von den alten IBM PCs. ich hab mir, da aufgrund der vielen Prototypen, wo irgendwo immer doch was 1mm nicht passte, bald kein graues Filament mehr habe, jetzt noch mal ein anderes bestellt, das laut Produktfoto immer noch hellgrau, aber etwas dunkler ist. Das würde die IBM Farbgebung noch besser machen: Gehäuse und linke wie rechte Seitenplatte und Deckel mit hell aber evtl. etwas dunkler grauem PLA als Top Finish und schwarzer Schrift, Rückenplatte schwarz mit hellgrauer Schroft, Frontplatte mit transparentem PLA als Bottom Layer (damit es durch den RetroArduInput Schriftzug durchleuchten kann, wenn man die optionalen LEDs bestückt) und hellgrauem PLA als Top Layer, und natürlich rote Schalter, wie der legendäre Netzschalter. Im linken Cover habe ich zudem die Mulde für den USB-Port, da das USB Host Shield ja etwas versetzt sitzt, der wird selbstredens angelehnt an die Netzschaltermulde: Die untere Schicht, wo der USB-Port sitzt, ist rot, in Anlehnung an den Schalter, der Rahmen schwarz und der Toplayer dann wieder grau.

Nachteil: Leider kann ich das nicht bei den üblichen PCB-Chinesen bestellen, die drucken in SLA und das geht nur einfarbig. Und Drucken für Alle, die so ein Ding ggf. haben wollen, geht nicht, die Gehäusebasis druckt fast 7 Stunden, Deckel und linke Seite aufgrund der großen Menge Stützstrukturen jeweils 8, und noch mal jeweils 2 Stunden für hinten, rechts und vorne sowie noch mal eine halbe Stunde (Peanuts!) bis alle Schalter raus sind. Ich glaub, da versteht jeder, warum die Sammelbestellung nur mit komplett hellgrauen SLA-Druck Gehäusen aus China kommt.
Arbeitspferde: Xeon E5-2683v3 und Q6600

Retro:
P2-450
Commodore PC20-II/Tandy Sound
286/ET3000/Aztech NX-II
Amiga 500/Gotek/Vortex AT-once Plus 286
Pentium 166/FAST Video Machine

Projekt-PCs: C64, Dual Pentium MMX 233, 486 VLB, 486 PCI, K6, Athlon 64
Projekte: USB RetroArduInput
Benutzeravatar
Dark_Lord
CONFIG.SYS-Autor
Beiträge: 261
Registriert: So 25. Mai 2008, 19:44
Wohnort: Nähe Köln
Kontaktdaten:

Re: Projektidee "USB RetroArduInput"

Beitrag von Dark_Lord »

Hat zufällig jemand einen Mac mit ADB und die Möglichkeit, mir mal den ADB-Port durch zu messen bzw. ggf. später die Möglichkeit, mir einen zu leihen (Raum Köln) oder günstig zu verkaufen (mein Begehren wäre bei Kauf ein kompaktes Gerät wie LC oder Performa, mit Mac zu VGA Adapter und einer Maus und Tastatur, mit der ich das Verhalten analysieren kann, solange mein Gerät noch nicht 100% läuft)?

Ansonsten geht es hervorragend voran.

Die aktuelle Kompatibilitätsliste:

- Eingabegeräte:
o USB-Hubs:
 Generell: Alle Hubs funktionieren nur dann reproduzierbar, wenn ein eingestecktes Gerät ein USB-Wireless-Receiver eines Logitech Tastatur/Maus Sets (hier: K270) ist
o Compsite HIDs (Maus/Tastatur Sets):
 Logitech K270 Wireless Maus/Tastatur PASS
o Tastaturen:
 Corsair K68 (Gaming Tastatur mit roter Beleuchtung, auch nicht im BIOS-Modus) FAIL
 Microsoft Wired Keyboard 600 PASS
o Mäuse:
 Logitech G502SE HERO (Gaming Maus mit RGB) FAIL
 Microsoft Basic Optical Mouse PASS
 Logitech MX500 PASS
o Joysticks:
 Speedlink Phantom Hawk (Inkl. Kalibrierung aufgrund ungenauer Zentrierung ab Werk) PASS
 Speedlink Competition Pro USB PASS
 Trio Linker Plus (Playstation 1+2, Dreamcast, Gamecube -> USB)
• Playstation 2 Dual Analogue Controller PASS
• Dreamcast Controller PASS
• Gamecube Controller (Kann ich nicht testen, vermutlich gleiches Mapping wie PS2 Dual Analogue) Partial Pass
 Logitech Extreme 3D Pro PASS
 Thrustmaster TC Sidestick Airbus Edition (vermutlich auch FCS Hotas) PASS
 Logitech F-Serie Gamepads Implementierung Offen
- Zu steuernde Retro-PCs:
o Tastatur-Interface:
 IBM PC/XT Klasse:
• Commodore PC20-II PASS
 IBM PC/AT und PS/2 Klasse:
• Headland HT12 286: LEDs in CheckIt nicht richtig gesetzt, sonst okay Partial Pass
• KMC-A419-3 386: LEDs in CheckIt nicht richtig gesetzt, sonst okay Partial Pass
• Tyan Trinity S1590: LEDs von BIOS und in CheckIt nicht richtig gesetzt, sonst okay Partial Pass
 Commodore Amiga Desktop/Tower und Amiga 500 mit Adaptierung auf Platinenstecker:
• Implementierung Offen
 Tandy 1000:
• Implementierung Offen
o Serielles Interface (Mainboard/Maustreiber):
 Im 2-Button Microsoft Modus:
• Commodore PC20-II / Cutemouse PASS
• Headland HT12 286 / Cutemouse PASS
• KMC-A419-3 386 / Cutemouse PASS
 Im 3-Button Logitech Modus (generell: Verhalten Lösen der mittleren Taste falsch, sonst alles okay):
• Commodore PC20-II / Cutemouse Partial Pass
• Headland HT12 286 / Cutemouse Partial Pass
• KMC-A419-3 386 / Cutemouse Partial Pass
o PS/2 Maus Interface (Mainboard/Maustreiber):
 Tyan Trinity S1590: Funktioniert mit Logitech-Treiber aber nicht mit Cutemouse Partial Pass
o Analoger Joystick:
 ISA-Karten (5V Referenz)
• Creative Labs Soundblaster 2.0, Aztech Sound Galaxy NXII (CPS Soundblaster 2.5) PASS
 PCI-Karten (3.3V Referenz)
• Test Offen
o Commodore/Atari Maus:
 Amiga 500 PASS
 Atari ST (PASS? Ungetestet mangels Gerät, jedoch reine Pinout-Änderung)
o Commodore/Atari Joystick:
 Joystick-Modus (reagiert auf USB-Joystick):
• Amiga 500 PASS
 1350 „Joymouse“ Modus (reagiert auf USB-Maus):
• Amiga 500 als Joystick, keine C64 Software verfügbar PASS
o Mac Classic und Co (ADB):
• Implementierung Offen
Arbeitspferde: Xeon E5-2683v3 und Q6600

Retro:
P2-450
Commodore PC20-II/Tandy Sound
286/ET3000/Aztech NX-II
Amiga 500/Gotek/Vortex AT-once Plus 286
Pentium 166/FAST Video Machine

Projekt-PCs: C64, Dual Pentium MMX 233, 486 VLB, 486 PCI, K6, Athlon 64
Projekte: USB RetroArduInput
Benutzeravatar
Dark_Lord
CONFIG.SYS-Autor
Beiträge: 261
Registriert: So 25. Mai 2008, 19:44
Wohnort: Nähe Köln
Kontaktdaten:

Re: Projektidee "USB RetroArduInput"

Beitrag von Dark_Lord »

Mittlerweile habe ich einen Power Mac G3 Desktop aufgetan. Dank dem habe ich rausgefunden, dass ich noch eine Kleinigkeit im Pin-Layout des ADB-Ports falsch habe. Zudem musste ich ja eh noch die Pins des Tastatur-Ports aufweiten sowie ein paar Pulldown-Widerstände einsetzen und wollte auch noch die Beleuchtung etwas ändern.

Bis dahin hat sich aber noch mal etwas getan:

Amiga-Tastatur ist drin und mit dem Amiga 500 getestet. Einen 2000 habe ich nicht, weshalb ich dessen Reset-Prozedur (anders als beim 500er) nicht testen kann. Tandy 1000 Tastatur ist drin, aber ungetestet (USB-Adaption von Adrian's Digital Basement PS/2 to Tandy) und die PS/2 Maus gibt auch erste Lebenszeichen von sich.

Zur Info zum Amiga: Der Reset wird bei der Tastenkombination Ctrl+Amiga+Amiga nicht vom Rechner, sondern vom Tastaturcontroller ausgelöst. Beim A500 wird einfach die Reset-Leitung Low gezogen. Beim A2000 schickt die Tastatur einen Reset Warning Scancode, wird dieser wird die eigentliche Reset-Prozedur eingeleitet. Dann kommt noch eine Reset Warning mit einem weiteren Handshake und bis zu 10 Sekunden Wartezeit und nach Bestätigung oder 10 Sekunden Wartezeit wird Clock für 500ms auf Low gezogen, was in einem kleinen Chip einen Timer auslöst, der dann die Reset-Leitung triggert. Prinzip verstanden und implementiert, aber halt für mich nicht testbar. Ansonsten sind A500 und A2000 identisch bei der Tastatur.

Tatsächlich startet bei der PS/2 Maus ein alter Logitech-Treiber problemlos und gibt auch korrekte Mausbewegungen zurück, Cutemouse und Windows verweigern irgendwie noch den Dienst. Ich vergleiche das immer wieder mit der ps2dev Library, die stellenweise Pate stand, aber nicht 1:1 übernommen werden konnte, und finde den Fehler nicht.

Tatsächlich überlege ich mir, nach erfolgreicher ADB-Implementierung das Gerät schon mal auf ein Early Adopter Publikum loszulassen, egal, ob AT-Tastatur und PS/2-Maus teilweise oder komplett funktionieren. Der Rest geht ja wunderbar. Tatsächlich dachte ich bei den Early Adopters an Kanalspenden für entwicklungsfreudige Youtuber wie Adrian Black himself (da er mich ja auch mit dem PS/2 to Tandy ein wenig inspiriert und mit etwas Starthilfe-Quellcode versorgt hat) oder Necroware, sowie eine Veröffentlichung auf Github. Vielleicht treibt das die Fehlerbehebung bei AT/PS/2 voran, falls ich die kleinen Fehler bis dahin nicht selbst gefunden habe.

Aber alles in allem: Analog- und DIgitaljoystick laufen, serielle und Amiga/Atari Maus laufen (mittlerweile auch seriell im 3 Button Logitech-Modus), XT- und Amiga-Tastatur laufen, Tandy Tastatur läuft hoffentlich, AT-Tastatur läuft, inklusive Typematic Rate Änderung, aber mit kleineren Problemen beim Setzen der LEDs, PS/2 Maus gibt Lebenszeichen von sich, ist aber noch nicht Bereit für die Praxis und ADB fehlt noch. Alles in allem recht rund, würde ich sagen.

Die neue Bordrevision ist seit gestern auch da, mit behobenem Fehler am ADB-Port, Pulldown-Widerständen für die Input-Pins von Tastatur, PS/2 und ADB 5V, mit neuen Plätzen für die LEDs und deren Vorwiderstand und etwas geweiteten Pins für den Tastatur-Stecker (der passt jetzt).

Der Mac lässt sich per Tastatur einschalten (ist ja auch keine Rocket Science, man schaltet den ADB Power Pin auf Low, wenn die als Power-Taste definierte Taste gedrückt wird und setzt ihn wieder High, wenn die Taste gelöst wird) und redet auch schon mit mir. Ich weiß nur nicht, was ich darauf antworten soll. Aber: Das zeigt, dass ich bei den Timings schon mal gar nicht so falsch liege.

Anbei noch mal ein paar aktuelle Fotos, auch einmal mit einem anderen Ansatz für das Front Panel (transparente Schrift mit weißem Vordergrund und transparenter Hintergrund mit weißer Schrift - letzteres finde ich gar nicht so schlimm, wie ich erwartet habe, da sich das Licht doch gut im Muster des 3D-Drucks bricht und verteilt, aber es ist schon etwas ungleichmäßig und wie ich finde, auch etwas drüber)
Dateianhänge
IMG_20220424_104727_klein.jpg
IMG_20220424_104727_klein.jpg (169.39 KiB) 4744 mal betrachtet
IMG_20220424_151226_klein.jpg
IMG_20220424_151226_klein.jpg (161.87 KiB) 4744 mal betrachtet
IMG_20220424_145842_klein.jpg
IMG_20220424_145842_klein.jpg (157.64 KiB) 4744 mal betrachtet
Arbeitspferde: Xeon E5-2683v3 und Q6600

Retro:
P2-450
Commodore PC20-II/Tandy Sound
286/ET3000/Aztech NX-II
Amiga 500/Gotek/Vortex AT-once Plus 286
Pentium 166/FAST Video Machine

Projekt-PCs: C64, Dual Pentium MMX 233, 486 VLB, 486 PCI, K6, Athlon 64
Projekte: USB RetroArduInput
Physikant
Solitärspieler
Beiträge: 21
Registriert: Mo 14. Apr 2014, 21:58

Re: Projektidee "USB RetroArduInput"

Beitrag von Physikant »

Hey,
habe gerade einen Thread mit einem ähnlichen Problem wie du erstellt und dann diesen hier gefunden.
Spannendes Projekt! Wenns dich interessiert, könnte ich mich beteiligen.
Mich schmerzt vor allem, dass die Logitech-USB-Maus nicht läuft, das hat auch der BlackBox-Adapter als Problem. Da wäre mal Debugging angesagt!
Zudem würde ich mich anbieten, eine kompakte Version zu layouten, die nicht ein großes Schweizer Taschenmesser der HID-Welt ist, sondern nur das in unseren Hobbybereichen eher übliche USB-PS/2-Problem abdeckt, allerdings dafür eben kleiner als ein Arduino-Modul, so dass es nur ein kleines Kästchen ist, das man leicht irgendwo verstecken kann.

Was denkst du?

Viele Grüße,
Niko
Benutzeravatar
Dark_Lord
CONFIG.SYS-Autor
Beiträge: 261
Registriert: So 25. Mai 2008, 19:44
Wohnort: Nähe Köln
Kontaktdaten:

Re: Projektidee "USB RetroArduInput"

Beitrag von Dark_Lord »

Hi Niko,

ich würde mich melden, wenn ich wieder aktiv Fahrt aufnehme. Gerade ist mir das Wetter zu gut, sodass der Rest des Tages, der nach viel Arbeit auf der Arbeit noch übrig ist, anders verbracht wird. Letzter Stand sind verbleibende auszumerzende Kleinigkeiten bei PS/2 (Maus und Tastatur, beides) sowie ein noch zu implementierendes ADB, wo ich aber auch schon so weit bin, dass ich Kommandos von meinem PowerMac kriege, die auch Sinn ergeben. Muss nur noch sinnvoll antworten, aber holla die Waldfee, wer das Protokoll ausgearbeitet hat, war entweder ein Genie oder völlig wahnsinnig.

Ich würde dieses Projekt aufgrund des fortgeschrittenen Status noch fertigstellen. Weiter gehen mit dem Arduino ergibt keinen Sinn. Warum? Der Pi kann es besser und die Ausgabe-Codes sollten sich relativ leicht portieren lassen. Mit dem Pi funktionieren halt USB-Geräte besser, und es gibt ja auch schon ein ähnliches Projekt auf Pi-Basis namens USB4VC. Mit dem Pi könnte man im Zweifelsfall sogar eine Retro-KVM oder gar Retro-KVJAM (Keyboard Video Joystick Audio Mouse) über IP draus machen, wenn man richtig eskaliert.

Ich würde aber aufgrund des anderen Ansatzes durchziehen, zumindest bis ADB läuft (PS/2, wenn ich nicht doch noch einen Geistesblitz habe, lasse ich die Community debuggen, ich bin mit meinem Latein am Ende) und dann damit rausgehen, wie ursprünglich auch angedacht zum Materialpreis an jeden, den es interessiert (allerdings dann mit einem SLA-Druck-Gehäuse aus China, für jeden mehrere Tage an den FDM-Teilen drucken, und am Besten noch mit Mehrfarbdruck mit Layerwechsel, wäre etwas drüber).

Aber: XT-Tastatur - Check. AT/PS/2-Tastatur - Ziemlich check - Tandy Tastatur - Hoffentlich check, kann ich nicht testen - Amiga-Tastatur - Check - RS232 Maus - Check - Amiga/Atari Maus - Check - PS/2 Maus - Na ja sowas wie check - C64 JoyMouse - Check (keine Proportional Maus) - Commodore/Atari-Joystick - Check - Analog-Joystick - Check - ADB - Kein Kommentar ;-)
So viele Protokolle bietet der USB4VC nicht, aber was nicht ist, kann noch werden.
Arbeitspferde: Xeon E5-2683v3 und Q6600

Retro:
P2-450
Commodore PC20-II/Tandy Sound
286/ET3000/Aztech NX-II
Amiga 500/Gotek/Vortex AT-once Plus 286
Pentium 166/FAST Video Machine

Projekt-PCs: C64, Dual Pentium MMX 233, 486 VLB, 486 PCI, K6, Athlon 64
Projekte: USB RetroArduInput
Physikant
Solitärspieler
Beiträge: 21
Registriert: Mo 14. Apr 2014, 21:58

Re: Projektidee "USB RetroArduInput"

Beitrag von Physikant »

Hey,

natürlich habe ich Geduld. Aber ein Umstieg auf das Pi ist für mich der falsche Weg!

mein Problem das ich mit all diesen Projekten habe, ist das Format. Im Prinzip ist das Thema reine Software; bis auf einen Microcontroller + Peripherie und den Buchsen müsste auf einem solchen Gerät nicht mehr drauf sein. Ein Adapter USB -> PS/2 oder ähnliches müsste also eigentlich nur unwesentlich größer sein als der PS/2-Stecker selbst. Stattdessen legen aber all diese Projekte wert darauf, die Allround-Lösung zu präsentieren für absolut jedes Gerät. Ich kenne diese Form des Feature Creep, ich leide selbst ständig darunter. Dennoch führt das zu großen, unhandlichen Boxen, die man irgendwo unterbringen muss und von der man 90% nicht nutzt. Das macht die Sache nicht nur wesentlich teurer, sondern halt auch unansehnlich, da man nun halt noch einen Platz für die Kiste auf seinem Tisch benötigt, die unwesentlich mehr als ein Adapterkabel darstellt.
Nicht jeder ist Breitband-Enthusiast mit diversen Retro-Systemen mit allen möglichen Input-Formaten, die er alle gleichzeitig bedienen können will. Und für Leute wie mich (bin ich da sehr ungewöhnlich?) die einfach nur einen MS-Dos-PC neben ihrem Hauptrechner stehen haben und sonst nichts, ist es einfach Overkill. Du hast dir jetzt schon die Mühe gemacht, Software zu schreiben, die diese Aufgabe bewältigt. Ich könnte das Ganze auf ein kleines Board runterverkleinern mit 2x USB und 2x PS/2, quasi das Gleiche wie der BlackBox-Adapter. Nur dass es dank deiner Software diesmal zuverlässig funktioniert! Wenn du das nicht möchtest, muss ich halt nochmal bei 0 anfangen und die selbe Software erneut entwickeln.
Was denkst du ? :)

Viele Grüße,
Niko
Benutzeravatar
Dark_Lord
CONFIG.SYS-Autor
Beiträge: 261
Registriert: So 25. Mai 2008, 19:44
Wohnort: Nähe Köln
Kontaktdaten:

Re: Projektidee "USB RetroArduInput"

Beitrag von Dark_Lord »

Vertu dich mal nicht... Die Lookup-Table, alternativ unzählige Ausnahmen, erzeugen schon etwas Code-Gewusel. Damit ist man schon mit einem recht mächtigen Microcontroller unterwegs, wir reden also auf jeden Fall über einen Mega1280, tendenziell eher über einen Mega2560, den ich verwende. Das Ganze auf Größe des Arduinos selbst einzudampfen, ist das Einfachste überhaupt, modulare Stacks zu bauen sollte auch möglich sein, ich sehe die Limitierung eher im USB Host Shield. Solange das nicht mit Gaming-Eingabegeräten reden kann, ist es nur semi-interessant. Deshalb sage ich ja, ich ziehe durch, danach können andere damit machen, was sie wollen, gerne auch eindampfen.

Und da Pi Zero oder ein anderes kleines Modell nicht so viel mehr kosten, als ein Mega2560, ein Leightweight-Linux aber vermutlich deutlich besser mit lustig blinkenden Eingabegeräten umgehen kann, halte ich das für die bessere Plattform.
Arbeitspferde: Xeon E5-2683v3 und Q6600

Retro:
P2-450
Commodore PC20-II/Tandy Sound
286/ET3000/Aztech NX-II
Amiga 500/Gotek/Vortex AT-once Plus 286
Pentium 166/FAST Video Machine

Projekt-PCs: C64, Dual Pentium MMX 233, 486 VLB, 486 PCI, K6, Athlon 64
Projekte: USB RetroArduInput
Benutzeravatar
unglaublich
DOS-Guru
Beiträge: 870
Registriert: Do 4. Sep 2014, 19:18
Wohnort: Mittelfranken

Re: Projektidee "USB RetroArduInput"

Beitrag von unglaublich »

Dark_Lord hat geschrieben: Fr 15. Jul 2022, 22:31 Vertu dich mal nicht... Die Lookup-Table, alternativ unzählige Ausnahmen, erzeugen schon etwas Code-Gewusel. Damit ist man schon mit einem recht mächtigen Microcontroller unterwegs, wir reden also auf jeden Fall über einen Mega1280, tendenziell eher über einen Mega2560, den ich verwende. Das Ganze auf Größe des Arduinos selbst einzudampfen, ist das Einfachste überhaupt, modulare Stacks zu bauen sollte auch möglich sein, ich sehe die Limitierung eher im USB Host Shield. Solange das nicht mit Gaming-Eingabegeräten reden kann, ist es nur semi-interessant. Deshalb sage ich ja, ich ziehe durch, danach können andere damit machen, was sie wollen, gerne auch eindampfen.

Und da Pi Zero oder ein anderes kleines Modell nicht so viel mehr kosten, als ein Mega2560, ein Leightweight-Linux aber vermutlich deutlich besser mit lustig blinkenden Eingabegeräten umgehen kann, halte ich das für die bessere Plattform.
... würde das - ohne lustig blinkendes LINUX ;-) auch auf dem Raspberry Pico gehen ?

enjoyIT :like:

ps: hab in dem Bereich nicht wirklich Ahnung / Erfahrung
Physikant
Solitärspieler
Beiträge: 21
Registriert: Mo 14. Apr 2014, 21:58

Re: Projektidee "USB RetroArduInput"

Beitrag von Physikant »

Keine Sorge, ich unterschätze das Thema nicht. Ich vermute, Systeme ohne Echtzeit, wie etwa der Raspberry Pi, sind eher unpraktisch, wenn man stabile, kurze Latenzzeiten einhalten möchte.
Ich dachte eher an einen Arm Cortex-M, etwa den Atmel/Microchip SAMD21. Der findet sich zum Testen auch auf dem Arduino Zero und vor allem: er hat das USB-Host-Interface integriert. Er hat etwas weniger Flash als der mega2560, aber ist ihm an sonsten komplett überlegen. Softwaremäßig Erfahrung kann ich mit der AVR-Architektur, SAMD und SAME70 mitbringen sowie STM32U5. Bisher aber meistens direkt auf den Registern, Arduino und ASF habe ich bislang meistens umgangen.
@unglaublich Klar geht das auch auf nem Pico. Da habe ich auch schon dran gedacht. Allerdings: es ist eine völlig neue Entwicklung. Ein Linux-Tool zu schreiben, das HID-Eingaben in ein anderes Protokoll übersetzt und auf den IOs ausgibt, ist eine völlig andere Entwicklung zu dem, was Dark Lord bisher auf dem mega2560 gemacht hat. Da fängt man - mal abgesehen vom know-how, nochmal größtenteils von neu an.
Benutzeravatar
Dark_Lord
CONFIG.SYS-Autor
Beiträge: 261
Registriert: So 25. Mai 2008, 19:44
Wohnort: Nähe Köln
Kontaktdaten:

Re: Projektidee "USB RetroArduInput"

Beitrag von Dark_Lord »

@Physikant, ich weiß nicht, ob du die letzten Tage inaktiv warst (ist ja auch Urlaubszeit) oder den kleinen Böppel für Privatnachrichten nicht gesehen hast... Falls du anwesend bist, guck mal in selbige rein.
Arbeitspferde: Xeon E5-2683v3 und Q6600

Retro:
P2-450
Commodore PC20-II/Tandy Sound
286/ET3000/Aztech NX-II
Amiga 500/Gotek/Vortex AT-once Plus 286
Pentium 166/FAST Video Machine

Projekt-PCs: C64, Dual Pentium MMX 233, 486 VLB, 486 PCI, K6, Athlon 64
Projekte: USB RetroArduInput
Physikant
Solitärspieler
Beiträge: 21
Registriert: Mo 14. Apr 2014, 21:58

Re: Projektidee "USB RetroArduInput"

Beitrag von Physikant »

Sorry, hab ich echt übersehen :)
Benutzeravatar
Dark_Lord
CONFIG.SYS-Autor
Beiträge: 261
Registriert: So 25. Mai 2008, 19:44
Wohnort: Nähe Köln
Kontaktdaten:

Re: Projektidee "USB RetroArduInput"

Beitrag von Dark_Lord »

Vor einigen Wochen habe ich schon mal alles zum Projekt auf Github hochgeladen: https://github.com/RetroFuturisticEngin ... oARDUInput

Dort finden sich nun der Arduino-Sketch, FreeCAD-Projekt und daraus generierte STLs für das Gehäuse, KiCAD Projekt und daraus generierte Gerber-Files für das PCB und die Dokumentation als Word und PDF.

Am Entwicklungsstand des Sketches hat sich aus Zeitgründen nichts geändert, eigentlich funktioniert alles, außer vereinzelte Probleme mit den LEDs bei PS/2 bzw. AT Tastatur, der PS/2 Maus wenn man mal von dem einen funktionierenden Logitech-Treiber absieht und ADB, das schlicht und ergreifend noch nicht fertig ist (ADB-Kommandos kommen rein, aber die Antworten scheinen nicht die richtigen zu sein).

Ein Youtube-Video dazu folgt noch, vermutlich nach meinem Urlaub nächste und übernächste Woche, wo ich noch ein paar Tage zuhause habe, bevor es wieder zur Arbeit geht.

Mein Plan ist erst mal, das Ganze ans Laufen zu bekommen und die letzten Fehler zu eliminieren. Danach folgt schon die Idee für Iteration 2: Modularisierung und evtl. Migration auf eine bessere Plattform wie einen Pi (die Output-Module ließen sich ja mit PiDuino relativ gut portieren, die USB-Eingabegerät-Unterstützung ist auf einem Pi ja ungleich besser) oder Arduino Due (der schon nativ USB OTG, also einen USB-On-The-Go Host auf dem Board hat ohne Host Shield, wo aber auch viel Anpassungs-Arbeit für den USB-Teil nötig wäre), evtl. mit modularen PCBs in einem Computer-Style Gehäuse wo man die Module, die man braucht sowie evtl. gar den Mega2560+USB-Host-Shield oder einen Due oder Pi einsetzen kann. Aber das ist Zukunftsmusik, erst müssen PS/2 und ADB auf der aktuellen Version fehlerfrei laufen.

PS: Physikant, ich hatte dir vor ein paar Wochen schon eine Mail geschickt, Antwort kam bisher keine.
Arbeitspferde: Xeon E5-2683v3 und Q6600

Retro:
P2-450
Commodore PC20-II/Tandy Sound
286/ET3000/Aztech NX-II
Amiga 500/Gotek/Vortex AT-once Plus 286
Pentium 166/FAST Video Machine

Projekt-PCs: C64, Dual Pentium MMX 233, 486 VLB, 486 PCI, K6, Athlon 64
Projekte: USB RetroArduInput
Benutzeravatar
Dark_Lord
CONFIG.SYS-Autor
Beiträge: 261
Registriert: So 25. Mai 2008, 19:44
Wohnort: Nähe Köln
Kontaktdaten:

Re: Projektidee "USB RetroArduInput"

Beitrag von Dark_Lord »

​Der RetroARDUInput hat nun auch ein Vorstellungsvideo auf Youtube

Auf Deutsch
https://youtu.be/oYaVeMx38eg​

Auf Englisch
https://youtu.be/3gGWc7fqXZA
Arbeitspferde: Xeon E5-2683v3 und Q6600

Retro:
P2-450
Commodore PC20-II/Tandy Sound
286/ET3000/Aztech NX-II
Amiga 500/Gotek/Vortex AT-once Plus 286
Pentium 166/FAST Video Machine

Projekt-PCs: C64, Dual Pentium MMX 233, 486 VLB, 486 PCI, K6, Athlon 64
Projekte: USB RetroArduInput
Antworten