Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Adaptec 71605 16i SATA port HBA card for ~$50 review and how to fix write cache disabled

Featured Replies

Ok, so I was looking into LSI HBA cards and they all seemed overpriced / over-hyped compared to other options.

 

After looking around a lot I was debating between the HP240 and Adaptec as they both offered more features for less money.

 

I ended up going with the adaptec 71605 as I got a really good deal on it and it checked all the boxes except trim support for consumer SSD's like basically all other HBA's.

 

16 sata ports

PCIE Gen3 x8

No need to flash the card for HBA funcality, just simply switch to HBA mode in the cards bios

Built in driver support in unraid and every other OS I have tried it with

Can be found for less then $50 fairly easily on ebay (I got mine for a bit over half that during a sale)

 

So I have been using it for a bit over a month now and have to say, I am quite happy with my choice. I can hit over 2GB/sec speeds on my 5x 128gb cache pool but I am CPU bottlenecked at that point (all cores pegged to 100%). Others have reported 4500MB/s combined speeds and still not reaching a bottleneck.

 

The heatsink does need some airflow like all HBA cards. I built a funnel out of poster board that covers half a 120mm side panel fan and it keeps it nice and cool with the fan at the lowest speed ~500rpm.

 

The bios is also pretty simple to figure out as well, reset all settings to default and don't setup any raid settings and it will work. Although switching it to HBA mode and enabling drive listing on boot is better for our use case IMHO.

 

Overall I am very happy with this card and recommend it.

 

 

 

The only issue I have had is that the default write-cache setting is "Drive dependent". Sounds fine on paper but I had several drives just suddenly stop supporting write caching after a reboot and hdparm could no re-enable it nor would it work on another computer.

 

This setting should always be set to "enabled always" and never changed.

 

EDIT: I figured out how to fix this from within unraid after some more playing around, I will leave the old windows fix in a zip archive below in case some of that helped get this working.

 

hdparm does not work to fix this, nor does the normal smartctl command. There is a more advanced smartctl command that does work though!

smartctl -s wcache-sct,on,p /dev/sdX

This got it working on a drive I added to the server after fixing the others without having to revert to windows. No need to reboot or anything, takes effect immediately.

 

The ",p" is supposed to make the command persistent.

 

 

I archived the rest of this thread for future reference in case someone needs it in the attached zip file, including the dskcache windows program.

 

dskcache - Tool for fixing write cache on hard drives.zip Archived instructions for fixing write-cache disabled on Adaptec HBA card.zip

Edited by TexasUnraid

Very useful and detail, never know write_cache issue.

 

I always think should I buy one .... but the chance which I use almost zero and this HBA power usage seems a little bit high.

Edited by Benson

  • Author
1 hour ago, Benson said:

Very useful and detail, never know write_cache issue.

 

I always think should I buy one .... but the chance which I use almost zero and this HBA power usage seems a little bit high.

Power usage on this card is around ~15w according to my watt meter (not exact as I made some other changed to the hardware at the same time). Considering this is pcie gen3 with 16 ports, that is a bit better then average from my research.

 

Naturally the 8 port pcie gen 2 cards will use less, think they were generally closer to 8-10w.

  • Author

I was messing with adding in a new drive I will be using for parity and it had write cache disabled, I decided to try a fix I found after finishing the last drives by using a more advanced smartctl command and what do you know, it worked! Much easier then using windows, don't even have to reboot.

smartctl -s wcache-sct,on,p /dev/sdX

I edited the OP with this command.

Edited by TexasUnraid

21 hours ago, TexasUnraid said:

I was messing with adding in a new drive I will be using for parity and it had write cache disabled, I decided to try a fix I found after finishing the last drives by using a more advanced smartctl command and what do you know, it worked! Much easier then using windows, don't even have to reboot.


smartctl -s wcache-sct,on,p /dev/sdX

I edited the OP with this command.

