Skip to main contentSkip to navigation
Lab Operational Since: 17 Years, 5 Months, 15 DaysFacility Status: Fully Operational & Accepting New Cases
Rossmann Repair Group logo - data recovery and MacBook repair
SSD Recovery

Why Data Recovery Software
Failed to Find Your SSD

If you downloaded data recovery software like Disk Drill, EaseUS, or Wondershare to fix a dead SSD, and it froze, crashed, or found zero files, you are experiencing a hardware failure. Data recovery software operates at the operating system layer; it cannot communicate with a drive that has dropped off the PCIe or SATA bus due to a dead controller chip or corrupted firmware.

Louis Rossmann
Written by
Louis Rossmann
Founder & Chief Technician
Updated 2026-04-12

The TRIM Command Problem

When the TRIM command executes on a modern SSD, the controller marks those blocks for internal erasure. Once erased at the hardware level, no software can reconstruct the data. The NAND cells that held those files are physically erased by the controller's garbage collection routine, resetting them to an unprogrammed state.

Software tools that claim to recover TRIM-erased data from SSDs are misleading users. On a mechanical hard drive, deleted data persists until overwritten because the platters retain the magnetic pattern. SSDs work differently. TRIM tells the controller to erase blocks proactively, and the controller obeys within seconds to minutes.


Controller Lockup vs. Software Scans

When a controller locks up (like the Phison SATAFIRM S11 bug), the drive stops presenting itself to the BIOS entirely. No software can scan a drive that the operating system cannot see. Disk Drill, EaseUS, R-Studio, and every other recovery application require the OS to present the drive as a block device before they can read a single sector.

A locked controller is not a file system problem. It is not a partition table problem. The controller silicon has either halted execution or is stuck in a boot loop because its firmware is corrupted. The drive does not appear in Disk Management, Disk Utility, or lsblk. Software cannot fix what it cannot access.


PC-3000 Firmware-Level Recovery

We use the PC-3000 Portable III to communicate directly with the SSD controller, bypassing the OS. This allows us to rebuild the firmware translator, access safe mode, and extract data from NAND that the controller has abandoned.

The PC-3000 issues vendor-specific commands to the controller chip over the SATA or NVMe interface. It does not go through the OS storage stack. This is why it can reach drives that are invisible to Windows, macOS, and Linux. Once communication is established, we load a working firmware module into the controller's SRAM, rebuild the flash translation layer from surviving metadata, and image the NAND contents to a known-good destination drive.

This process works on Phison SATAFIRM S11 failures, Silicon Motion firmware corruption, and many other supported SSD controller families. Samsung NVMe controllers (Phoenix, Elpis, Pascal) have limited PC-3000 firmware support; recovery for Samsung NVMe drives requires board-level microsoldering to revive the original controller. The NAND flash storing your data is almost always intact; the problem is the controller that reads it.


Why SSD Encryption Blocks Software Recovery

Many modern SSD controllers run always-on AES-256 hardware encryption in the data path between the host interface & the NAND chips. The controller generates a Data Encryption Key (DEK) using a true random number generator (TRNG) at the factory, then binds that key to a one-time-programmable fuse block baked into the controller silicon. The DEK never leaves the chip. Recovery software can't access it because it doesn't operate at the silicon level.

This applies to Samsung Elpis controllers on 980 Pro drives, Phison PS5018-E18 on Corsair MP600 Pro & Sabrent Rocket 4 Plus drives, and Silicon Motion SM2262EN on HP EX950 drives. The specific controller IC varies, but the encryption architecture is the same across all of them. Software sees only ciphertext if it bypasses the controller; the NAND contents are unreadable without the DEK.

Why You Can't Swap in a Donor Controller

Each controller IC has a unique fuse block. A donor controller from an identical model SSD has a different DEK fused into its silicon. Swapping controllers gives you a working drive that can't decrypt the original NAND contents. The fuse block is physically burned into the chip during manufacturing; it can't be cloned, copied, or transferred.

The only recovery path is board-level microsoldering to revive the original controller. We locate the failed component using FLIR thermal imaging, replace the shorted PMIC or voltage regulator with a Hakko FM-2032 on an FM-203 base station, & bring the original controller back to life with its DEK intact. SATA SSD board repair runs $450–$600; NVMe board repair runs $600–$900. Once the controller boots, the encryption pipeline resumes & the data is accessible through PC-3000 SSD.

