[Discussion] Firmware for Asmedia Sata 6G Controllers

My system boots 100% fine first time every time on a Samsung 512gb 860 pro using SU-SA 3008 8 port ASM 1061 controller and also a 4 port togglable SU-SA 3004 both using firmware 4.27 AHCI so it must be something particular to that design of the hardware as not all 1061’s are afflicted by this bug.

This is under Windows 7 however and drivers 3.3.3.0. I couldn’t download the firmware 4.30 to test it either as it seems to have been deleted. I’m not worried about bricking the cards as I have a chip programmer.

Here’s a new link with the FW 4.30 valid for 7 days on another host.
https://www.filemail.com/d/hqstefmnpphavqq

If this also does not work, tell me where to upload it.

If you have a programmer, can you read the contents of the flash after flashing the new file and post the flash image here, please?

Thank you!

What’s the device ID of this particular card taken from Device Manager > Hardware ID’s?

I’ve taken a preliminary look at 4.30 compared to 4.27 in HxD and they are very different in contents, but it’s too late in the early hours of morning to start testing or trying anything now. All firmwares of this type are 38,144 bytes as opposed to 128K for 1062. The same as the file you uploaded so I don’t see what difference flashing this and dumping it back would make as it would just be the same thing with extra padding from the flash chip.

I seem to remember some people being limited to 0.951 or 0.954!? on certain cards or maybe it was onboard 32K firmware cards and not add-on cards, I don’t remember the posts because it’s ages since I’ve touched any of this creaky stuff. I’ll do more investigations when I have more time on 4.30, but this could easily be a beta firmware. Most of these cards came originally with 4.20. I’ve never seen a 4.30 in the wild. 4.27 was last I found and I made an equiv IDE mode for it hosted on other forums. It will probably need a corresponding IDE mode one crafting for 4.30 if it works. I’m a bit wary atm since I don’t have any issues. I do have Samsung 860PRO 512gb to perform same tests under same firmware conditions. It’s certainly got me intrigued as I don’t experience the same kind thing with 4.27. But my cards (both asm1061’s) are different layouts to yours. One a toggleable 4 port with multiplex and 8 port card with 4 multiplexers.

In fact it’s easy enough to test out this FW on the toggleable 1061 adapter, since if you make a mess just boot in IDE mode, flip the switch to ahci and flash back the bricking you did. I already made a disk for such purposes. No real need for a CH341a programmer.

It could be an updated firmware for compatibility with Intel 600 series chipsets (the 4.27 isn’t) like they’ve already done so for the ASM 1166 and 1062.

I think the J3 jumper provision on the card is for soldering in pins with berg jumper to select IDE or AHCI mode. As the original advert for the card on amazon states “Supports IDE/AHCI programming interface” yet there is no switch for this visible on the card, so looks like hardwired to AHCI mode without doing your own work to make this.

Some of these type of cards have their own oscillator crystal onboard to generate the reference clocks and don’t take the signal from the motherboard. On those that don’t like yours you might want to disable PCIe spread spectrum clocking if possible and see if this makes a difference to the boot hangs, otherwise the clock jitters around and some drives might not like it. I know certain certain PCIe expansions don’t like it and will randomly start to disconnect stuff.

I was also surprised to see that the expansion card has a new FW version which I couldn’t find anywhere.
That’s why I decided to make the OROM available for others. I have no idea if it’s a beta version or not. I haven’t seen any mention of that.
The FW advertises itself to be version 4.30 and you might be right regarding the hardwired AHCI mode on this expansion card. At initialization it says it’s in AHCI mode.

Nevermind reading the flash after flashing it to the SPI flash on the expansion card, because this is the OROM image like seen in Linux. So if you want to flash it on the SPI flash from the expansion card, you are missing the first 0x100 bytes. These 0x100 bytes are the bytes I was trying to get without unsoldering the SPI flash, so that I can provide the SPI flash image too. I’ll try to read the contents of the SPI flash next year and get back to you, and also with the HW ID info you requested.

In the meantime I tried the bin flashed to my switched to AHCI mode 4 port adapter, but it no longer boots and is unrecognised. I think something wrong with dump. Had to flash back the bricking.

