Plugin car.sensors

car.sensors

Provides access to custom automotive sensors.

Members

Sensor

Sensor type enumeration.

NOTE: This is provided as an example only. This API is intended to be a custom implementation for each system to access its specific sensor data.

Properties:
Name Type Description
FUEL_LEVEL Number Fuel level (0 to 100%).
COOLANT_LEVEL Number Coolant level (0 to 100%).
COOLANT_TEMPERATURE Number Coolant temperature.
ENGINE_OIL_PRESSURE Number Engine oil pressure (>=0 PSI).
ENGINE_OIL_LEVEL Number Engine oil level (0 to 100%).
ENGINE_OIL_TEMPERATURE Number Engine oil temperature.
RPM Number Engine RPM (>=0).
SPEED Number Vehicle speed (>=0).
BRAKE_FLUID_LEVEL Number Brake fluid level (0 to 100%).
BRAKE_ABS_ENABLED Boolean ABS brakes (true for on; default is true).
BRAKE_PAD_WEAR_FRONTLEFT Number Front left brake pad wear (0 to 100%).
BRAKE_PAD_WEAR_FRONTRIGHT Number Front right brake pad wear (0 to 100%).
BRAKE_PAD_WEAR_REARLEFT Number Rear left brake pad wear (0 to 100%).
BRAKE_PAD_WEAR_REARRIGHT Number Rear right brake pad wear (0 to 100%).
BRAKE_ABS_FRONTLEFT Boolean Front left ABS (true for on; default is true).
BRAKE_ABS_FRONTRIGHT Boolean Front right ABS (true for on; default is true).
BRAKE_ABS_REARLEFT Boolean Rear left ABS (true for on; default is true).
BRAKE_ABS_REARRIGHT Boolean Rear right ABS (true for on; default is true).
TIRE_PRESSURE_FRONTLEFT Number Front left tire pressure (>=0 PSI).
TIRE_PRESSURE_FRONTRIGHT Number Front right tire pressure (>=0 PSI).
TIRE_PRESSURE_REARLEFT Number Rear left tire pressure (>=0 PSI).
TIRE_PRESSURE_REARRIGHT Number Rear right tire pressure (>=0 PSI).
TIRE_WEAR_FRONTLEFT Number Front left tire wear (0 to 100%).
TIRE_WEAR_FRONTRIGHT Number Front right tire wear (0 to 100%).
TIRE_WEAR_REARLEFT Number Rear left tire wear (0 to 100%).
TIRE_WEAR_REARRIGHT Number Rear right tire wear (0 to 100%).
LIGHT_HEADLIGHT_LEFT Boolean Left head light (true for on).
LIGHT_HEADLIGHT_RIGHT Boolean Right head light (true for on).
LIGHT_TAILLIGHT_LEFT Boolean Left tail light (true for on).
LIGHT_TAILLIGHT_RIGHT Boolean Right tail light (true for on).
TRANSMISSION_FLUID_LEVEL Number Transmission fluid level (0 to 100%).
TRANSMISSION_FLUID_TEMPERATURE Number Transmission fluid temperature (-273.15 to 1000 degrees Fahrenheit).
TRANSMISSION_CLUTCH_WEAR Number Clutch wear level (0 to 100%).
TRANSMISSION_GEAR String Transmission gear (One of: p,r,n,d,1,2,3,4,5,6,7,8).
WASHERFLUID_LEVEL Number Washer fluid level (0 to 100%).

Methods

cancelWatch

Stop watching sensor changes
Parameters:
Name Type Description
watchId Number The watch ID as returned by car.sensors.watchSensors().
Example
car.sensors.cancelWatch(watchId);

get

Return the current vehicle sensors

If successful, the successCallback method is called with an object describing the available sensors, their location (if applicable), and their values.

Parameters:
Name Type Argument Description
successCallback Function The function to call with the result on success.
errorCallback Function <optional>
The function to call if there is an error.
sensors Array <optional>
A list of car.sensor.Sensor values to whitelist.
Examples
 

//define your callback function(s)
function successCallback(sensorData) {
        //iterate through all the sensors
         var sensors = Object.keys(sensorData);
        for (var i=0; i<sensors.length; i++) {
            console.log("sensor name = " + sensors[i] + "; sensor value = " + sensorData[sensors[i]]);
        }

        //get the speed
        if (typeof sensorData[car.sensors.Sensor.SPEED] !== 'undefined') {
            console.log("speed = " + sensorData[car.sensors.Sensor.SPEED]);
        }
}

function errorCallback(error) {
        console.log(error.code, error.msg);
}

//optional: define a list of sensors by which to filter
var sensors = [ car.sensors.Sensor.SPEED, car.sensors.Sensor.RPM ];
//NOTE: this is equivalent to doing: var sensors = [ 'speed', 'rpm' ];

//call the method
car.sensors.get(successCallback, errorCallback, sensors);
 REST - with a filter

Request:
http://<car-ip>/car/sensors/get?sensors=speed,rpm

Success Response:
{
        code: 1,
        data: { speed: 50, rpm: 2000 }
}

Error Response:
{
        code: -1,
        msg: "An error has occurred"
}

watchSensors

Watch for sensor changes
Parameters:
Name Type Description
callback Function The function to call when a change is detected.
Returns:
An ID for the added watch.
Type
  • String
Example
//define a callback function
function myCallback(sensorData) {
        //iterate through all the sensors
         var sensors = Object.keys(sensorData);
        for (var i=0; i<sensors.length; i++) {
            console.log("sensor name = " + sensors[i] + "; sensor value = " + sensorData[sensors[i]]);
        }
}

var watchId = car.sensors.watchSensors(myCallback);