My ASM1166 came with 221118-00-48-00. I desoldered the EEPROM before dumping it with a CH341A programmer. My dump is originally 512KiB but the ASM116x flashing tool found on Silverstone’s site doesn’t accept it; seems like it only will take 128KiB.
I trimmed it to that size, the data after the 128 KiB mark on the EEPROM was all zeroes anyway.
I flashed the 003E file shared earlier on this thread, rebooted, tested with ATTO disk benchmark and then flashed my trimmed ROM and did the same to verify that I dumped and trimmed correctly.
No in-depth testing, since I’ll flash 003E again, but here you go:
Use the trimmed rom with the tool on Silverstone’s site.
PS: I usually lurk on this forum but made an account to share this.
EDIT:
The 003E fw that I downloaded earlier was not okay.
I only performed PCIe bus resets, after turning power off and on again I kept getting PCIe communication errors which made some other PCIe devices unresponsive. I ended up desoldering the EEPROM again and flashing it with my CH341A programmer.
Thanks for this 0048 version I will try it out soon.
Also for anyone who inadvertently bricks their 1166/1062 adapters trying wrong flash/corrupted etc out it can some times be recovered if you cannot boot/post anymore with the card plugged in cos it’s bricked/garbled by hot-plugging the asmedia PCIe card after windows has loaded then using the asmedia windows based flash tool to flash. PCIe standard supports hot-plugging of cards and is actually part of the standard, however Windows of itself does not.
I’ve recovered at least one bad flashed card using this method when the computer was just hanging on boot and wouldn’t continue due to garbled flash. It’s a similar method to hot-flashing a bios chip, but you do this at your own risk. It worked for me as a last resort instead of binning the card, but there is always a risk that you could fry your motherboard. I think it works because while windows doesn’t detect the post boot hot-plugged SATA adapter, the flash software itself does, but you can’t boot with a bricked card which prevents the flash in any case.
I actually ended up not getting that card as I realized that, in upgrading my system (Asus TUF X99 mobo to Asus ROG STRIX X870E-E) I would be saving the SATA slot that I needed by going with an M.2 drive. I’m now only using the 4 SATA ports on the mobo plus my LSI SAS2 2308 Mustang controller card (8 SATA cables). I have not yet hooked up all the drives, still getting the basics configured.
I also use 3 LSI Falcon 2008 4 port SATA cards (not SAS) as well as the various ASM cards, which maximizes any x8 slot being fully x8 and can offer all the bandwidth to cope with any SSD at full speed, unlike the x4 or should we say really x2 ASM cards.
Problem with these server cards is they need their own 40mm fans ghetto rigging as they get hot otherwise and are meant for server racks that constantly have airflow not desktops, which then takes the slot below it out of commission due to the fan. I can’t always be bothered with deploying them just out of convenience, as the smaller asm cards don’t need fans.
See if this package helps for unbricking 1064… 20x series FW and docs/flasher. Might have to make a dos floppy similar to ASM 1062. It’s a 2020 firmware and not a windows flasher.
I can confirm the trimmed 128K 0048-0000 .rom works on all my 6-port ASM 1166 adapters without issue. Obviously no hotplug anymore. But with system drives this isn’t really an issue.
Don’t think this can be used on Windows, as the 128K flash rom boundary cuts through the middle of code. Looks specific to linux. I tried to trim it without success, some flash chips only have storage for 128K.
It might work if you solder on a larger flash chip or have one already. But I’m not up for risking it.
I checked mine card (i have a picture in first post) and it had a 512 kb flash chip.
So i flashed it with the tool from first post (ecs06) and now i have the newest firmware from 2024. (241025-00-00-05)
I updated from the trimmed 128K 0048-0000.
It works in windows 11 and it supports hot swap.
It seems to fix all the problems with aspm.
It continue to have multiple virtual sata as always.
It seems that the new firmware disable the message signalling.
Maybe because of some errata.
Update:
It also i see in my msi uefi bios a new informational menu:
I can confirm, that firmware at the link posted by boombastik worked like a charm using windows tool from first post. I got my ASM1166 card from Aliexpress, it came with 221118-00-48-00 ROM and 512kb SPI chip. I put this card in Lenovo ThinkCentre M82 Small 2929-A1G (from the middle of 2012). HWiNFO still shows 32 SATA ports, all Hot Plug capable. Also got additional menu item in BIOS where I see only 6 SATA ports and drives plugged in these ports.
Hi!
Decided to register here on this forum, for this topic specifically. Information seems hard to find on ASM1166 devices online! (let alone support…).
I’m nothing much of a UNIX guru yet, but i have been experimenting/learning how to set up a homeserver etc. So far so good… actually the only real problem at the moment seems to be getting my WANGCL NVMe ASM1166 adapter to work.
So far i did quite some troubleshooting (also with the help of ChatGPT) and this is a summary of what i have:
Output 116xfwdl -S:
$ sudo /asm1166/116xfwdl -S ASM116x Firmware Update Tool V1.1.1.0 Cannot found device
ChatGPT said:
That’s a very important result:
Cannot found device
This confirms that the 116xfwdl tool is not detecting your ASM1166 controller at all, despite being present in the system. This likely means:
________________________________________
❌ The PCIe link training failed
As we suspected earlier, your ASM1166 controller is:
• Inserted into an M.2 PCIe x4 slot
• Showing Link Width: x0 and Speed: 2.5GT/s — meaning the physical slot exists but the link is not active
• Completely missing from lspci output
So this explains why:
• Flash tools can’t detect it
• It’s not showing up in Linux
• You’re seeing no AHCI device associated with it
________________________________________
✅ What we now know:
✅ Confirmed 💡 Notes
The ASM1166 tool is present and working Version V1.1.1.0
The controller card is inserted in the slot M.2 Gen3 x4
lspci shows Link Width: x0 Link training failed
116xfwdl cannot detect the device Hardware-level issue
So eventually the machine (running OMV / Debian) is recognising a device in the M.2 port but “Link training failed”.
So far i was looking into options to flash the card to a new firmware (and/or backup the current one and check the version). But as you see the tool 116xfwdl is also not seeing the device again.
The board is from a HP Prodesk Mini 400 G3. If i put an actual NVMe SSD in the slot it works. Also the official specs state that this M.2 slot is PCIe Gen3 x4.
Anyone here with similar experience? Or is this a lost cause perhaps?
Also here are some pictures if anyones interested.
works great
Why is there no easy way to disable hotswap? sigh.
This is hot swap
still shows 32 ports
seems stable and boots fast
The LEDs on the board now only light up when a drive is in use. This is nice, or distracting/disconcerting? depends…
Thanks for the link.
I updated my ASM-116x Controller from 221118-0000-00 with the newest Firmware from station-drivers ( Asmedia ASM-2116/116x Sata 6G Controller Firmware Version 12240000) and it works fine.
Hello
I am trying to upgrade the FW of my asmedia 1064 based SATA controller. I am using ASM116xMPTool v1.2.1.0 to do this and I am getting the following screen:
What you’re missing is, that every user here takes out their own chances and risks… you included, reports seen from users often are based on boldy moves, so if no experience on recovering from wrong/bad flashes, i suggest you stay put if you care for the hw in question.