Roms are supposed to be 38,144 bytes but this 38,400 bytes in length I think some header info is missing similar to what you said. I just flashed back to 4.27 again.

I might try buying one of these adapters just to play around with but theres no guarantee I will even recieve firmware 4.30. Even though the card has provisions for IDE/AHCI mode select pins it doesn’t have any more than 1 rom onboard so I think IDE mode is probably impossible anyway unless it’s a stacked SPI chip which is probably unlikely for cheap adapters.

I’ve attached pic below of one of my systems booting with 1061 and Samsung 860 PRO booting on the 4.27 AHCI ROM. I don’t get any hangs or problems…ever. I know that’s not much help but it shows it’s possible. I don’t know where you would start to look for finding the cause of this odd issue with Samsung 860 PRO.

If i could have made 4.30 work I’d have tested it booting on 4.30. If you want to get the full flash it’s going to be have to read into a CH341a and dumped back out.

I may need the missing header of 4.30 for allowing construction of an IDE version of the ROM.

I also get to the point where the Samsung 860 PRO SSD is detected (or a SATA HDD), but the initialization does not finish (the SSD is detected, but it does not return control to the booting process) and the system does not boot.

Here is the HW ID of the expansion card from above (which came with FW 4.30).
The card displays FW “Ver 4.30 AHCI mode” and says “Using PCIE Gen 1”.

PCI\VEN_1B21&DEV_0612&SUBSYS_10601B21&REV_02
PCI\VEN_1B21&DEV_0612&SUBSYS_10601B21
PCI\VEN_1B21&DEV_0612&CC_010601
PCI\VEN_1B21&DEV_0612&CC_0106

And this is the HW ID of the other expansion card, which also has USB 3.0 ports.
The card says “Using PCIE Gen 2”.

PCI\VEN_1B21&DEV_0612&SUBSYS_10601B21&REV_01
PCI\VEN_1B21&DEV_0612&SUBSYS_10601B21
PCI\VEN_1B21&DEV_0612&CC_010601
PCI\VEN_1B21&DEV_0612&CC_0106

Only the revision of the cards is different here, but the “PCIE Gen” version is also different.

@kevsamiga You said just above “I might try buying one of these adapters just to play around with but theres no guarantee I will even recieve firmware 4.30”. Before you do that, check first if the CH341A supports reading/writing the SPI flash from the expansion card, because it’s a Boya Micro 25D40ASTIG flash (BY25D40) and the “106SPI.EXE” file that is normally used to flash in Windows does not detect it.

BTW, which card did you use when you made the test pictured just above with the Samsung 860 PRO SSD?

I’m not sure Boya Micro is detected in neoprogrammer, but I do have an updated chiplist so it might be picked up as a compatible chip. Needs checking out.

I used this one in a GEN2 slot below, but it also works with the 8 port version without issue. the SU-SA 3008. These are both GEN2 cards not GEN3. There are plenty of the 4 port togglable adapters on ebay. The 8 port version with 4 multiplexers is a little more difficult to come by. The bios this came with was 4.21 and was buggy with no boot output (now on 4.27 on both in both IDE and AHCI modes). The toggle one is useful if you mess up your installations/drivers with AHCI cards because you can get back in using IDE mode and fix it. If you use it in a GEN1 x1 slot then you have no better speeds than SATA2 as it’s only PCIe x1 lane. The 3008 card is x4 card.


.

@kevsamiga Can you double-check if the card is SU-SA3004.V2 or the (first version) SU-SA3004, please? I ordered and received a (first version) SU-SA3004 and the behaviour is exactly the same with all the different FW versions. Besides this, it says “Using PCIE Gen 1”. In your picture I see “Using PCIE Gen 2”, so maybe the SU-SA3004.V2 is different in this regard. I also have another expansion card which says “Using PCIE Gen 2”, so PCIE Gen 2 is possible with my motherboard.

Regarding the FW 4.30, I tried to read it with a CH341A programmer without unsoldering the chip, but there’s no connection possible, probably because of the other components present on the expansion card. I’ll try later to unsolder the chip and read it. NeoProgrammer seems to know the Boya Micro BY25D40AS chip.

I was able to read the contents of the SPI flash with the FW version 4.30.

When I try to upload the files here, I get the message “Sorry, new users can not upload attachments.”.