Chip-Off Yields Ciphertext on Encrypted SSDs

Chip-off means desoldering the NAND flash packages from the PCB & reading them on a dedicated programmer. On older SSDs without hardware encryption (such as early SATA drives with JMicron JMF602 or Indilinx Barefoot controllers), chip-off could yield readable data. SandForce SF-2281 drives are a notable exception: despite being pre-2015, they use mandatory always-on AES-128 encryption with DuraWrite compression, making chip-off unviable.

On any modern NVMe SSD or SATA SSD implementing TCG Opal or IEEE 1667 self-encrypting drive (SED) architecture, chip-off produces encrypted blocks. Without the original controller's DEK, those blocks are a 256-bit AES puzzle with no solution.


TRIM, DZAT, & DRAT: Post-Deallocation Read Behavior

When you delete a file on a modern SSD, the operating system issues a TRIM command telling the controller which Logical Block Addresses (LBAs) are no longer needed. The controller then feeds synthetic data back to any software that tries to read those LBAs, even if the physical NAND cells haven't been erased yet. Recovery software reports "no files found" because the controller intercepts every read request & returns zeros or a predefined pattern.

SATA Specification: Word 69 Bits 5 & 14

The SATA ATA Command Set defines two relevant capability bits in IDENTIFY DEVICE Word 69. Bit 5 is DZAT (Deterministic Zero After TRIM): the controller returns all zeros when software reads a TRIMmed LBA, regardless of whether the physical NAND still holds data. Bit 14 is DRAT (Deterministic Read After TRIM): the controller returns a consistent, predefined value for TRIMmed addresses.

Most modern SATA SSDs report DZAT support. Disk Drill, EaseUS, Recuva, & R-Studio all send standard ATA READ commands. The controller intercepts these commands at the firmware level & returns zeros for any TRIMmed LBA. The software faithfully displays what the controller reports: empty blocks, no recoverable files.

NVMe Equivalent: DLFEAT Parameter

NVMe SSDs use the Deallocate Logical Block Features (DLFEAT) field in the Identify Namespace data structure. When DLFEAT bits 2:0 are set to 001b, reads of deallocated blocks return all zeros. NVMe controllers process Deallocate commands with lower protocol overhead than SATA TRIM, but garbage collection timing depends on the controller's firmware, not the bus protocol.

Garbage Collection: When Data Is Permanently Destroyed

DZAT & DRAT describe what the controller reports to software. Garbage collection is what happens to the physical NAND. After TRIM marks blocks as invalid, the controller's garbage collection routine erases them by evacuating charge from the NAND cells. This is a hardware-level erase. On drives with TRIM enabled (the default on Windows 7+ & macOS 10.6.8+), garbage collection runs within seconds to minutes after deletion.

Once garbage collection completes, the data is gone. No lab on earth can reverse a hardware-level NAND erase. Recovery is only possible if the drive was pulled immediately after deletion, TRIM was disabled in the OS, or the file system doesn't support TRIM (like exFAT on some configurations). PC-3000 SSD can bypass the controller's DZAT/DRAT responses & read raw NAND pages, but only if garbage collection hasn't physically erased the cells.


How FTL Corruption Makes Software Recovery Impossible

SSDs don't store data in linear sectors like a hard drive. The Flash Translation Layer (FTL) maintains a dynamic mapping table that translates logical addresses (what the OS sees) to physical NAND locations (where the data actually sits). When this mapping table corrupts, the controller can't resolve any address. Software sends a read command for LBA 1000, & the controller has no idea which physical NAND page holds that data.

The L2P Table & SRAM Caching

The Logical-to-Physical (L2P) mapping table is the core data structure of the FTL. On a 1 TB SSD with 4 KB pages, the L2P table contains roughly 256 million entries. The controller caches this table in volatile SRAM on the controller die for fast lookup. A backup copy is periodically flushed to a hidden Service Area partition on the NAND itself.

On a sudden power loss, firmware panic, or controller crash, the SRAM cache is lost. If the backup in the NAND Service Area is also stale or corrupted, the drive can't boot. It either doesn't appear in BIOS at all or shows up with 0 bytes capacity. Software can't help because the controller isn't translating addresses; there's nothing to scan.

Why Software Can't Read the Service Area

