December 15, 2025Dec 15 Hello everyone,I'm currently on a firmware version which is known for dropping the drives connected to it under certain circumstances causing errors and wanted to upgrade to the 'latest' firmware to avoid this issue from happening again.The current firmware version I'm on is v16.00.01.00 and I plan on going to v16.00.12.00The current bios version I'm on is: v08.37.00.00 and I plan on going to v08.37.02.00I just needed a quick sanity check on updating this card to make sure I'm not missing anything important.Here are the steps I plan on doing:Preparation:1) Obtain sas3flash for linux (https://docs.broadcom.com/docs/Installer_P16_for_Linux.zip_p)2) Move sas3flash from sas3flash_linux_x64_rel to a /tmp/hba_update folder3) Modify the permissions/ownership to make the sas3flash executable4) Obtain the v16.00.12.00 firmware and v08.37.02.00 bios from (https://docs.broadcom.com/docs/9305_24i_Pkg_P16.12_IT_FW_BIOS_for_MSDOS_Windows.zip)4) Move the SAS9305_24i_IT_P.bin from the Firmware/SAS9305_24i_IT_P folder and mptsas3.rom from the sasbios_rel folder to the /tmp/hba_update folder5) Modify the permissions/ownership if needed of each file6) Obtain and write down the SAS adapter address by running sas3flash -o -listsasadd7) Screenshot the existing array with all disk assignments and serial numbersPerforming:1) Stop the array and ensure all activity is halted2) Erase the IT firmware with command: sas3flash -o -e 63) Flash the IT firmware with command: sas3flash -o -f SAS9305_24i_IT_P.bin4) Flash the BIOS with command: sas3flash -b mptsas3.rom5) Re-program the SAS Address with command: sas3flash -o -sasadd <sasaddress>6) Re-check the updates by performing command: sas3flash -listall7) RebootAdditional Steps (if needed) since I am on an old firmware:1) Create a new array config2) Assign all disks exactly as shown from Prep Step 73) Check 'Parity is already valid'4) Start ArrayAppreciate it!
February 8Feb 8 Author I was able to successfully update the firmware of this card. Only modification was I did not erase the existing firmware but instead updated.In case anyone needs to do this in the future, here are the steps I took:Download Required Files1) Obtain sas3flash for Linux (https://docs.broadcom.com/docs/Installer_P16_for_Linux.zip_p)2) Obtain the v16.00.12.00 firmware and v08.37.02.00 bios from (https://docs.broadcom.com/docs/9305_24i_Pkg_P16.12_IT_FW_BIOS_for_MSDOS_Windows.zip)Extract and Prep Files1) Extract Installer_P16_for_Linux.zip2) Extract 9305_24i_Pkg_P16.12_IT_FW_BIOS_for_MSDOS_Windows.zip3) Make a directory called hba_update4) Copy sas3flash from Installer_P16_for_Linux\sas3flash_linux_x64_rel to hba_update5) Copy SAS9305_24i_IT_P.bin from 9305_24i_Pkg_P16.12_IT_FW_BIOS_for_MSDOS_Windows\Firmware\SAS9305_24i_IT_P to hba_update6) Copy mptsas3.rom from 9305_24i_Pkg_P16.12_IT_FW_BIOS_for_MSDOS_Windows\sasbios_rel to hba_updateYour hba_update folder should now contain the following files:mptsas3.romsas3flashSAS9305_24i_IT_P.binUpload to UNRAID1) Copy the hba_update directory to /tmp/ - This puts the directory in memory and allows the sas3flash to be executable since UNRAID no longer allows files on the flash drive to have the execute permission.2) Perform the following permission modifications:chown root:root sas3flashchmod 755 sas3flashchmod +x sas3flashchmod 644 SAS9305_24i_IT_P.binchmod 644 mptsas3.romBackup Critical Information1) Run ./sas3flash -listall - keep the output somewhere2) Run ./sas3flash -list - keep the output somewhere3) Run ./sas3flash -o -listsasadd - keep the output somewhere4) You can try to run a backup of the firmware using this command: ./sas3flash -c 0 -backup firmware_backup.bin - note: the sas3flash may not always have this functionalityDo this after performing the UNRAID Actions below if desired4) Take a screenshot of all Array / Pool setups with drive assignments / serial numbers - this is in case the update wipes the dataUNRAID Actions1) Stop the UNRAID Array2) Disable Docker3) Disable VM ManagerRun Update1) Run ./sas3flash -c 0 -o -f SAS9305_24i_IT_P.bin to update firmware without erasingIf this fails, updating with erasing the firmware may be needed2) Run ./sas3flash -c 0 -o -b mptsas3.rom to update the bios (if desired)Verify Update1) Run ./sas3flash -listLook for the output that is similar to the following:Firmware Version : 16.00.12.00Firmware Product ID : ITSAS Address still present (previously pulled from ./sas3flash -o -listsasadd)If SAS Address is missing, run the following command with your sas address previously obtained: ./sas3flash -c 0 -o -sasadd ADDRESS_HERE2) Shutdown the UNRAID Server, waiting 5 minutes or drain power after shutdown3) Power on the UNRAID Server4) Once booted up, run: ./sas3flash -list to verify the new firmware is still shown5) Double check drive assignmentsIf drive assignments aren't accurate, create a new config under Tools. Match your previous drive assignments and check 'parity is valid' before continuing6) Enable Docker7) Enable VM Manager8) Start UNRAID Array9) Monitor the syslog for any errors using the command: tail -f /var/log/syslogHope it helps! Edited February 9Feb 9 by OrneryTaurus Added steps performed for updating.
March 8Mar 8 Author 20 hours ago, tien113 said:how is UEFI BSD? I don't see you update UEFI BSD ?I’m only using the card for data drives, not to boot from so no UEFI BIOS update was done.You’d might need to do the same steps as performed with the bios update but reference the x64sas2.rom if available but I’m not sure.
March 15Mar 15 On 3/8/2026 at 12:08 PM, OrneryTaurus said:I’m only using the card for data drives, not to boot from so no UEFI BIOS update was done.You’d might need to do the same steps as performed with the bios update but reference the x64sas2.rom if available but I’m not sure.Thanks for the detailed tutorial. I usually keep everything up to date. I was able to update the UEFI BIOS successfully using the same method described for updating the BIOS.
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.