Until I’ll be able to upload the files directly here, here is the ASM1061 FW 4.30 AHCI for expansion cards (SPI flash and OROM images).

https://www.filemail.com/d/vxfrxpvfewubuoe

The link is valid for 7 days.

My version has no version number stamped on it Just SU-SA 3004 markings no V2 its a card from SSU they used to sell them on amazon before they came out with the GEN3 stuff.

Im using the 4.27 ROM on all my 1061 cards both in AHCI and IDE modes. The reason your seing PCI Gen 2 on my screen is because they are ASUS P5Q PRO motherboards with double x16 PCI gen 2 slots (P45 chipset) giving x8 x8 GEN2 split. It’s in the second x16 slot. If I put it in the x1 slots, or the third x4 slot of the P5Q deluxes I would be running in PCIE gen 1 instead, no better than the onboard SATA II.

Of course my GTX 980 is only then running in PCIE gen2 x8 which for all intents and purposes equates to PCIe gen1 x16. I don’t think your problem is a slot issue, the cards work fine in x1 slot also. It’s more likely to be a device conflict of some sort.

If you don’t have a SU-SA3004.V2 version, I guess my “PCIE Gen 1” / “PCIE Gen 2” issue is more related to the number of PCIE lanes the expansion card uses, and not to some device conflict. In my case, the PCIE expansion card that says “PCIE Gen 2” needs at least a PCIE x4 slot, while all the others where I saw “PCIE Gen 1” only need a PCIE x1 slot. Mouting these cards in the PCIE x4 slot makes no difference and I still see “PCIE Gen 1” even in the PCIE x4 slot when I use them.

Were you able to flash the 4.30 FW (see the message just above for the link to it) and make some tests? Any issues or improvements seen?

I was unable to make use of the first 4.30 FW firmware upload. It bricked the adapter forcing me to do a re-program. I haven’t got around to fully trying out the second upload yet. Been busy repairing/soldering other stuff and building other things. It’s only of any use to me if I can make the IDE equivelent, or flashing the toggleable card will just be stuck on an old firmware 4.27 in IDE mode.

I’m assuming but can’t confirm the 4.30 is fixes to allow compatiblity with Intel 600 series chipsets akin to the 1166 and 1062 ones that were already done by asmedia.

*edit

Ok. I have made the equivelent IDE mode rom for 4.30 AHCI FW. I’ll test it all at a later point and make a bootable 4.30 flasher for both variants disk as long as no strangeness encountered along the way.

ide430.zip (21.3 KB)

  • note this will flash an adapter to IDE mode if AHCI previously. Need to do this for SU-SA 3004 anyway as it has toggle switch for both AHCI and IDE modes. You flash the appropriate rom depending what position the switch is in.

A few moments later…

WinImage disk for writing back to floppy with 4.27 & 4.30 versions to program AHCI and IDE modes .bat files.

ASM1061_4.30_WINIMAGE.zip (668.0 KB)

  • usage at own risk not extensively tested. Included is 4.27 FW incase you encounter problems and need to revert from 4.30, IDE & AHCI mode fw for both 4.27 and 4.30 versions included. You CD to 4.27 DIR or 4.30 DIR and run the AHCI or IDE .bat files as appropriate. Flashing IDE FW to sole AHCI capable adapters is not recommended or tested.

@Johnny29

  • I have now gotten around to testing the 4.30 ASM1061 FW in AHCI mode along with the SAMSUNG 860 PRO 512Gb, and sorry to say it doesn’t hang and proceeds to boot and operate just fine unlike the troubles you are having, there are 3 drives connected to the 4 port togglable adapter a Crucial MX500, and Toshiba 1tb spinning rust, and I’m using the 3.3.3.0 ASmedia SATA drivers. Unfortunately I can’t reproduce the same hang. :frowning:

  • I’ve also sucessfully flashed 4.30 FW to the SU-SA 3008 8 port adapter and tested 860 PRO under same conditions and also no hang with multiple drives connected.

Sorry if this doesn’t help, but it’s all working fine.

No problem. I’ll have to dig more.
At least we know now that FW 4.30 is working and maybe others are going to try it too and report back. Is it working now also with the Intel 600 series chipsets?