Recovery software sends standard ATA or NVMe read commands through the operating system's storage stack. These commands address logical blocks. The FTL Service Area isn't addressable through logical commands; it exists in a vendor-specific reserved region of NAND that requires proprietary diagnostic commands to access.

PC-3000 SSD enters Safe Mode by shorting specific diagnostic pins on the SSD's PCB. This halts the controller's normal boot sequence. The technician then uploads working microcode into the controller's SRAM, reads the surviving FTL metadata from the NAND Service Area, & builds a Virtual Translator that emulates the drive's original L2P algorithms. SSD firmware recovery at our Austin lab runs $600–$900 for SATA drives & $900–$1,200 for NVMe drives.


Wear Leveling and NAND Page Scattering

NAND flash cells have finite write endurance. Consumer TLC NAND typically survives 1,000 to 3,000 program/erase (P/E) cycles per cell. QLC NAND is lower, around 500 to 1,000 P/E cycles. To prevent hotspot wear, the controller uses wear-leveling algorithms that distribute writes across all available NAND blocks, channels, dies, & planes.

A single 10 MB file doesn't sit in 10 MB of contiguous NAND. The controller shatters it into pages (typically 4 KB or 16 KB) & stripes them across multiple NAND channels for parallel write performance. The arrangement follows the controller's proprietary algorithm. A Samsung Elpis controller, a Phison PS5018-E18, & a Silicon Motion SM2262EN each use different wear-leveling strategies, different stripe widths, & different interleaving patterns.

Software Tools Can't Reconstruct the Pattern

Recovery software relies on file system metadata to locate files. NTFS uses the Master File Table (MFT), APFS uses the Container Superblock, ext4 uses inode tables. These metadata structures reference logical addresses. The software reads LBA 500, expects to find the next chunk of a JPEG file, & relies on the controller to resolve that LBA to the correct physical NAND page.

If the controller is dead, there's no translation happening. Reading raw NAND directly (via chip-off or diagnostic mode) produces pages scattered in a proprietary pattern across multiple dies. Without the controller's wear-leveling algorithm & the L2P table, reassembling those pages into a coherent file requires hardware-level tools that can read the NAND metadata directly.

PC-3000 SSD Reconstructs the Wear-Leveling Map

PC-3000 SSD reads NAND metadata including block erase counts, page sequence numbers, & write timestamps from each NAND die. Using controller-family-specific algorithms (the Phison utility for Phison controllers, the Silicon Motion utility for SM2258/SM2262EN), PC-3000 reconstructs the wear-leveling pattern & rebuilds the L2P table from surviving metadata. Samsung NVMe controllers (Phoenix, Elpis, Pascal) have limited PC-3000 support; recovery for Samsung NVMe drives requires board-level repair to revive the original controller, then standard imaging. Board repair is often the first step: reviving a dead controller with a Hakko FM-2032 PMIC replacement so PC-3000 can communicate with the chip over its native interface.


Why Does an SSD Lock Itself into Read-Only Mode?

SSDs enter hardware write-protect when the NAND cells exhaust their program/erase (P/E) cycles or the controller's spare block pool is depleted. The controller firmware triggers this lockout at the silicon level to prevent data corruption from writing to degraded cells. Consumer TLC NAND survives 1,000 to 3,000 P/E cycles; QLC NAND is lower at 500 to 1,000 cycles. Once the threshold is hit, the drive goes read-only & no OS-level command can reverse it.

Running diskpart with "clear readonly" or toggling write permissions in Disk Management won't fix this. Those commands address OS-level file attributes, not controller firmware state. The write-protect decision lives in the controller's firmware registers, not in the partition table or file system metadata. Recovery software like Disk Drill or R-Studio can't override a hardware-level lock any more than a text editor can fix a dead motherboard.

SMART Attributes That Signal Lockout

SMART data can warn you before the lockout hits. Kingston drives report Attribute 167 (0xA7), labeled "SSD Protect Mode," which returns a non-zero value when the controller engages write-protect. WD & Crucial drives use Attributes 169 & 231 to report remaining life as a percentage. NVMe drives report a Critical Warning bit (0x08) in the SMART/Health Information log when the media is placed in read-only mode by the controller.

A read-only SSD still holds your data. The NAND cells aren't erased; they're just locked against new writes. PC-3000 SSD performs a sequential clone of the drive contents to a healthy destination drive, bypassing the write-protect mechanism entirely. SATA SSD firmware recovery runs $600–$900; NVMe runs $900–$1,200. The OS can't mount a read-only SSD because mounting requires writing journal entries & timestamp metadata; PC-3000 reads raw sectors without mounting.