I have a 3tb SATA drive that has an endlessy disabled write cache.  The fix described in Fix Common Problems does not last, (hdparm).  I am new to Unraid and Linux.  I assume you ran this from a terminal window just as the hdparm command?  I ask because I do not want to hose my system and I know there are vast amount of things I have yet to learn.

  • Author

Correct, that is run from the terminal just like the hdparm command.

 

Just copy/paste it and make sure to update the X at the end to the correct drive.

 

Worst case you could use user scripts to run the hdparm command at first array start if this doesn't work.

Edited by TexasUnraid

Thanks, I will give it a shot.

 

Central Texas here.

Bravo!  It appears to have worked.  I ran the command, ran Fix Common Problems and the error was not there.  I stopped the array, rebooted and ran Fix Common Problems again, still no error.

  • Author

Fantastic! I wish I had found this command sooner, would of saved me a lot of time lol.

On 7/23/2020 at 11:15 PM, TexasUnraid said:

I was messing with adding in a new drive I will be using for parity and it had write cache disabled, I decided to try a fix I found after finishing the last drives by using a more advanced smartctl command and what do you know, it worked! Much easier then using windows, don't even have to reboot.


smartctl -s wcache-sct,on,p /dev/sdX

I edited the OP with this command.

Good find, @Squiddo you mind adding this to the the related FAQ entry?

  • Author
5 hours ago, johnnie.black said:

Good find, @Squiddo you mind adding this to the the related FAQ entry?

Go for it, I was actually going to suggest it when I found that it worked but was not sure where to do that.

 

There is also another command you could add there as well, it didn't work for me but might work for others:

smartctl -s wcache,on /dev/sdX
Quote

wcache[,on|off] - [ATA] Gets/sets the volatile write cache feature (if supported). The write cache is usually enabled by default.

 

This is the more advanced command and was needed in my case:

smartctl -s wcache-sct,on,p /dev/sdX
Quote

wcache-sct[,ata|on|off[,p]] - [ATA only] Gets/sets the write cache feature through SCT Feature Control (if supported). The state of write cache in SCT Feature Control could be "Controlled by ATA", "Force Enabled", or "Force Disabled". SCT Feature control overwrites the setting by ATA Set Features command (wcache[,on|off] option). If SCT Feature Control sets write cache as "Force Enabled" or "Force Disabled", the setting of wcache[,on|off] is ignored by the drive. SCT Feature Control usually sets write cache as "Controlled by ATA" by default. If ',p' is specified, the setting is preserved across power cycles.

 

Edited by TexasUnraid

thank you for sharing. I have been looking for an inexpensive 16i card and this looks like it will fit the bill

 

  • Author
14 minutes ago, 1812 said:

thank you for sharing. I have been looking for an inexpensive 16i card and this looks like it will fit the bill

 

Glad I could help, Been stressing it the last few days doing a parity build and other IO intensive things at the same time (basically constant 1 - 1.5GB/s+ IO non-stop) and it has held up great.

 

Although I do wounder if any of the linux software packages they offer for this card would work with unraid's slackware?

 

https://storage.microsemi.com/en-us/support/raid/sas_raid/sas-71605/

 

It would be kind of nice to be able to see the cards temp and it offers some other functionality like the write cache settings. Would be cool if it could be in a docker or something but no idea if that is possible.

Edited by TexasUnraid

  • Author

Interestingly, I recently stopped and started the array and when it restarted the write cache was disabled on a few drives again. I know this was not the cards fault since the computer was not restarted and it happened with the array restart. So it must be something about how unraid interacts with the card that is causing the write cache to be disabled.

 

Luckily it is not an issue, performance is only minorly effected in some quick tests I did with the write cache off and fixing it is very simple with the above smartctl command.

 

I went ahead and made up this script that runs hourly to ensure I don't have to mess with this again, I will leave it here in case someone else wants to use it. It prints the starting status of the drive, it then enables the cache and then prints the status of the write cache again to make sure it changed.

 

