Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
BSDHWMON(8)		     System Manager's Manual		     BSDHWMON(8)

NAME
     bsdhwmon -- hardware sensor monitoring utility

SYNOPSIS
     bsdhwmon [-Jhlv] [-f device]

DESCRIPTION
     bsdhwmon is a user-land application which communicates via SMBus with hard-
     ware  monitoring ICs on motherboards.  Many different pieces of information
     can be returned, but the most common are fan  RPMs,  processor  and  system
     temperatures,  and motherboard voltages.  All data is sent to standard out-
     put.

     At this time, bsdhwmon supports a multitude of Winbond hardware  monitoring
     ICs, predominantly on Supermicro motherboards.

     The options are as follows:

     -J      Output data in a JSON-compliant format.

     -c      Output  data  in a comma-delimited format.  Sensor name, its value,
	     and the associated unit (V for volts, C for Celsius, RPM for  rota-
	     tions per minute, etc.) are individual parameters.

     -f device
	     Specify an alternate SMBus device.  Default is /dev/smb0.

     -l      List motherboards supported by bsdhwmon.

     -h      Help or usage syntax.

     -v      Increase verbosity (includes debugging output).

REQUIREMENTS
     bsdhwmon requires a few hardware and software features to function:

     1.   A  system  BIOS that provides a SMBIOS table.  Specifically, the exis-
	  tence of the	smbios.planar.maker  and  smbios.planar.product  kenv(2)
	  kernel  environment  strings.   You  can verify the existence of these
	  variables by using kenv(1).

     2.   device smb built into your kernel or loaded using kldload(8),

     3.   device smbus built into your kernel or loaded using kldload(8),

     4.   An appropriate SMBus chipset driver, such as amdsmb(4), ichsmb(4),  or
	  nfsmb(4), built into your kernel or loaded via kldload(8).

     Failure  to  meet all of the above requirements will result in bsdhwmon not
     functioning.

OUTPUT
     bsdhwmon attempts to mimic output formatting and sensor strings to that  of
     the BIOS's Hardware Monitoring menu option (if available).  However, due to
     limited  hardware	availability and user beta testing, some strings may not
     match the BIOS exactly (such as  "PECI  Agent"  being  replaced  with  "CPU
     Core").

     For  example,  a  Supermicro PDSMi+ motherboard might output something like
     this:

	   CPU Temperature	      34 C
	   System Temperature	      36 C
	   FAN1 		       0 RPM
	   FAN2 		       0 RPM
	   FAN3 		       0 RPM
	   FAN4 		    2000 RPM
	   FAN5 		    1527 RPM
	   FAN6 		    1785 RPM
	   Vcore		   1.198 V
	   +1.5V		   1.540 V
	   -12V 		 -12.288 V
	   Vdimm		   1.824 V
	   +3.3V		   3.344 V
	   +12V 		  12.000 V
	   5Vsb 		   5.046 V
	   5VDD 		   4.974 V
	   P_VTT		   1.206 V
	   Vbat 		   3.184 V

     While an older Supermicro P8SC8 might output this:

	   CPU Temperature	      33 C
	   System Temperature	      37 C
	   FAN1 		    4963 RPM
	   FAN2 		       0 RPM
	   FAN3 		       0 RPM
	   FAN4 		       0 RPM
	   FAN5 		       0 RPM
	   Processor Vcore(V)	   1.360 V
	   3.3V Vcc(V)		   3.320 V
	   5V Vcc(V)		   3.044 V
	   -12V Vcc(V)		 -12.288 V
	   12V Vcc(V)		  12.432 V
	   5VSB 		   4.896 V
	   VBAT 		   3.104 V

     Slight differentials in sensor values (e.g. a few degrees, voltage fluctua-
     tions, or RPM variance) are normal.  Operating systems often  make  use  of
     system and processor which may halt processors while idling (e.g. x86 "HLT"
     opcode),  or  make  use  of C1 through C4 power-saving states; powerd(8) on
     FreeBSD is known to do this.  System BIOSes are known to offer the  ability
     to throttle fan speed based on load.  Please refer to your System User Man-
     ual for details.

     Large/severe  differences between what the system BIOS and bsdhwmon reports
     should be reported as a bug (e.g.	-12.107  V  shown  in  the  BIOS,  while
     bsdhwmon reports +37.000 V).

EXIT STATUS
     The bsdhwmon utility exits 0 on success, and >0 if an error occurs.

SEE ALSO
     kenv(1), amdsmb(4), ichsmb(4), nfsmb(4), smb(4), smbus(4), kldload(8)

AUTHOR
     Jeremy Chadwick <jdc@koitsu.org>

BUGS
     Some Supermicro systems using the Winbond W83792D chipset may report incor-
     rect +5V voltages; the Supermicro P8SC8 and P8SCT motherboards are such ex-
     amples.  This is caused by a faulty formula used to calculate voltages from
     IC registers.  The formulas used are not officially documented, and the ac-
     tual  circuitry  (resistors,  etc.) tied to the pins on the Winbond chip do
     not match what Winbond used in their documentation.  Formula  documentation
     has been requested of Supermicro, but no response has been received at this
     time.

     There has been an isolated report of a Supermicro P8SCi system occasionally
     reporting	extremely  high  RPMs  (in the tens of thousands) for some fans.
     The reason for this is unknown, but the values being returned from the Win-
     bond chipset do appear correct.  If you're experiencing  this  bug,  please
     get in contact with the author.  Git commit ad3bbad may have rectified this
     bug.

CONTRIBUTORS
     The  following  individuals  have made contributions to bsdhwmon, either by
     helping with the code, testing the software, or recommending features:

     Tony Allevato, Mike Andrews, Alan Bryan, Gergely Czuczy,  Michael	Fuckner,
     M.  Giegerich,  Matthew  Herzog, Dan Naumov, Billy Newsom, Daniel O'Connor,
     Alexey V. Panfilov, Jim Perry, Jim Pingle, Patrick Proniewski, Matt Reimer,
     Larry Rosenman, Ulrich Spoerlein, Evren Yurtesen

     Additional thanks to SHIMIZU Yoshifumi, author of mbmon, for providing  BSD
     hardware monitoring support on older x86 hardware, and to the Linux lm_sen-
     sors project, for providing an unofficial secondary source of IC documenta-
     tion and details of chip quirks.

FreeBSD ports 15.quarterly	 April 29, 2015 		     BSDHWMON(8)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=bsdhwmon&sektion=8&manpath=FreeBSD+Ports+15.1.quarterly>

home | help