What Is SSD Firmware ROM Mode?

ROM mode is a minimal diagnostic state built into the SSD controller's silicon. When the controller can't boot from NAND due to corrupted firmware or a damaged flash translation layer, it enters a boot loop or halts entirely. An engineer forces the controller into ROM mode by shorting specific diagnostic pads on the PCB during power-on. The controller skips its normal NAND boot & falls back to a factory bootloader stored in on-die ROM.

In ROM mode, the drive identifies with a factory alias. It might show 0 GB, 8 MB, or 1 GB capacity in the BIOS. Disk Drill, Stellar, & EaseUS see either nothing or an empty device with no partition table. The drive isn't "dead" in the way most people think; the NAND still holds your data. The controller just can't boot the firmware that reads it.

Controller-Specific Entry Procedures

Each controller family has a different ROM mode entry method. Phison controllers (PS3109, PS3111, PS5012) require shorting specific pads near resistor arrays on the PCB before power-on. Silicon Motion controllers (SM2258XT, SM2259XT) require the pads to stay shorted during the entire loader upload. Samsung controllers use Vendor-Specific Commands (VSCs) sent over the interface rather than physical pin shorting. The exact pad locations vary by board revision, which is why forum guides often brick drives when applied to the wrong PCB revision.

PC-3000 SSD Loader: What It Does

Once the controller is in ROM mode, PC-3000 SSD uploads a volatile Loader into the controller's SRAM. This is custom microcode that takes over the controller's execution, not a permanent firmware reflash. The Loader disables garbage collection & wear leveling so no NAND contents are altered during the recovery. It forces single-channel NAND access for stability, then reads metadata from each NAND die to reconstruct a virtual flash translation layer.

Consumer software can't do any of this. Disk Drill & R-Studio send standard ATA or NVMe read commands through the OS; they have no mechanism to issue hardware power-cycle commands synchronized with diagnostic pad shorts, no way to speak vendor-specific diagnostic protocols, and no ability to inject loader microcode into controller SRAM. The gap between what software does & what professional SSD recovery requires isn't a matter of degree; it's a different category of work. SATA SSD firmware recovery runs $600–$900; NVMe firmware recovery runs $900–$1,200.

MPTool Warning: Forum Firmware Tools Erase Your Data

Manufacturer Mass Production Tools (MPTools) circulate on data recovery forums & are sometimes recommended as a DIY fix for bricked SSDs. These tools are designed for factory initialization of blank NAND. Running an MPTool on a drive with existing data will permanently initialize all NAND blocks, destroying everything stored on the drive. Similarly, running CHKDSK on a firmware-damaged SSD forces blind write operations that can corrupt the controller's translation tables beyond repair. If your SSD isn't detected properly, don't run any tool that writes to the drive before a professional evaluation.


Pricing

SSD data recovery: $200–$1,500. Free evaluation, firm quote before any paid work begins. No data recovered = no charge.

How to get started

What is included

  • Free diagnostic evaluation
  • PC-3000 firmware-level recovery
  • Full drive imaging and file verification
  • Data returned on your choice of media

Frequently Asked Questions

