Beiträge von Kuhrator

    Lässt sich der Auswurfhebel denn dann rumlegen und das Medium kommt nicht raus oder ist der Hebel schon fest?

    Sorry, habe deine Antwort uebersehen, vielen Dank. Hebel lies sich bewegen, aber durch die fehlende Schraube konnte die Magnetkraft zwischen Spindelmotor und Medium nicht ueberwunden werden. Jetzt scheint es wieder gut zu funktionieren - hoffe die Schraube loest sich nicht wieder, ansonsten werde ich da wohl etwas Lack dranmachen muessen...

    Hi,


    habe mir fuer meine USB SCSI Bastelei ein SQ3270 besorgt. Da war noch ein Medium drin, und der Grund dafuer: Der Auswurf funktioniert nicht. Wenn man die Eject Taste drueckt, stoppt der Motor, der Auswurfhebel wuerd mit dem typischen Klacken freigegeben, allerdings bekommt man das Medium nicht raus. Mir scheint, entweder der Spindelmotor oder das Gegenstueck an der Kassette ist magnetisch. Wenn man die Kassette anhebt (Was freilich nur demontiert geht), kann man den Spindelmotor von der Kassette loesen, und bekommt das Medium raus.


    Hat jemand eine Ahnung, ob das so gedacht ist?


    Habe leider nur ein Medium, deshalb kann ich nicht testen, ob das mit einem anderem auch so ist.

    Ich sehe das bei mir auch eher als langfristiges Projekt. ;)

    Das ist es - ich habe bei mir vorhin noch ein paar Haenger unter Linux gesehen. Bis man alle Bugs raus hat, vergeht vermutlich noch etwas Zeit. Falls das jemand nachbaut, seid euch im klaren, dass das alles sehr experimental und schnell zusammengestrickt ist. Also bitte keine Beschwerden falls es mal klemmt :xmas:

    Windows laeuft jetzt auch mit UAS - Das es nicht funktioniert hat, lag am fehlenden BOS Descriptor, und daran, das Windows das 'REPORT LUNS' SCSI Kommando unbedingt voraussetzt - das kennen die ganzen alten SCSI Devices aber nicht. Ich habe das jetzt in emuliert, und damit ist Windows zufrieden.


    Man wuerde ja meinen, das Bitbanging SCSI so langsam ist, das es eh keinen Unterschied macht, ob man das alte Bulk Mass Storage Protocol oder USB Attached SCSI verwendet. Macht es aber, mit dem alten Protokoll schaffe ich ~2MB schreiben, mit UAS sind es ~3.5MB, also schon einiges mehr.

    Also Arduino-IDE installiert, aber über Komandozeile compiliert und geflasht? Vielleicht könntest du nochmal eine kurze Mini-Anleitung machen. :)

    Also was man installieren muss und wie man dann compiliert und flasht.

    Ok, kann ich machen, aber vermutlich nicht mehr diese Woche. Vielleicht am WE.

    Den Schaltplan kann ich noch in das Repository reinpacken, das ist kein Problem. Was meinst du mit 'evtl. mit Bustreibern'? Ich habe die 74F06 als Bustreiber drauf, oder meinst du einen richtigen SCSI Bustreiber chip?

    Du hattest ja oben geschrieben, dass dir nicht gefällt, dass der SCSI-Bus direkt am Teensy hängt.

    Ach sorry - da ging es um zusätzliche Widerstände und nicht um Bustreiber - hatte ich verwechselt.


    Wolltest du die noch einbauen?

    ich denke das ich irgendwann nochmal eine zweite Revision mache, in der die mit drin sind - ich will noch eine Version haben die man direkt auf die Platte stecken kann, so wie das auch bei den USB SATA Adaptern ist. Das dauert aber noch, die Version jetzt laeuft zumindestens so gut, das ich mich erstmal auf die Software konzentrieren will...

    Noch ne Frage: Kann man das Projekt einfach mit der Arduino-IDE auf den Teensy laden?

    Ich habe das ohne Arduino-IDE gemacht. Ich musste nur ARDUINOPATH auf das Verzeichnis setzen, in dem Arduino installiert ist, und dann reicht ein 'make' im teensy4 Pfad des geclonten Repository. Das startet dann auch automatisch das Flashen des Teensy.

    Den Schaltplan kann ich noch in das Repository reinpacken, das ist kein Problem. Was meinst du mit 'evtl. mit Bustreibern'? Ich habe die 74F06 als Bustreiber drauf, oder meinst du einen richtigen SCSI Bustreiber chip?

    Danke. Ich mach jetzt erstmal mit SCSI weiter, und schaue mir ACSI danach an. Ich denke fuer so ein Projekt macht es aber sinn eine extra Platine zu machen. Und schon einmal SUBD19 Buchsen aufzutreiben ;)


    Das UAS mit Windows nicht geht, liegt am fehlenden BOS Descriptor. Ich ziehe mich jetzt erstmal mit der USB 3.1 Spezifikation zurueck :)

    Lesen/Schreiben funktioniert sowohl unter Linux als auch Windows. Die Performance ist fuer SCSI Verhaeltnisse bescheiden, ich komme mit der Maxtor auf ~3MB/s. Fuer die alten Platten reicht mir das aber. Als naechste muss ich jetzt erstmal den Code noch aufraeumen, es gibt da noch einige Baustellen, die im Moment nur schnell "reingebastelt" wurden, zum Beispiel, wie UAS Tags verwaltet werden.


    Von ACSI habe ich ueberhaupt keine Ahnung - hast du einen Link, was die Unterschiede sind? Ich habe online da jetzt auf die Schnelle nichts gefunden, habe aber auch nicht lange gesucht. Achja, und wenn man sowas machen will, muesste mir jemand so eine Platte zur Verfuegung stellen, ich habe ueberhaupt nix von Atari.:S

    Lustig ist auch, das die Fujitsu beim hochfahren ihren Product String aendert:


    Jun 28 17:40:42 x1 kernel: [11638.920559] scsi 1:0:0:0: Direct-Access FUJITSU NOT READY 0020 PQ: 0 ANSI: 2

    Jun 28 17:40:44 x1 kernel: [11640.788316] scsi 1:0:0:0: Direct-Access FUJITSU NOT READY 0020 PQ: 0 ANSI: 2

    Jun 28 17:40:55 x1 kernel: [11652.032138] scsi 1:0:0:0: Direct-Access FUJITSU M2266S-512 0020 PQ: 0 ANSI: 2

    Ich habe heute Abend mal Disconnect und Queue Tags eingebaut. Damit laeuft gerade mein MO Laufwerk deutlich ruhiger. Mit Disconnect koennen mehrere Befehle an das Laufwerk geschickt werden, waehrend ohne Disconnect immer gewartet werden muss, bis das Laufwerk fertig mit dem aktuellen Request ist.


    Ich vermute, dass in dem Fall das MO Laufwerk die Requests intern erstmal sortiert, damit es die in einem 'Durchgang' abarbeiten muss, und der Laser nicht staendig hin- und herfahren muss.


    Ich muss den Code dafuer die naechsten Tage mal noch etwas aufraeumen und dann zu github pushen.


    Die SCSI ID wird jetzt auch automatisch gesucht, die muss man nicht mehr im Sourcecode anpassen.


    Ich habe damit mal einige Laufwerke durchgetestet:


    Iomega ZIP 100

    IOMEGA Lasersafe MO

    Quantum Prodrive

    Fujitsu M2266-512 (5,25 FH Disk)

    Teac MT-2ST (yeah, das erste Tape Laufwerk)


    Synchronuous Transfer Mode ist noch nicht drin, bin mir auch nicht sicher, ob das funktioniert. Eigentlich braeuchte man dafuer einen Hardware FIFO. Extra Hardware wollte ich aber nicht. Mit asynchronen Mode komme ich mit ein paar Optimierungen auf ~3MB/s, um mal eine alte MO/ZIP oder Festplatte zu schreiben/lesen reicht das. Eine 300GB SCSI Platte moechte man damit eher nicht fuellen ;)


    Das nur mal als kleines Update.

    Ah, in der IDENTIFY Message gibt es ein 'DiscPriv' Bit, das sagt ob disconnection erlaubt ist. Das werde ich wohl mal setzen, und mich freuen das nichts mehr funktioniert, da Relesection noch nicht implementiert ist :ätsch:

    SCSI Reselection habe ich auch noch nicht implementiert - das machen meine Devices nicht. Werde mal Specs lesen, ob ich den Support dafuer 'announcen' muss, oder ob meine Devices einfach zu alt sind...

    Hmm, wenn ich das richtig sehe, kann man ueber UAS auch nur ein SCSI device mit mehren LUNs haben. Das ist etwas schade, ich haette gerne mehrere IDs ansprechen koennen. Und IDs auf UAS LUNs zu mappen duerfte spaetestens mit CD Wechslern schwierig werden...

    Wie versprochen hier eine initiale Version auf github: https://github.com/svenschnelle/teensyscsi/


    Das ist die erste Version, die bei mir mit ein paar Festplatten (Maxtor MXT540S, Conner CP30200) und meinem Sony ROM-S594 ein paar Lese und Schreibzugriffe ueberlebt hat. Die interessanten Files sind scsi.c und usb.c, der Rest ist weitgehend unveraendert.


    Im Moment funktioniert das nur unter Linux, Windows mag damit noch gar nichts anfangen. Das kann zum einen daran liegen, das noch kein Mass Storage Mode unterstuetzt wird, oder USB SET_CONFIGURATION/SET_INTERFACE noch nicht korrekt implementiert ist.


    Ich hoffe da noch ein paar Fortschritte in den naechsten Wochen zu machen, damit das ganze etwas benutzbarer wird. Im Moment ist die SCSI ID z.B. noch hardkodiert ganz am Ende im Source Code ;)

    Hier schonmal ein Foto der Hardware. Eine Ladung unbestueckter Platinen habe ich noch uebrig. Das einzige was mir bei der Version nicht gefaellt, ist das die SCSI Pins direkt am Teensy haengen. Da wuerde ich bei einer zweiten Version evtl. ein paar Widerstaende dazwischenklemmen. Die haengen ja nur zum lesen direkt am Teensy, getrieben werden die ueber die 74F06, da der Teensy die dazu notwendigen Stromstaerken nicht schafft.

    Hi, wie schon im 'Wer bastelt gerade an was' Thread geschrieben, bin ich gerade dabei, einen USB-SCSI Adapter zu entwickeln.


    Mein Vorstellung/Wunschliste sieht im Moment so aus:


    - Keine Verwendung von schwer zu beschaffenden bzw. seltenen Bauteilen

    - Unterstuetzung von UAS (USB Attached SCSI), bei gleichzeitiger Unterstuetzung des alten Mass storage mode fuer aeltere Betriebssysteme

    - Wenn moeglich, Unterstuetzung mehrer SCSI IDs auf dem Bus

    - Spaeter evtl. Device Mode, mit SD Karte, oder ueber USB, um das ganze so wie HPDrive verwenden zu koennen


    Meine erste Hardwareversion sieht jetzt so aus:


    - Teensy 4.1 als Controller. Kostenpunkt um die 30 EUR. Bietet USB 2.0 HS, ARMv7 mit 600MHz CPU Takt und 1MB RAM. Die GPIO Pins sollen wohl mit bis zu 150MHz getoggelt werden koennen, was auf jeden Fall schnell genug fuer das bei uns verbreitetete 8 Bit SCSI ist.

    - 3x 74F06 als Treiber fuer den SCSI Bus

    - UCC5617 als aktiver Terminator, wobei man den auch unbestueckt lassen kann, wenn man entweder ein sehr kurzes Kabel zum Laufwerk mit interner Terminierung hat, oder andersweitig fuer Terminierung sorgt.


    Erste Tests mit einer voellig unoptimierten Firmware habe 1.3MB/s mit meinem MO Laufwerk ergeben. Je nach Medium kann es aber auch sein, das mein MO Laufwerk da einfach nicht schneller kann. Genauer habe ich das noch nicht untersucht, da das meine erste Firmware war, die ueberhaupt soweit funktioniert hat.


    Die Firmware basiert auf der Teensyduino Firmware, allerdings mit stark modifizierten USB Teil, um ihn besser auf SCSI anpassen zu koennen.


    Ich werde in den naechsten Tag mal versuchen die Firmware und Schaltplan/Platinenlayout bei github hochzuladen, und hier ueber den Forstschritt berichten.

    Wuerde mich mal interessieren, wie schnell das ist. Bastel ja selber gerade an einer SCSI Softwareimplementierung. Ich nehmen an, das BlueSCSI kann nur Target mode? Aber vielleicht schau ich einfach mal selber in die Source, ist wohl GPL :)