Guide, Hardware, HBA, Homeserver, NAS, Self Hosting, Storage, Systems Administration -

How to Flash an HBA Card to IT Mode (Step-by-Step Guide)

You've got your HBA card — great choice. But if it arrived running IR (Integrated RAID) firmware, it won't work the way you need it to with Unraid, TrueNAS, Proxmox, or any ZFS-based system. You need to flash it to IT (Initiator Target) mode, which turns the card into a pure passthrough device: drives talk directly to your OS, no RAID middleman in the way.

This is one of the most-asked questions from new HBA buyers, and it has a reputation for being confusing — partly because there are slightly different steps for different cards, different methods (DOS vs UEFI), and several old forum posts with missing files or broken links. This guide covers it all in one place for the cards we sell: the DELL H310, Fujitsu D2607, LSI 9207-8i, DELL H200, and the LSI 9211-8i.

✅ Already flashed?

Cards purchased from Server Labs Aus ship pre-flashed to IT Mode firmware version 20.00.07.00. You can skip this guide and go straight to connecting your drives. This guide is for cards purchased elsewhere or for those who want to understand the process.

 

Why IT Mode? The Quick Explanation

HBA cards based on the LSI SAS2008 and SAS2308 chips ship from OEM manufacturers (Dell, IBM, Fujitsu, etc.) in IR mode — firmware designed for hardware RAID. That creates a problem for homelab storage:

  • ZFS and Unraid need direct disk access. Software-defined storage like ZFS (used by TrueNAS) and Unraid's parity system need to read individual drives directly. A hardware RAID layer gets in the way, hiding drives behind virtual volumes.
  • SMART data is blocked. IR mode prevents your OS from reading drive health data. You can't monitor failing drives, which is a serious risk for a NAS.
  • Drives are locked to the controller. If your RAID card dies, you may not be able to access your drives on another controller. IT mode keeps drives portable.
  • IT mode is faster. Removing the RAID processing layer reduces latency and improves throughput for software RAID workloads.

IT mode (firmware 20.00.07.00 for SAS2008-based cards) makes the card behave like a simple bus adapter — drives pass straight through to the OS. This is what Unraid, TrueNAS, Proxmox + ZFS, and every other serious homelab storage stack expects.

Which Cards Does This Guide Cover?

The following cards are all based on the LSI SAS2008 or SAS2308 chip and can be crossflashed to LSI 9211-8i IT mode firmware using the same process:

Card

Target Firmware / Notes

DELL PERC H310 (full-height)

LSI 9211-8i IT mode v20.00.07.00 — most common, covered in detail below

DELL PERC H200

Same process as H310. Some revisions may need PCIe pin cover (see Troubleshooting)

Fujitsu D2607 (LSI 9211-8i)

Based on SAS2008. May already be at IT mode — check firmware version first

LSI 9207-8i

SAS2308-based. Uses same sas2flash tool but a different firmware file (P20 IT)

LSI 9211-8i

Native card — may just need firmware update to v20.00.07.00

IBM ServeRAID M1015

Same SAS2008 chip, same crossflash process as H310/H200

 

⚠️ Important: Mini Mono / Integrated PERC H310

Do NOT attempt to crossflash the Dell PERC H310 Mini Mono (integrated/soldered variant found in blade servers). This guide covers only the standard PCIe add-in card versions. Flashing the wrong variant can permanently brick the card.

 

What You'll Need

Hardware

  • A USB flash drive (at least 2 GB, ideally 4–8 GB)
  • A PC or server with the HBA card installed in a PCIe slot
  • A working keyboard and monitor connected to the system
  • Access to another computer to prepare the USB drive (can be the same machine if it has a second USB port)

Software — Files to Download

You need a pre-packaged ZIP containing the correct versions of all flashing tools. The version of sas2flash matters — the P05 version is required for crossflashing OEM firmware.

File

Purpose

Rufus (rufus.ie)

Creates a bootable FreeDOS USB — choose FreeDOS when formatting

LSI-9211-8i.zip (techmattr link — see Troubleshooting)

Contains: sas2flsh.exe (DOS P05), sas2flash.efi (UEFI P05/P19), megarec.exe, 6GBPSAS.fw, 2118it.bin (v20.00.07.00), sbrempty.bin

Or: D2607.zip (for Fujitsu D2607)

GitHub: lrq3000/lsi_sas_hba_crossflash_guide — contains all tools + phase 20 firmware

MegaCLI (megacli.exe)

Reads card info before flashing. Included in most zip packages above

 

📌 Note on file sourcing