What is the TRIM command and how does it prevent SSD data recovery?
When the TRIM command executes on a modern SSD, the controller marks those blocks for internal erasure. Once erased at the hardware level, no software can reconstruct the data. The NAND cells that held those files are physically erased by the controller’s garbage collection routine, resetting them to an unprogrammed state. Software tools that claim to recover TRIM-erased data from SSDs are misleading users. On a mechanical hard drive, deleted data persists until overwritten because the platters retain the magnetic pattern. SSDs work differently. TRIM tells the controller to erase blocks proactively, and the controller obeys within seconds to minutes.
Why can’t recovery software fix a locked SSD controller?
When a controller locks up, the drive stops presenting itself to the BIOS entirely. No software can scan a drive that the operating system cannot see. Disk Drill, EaseUS, R-Studio, and every other recovery application require the OS to present the drive as a block device before they can read a single sector. A locked controller is not a file system problem. The controller silicon has either halted execution or is stuck in a boot loop because its firmware is corrupted. The drive does not appear in Disk Management, Disk Utility, or lsblk. Software cannot fix what it cannot access.
What hardware tools recover data from a dead SSD?
The PC-3000 Portable III communicates directly with the SSD controller, bypassing the OS. It issues vendor-specific commands to the controller chip over the SATA or NVMe interface. Once communication is established, a working firmware module is loaded into the controller’s SRAM, the flash translation layer is rebuilt from surviving metadata, and the NAND contents are imaged to a known-good destination drive. This process works on Phison SATAFIRM S11 failures, Silicon Motion firmware corruption, and many other supported SSD controller families. Samsung NVMe controllers (Phoenix, Elpis, Pascal) have limited PC-3000 firmware support; recovery for Samsung NVMe drives requires board-level microsoldering to revive the original controller.
Does chip-off data recovery work on modern SSDs?
No. Many modern SSDs use always-on AES-256 hardware encryption. The Data Encryption Key (DEK) is generated by the controller's true random number generator and bound to a fuse block on the controller silicon. If the controller dies, the key dies with it. Desoldering the NAND chips yields only ciphertext that can't be decrypted without the original controller's key material. You can't swap in a donor controller because each chip has a unique fuse block. The only recovery path is board-level microsoldering to revive the original controller so it can use its internal DEK. SATA SSD board repair runs $450–$600; NVMe board repair runs $600–$900.
Can software recover data from a dead SSD?
No. A dead SSD means the controller has failed, and the drive isn't visible to the BIOS. Software recovery tools like Disk Drill, EaseUS, R-Studio, and PhotoRec all operate at the logical layer through the operating system. They send standard ATA or NVMe read commands, which require the controller to be alive and translating logical addresses to physical NAND locations. If the drive isn't detected as a block device, software can't scan it. Recovery requires PC-3000 SSD hardware, which bypasses the OS and communicates directly with the controller using vendor-specific diagnostic commands.
Why does my SSD show up as read-only?
Hardware write-protect on an SSD is triggered when the NAND's program/erase (P/E) cycles are exhausted or the spare block pool is depleted. The controller locks the drive into read-only mode at the silicon level to prevent data loss from writing to degraded cells. Running diskpart "clear readonly" or toggling OS file permissions won't fix it; the lock is enforced by the controller's firmware, not the operating system. SMART attributes signal this state: Kingston drives report Attribute 167 (SSD Protect Mode), and WD/Crucial drives report Attributes 169 or 231 for remaining life. Sequential cloning through PC-3000 SSD is the professional solution. SATA SSD firmware recovery runs $600–$900; NVMe runs $900–$1,200.
What is SSD firmware ROM mode and why can't recovery software detect it?
ROM mode (also called Safe Mode, Manufacturing Mode, or Techno Mode) is a minimal diagnostic state stored in the controller's built-in ROM. When the controller can't boot from NAND due to firmware corruption or FTL damage, it enters a boot loop or halts entirely. Engineers enter ROM mode by shorting specific diagnostic pads on the PCB during power-on, forcing the controller to skip its normal NAND boot and fall back to the ROM bootloader. The drive then identifies with a factory alias showing 0 GB, 8 MB, or 1 GB capacity. Recovery software can't access ROM mode because it operates through the OS storage stack; it can't issue hardware power-cycle commands synchronized with pin shorts or speak vendor-specific diagnostic protocols. PC-3000 SSD uploads a volatile Loader into the controller's SRAM that disables garbage collection, forces single-channel NAND access, and reads metadata to reconstruct the virtual FTL.
Can Stellar or Disk Drill recover data from a firmware-locked SSD?
No. Stellar, Disk Drill, EaseUS, and every other consumer recovery application operate through the operating system's storage stack. They send standard ATA or NVMe read commands that require a functioning controller. A firmware-locked SSD doesn't present itself as a block device; the OS can't see it, so software can't scan it. PC-3000 SSD bypasses the OS entirely. It communicates with the controller using vendor-specific diagnostic commands, uploads working microcode into the controller's SRAM, and rebuilds the corrupted flash translation layer. SATA SSD firmware recovery runs $600–$900; NVMe firmware recovery runs $900–$1,200. No data recovered means no charge.

Recovery software found nothing?

Free evaluation. Firm quote. $200–$1,500. No data, no fee. Mail-in from anywhere in the U.S.

(512) 212-9111Mon-Fri 10am-6pm CT
No diagnostic fee
No data, no fee
4.9 stars, 1,837+ reviews