diff --git a/smartmontools/os_freebsd.cpp b/smartmontools/os_freebsd.cpp
index fcaa2a512203b5d04fa3519eb66d7aa8ac890265..7994f36eb5d5de64d4a241ccec5001d6b3589ea2 100644
--- a/smartmontools/os_freebsd.cpp
+++ b/smartmontools/os_freebsd.cpp
@@ -1730,10 +1730,9 @@ cam_get_umassno(char * devname) {
 	}
   else {
     // now check if we are working with USB device, see umass.c
-    if(strcmp(ccb.cpi.sim_vid,"FreeBSD") == 0 
-      && strcmp(ccb.cpi.hba_vid,"USB SCSI")==0) {
-      bus=ccb.cpi.bus_id; // bus_id will match umass number
-    }
+    printf("n=%s\n",ccb.cpi.dev_name);
+    if(strcmp(ccb.cpi.dev_name,"umass-sim") == 0) 
+      bus=ccb.cpi.unit_number; // unit_number will match umass number
   }
   // close cam device, we don`t need it anymore
   cam_close_device(cam_dev);