We don't host these firmware files directly — they are sourced from Broadcom/LSI's official tooling and well-known community archives. The GitHub repository github.com/lrq3000/lsi_sas_hba_crossflash_guide is a well-maintained 2023+ source that packages everything in one place with clear documentation. Always verify checksums where possible.

 

Step-by-Step: The DOS (FreeDOS) Method

This is the most reliable method and works on most systems. If your system won't boot into DOS (UEFI-only), jump to the UEFI method below.

Step 1 — Prepare Your Bootable USB

  1. Download and open Rufus on a Windows machine (or use Balena Etcher on Mac/Linux with a FreeDOS ISO).
  2. Select your USB drive, choose FreeDOS as the boot selection, and click Start. This formats the drive with a minimal FreeDOS environment.
  3. Once formatted, copy the contents of your ZIP file (sas2flsh.exe, megarec.exe, megacli.exe, 6GBPSAS.fw, 2118it.bin, sbrempty.bin) to the root of the USB drive.

Step 2 — Boot into FreeDOS and Record Your SAS Address
The SAS address is a unique hardware identifier burned into your card — like a MAC address for the SAS bus. You must record it now because the flashing process wipes it. It's usually printed on a sticker on the card itself, but let's read it from the card to be safe.

  1. Shut down the system. Insert the card into a PCIe slot and reconnect power.
  2. Boot into FreeDOS from your USB drive. In your BIOS boot menu, select the USB drive and choose Legacy/DOS mode (not UEFI).
  3. At the FreeDOS prompt, run:

C:\> megacli.exe -AdpAllInfo -aAll -page 20

 

Look for the SAS Address in the output (a 16-character hex string, e.g. 500xxxxxxxx0000). Write it down — you'll need it later.

Alternatively, use sas2flsh to list the adapter:

C:\> sas2flsh.exe -listall

 

⚠️ If sas2flsh can't see the card

If you get ERROR: Failed to initialize PAL or the card isn't listed, the card is in MegaRAID mode and sas2flsh can't talk to it yet. This is normal — keep going with megarec below. If your card wasn't found at all, check it's properly seated in the PCIe slot.

 

Step 3 — Erase the Existing Firmware

This is the most critical step. megarec.exe writes an empty/zeroed SBR (Sub-Boot Record) to clear the existing MegaRAID firmware, making the card a blank slate for the LSI firmware to be written on.

C:\> megarec.exe -writesbr 0 sbrempty.bin

C:\> megarec.exe -cleanflash 0


Reboot the system after this step. Boot back into FreeDOS from the USB drive.

Step 4 — Flash the Intermediate Dell Firmware

You can't jump straight to IT mode firmware — the card needs an intermediate step. First, flash the Dell 6Gbps SAS firmware (6GBPSAS.fw), which resets the card identity enough to accept the LSI firmware in the next step.

C:\> sas2flsh.exe -o -f 6GBPSAS.fw

 

Wait for the flash to complete. You may see Firmware Flash Successful. Then reboot again and boot back into FreeDOS.

Step 5 — Flash to IT Mode

Now flash the actual IT mode firmware. The target file is 2118it.bin, version 20.00.07.00 — the stable, community-proven firmware for Unraid, TrueNAS, and ZFS builds.

C:\> sas2flsh.exe -o -f 2118it.bin

 

You may be prompted: NVDATA Product ID and Vendor ID do not match. Would you like to flash anyway [y/n]? Type Y and press Enter. This is expected when crossflashing from a Dell/Fujitsu OEM card to LSI firmware.

You might also see Adapter Reset Failed! at the end — this can usually be ignored if the flash itself completed. The card sometimes fails to soft-reset after flashing.

Step 6 — Restore the SAS Address

The flashing process wipes the SAS address. You need to write it back. Use the address you recorded in Step 2, or the one printed on your card's sticker.

C:\> sas2flsh.exe -o -sasadd 500XXXXXXXXXXXXX

 

# Replace 500XXXXXXXXXXXXX with your actual SAS address

# e.g.: sas2flsh.exe -o -sasadd 5000c5001a2b3c4d

 

📌 No sticker? No problem.

If you can't find your SAS address, you can safely generate a new unique address. The format must start with 5000, followed by 12 random hexadecimal characters. For example: 5000d847203de496. Just make sure no two cards on the same system share the same address.

 

Step 7 — Verify the Flash

