First timer with HBA cards - I am unable to check my HBA temps

Hey,

Recently, I installed my first HBA (LSI 9300-8i 12Gbps SAS P16) pre-flashed in IT mode card in my TrueNAS Scale server.

The card’s been working fine with passing through disks, but I am unable to check the temperature on it. I was told that it should have an onboard temp sensor, but so far I’ve had no success in gathering data from it.

I’ve tried to:

  • get the storcli info from everything:
root@truenas[~]# storcli show all
CLI Version = 007.2807.0000.0000 Dec 22, 2023
Operating system = Linux 6.6.44-production+truenas
Status Code = 0
Status = Success
Description = None

Number of Controllers = 0
Host Name = truenas
Operating System  = Linux 6.6.44-production+truenas
StoreLib IT Version = 07.2900.0200.0100

Check with lspci whether the controller is displayed:

...
01:00.0 Serial Attached SCSI controller: Broadcom / LSI SAS3008 PCI-Express Fusion-MPT SAS-3 (rev 02)
...

I’m open to suggestions.

I have 9400-i16 and I use storcli64 from CLI Version = 007.3103.0000.0000 Aug 22, 2024

It reports temperature just fine :

root@nas:~# storcli64 /c0 show all nolog | egrep ROC
Temperature Sensor for ROC = Present
ROC temperature(Degree Celsius) = 52

Thanks. I feel dumb for asking this but… did you installed storcli64 manually? I have storcli natively, but attempting to run the 64bit version ends up with:

zsh: command not found: storcli64

Yes

I used MR 7.32

You need to install it on other Debian and copy over binary

Don’t even need to install it. You can use 7zip or any other file archive software and extract the files from the .deb just like a zip file. The binary you need is going to be in the data.tar.xz archive. Extract that and copy over storcli64

Thanks for replying, unfotunately I’m still lost with this.

I’ve downloaded the MR 7.32 version for all OSes, but in the Linux folder there’s just an RPM file along with a script and a public key:

4096 Feb 14 11:32 ./
4096 Feb 14 11:32 ../
1727 Feb 14 11:32 pubKey.asc*
4199 Feb 14 11:32 splitpackage.sh*
2122352 Feb 14 11:32 storcli-007.3205.0000.0000-1.noarch.rpm*

I searched for .deb archives, and I found one under ARM > Linux, one under Ubuntu (isn’t TN Scale Debian?), and another one under Linux-PPC > LittleEndian.

I’m not sure which one is the right file for me. I’m trying to NOT mess this up because I am aware that TN is supposed to run like an appliance, and that excludes copying random binaries to it, despite the vendor of the said binary.

Check Ubuntu folder, it must contain

storcli_007.3205.0000.0000_all.deb

To add to that: Ubuntu is based on Debian unstable. Barring some glibc shenanigans between releases, Ubuntu binaries should work on Debian.

This one does.

1 Like

Alright, next issue…

root@truenas[/tmp]# ./storcli64 /c0 show all nolog | egrep ROC
zsh: permission denied: ./storcli64

I have already given an run permissions to the executable with chmod +x. I am root. What kind of permissions/config changes do I need in order to run it?

Turns out it was a directory permission issue. Moving the binary over to /root/ worked:

root@truenas[~]# ./storcli64 /c0 show all nolog | egrep ROC
Temperature Sensor for ROC = Present
ROC temperature(Degree Celsius) = 50
root@truenas[~]#  

Thank you all!

Yes, Don’t run executables from temp folder.

Glad it worked out !

1 Like

I just wanted to add a little something to this post: I have a large 120mm fan attached to the PCIE cards (I have an NVME card, HBA card, and a NIC card in all 3 of my PCIE slots). So, the standby temperature of my HBA card is 50 degrees celsuis, which while may not sound like a lot, it actually is according to the docs:
https://docs.broadcom.com/doc/12354877

Thermal and Atmospheric Limits
The atmospheric limits for the LSI 12Gb/s SAS HBA are as follows:
 Temperature range: 0 °C to 55 °C (32 °F to 131 °F) (dry bulb)
 Relative humidity range: 5% to 90% noncondensing
 Maximum dew point temperature: 32 °C (89.6 °F)
 Minimum airflow: 200 linear feet per minute at 55 °C inlet temperature
The following limits define the storage and transit environment for the LSI 12Gb/s SAS HBA:
 Temperature range: –45 °C to +105 °C (–49 °F to +221 °F) (dry bulb)
 Relative humidity range: 5% to 90% noncondensing

I’m running 5C below the maximum which is concerning due to the fact that right now there isn’t a lot of IO activity happening. I will try to add a little 40mm or 60mm fan to the heatsink to check the temps. Might even repaste it.

That’s the ambient temperature - in other words, it’s expected to be able to operate in a 55C environment, provided you’re able to shove 200 LFM (linear feet per minute) of airflow at it.

An actual measured SoC temp of 50C is fine.

2 Likes

Silly me, thank you! I wasn’t familiar with the ‘dry bulb’ term. Now I just need to find the maximum allowed temp and see what’s the temperature during a scrub.

I ran mine at 90C without significant speed decrease

I just made a post earlier about issues I’m having trying to configure my 430-16i HBA. Apparently it has the same chip as the 9400-16i, the SAS3416.

I’m wondering if using the newer storcli64 might help me out as well.
Now for the ultra noob question… how and where do I move the storcli64 binary to in truenas. I’ve extracted the storcli64 binary from the .deb file as instructed above. I see @scotrod put his in /root/
Can I just put the file on a usb stick and move it to root somehow? (Sorry I’m dumb)

Do you have ssh access to truenas? Just copy it via SCP to /root/bin

Or remount /usr as rw and put it to /usr/local/bin