3 var batteryVoltageStream;
6 var engineCoolantStream;
8 var intakeAirTempStream;
18 function calcAverageMpg(newMpg) {
19 prevMpg += parseInt(newMpg);
22 var averageMpg = prevMpg / mpgReadings;
23 $("#avgmpg").text(Math.floor(averageMpg));
30 function calcAverageVelocity(newVel) {
31 prevVel += parseInt(newVel);
34 var averageVel = prevVel / velReadings;
35 $("#avgspeed").text(Math.floor(averageVel));
40 vehicle.subscribe(["running_status_speedometer", "running_status_engine_speed", "running_status_transmission_gear_status", "running_status_steering_wheel_angle"]);
41 vehicle.subscribe(["running_status_engine_speed"]);
42 vehicle.subscribe(["running_status_transmission_gear_status"]);
43 vehicle.subscribe(["running_status_steering_wheel_angle"]);
44 vehicle.subscribe(["ThrottlePosition"]);
45 vehicle.subscribe(["EngineCoolantTemperature"]);
47 document.addEventListener("running_status_speedometer",function(data) {
49 adjvalue = data.value;
50 var velocityUnits = $('#velocityUnits');
52 if(velocityUnits.text() === "MPH")
53 adjvalue = Math.floor(data.value * 0.62137);
55 $('#velocity').text(adjvalue);
57 calcAverageVelocity(adjvalue);
60 document.addEventListener("running_status_engine_speed", function(data) {
61 var value = data.value;
62 if(value > 10000) value =10000;
63 var needleDegs = value / 10000 * 180;
64 $('#rpms').text(value);
65 $('#rpmNeedle').css("-webkit-transform","rotate("+needleDegs+"deg)");
68 document.addEventListener("running_status_transmission_gear_status",function(data) {
70 $('#gear').text(value);
73 document.addEventListener("running_status_steering_wheel_angle", function(data) {
75 $('#wheel').css("-webkit-transform","rotate("+value+"deg)");
78 document.addEventListener("ThrottlePosition", function(data) {
80 var needleDegs = (value / 100 * 180) + 270
82 $('#throttleNeedle').css("-webkit-transform","rotate("+needleDegs+"deg)");
86 document.addEventListener("EngineCoolantTemperature", function(data) {
88 var needleDegs = (value / 180 * 70) + 270
90 $('#engineCoolantNeedle').css("-webkit-transform","rotate("+needleDegs+"deg)");
98 function connect(addy)
100 vehicle = new Vehicle(connected, function(){$('#velocity').text("ERR");}, "ws://"+addy, "http-only");
103 window.onload = function()
105 var addy = "localhost:23000";
107 if(typeof(Storage)!== "undefined")
109 addyTemp = localStorage.address;
110 if(addyTemp !== undefined) addy = addyTemp;
113 $("#address").val(addy);
114 $("#address").change(function() { localStorage.address = $("#address").val(); });
115 $("#connectButton").click(function() { connect(addy) });
121 var velocityUnits = $('#velocityUnits');
122 velocityUnits.click(function() {
123 if(velocityUnits.text() === "MPH")
125 velocityUnits.text("KPH");
127 else velocityUnits.text("MPH");