0X80284005

Fix TBS_E_INSUFFICIENT_BUFFER (0x80284005) on Windows

TBS_E_INSUFFICIENT_BUFFER (0x80284005) hits when a program asks the TPM Base Services for data and gives it a buffer that's too small. Here's the real fix, step by step.

You tried to do something with TPM or BitLocker or Windows Hello, and Windows threw 0x80284005 TBS_E_INSUFFICIENT_BUFFER at you instead. Annoying, and the message gives you almost nothing to go on.

Here's the fix, in order. Don't skip steps — each one rules out a real cause.

1. Restart the TPM Base Services service

The TPM Base Services service (TBS) brokers every TPM command between apps and the chip. If it's wedged, it hands back the wrong buffer size to callers and they fail with 0x80284005.

  1. Press Win + R, type services.msc, hit Enter. The Services window opens.
  2. Scroll to TPM Base Services. Right-click it, choose Restart.
  3. If Restart is grayed out, right-click and choose Start. If Start is grayed too, double-click the entry, set Startup type to Automatic, click Apply, then click Start.

After clicking Apply, the service status line should flip to "Running". If it doesn't, see step 2.

2. Clear the TPM (only if BitLocker is suspended)

If the service won't start or restarts immediately and dies again, the TPM itself is in a bad state. Clearing it resets the internal state that's causing the wrong-sized response.

Warning: clearing the TPM wipes BitLocker keys, PINs, and Windows Hello credentials tied to the TPM. Suspend BitLocker first or you'll need your recovery key at next boot.
  1. Open Manage BitLocker from the Start menu. Click Suspend protection on every drive. Confirm.
  2. Press Win + R, type tpm.msc, hit Enter.
  3. In the right pane, click Clear TPM. You'll get a UAC prompt — accept it.
  4. Windows asks you to restart. Do it. On reboot, a TPM clear confirmation appears before Windows loads. Press F12 or the key shown on your screen to confirm the clear.
  5. Once Windows is back, re-enable BitLocker protection on each drive.

You should see the TPM status in tpm.msc read "The TPM is ready for use" once the clear finishes.

3. Update the TPM firmware

Some TPM 1.2 and early TPM 2.0 chips from Infineon and STMicro ship with firmware that returns a larger response than the TBS buffer the caller allocated. This isn't your fault — it's the chip. The real fix is a firmware update from your PC maker.

Find your exact model:

wmic csproduct get name, vendor, version

Then go to the manufacturer's support page (Dell, Lenovo, HP, Asus), search your model, and look under Chipset or Security for a TPM firmware update. For example, Lenovo published TPM firmware 5.63.3144.0 for several ThinkPad T480 and X1 Carbon 6th-gen units to fix exactly this class of error.

Install it, reboot, and check tpm.msc again — the Specification Version line should show the new firmware revision.

4. Run the TPM troubleshooting pack

If steps 1–3 didn't move the needle, let Windows try:

  1. Open Settings > Update & Security > Troubleshoot (on Windows 11 it's System > Troubleshoot).
  2. Click Additional troubleshooters.
  3. Find Windows Update and run it, then run any TPM-related pack that shows up.

This won't fix a broken firmware, but it will re-register the TBS service and reset permissions that sometimes block it.

Why any of this works

Here's the underlying story. TBS_E_INSUFFICIENT_BUFFER isn't really about a small buffer — it's about a mismatch. A program (BitLocker, Windows Hello, a VPN client, an MDM agent) calls Tbsi_Context_Create or Tbsip_Submit_Command and passes a buffer sized for what it expects the TPM to return. The TPM returns more bytes than that. TBS sees the overflow and fails the call with 0x80284005 instead of corrupting memory.

So the fix is always one of three things: reset TBS so it renegotiates buffer sizing with the caller, reset the TPM so its internal state stops producing bloated responses, or update firmware so the chip reports accurate sizes in the first place. Clearing the TPM is the nuclear option because it wipes the internal NV storage where stale state lives.

Less common variations

Error appears only during WinRE or a recovery boot

Some OEM recovery environments load an older TBS library that predates the TPM 2.0 spec change to buffer sizing. If you see 0x80284005 only inside WinRE, your drive is fine — boot normally and update your recovery partition:

reagentc /info
reagentc /disable
reagentc /enable

This rebuilds WinRE from your current Windows install.

Error from a specific third-party app

VPN clients and endpoint security tools (older versions of Cisco AnyConnect, some SentinelOne builds) had hard-coded buffer sizes from the TPM 1.2 era. Update the app. If a vendor won't release a fix, complain — it's their bug, not Windows'.

Error on a VM with virtual TPM

Hyper-V and VMware virtual TPMs can throw 0x80284005 if the VM's TPM state is stale. Shut down the VM (not reboot — full shutdown), then in Hyper-V Manager open Settings > Security and remove the virtual TPM. Apply. Add it back. Boot.

Preventing it from coming back

  • Keep TPM firmware updated. Check your PC maker's support page every 6 months — TPM bugs don't show up in Windows Update.
  • Don't disable TBS via policy. Some hardening guides tell you to. Don't — BitLocker and Hello need it, and disabling it breaks them in weird ways.
  • Back up your BitLocker recovery key to your Microsoft account or a printed copy before you touch tpm.msc. You'll thank yourself.
  • After any BIOS update, verify TPM state. Some BIOS updates reset the TPM to factory defaults, which triggers this error on next BitLocker unlock.

That's the whole playbook. Nine times out of ten, restarting TBS or clearing the TPM ends it. If you're still seeing 0x80284005 after all four steps, the chip is failing — check Event Viewer under Applications and Services Logs > Microsoft > Windows > TPM for hardware error events before you replace the motherboard.

Related Errors in Windows Errors
0X00000564 Fix ERROR_LOGON_NOT_GRANTED (0x564): Wrong Logon Type 0XC0140014 ACPI 0XC0140014: Subsystem Not Initialized Fix 0XC000025A Fix STATUS_PWD_TOO_SHORT (0xC000025A) When Changing Password 0XC0000371 0XC0000371 STATUS_NO_SECRETS - No Secret Material in Local Account Store

Was this solution helpful?

EP
Erropedia Team
Tech Support Editors
The Erropedia editorial team researches and documents real-world tech errors from across Windows, Linux, macOS, networking, databases, cloud platforms, and more. Every solution is reviewed for accuracy and updated as software and systems evolve.