-
Notifications
You must be signed in to change notification settings - Fork 60
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
FireCuda 530 unable to set 4k sector size but Seagate advertises 4k capable. #84
Comments
Hi @jerrywoo96, The For reformatting an NVMe device, you need to use the |
Hi @vonericsen I managed to run the command in ubuntu, what is the correct command to check the progress? The command i used below prints the help text instead. Thanks, |
Hi @vonericsen I know seagate has its own method of changing sector sizes, speaking of changing sector sizes, sabrent was able to implement a one button press of changing sector size running on normal windows environment without going into pe or safe boot. Idk how they did that, but its cool knowing that they were able to pull it off. Jerry |
Hi @jerrywoo96,
That is the correct command, but it appears that is a bug in openSeaChest_NVMe. I just verified that it works in openSeaChest_Format.
The sector size changes are all done using standardized methods in these tools. |
Fixing the progress check option. It was not being checked in one location leading the tool to think the user had not entered a valid option and dumped the help instead. [#84] Signed-off-by: Tyler Erickson <tyler.j.erickson@seagate.com>
Hi @vonericsen Ok so last night i managed to run the change sector command, is the command instantaneous? i checked using the format util's progress nvmformat, it says that no operation is running, and --showSupportedFormats states that its using 4k sectors now, Thanks, |
Hi @jerrywoo96, On NVMe SSDs the format is pretty quick. Not quite instantaneous, but less than a few minutes typically. Checking with the |
Just wanted to provide an update regarding the format command in Windows. I have a sabrent drive in a personal system of mine so I was able to check for the NVMe commands-effects log, but the drive doesn't support that....so however Sabrent is doing this in their software, it is not using a Vendor unique command since this log is required for Microsoft to even issue the command (this is well documented by Microsoft). I'm going to see if I can figure out how to get this working and I can attempt reaching out to Microsoft for help if I continue to be stuck on this after a few more experiments I have in mind. |
Hi @vonericsen I found this, I'm not sure if it helps. I was googling change sector size and came across this forum. The first post also mentions changing sector size for WD SSDs. and i came across the command used in linux to change it. So then i googled |
Your able to use the SABRENT_SSC tool too change the sector size... literally just did it 5 minutes before this post after i remembered it existed |
I am aware of that tool, but I have no idea what it is doing to perform the sector size change. With windows, it's not as simple as issuing a raw command from the NVMe spec like openSeaChest supports in Linux and other OSs. Navigating what NVMe commands Microsoft will allow is difficult as it is not clearly documented, but you need to use the following and understand the SCSI to NVMe translation spec as well since that is somewhat supported and required for certain commands:
What is most confusing about Microsoft's documentation is that it states the SCSI translation of the format unit command is available, however when trying to use it, it reports that the command is not supported. The MSDN page for Microsoft's nvme.h header is not particularly useful as that headerfile really doesn't provide anything new to issue a command. Just a lot of predefined structures for commands you can and cannot issue. I think Microsoft just defined a bunch of stuff from the standards in here for their own internal use and to somewhat help with certain APIs if you don't otherwise have similar NVMe command strucutres in your own code (like openSeaChest does). So the things I've tried and not had success with are:
I have a Sabrent drive in a system at home and I checked if it has the commands-effects log and it does not...so that also rules out a vendor unique command being used here. |
well the SABRENT_SSC tool worked just fine on my firecuda 530, had to swap a Sabrent 2TB for this thing as it refused to work in an enclosure due to what ever crud WD put in place the tool works on SABRENT and WD drives and probably most over's and its not uncommon for windows to crap its pants and BSOD if you use it twice in a row, meaning its giving windows the middle finger and performing black-magic to get it done |
I did not know that tool would work on other drives that are not Sabrent. I did post a question on Microsoft's github documentation about the SCSI translation of the format command since that seems to be the most likely way it was implemented. That may provide more context on how it is implemented by the driver. I experimented with the SCSI Sanitize CDB and nothing I did with it would change the sector size, so I doubt they are using that in this case. That seems to complete data erasure though. Whenever we finally figure this out, I will implement what I can and close this issue. |
If anyone is still struggling, I was able to switch my Firecuda 530 to 4kn by using the Ubuntu nvme command with a live CD. Instructions here: https://carlosfelic.io/misc/how-to-switch-your-nvme-ssd-to-4kn-advanced-format/ |
Hi,
I would like to know what did i do wrong, the drive reports that it is 4k sector capable, but i'm unable to set it. Is Seagate doing a false advertising? Why arn't we allowed to change it? If we cant change it, why are they advertising it?
Thanks.
Jerry
The text was updated successfully, but these errors were encountered: