@@ -438,23 +438,41 @@ class UltrasonicSensor(Sensor):
438438 def __init__ (self , address = None , name_pattern = SYSTEM_DEVICE_NAME_CONVENTION , name_exact = False , ** kwargs ):
439439 super (UltrasonicSensor , self ).__init__ (address , name_pattern , name_exact , driver_name = ['lego-ev3-us' , 'lego-nxt-us' ], ** kwargs )
440440
441+ @property
442+ def distance_centimeters_continuous (self ):
443+ self .mode = self .MODE_US_DIST_CM
444+ return self .value (0 ) * self ._scale ('US_DIST_CM' )
445+
446+ @property
447+ def distance_centimeters_ping (self ):
448+ self .mode = self .MODE_US_SI_CM
449+ return self .value (0 ) * self ._scale ('US_DIST_CM' )
450+
441451 @property
442452 def distance_centimeters (self ):
443453 """
444454 Measurement of the distance detected by the sensor,
445455 in centimeters.
446456 """
447- self .mode = self .MODE_US_DIST_CM
448- return self .value (0 ) * self ._scale ('US_DIST_CM' )
457+ return self .distance_centimeters_continuous
458+
459+ @property
460+ def distance_inches_continuous (self ):
461+ self .mode = self .MODE_US_DIST_IN
462+ return self .value (0 ) * self ._scale ('US_DIST_IN' )
463+
464+ @property
465+ def distance_inches_ping (self ):
466+ self .mode = self .MODE_US_SI_IN
467+ return self .value (0 ) * self ._scale ('US_DIST_IN' )
449468
450469 @property
451470 def distance_inches (self ):
452471 """
453472 Measurement of the distance detected by the sensor,
454473 in inches.
455474 """
456- self .mode = self .MODE_US_DIST_IN
457- return self .value (0 ) * self ._scale ('US_DIST_IN' )
475+ return self .distance_inches_continuous
458476
459477 @property
460478 def other_sensor_present (self ):
@@ -463,7 +481,7 @@ def other_sensor_present(self):
463481 be heard nearby.
464482 """
465483 self .mode = self .MODE_US_LISTEN
466- return self .value (0 )
484+ return bool ( self .value (0 ) )
467485
468486
469487class GyroSensor (Sensor ):
0 commit comments