I'll chime in on this one too. From the smartmontools home page:
QUOTE
FireWire, USB, and SATA disks/systems
As for USB and FireWire (ieee1394) disks and tape drives, the news is not good. They appear to Linux as SCSI devices but their implementations do not usually support those SCSI commands needed by smartmontools. The ieee1394 consortium recently certified the first external enclosure (containing a ATA disk and a protocol bridge) as being compliant to the relevant standards. Such devices have already been on the market for about 3 years and they tend to only support the bare minimum of commands needed for device operation (i.e. SMART support is an unsupported extra).
Smartmontools should work correctly with SATA drives under both Linux 2.4 and 2.6 kernels, if you use the standard IDE drivers in drivers/ide. If you use the new libata drivers, it won't work correctly because libata doesn't yet support the needed ATA-passthrough ioctl() calls. Jeff Garzik, the libata developer, says that this support will be added to libata in the future. When this happens, we'll add support to smartmontools for a new SATA/libata device type '-d sata'. Typically, to force an SATA disk to run using the standard (non-libata) drivers, you must use the BIOS to select "legacy mode" for the controller. If the IDE driver doesn't support your particular SATA controller, or the controller doesn't have a legacy interface, then only libata can be used. Unless the hard disk controller on the system motherboard is Intel, VIA or nVidia, standard IDE drivers may not work
Note: an unofficial patch to libata that allows smartmontools to be used with the standard '-d ata' device type was posted to the linux kernel mailing list at the end of August 2004. The patch is included in the libata-dev patchset that can be applied to a recent Linux kernel (>= 2.6.9). With a SATA disk driven by a libata driver, smartmontools can now be used by specifying both the device type 'ata' and the SCSI device corresponding to this disk, for example, smartctl -i -d ata /dev/sda. The patch is still under development and it is probably best to make sure that the disk is idle before trying smartmontools.