(ATAPI)- Not supported via USB 3.0 UASP ?? Asmedia 1153e: Workaround (below) =>Update 06/11/2018

Discussion in 'General Chat' started by theosch, Apr 30, 2018.

  1. theosch

    theosch Well-Known Member

    Hello,

    I'd like to use my few SATA-Optical Disc Drives externally, preferably with two different connection options: USB 3.0 + eSATA

    There are as good as no 5.25 inch cases for ODDs around with USB + eSATA ,except only one 5.25 inch case Raidsonic product with buggy Prolific PL2773 chip (enforcing power safe mode over eSATA, PL2773 firmware update and Sleep disabling options via MP-Tool didn't help etc.)

    So I've bought an 3.5 inch SATA-HDD-dock, with USB 3.0-B (with UASP) & eSATA on external side:
    Orico 6518SUS3 =>Norelys NS1066/Ns1068 chip

    I removed its circuit and did some small tinkering to remove the Orico circuit board from the 3.5 inch case and putting it an 5.25 case and plugging the ODD with a SATA 7pin+15pin Female/[Male] extension cable etc to the SATA-(Female)-Dock of the Orico circuit board:

    amazon.com: "22 Pin SATA Male to Female Left Angle Power and Data Extension Cable - 8 inches"
    https://www.amazon.com/gp/product/B00AT2Y5WS/ref=oh_aui_detailpage_o00_s00?ie=UTF8&psc=1
    ---------------------------------------------------------------

    Interestingly Optical disc drive are not detected via USB when using a USB-attached-SCSI capable firmware (by standard). Tested also with different USB 3.0 cables (in good condition)
    My USB controller (Renesas uPD 720202) supports UASP and using Win 8 which supports UASP.

    A Hard Drive Disc itself is tested working here with UASP firmware and UASP reported running fine in Windows device manager.

    The optical disc drive is only recognized when using a (non)-UASP firmware on Orico 6518SUS3, but finally without UASP it is :)
    Blu-ray playback is choppy via USB though: tested with a properly decrypted BD-iso burnt to a BD-RE.
    Over eSATA playback it runs fluently.
    And always when AnyDVD is on, Blu-ray playback over USB is suddenly smooth, häh?? :ROFLMAO:

    -
    Then I tested another product, which support USB-Attached-SCSI either:
    "Fantec DB-Alu3e-6G" with eSATA + USB-3.0-B with Asmedia ASM1153e chipset.

    Same result with UASP firmware ODD not being detected. Tested all different Asmedia 1153e firmware versions, same result, unfortunately there's not any USB-BOT firmware to find.

    Can anyone confirm that Optical Disc drives are recognized with USB+UASP on any other SATA-USB converter product??

    It looks like that the necessary ATAPI command set for ODDs was (not yet?) standardized over UASP, only together with the older USB-BOT-Protocol ?? ( And on IDE and SATA of course)
    And generally there's rather disappointingly few information about UASP and ATAPI, no hardware site seems to test and talk about this. It is always about SSDs and only about complete SSD-trim support via UASP... :(

    =>On The Raidsonic IB-550StU3S with eSATA+USB 3.0 it just uses USB-BOT (as USB mass storage device), BD-playback not choppy here though, even with USB-BOT, even when AnyDVD off (see further above)

    Still Asmedia 1153e product specification saying s.th. about this, even though ODD still not seen via USB-connection with UASP on a 2nd product, this one with ASM1153E chip:
    {...}
    "Support USB Attached SCSI Protocol Specification Revision 1.0"
    "Support ATA/ATAPI Packet Command Set"
    "Support ATA/ATAPI LBA48 addressing mode"

    --
    One user in the computerbase forum at topic "ASMedia Aktuelle Externe Gehäuse Chip Firmware für 8TB ++" (page 6 , post #104) confirmed his ODDs working with ASM1153e chip with USB-BOT-firmware (Inateck UA1001 USB 3.0 zu SATA Konverter Adapter). Unfortunately there's not any firmware download available for this product from Inateck site to flash on my Fantec product. (VID and PID and device revision do match with my Fantec DB-ALU3e-6G).

    If anyone has more information about why ATAPI and UASP might not play together, and if have an alternative USB-BOT-firmware for ASM1153e chip, that would be very great!! :)
    -----------------------

    Update 05/24/2018:
    Never mind, got the Fantec DB-ALU3e-6G with ASM1153e chip (with some luck) finally working with ODD recognization over USB, with USB-(BOTP)-firmware as anticipated, and eSATA still working (see below); how to connect an ODD to the SATA-female dock-port (see at the top)
    :

    Bought a cheap Inateck UA1001 SATA-USB -HDD-/ODD-Dock, opened its plastic cover, read out its USB-BOT firmware (by attaching an 8-pin-SOIC-clip to the EEPROM +adapter +cable =>in cuircuit ) with an external EEPROM programmer/reader.

    --
    If someone can need this for additional ODD support via USB for his ASM1153/ASM1153e- product, here's the attachement of the EEPROM dump from external programmer:

    ODD compatible USB-(BOT) firmware for ASM1153E bridge chip, not easy to obtain for ASM1153E chip:


    Inateck_UA1001-ASM1153E-VID_174C,_PID_55AA,_Device-Rev_0100_USB-BOTP-FW-EEPROM-FM25F005-Dump.zip

    Keep in mind UASP will no longer be working.
    When you want to reconnect HDD instead of an ODD some time in the future and you want to make use of UASP, you have to reflash with an ASM1153e-UASP-enabled-firmware, there are plenty such versions around ;)
    ---


    The Fantec DB-ALU3E-6G uses an EEPROM from "Fudan" FM25F01 with size of 1 MBit =>(1*1000*1000/8) Bytes =>(1000000/8) Bytes=>125000 Bytes =>125 KiloBytes)
    {maybe it's meant rather 1 mebibit =>1*(1024*1024 Bytes) /8 =1048576 Bytes/8 =>131072 Bytes => ≈131 KiloBytes, not sure}
    Fantec and Nonamed-ASM1153e-device-UASP-firmwares have 60.902 Bytes ≈61 KiloBytes in size.

    The Inateck has an EEPROM chip from "Fudan" FM25F005" with size of 512 KBit =>64 KByte),
    {maybe it's meant rather 512 kibibit=> (512*1024/8) Bytes =524288 Bytes/8 =>65536 Bytes ≈65 KiloBytes, not sure}

    Well the result from extracted firmware .bin-file with programmer/reader from Inateck UA1001 with ASM1153e chip-Non-UASP-firmware was 64 kibibytes =>65.536 Bytes ≈65 KBytes.

    Actually the MiniPro software from programmer does not have that Fudan-FM25F005-EEPROMs in its chip support/selection-list.
    I selected "PM25LQ512B" chip in the software, which should be similar to Fudan" FM25F005 , according to google.

    That in cicuit method worked out more or less fine, it detected reading out the FMF25F005 Chip-ID number, but the MiniPro programmer's software first refused to read out its content.
    After disabling the "Check ID" option it managed to read out the FM25F005 EEPROM's content.

    Actually I read out the EEPROM several times and compared the several dumped files to each other, but it always produces different checksums.
    At least there is ASM105X in the ASCI text in dump correctly, as in software the UA1001 is detected.
    Maybe the PM25LQ512B is not quite fully pin out compatible, and with ignore "Chip ID" with maybe incorrect chip-support setting it can't make accurate reading, not sure.

    Didn't want to desolder the FM25F005 EEPROM from Inateck into a SOP adapter holder and/or buying another more compatible programmer too expensive, in hope for 100% precise readings, so there was nothing else to try out other than just flash that damn dump on the Fantec.

    Then flashed this firmware "Inateck_UA1001_Original-firmware.bin" on the Fantec DB-ALU3e-6G. The Asmedia MPTool flash progressed to 33% stopping shortly with "FAIL" message and then flashing progressed further to 100%.
    After flashing that and repowering the Fantec, the MPTool tells a strange firmware version's date, so other than the firmware date from the source (FM25F005 EEPROM) of the dump.

    It seems to work fine with ODD over USB now, also eSATA still performs well.
    Blu-ray playback is no longer choppy over USB compared to the Orico Norelys chip, thanks to the ASM1153e chip, as good as with Raidsonic IB-550StU3S (that with buggy eSATA-part).:rockingchair:

    No power enforcing power safe mode via eSATA any longer (compared to Raidsonic IB-550StU3S), AnyDVD and reading and burning DVD/BD perfect (USB 3.0+eSATA), correct ODD model number etc passed through. Also Hard Drives still operating via USB and eSATA.
    And it appears to work configuring the ASM1153e chip with MPTool .ini-configuration-file even with that probably (a bit) corrupt dumped firmware ("Update Configure" as "Passed" when flashing)

    -
    The software messages originally told it would use an ASM105X/1053/1153(without E) -bridge, but when viewing the chip on the Inateck UA1001 circuit board it's in fact an ASM1153(E) chip :) !!

    --
    Also tested restoring the orignal UASP-enabled ASM1153E firmware from Fantec on the DB-ALU3e-6G without problems.(y)


    OK will flash that extracted firmware on the other Fantecs for the other ODDs, let's see how it works out in future, if there will be any strange behaviour with some discs ;)

    Update 06/11/2018:
    OK, just was curious, soldered out that EEPROM and made several reading+dumpings with programmer/reader. All checksums to each other are now the same.

    LOL, still in fact buying an Inateck UA1001 and that EEPROM dumping stuff would not have been necessary at all, retried to flash Firmware "141125_21_00_00_ODD.bin" from usbdev.ru. It finally worked flashing this.
    Earlier I hadn't recognize the MPTool changing "customized_string" in the firmware/Mptool-config-ini-file to "1" which then prohibits flashing any firmware, which why I first expected 141125_21_00_00_ODD.bin would be an incompatible firmware. After changing to customized_string=0 it worked flashing, and without any "Fail" complaint compared to Inateck dump, and ODDs are detected as well as with the Inateck firmware from 141126_.
    from usbdev.ru :Asmedia ASMT-2115 Firmware (ASM1153, ASM1153E)
    =>Firmware ASMT-2115: =>141125_21_00_00_ODD.rar - size: 13494 bytes =>141125_21_00_00_ODD.bin - size: 60902 Bytes
     
    Last edited: Jun 11, 2018
  2. goapy

    goapy New Member

    Did you by any chance dump (or take note of) the version of the 1153e firmware in your Fantec DB-Alu3e-6G before you changed it?

    The original shipping firmware in the DB-Alu3e-6G was version 140509_A1_54_01. Later versions (and the version available for download) is 130926_A1_00_00.

    I've been trying to find the original version, 140509_A1_54_01, for awhile now.
     
  3. theosch

    theosch Well-Known Member

    Yes, I took screenshot of the orignal firmware, before flashing anything else over, but it's another version (see further below)

    It would be very useful if the Asmedia-MPtool offered an fw-dump option. :)

    I didn't make a dump of the original firmware with my external programmer (but wouldn't be helpful for you, as other firmware it came with, than you would want, see further below)
    But once had to desolder the Fudan FM25F01 (afaik a 128 KibiByte EEPROM (=1024 KibiBit = 1 MebiBit EEPROM) from the Fantec DB-ALU3-6G, because MPTool no longer had detected the device via USB after a failed flash with wrong settings/firmware.

    Reading firmware from the chip afaik works with In-Circuit-Serial-Programming with an external hadrware programmer (Xgecu/Autoelectric TL866A programmer externally via and a SOIC-test clip/clamp attached to the EEPROM<->DIL/DIP/Zif-socket adapter and or with TL866II Plus via ICSP-Port (externally without desoldering).
    Replacement-chip-setting (for missing Fudan FM25F01) in Tl866A/Tl866II Plus software (Ignore Chip-ID): Chingis PM25LQ010B

    But writing to EEPROM failed with SOIC-test-clamp attached to EEPROM, so had to desolder the EEPROM chip, restore back firmware image, and resolder it back. Then detected again.
    --
    Yes my few Fantec all bought within a time-span since from 2018 and later, and were all delivered with firmware "130926_A1_00_00" (un)fortunately.
    Sry, too bad that not any of my Fantecs were delivered with version "140509_A1_54_01", so I could dump version with my external programmer and attach it here temporarily here for you e.g..

    I've just found those with ( a bit) similar name (bust probably just the name):
    https://www.usbdev.ru/files/asmedia/asmt2115firmware/
    {...}
    140509_A1_82_40.bin <==This one supports SSD-TRIM via SCSI-unmap-commando (via SCSI-ATA-Layer: (via SCSI-ATA-translation)
    {...}


    --
    I've also bought an Inateck UA1001 (also with ASM1153E)
    Afaik it was "141126_E1_82_40" (pretty sure) displayed originall/s.th. very similar (not 100% sure about exact, naming). This fw-version not offered on internet.
    Probably same with some other firmware-versions like that one your Fantec came with.

    Ive dumped its original firmware, but had to desolder chip before, also for to be able to have errorfree-dumping, because in-circuit produced slightly different reading:
    Replacement-chip-setting (for missing Fudan FM25F005 - 64KibiByte EEPROM (512 KibiBit) ) in Tl866A/Tl866II Plus software (Ignore Chip-ID): Chingis PM25LQ512B

    In-Circuit_EEPROM-Dumping_Inateck_UA1001_Original-firmware_1.bin
    (less consitent data after several reading-outs)

    Soldered_out_EEPROM-Dumping_Inateck_UA1001_Original-firmware_1.BIN
    (100% consistent data after several reading-outs

    Warning 1: When flashing this, still wrong fw-version is displayed by MPTool, with both ICSP read-out (incositent data, a bit VCC-pin power-loss from circuit?), and same with desoldered firmware (maybe the data has changed a bit, probably from the heat when desoldering it out?)

    Warning 2: Asmedia-MPTool brings "failed" when flashing this onto any ASM1153e product's EEPROM, but seems still to work (and USB-BOT-firmware - without UASP):

    --
    140509_A1_82_40.bin (see usb-dev.ru link above) <==This one supports SSD-TRIM via SCSI-unmap-commando (via SCSI-ATA-Layer: (via SCSI-ATA-translation)
    But I don't get HDD-standby disabled with MPTool (all settings with hdd_standby=0 and standby_timer=11 (=5h) and standby_timer=0 treid), but HDD still going Standby after few minutes (WD Green, HDD's APM disabled with idle3ctl in Debian (deb-package "idle3-tools"), and disabled in Windows-energy-options in Windows-Control-Panel (HDD-standby: setting: Never)), but it still seems the USB bridge's firmware to send the HDD going to standby after few minutes.
     
    Last edited: Aug 22, 2019
  4. coopervid

    coopervid Well-Known Member

    theosch likes this.
  5. theosch

    theosch Well-Known Member

    I'm happy that the JMS USB-SATA adapter you're using works well. :) Mine is too.

    Just out of interest, could you check while you've the JMS-SATA-USB adapter connected via USB (while an SATA ATAPI (O)DD device attached to it(!), if the SATA-USB-adapter + SATA-ATAPI-ODD would be running in USB-Attached-SCSI-mode?
    There's some kind of more or less good reason, why it interests me so much, I'll tell later ;)

    While USB-Bridge with ATAPI-ODD attached, is connected via USB:
    Please open ->Windows device manager (Gerätemanager), and extend the ->storage controller (Speichercontroller) -section

    Then please check that at ->Speichercontroller that there's listed:
    "USB Attached SCSI (UAS) Mass Storage Device"
    ("Per USB angeschlossenes SCSI (UAS)-Massenspeichergerät")

    This is an example, to see how UASP mode looks like, could only show with a hard disc drive, as ODDs, not working/not showing up at all with UASP-firmware. (Don't be irritated because of missing DVD-/CD-ROM-Laufwerke section, because no ODD connected anyway at the moment, and no virtual-drive-software installed)
    Unbenannt2.PNG

    If running in UASP -mode at "Laufwerke" or rather at "DVD-/CD-ROM-Laufwerke" it should show s.th. like this: "ASUS BW-16D1HT SCSI Device" , but not any "USB-Massenspeichergerät" entry in the "USB-Controller"-section (missing).

    (If yours running in USB-BOT-mode, it will list: "ASUS BW-16D1HT USB Device" and then there would be an addional entry, at the "USB-Massenspeichergerät" at "USB-Controller" section in Devicer-Manager.

    If you could post screenshot from ->device manager, with only the Jmicron-SATA-USB-bridge plugged (of course still keyboard+mouse) while an SATA ATAPI ODD is attached to it, showing both the ->"Speichercontroller" section and the ->"DVD-/CD-ROM-Laufwerke" section extended, that would be great, thank you :).

    I'd rather doubt that your JMS-adapter woukd support ATAPI-ODD devices in UASP-mode over USB, rather the slower USB-BULK-Only-Transfer-Protocol like mine and all/most others.

    That would be very interesting to me. So far haven't seen nor heard from any tests with SATA-USB-bridges supporting ATAPI-(O)DD-devices in UASP-mode (=newer+faster), just with USB-BOT-mode (=older+slower) -firmware.
     
    Last edited: Sep 2, 2019
  6. coopervid

    coopervid Well-Known Member

    Hi theosch,

    this is a capture with the JMS enclosure using a Pioneer BD-ROM
    Capture_JMS Enclosure.JPG
     
    theosch likes this.
  7. coopervid

    coopervid Well-Known Member

    theosch,

    same thing with the Sharkoon USB3 Adapter. D300 flashed his friendly drives with that. Never tried that with the JMS enclosure.
    Capture_Sharkoon_Adapter.JPG
     
    theosch likes this.
  8. theosch

    theosch Well-Known Member

    Thx for feedback. :)
    Yes the ASM1153E also works for flashing firmware with e.g. the patched LG/Asus flashers via USB.

    It looks like that your JMS adapter is also using the older USB -BULK-Only-Transfer-Protocol mode, (like mine and most/all others that support ATAPI ODDs)
    --

    The UASP mode is actually better (faster+more effective and afaik has less overhead than the old USB-BOT-mode, it has also better IO-performance than USB-BOT).

    For backward-compatibility UASP capable SATA-USB-bridges of course also can run still in USB-BOT-mode, (but so far seen switching to USB-BOT, only when the USB-Host-Controller driver just uses USB-BOT)

    Afaik USB-BOT also speaks SCSI but it doesn't support some kind of multi-channeling, so it can only work through a commando one by one. With UASP afaik it supports some kind of multiple channeling for SCSI commandos, parallel/queuing etc. E.g. HDD NCQ works with ASM1153e adapter via USB, when I flash an ASM1153e UASP-enabled firmware. But ATAPI ODDs don't work at all.
    When I flash ASM1153E USB-BOT firmware, NCQ is no longer working, but ATAPI ODD does.

    It seems USB-BOT e.g. is worse for "parallel" access when ititializing+opening directories with many files from the disc,
    really really tested quite a bit slower than via the eSATA-port on the enclosure, reproducible.

    E.g. when inserting a disc, until it's ready play Video m2ts file directly from BDMV\STREAM folder, it takes about a minute with disc initialization and opening e.g. a sub-directory directory on a BD-disc, it takes about 10-20 second until all directory files are displayed (USB 3.0 BOT-Mode). Via eSATA it is within 5 seonds max, and via USB the ODD drive sounds making more noise than via SATA/eSATA.

    But at least playback of a BD-disc and especially winding through runs OK, no noticibly delays as with SATA/eSATA directly.

    If the standardization gremium include ATAPI support over SCSI, and the USB-bridge supported that (so as ATAPI over UASP), the ODD drive would probably run similar via USB (in UASP-mode) like with SATA/eSATA.
    Well it seems they have included ATAPI support over SCSI (for USB-BOT-mode) (which uses SCSI like UASP), but not for UASP, weird...
    It looks like ATAPI is not included in the UASP standard at all, otherwise would have encountered some USB-bridge and/or seen some tests about ATAPI device support via USB-UASP-mode.
    It's probably just a software/firmware/driver story:
    Example:

    The Orico 6518SUS just support UASP via USB 3.0/3.1 Superspeed,/Superspeed+,
    on USB 2.0 High Speed ports on mainboard from my older PCs the Orico dock with Norelys chipset switches to USB-BOT-mode, whereas the Asmedia-chipset USB-SATA-bridges runs UASP as well on the USB 2.0 High Speed ports on same older computers.

    So it's probably just a driver/firmware/UASP-standard-issue. If the USB-chipset developer were interested, they probably could easily extend support for ATAPI devices via USB-UASP-mode in the USB-Host-controller driver and in the firmware of the USB-bridges. ;)

    ---
    E.g. you get about 200 MByte/s "only" with a SATA-SSD on a USB 3.0 adapter running in the older USB-BOT-mode .
    With USB 3.0 in UASP-mode measured myself got ca steady 469 MByte/s (sequential) with a SATA-SSD.

    https://de.wikipedia.org/wiki/USB_Attached_SCSI
    https://en.wikipedia.org/wiki/USB_Attached_SCSI
    https://newyear2006.wordpress.com/category/uasp/

    But so far haven't seen USB-bridges supporting ATAPI devices via USB in UASP-mode, only with SSDs and HDDs.

    It might be because ATAPI is already a SCSI-packet command-set and afaik ATAPI runs over ATA, like SCSI-tunneling over ATA.

    Afaik ATAPI was designed to run as an extension of ATA, to expand support of optical disc drives, which had wide spread with SCSI already, it was easier to make ATAPI ODDs (which afaik use SCSI-packet commandos), than native ATA ODDs.

    Afaik as ATAPI was designed to run over ATA, and UASP itself actually is already speaking SCSI, of course it can't work with ATAPI ODDs then, if they don't extend the SCSI standard to run ATAPI over that, and/or the USB bridge missed to include such innovation.

    https://en.wikipedia.org/wiki/SCSI_/_ATA_Translation

    "The standard also provides the ability to control exactly what ATA operations are executed on a target device by defining two new SCSI operation codes:

    • ATA PASS THROUGH (12)
    • ATA PASS THROUGH (16)
    The standard also defines a new data structure returned in the sense data known as the ATA Return Descriptor which contains the ATA taskfile registers.

    Significant additions in SAT-2 are ATAPI translations, NCQ control, persistent reservations, non-volatile cache translation, and ATA security mode translations.[4]

    {...}
    Applications
    SAT is useful for enabling ATA-device-specific commands in a number of scenarios:


    --
    Another reason why ATAPI ODD might not run in UASP mode.
    To support ATAPI ODDs via USB in UASP-mode:
    Afaik the USB-bridge needs to support ATA-passthrough over SCSI, and over that ATA-passthrough goes ATAPI (which (ATAPI) itself afaik is a SCSI-packet-command-set via ATA or ATA-packet-interface).
    Afaik the most/all older SATA-USB-bridges don't support full-ATA-passthrough, afaik for HDD-SMART for example they do, afaik most of ATA-functions are realised via other method (SCSI-ATA-Translation, which afaik translates compatible/similar suitable and similar SCSI commands to ATA-commands, whoch wouldn't need ATA-passthrough method.
    --

    E.g. Support ATA-passthrough command set is explictely listed on ASM2362 spec page (e.g. one of my M.2-nVME-M-Key to USB-UASP adapter-enclosure has that chip).

    http://www.asmedia.com.tw/eng/e_show_products.php?item=196&cate_index=195

    Support BOT and UAS Protocol
    Support unmap command set
    Support ATA passthrough command set
    Support vender specific command set

    -
    But ATA-passthrough command set is not mentioned on ASM1153/E page.
    http://www.asmedia.com.tw/eng/e_show_products.php?cate_index=97&item=133

    ATAPI device support is listed with ASM1153E, but probably only meant for ASM1153/ASM1153E-USB-BOT-mode-firmware)
     
    Last edited: Sep 3, 2019