It is perfectly fine to run it on all the drives.

 

#!/bin/bash
#description=This script will enable write cache for all drives with /dev/sd* names.
#backgroundOnly=
#arrayStarted=
#noParity=
#argumentDescription=
#argumentDefault=


for DRIVE in /dev/sd*[a-z] ; do
  echo Below here ------------------------------------------------------------Drive = $DRIVE
  echo
  echo Write cache status before making changes to $DRIVE:
  hdparm -ACW $DRIVE
  echo
  smartctl -s wcache-sct,on,p $DRIVE
  echo
  echo Write cache status after making changes to $DRIVE:
  hdparm -ACW $DRIVE
  echo
done

 

Edited by TexasUnraid

  • 2 years later...
On 8/3/2020 at 1:09 AM, TexasUnraid said:

Interestingly, I recently stopped and started the array and when it restarted the write cache was disabled on a few drives again. I know this was not the cards fault since the computer was not restarted and it happened with the array restart. So it must be something about how unraid interacts with the card that is causing the write cache to be disabled.

 

Luckily it is not an issue, performance is only minorly effected in some quick tests I did with the write cache off and fixing it is very simple with the above smartctl command.

 

I went ahead and made up this script that runs hourly to ensure I don't have to mess with this again, I will leave it here in case someone else wants to use it. It prints the starting status of the drive, it then enables the cache and then prints the status of the write cache again to make sure it changed.

 

It is perfectly fine to run it on all the drives.

 


Hi, do you see the temperatures from all of your disk with this controller?

  • Author
24 minutes ago, CiscoCoreX said:


Hi, do you see the temperatures from all of your disk with this controller?

Yes, all the temps show up fine.

  • 2 months later...

Big thanks to you for creating this thread. It helped me choose the right controller without going way over budget or having to hope whatever comes from China in x months is genuine.

  • 3 weeks later...

Thank you my firend, for years I could never get write cache enabled, the command smartctl -s wcache-sct,on,p /dev/sdX worked for me and my shucked Seagate ST4000VN000 & ST6000VX0001 drives, good vibes all around!

So i was trying to fix this exact problem. But i did a bad turn when i enabled in the Bios HBA settings the write to Cache to all enabled. This made all my drives unmountable. Since parity was ok,t he only option i found is to rebuilt everything. But the card itself is gread having no issues. Well as long you are not changing settings after adding a drive xD

Edited by Sumeragy

  • 1 year later...
On 7/26/2020 at 12:24 AM, 1812 said:

thank you for sharing. I have been looking for an inexpensive 16i card and this looks like it will fit the bill

 

Bit of a necro here - but I was a bit hesitant on this card because of all the talk of heat issues and such, especially coming from an LSI 9201-16e which ran cool with no fan. I must say, I am really liking this card. It's slim, well-built, and it seems many more legit cards are available compared to LSI in this price segment (Adaptec are less-prone to counterfeits compared to LSI, in general). I crudely strapped a Noctua fan on this using a cable tie (Noctua 40mm fan with included low-noise adapter are not audible over the other case fans despite its small size). To get the card working with UnRaid, it was as simple as pressing ctrl+A for the boot menu and changing the mode to HBA. 

 

Recommended.

IMG_20250411_180634479_HDR.jpg

Edited by Lebowski89

  • 3 weeks later...
On 7/26/2020 at 12:38 AM, TexasUnraid said:

It would be kind of nice to be able to see the cards temp

 

Anyone know if it's possible to see the Adaptec cards temperature from within UnRaid? Running UnRaid as a VM on Proxmox and have passed through the entire 71605 controller. Everythings working perfectly, but have no idea what the cards temperature is (not too worried, but just curious).

 

Edit: I mean the temperature of the actual controller, not the HDDs that are attached to it (their temps show just fine).

Edited by Lebowski89

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.