I'd like to write a little application for windows 3.1x which
periodically measures the temperature of one or more SCSI-harddisks.
Well, there are several programs out, even for win3.1x, for instance
from WD, but, this one does not measure and display the temperature
periodically, nor does it make an alert as soon as the temperature
exceeds a certain threshold. Also, I'd like to understand what's behind
that.
So, if someone can point me to some spec or other helpful information,
please let me know!
Re: How to measure the temperature of SCSI-harddisks?
Markus R. Keßler wrote:
> Dear all,
>
> So, if someone can point me to some spec or other helpful information,
> please let me know!
>
> Best regards,
>
> Markus
>
> --
Re: How to measure the temperature of SCSI-harddisks?
"Markus R. Keßler" wrote:
>
> Les Matthew wrote:
> >
> > Don't all modern HDD support S.M.A.R.T. ?
>
> Yes, they do. So, I'd like to write something similar to that, but just for
> SCSI only.
> Any hint about the spec or information like this?
Chapter 7.4.11 say that SMART capable devices should use informational
exception conditions for reporting. Some of them can be configured with
mode page 0x1C.
To transfer the information there are log pages specified in chapter
7.2, 7.2.16 specifies log page 0x0D "Temperature log page".
Re: How to measure the temperature of SCSI-harddisks?
Les Matthew schrieb:
> Markus R. Keßler wrote:
> > Dear all,
> >
> > So, if someone can point me to some spec or other helpful information,
> > please let me know!
> >
> > Best regards,
> >
> > Markus
> >
> > --
>
> Don't all modern HDD support S.M.A.R.T. ?
Yes, they do. So, I'd like to write something similar to that, but just for
SCSI only.
Any hint about the spec or information like this?
Re: How to measure the temperature of SCSI-harddisks?
"Michael Baeuerle" <michael.baeuerle@stz-e.de> wrote in message news:bu06p4-dis.ln1@micha.freeshell.org
> "Markus R. Keßler" wrote:
> >
> > Les Matthew wrote:
> > >
> > > Don't all modern HDD support S.M.A.R.T. ?
> >
> > Yes, they do.
Not really, only in words.
> > So, I'd like to write something similar to that, but just for SCSI only.
> > Any hint about the spec or information like this?
>
> SPC says something about it:
> ftp://ftp.t10.org/t10/drafts/spc4/spc4r09.pdf
> Chapter 7.4.11 say that SMART capable devices should use informational
> exception conditions for reporting.
For reporting failed status.
IINM there is only one for S.M.A.R.T., the one that's always been there
even before S.M.A.R.T. : 1 5D Failure Prediction Treshold exceeded.
It has several additional sense code qualifiers though that can tell you
where to look for what has failed.
> Some of them can be configured with mode page 0x1C.
Which is all that is required to be called S.M.A.R.T. 'compliant'.
(Some of) The information that is bundled together in IDE drives known
as S.M.A.R.T. data is scattered over several logpages in SCSI drives.
>
> To transfer the information there are log pages specified in chapter 7.2,
> 7.2.16 specifies log page 0x0D "Temperature log page".
>
>
> Micha
Re: How to measure the temperature of SCSI-harddisks?
ATA SMART and SCSI SMART are completely different. ATA SMART will give
you parameters and values, SCSI SMART is all but useless - it will
just set a flag to say a SMART event happened. It could tell you that
a temperature event happened, but it won't tell you what the
temperature was. It's funny that the more expensive SCSI solutions do
a much poorer job in this respect than their less expensive ATA
cousins.
Some SCSI disks will report their temperature via a LOG PAGE, but I
don't think there is any standard in place to specify which page/
parameter. Most of the SCSI drives that I have seen report things like
temperature and power on hours do so via vendor unique log pages/
paramters.
It specifically discusses interpreting attribute 194, the (ahem)
Device Temperature attribute where the temp of the drive is reported.
This still won't help you with SCSI - but if you look at the T10
Primary Commands documentation under LOG PAGE 0Dh you'll see that
there is an optional temperature log page - you'll have to check the
individual SCSI specs for the disks you are interested in to see if
they support this page. Seagate seems to, I don't know about the other
manufacturers.
So, you could write an application to use the SCSI LOG SENSE command
to retrieve this data periodically and display it or act upon it in
whatever way you'd like. If a given drive doesn't support that page
the command will fail and you can just program around it.
Here's some of the definition from the T10 spec:
8.2.11 Temperature page
This subclause defines the optional temperature log page (page code
0Dh). A device server that implements the
temperature page shall implement parameter 0000h. Parameter 0001h is
optional and may be either omitted or set
to a value indicating that the parameter is not defined. Table 144
shows the temperature page with all parameters
present.
I'm not clever enough to reproduce the table, but you can see below
that the temperature will be in byte 9 of the log page data.
The temperature sensed in the device at the time the LOG SENSE command
is performed shall be returned in the
parameter field defined by parameter code 0000h. The one byte binary
value specifies the temperature of the
device in degrees Celsius. Temperatures equal to or less than zero
degrees Celsius shall be indicated by a value
of zero. If the device server is unable to detect a valid temperature
because of a sensor failure or other condition,
the value returned shall be FFh. The temperature should be reported
with an accuracy of plus or minus three
Celsius degrees while the device is operating at a steady state within
the environmental limits specified for the
device. No comparison is performed between the temperature value
specified in parameter 0000h and the
reference temperature specified in parameter 0001h. The state of the
parameter control bits for parameter 0000h
is specified in table 145.
A reference temperature for the device may optionally be provided by
the device using parameter code 0001h. If
no reference temperature is provided, the parameter may not be
provided in the log page or alternatively, the
reference temperature value may be set to the value of FFh. The one
byte binary value should reflect the
maximum reported sensor temperature in degrees Celsius at which the
device is capable of operating continuously
without degrading the device's operation or reliability beyond
manufacturer accepted limits. The reference temperature
may change for vendor specific reasons. The state of the parameter
control bits for parameter 0001h is
specified in table 145.
Good luck, it should be a fun little app to write!
Re: How to measure the temperature of SCSI-harddisks?
Les Matthew <lesmcdm@clara.co.uk> wrote:
> Markus R. Ke?ler wrote:
>> Dear all,
>>
>> So, if someone can point me to some spec or other helpful information,
>> please let me know!
>>
>> Best regards,
>>
>> Markus
>>
>> --
>
> Don't all modern HDD support S.M.A.R.T. ?
Re: How to measure the temperature of SCSI-harddisks?
On Aug 15, 1:09 am, "Folkert Rienstra" <see_reply...@myweb.nl> wrote:
> Here's what the snipping troll conveniently left out:
>
>
>
> "Folkert Rienstra" <see_reply...@myweb.nl> wrote in messagenews:46c0e5a0$0$97218$892e7fe2@authen.yello w.readfreenews.net
> > <mikej...@gmail.com> wrote in messagenews:1187040873.826467.263850@g12g2000prg.g ooglegroups.com
> > > ATA SMART and SCSI SMART are completely different.
>
> > > ATA SMART will give you parameters and values,
>
> > No. Really?
>
> > > SCSI SMART is all but useless - it will just set a flag to say a SMART
> > > event happened.
>
> > So will ATA SMART, so where's the difference, o great expert.
>
> > > It could tell you that a temperature event happened, but it won't tell you
> > > what the temperature was.
>
> > Neither will ATA S.M.A.R.T.
> > It won't even tell you that is was the temperature. That is for you to find out.
>
> > > It's funny that the more expensive SCSI solutions do a much poorer job
> > > in this respect than their less expensive ATA cousins.
>
> > Or maybe the ATA drives have way more parameters that are not all that
> > useful to the user.
>
> > Btw, IBM drives keep very extensive error logs complete with timestamps
> > These error logs could be printed out using a program called codeupdt.
>
> > > Some SCSI disks will report their temperature via a LOG PAGE,
>
> > > but I don't think
>
> > Maybe you should stop doing that.
>
> > > there is any standard in place to specify which page/parameter.
>
> > So the SCSI specs lag a bit behind with reality sometimes and drives
> > predating the specs are 'out of spec'.
>
> > > Most of the SCSI drives that I have seen report things like temperature
> > > and power on hours do so via vendor unique log pages/paramters.
> > Which end up in the specs eventually and then they are not Vendor Unique
> > anymore as Baeuerle pointed out in another post.
>
> The same post that that little troll stole from him, actually.
>
> "Folkert Rienstra" <see_reply...@myweb.nl> wrote in messagenews:46c0e5a0$0$97218$892e7fe2@authen.yello w.readfreenews.net
> > <mikej...@gmail.com> wrote in messagenews:1187040873.826467.263850@g12g2000prg.g ooglegroups.com
> > > Neither will ATA S.M.A.R.T.
> > > It won't even tell you that is was the temperature. That is for you to find out.
>
> Oh, what a creative snip. It almost makes me look bad if one doesn't
> bother to lookup the context in which it was written, which no doubt
> the troll was betting on.
>
>
>
> > In spite of comments like this - there is a good introduction to
> > reading/interpreting ATA SMART from Linux Journal at this url:
>
> All that it is the troll trying to hide that it was wrong.
>
>
>
> >http://www.linuxjournal.com/article/6983
>
> (Oh goody, that's only readable on a widescreen monitor)
>
> It clearly shows that the troll was just jabbering away as usual:
>
> "Starting with the ATA-4 standard, the requirement that disks
> maintain an internal Attribute table was dropped. Instead, the
> disks simply return an OK or NOT OK response to an inquiry
> about their health".
>
>
>
> > It specifically discusses interpreting attribute 194, the (ahem)
> > Device Temperature attribute where the temp of the drive is reported.
>
> Right, so you were wrong, troll.
> All the drive will tell you (on request!) is that an attribute 'failed'.
> You have to request the tables and look through them to find out which
> attribute has dipped below the threshold.
>
> At least SCSI will tell you through Additional Sense Code Qualifier
> what the problem was immediately after the fact happened, all in one go.
>
>
>
> > This still won't help you with SCSI - but if you look at the T10
> > Primary Commands documentation under LOG PAGE 0Dh you'll see thatpage 0x
> > there is an optional temperature log page -
>
> Which Baeuerle already pointed out in the post that you stole but
> you have to do it all over again. You are such an original little troll.
>
> > you'll have to check the individual SCSI specs for the disks you are
> > interested in to see if they support this page.
> > Seagate seems to, I don't know about the other manufacturers.
>
> Maybe you should lookup the meaning of specification/standard and what
> the purpose of such a specification/standard is when issued by standardi-
> zing bodies such as T10.
So, to cut through all of Folkerts' bluster and uselessness, yes, you
can write a program to issue LOG SENSE commands to read page 0x0D of a
SCSI disk, and if the drive supports that page it will return to you
the current temperature of the drive in degrees C.If the drive doesn't
support page 0x0D it will return a check condition. You could either
program around that, or you can also have the drive tell you what LOG
PAGES it does support, also via the LOG SENSE command.
Since Folkert is such an expert on all matters pertaining to computer
storage maybe he will help you get started writing the program?