Reboot one final time (remove the USB drive so your OS boots normally). Then verify:

  • In your OS, run sas2flsh.exe -listall or check the boot screen for the card's firmware version — it should show IT firmware 20.00.07.00.
  • In Unraid, open the Main tab — your drives should now appear as individual devices, not RAID volumes.
  • In TrueNAS, go to Storage → Disks — all connected drives should be visible with full SMART access.
  • On Linux, run lspci | grep -i sas to confirm the card is detected, and smartctl -a /dev/sdX to confirm SMART access.

✅ Success!

If your drives are showing up individually and SMART data is accessible, you're done. The card is in IT mode and ready to use with Unraid, TrueNAS, Proxmox, or any other storage platform.

 

Alternative: The UEFI/EFI Shell Method

Some modern systems won't boot into DOS. If you have a UEFI-only motherboard or if the DOS method fails to detect the card, use the UEFI shell method instead.

Preparing the UEFI USB

  1. Use Rufus to format the USB with UEFI NTFS or FAT32. Do not select FreeDOS.
  2. Download the Tianocore EDK2 v1 UEFI shell (important: use v1, not v2 — sas2flash.efi is incompatible with EDK2 v2). Copy the shell binary to the USB root.
  3. Copy sas2flash.efi (P19 version) and your firmware files (6GBPSAS.fw, 2118it.bin) to the USB root.
  4. In your system BIOS, ensure Secure Boot is disabled and UEFI USB boot is enabled.
  5. Boot from the USB. Select the UEFI Shell option from the boot menu.

UEFI Commands

Once at the UEFI shell prompt, identify your USB drive:

Shell> map -r

# Look for a FS device — usually fs0: or fs1:

 

Shell> fs0:

FS0:\> ls

# You should see your firmware files listed

 

Then run the same sequence as DOS, just using the .efi binary:

# List adapters and get SAS address

FS0:\> sas2flash.efi -listall

 

# Flash intermediate Dell firmware

FS0:\> sas2flash.efi -o -f 6GBPSAS.fw

 

# Reboot, return to UEFI shell, then:

# Flash IT mode firmware

FS0:\> sas2flash.efi -o -f 2118it.bin

 

# Restore SAS address

FS0:\> sas2flash.efi -o -sasadd 500XXXXXXXXXXXXX

 

The UEFI method follows the exact same logical sequence as DOS. The only difference is the binary name (.efi instead of .exe) and navigating the UEFI shell filesystem rather than the DOS prompt.

Optional: Flash the Boot ROM (BIOS)

The Boot ROM (also called Option ROM or BIOS) adds a splash screen during boot that lets you press Ctrl-C to access card diagnostics. It's optional for IT mode usage — the card works perfectly without it — but useful for troubleshooting.

# DOS:

C:\> sas2flsh.exe -o -b mptsas2.rom

 

# UEFI:

FS0:\> sas2flash.efi -o -b mptsas2.rom

 

mptsas2.rom is included in the standard ZIP packages listed above.

Troubleshooting Common Errors

Error / Symptom

What To Do

ERROR: Failed to initialize PAL

The card is still in MegaRAID mode and sas2flsh can't talk to it. Run megarec first (Step 3), reboot, then retry.

ERROR: Cannot Flash IT Firmware over IR Firmware

You're using a newer version of sas2flash that blocks this. Switch to the P05 version included in the LSI-9211-8i.zip package.

Card not detected at all (Exit Code: 0x01)

Card may not be seated properly. Try a different PCIe slot. On some H310s, you may need to cover PCIe pins B5 and B6 with thin electrical tape to allow the system to boot without the card's BIOS. Do NOT cover the A-side pins.

NVDATA Vendor ID mismatch — flash still fails

Ensure you're using sas2flash P05 (version 5.00). Newer versions block crossflashing OEM cards.

Adapter Reset Failed after flashing

Usually safe to ignore if the flash itself completed. Hard reboot the system.

Drives not appearing in Unraid/TrueNAS after flash

Verify the SAS address was written back (Step 6). Also check cable connections — SFF-8087 Mini SAS cables must be fully seated.

UEFI shell: sas2flash.efi not found / incompatible

Ensure you're using EDK2 UEFI Shell v1, not v2. v2 is not compatible with the sas2flash.efi binary.

 

After Flashing: Next Steps

With your HBA in IT mode, here's what to do next:

Get an IT Mode Card, Ready to Go

If you'd rather skip the flashing process entirely, all HBA cards from Server Labs Aus are pre-flashed to IT mode firmware 20.00.07.00 before shipping. Stock Australian inventory, fast postage. Check out our DELL H310 Storage Expansion Kit — our most popular card for Unraid and TrueNAS builds.

 

 

 


Leave a comment