3 var batteryVoltageStream;
6 var engineCoolantStream;
8 var intakeAirTempStream;
19 function calcAverageMpg(newMpg) {
20 prevMpg += parseInt(newMpg);
23 var averageMpg = prevMpg / mpgReadings;
24 $("#avgmpg").text(Math.floor(averageMpg));
31 function calcAverageVelocity(newVel) {
32 prevVel += parseInt(newVel);
35 var averageVel = prevVel / velReadings;
36 $("#avgspeed").text(Math.floor(averageVel));
41 /*vehicle.subscribe(["running_status_speedometer", "running_status_engine_speed", "running_status_transmission_gear_status", "running_status_steering_wheel_angle"]);
42 //vehicle.subscribe(["running_status_engine_speed"]);
43 //vehicle.subscribe(["running_status_transmission_gear_status"]);
44 //vehicle.subscribe(["running_status_steering_wheel_angle"]);
45 vehicle.subscribe(["ThrottlePosition"]);
46 vehicle.subscribe(["EngineCoolantTemperature"]);
47 vehicle.subscribe(["MachineGunTurretStatus"]);
48 vehicle.subscribe(["AirIntakeTemperature"]);*/
50 vehicle.subscribe(["VehicleSpeed","EngineSpeed","MassAirFlow","AirIntakeTemperature","ThrottlePosition","EngineCoolantTemperature", "TransmissionShiftPosition",
51 "SteeringWheelAngle","MachineGunTurretStatus"]);
53 document.addEventListener("VehicleSpeed",function(data) {
55 adjvalue = data.value.value;
57 var velocityUnits = $('#velocityUnits');
59 if(velocityUnits.text() === "MPH")
60 adjvalue = Math.floor(adjvalue * 0.62137);
62 $('#velocity').text(adjvalue);
64 calcAverageVelocity(adjvalue);
67 document.addEventListener("EngineSpeed", function(data) {
68 var value = data.value.value;
69 if(value > 10000) value =10000;
70 var needleDegs = value / 10000 * 180;
71 $('#rpms').text(value);
72 $('#rpmNeedle').css("-webkit-transform","rotate("+needleDegs+"deg)");
75 document.addEventListener("TransmissionShiftPosition",function(data) {
76 value = data.value.value;
78 $('#gear').text('Reverse');
80 $('#gear').text('Neutral');
81 else $('#gear').text(value);
85 document.addEventListener("SteeringWheelAngle", function(data) {
86 value = data.value.value;
87 $('#wheel').css("-webkit-transform","rotate("+value+"deg)");
88 $('#machinegun').css("-webkit-transform","rotate("+value+"deg)");
91 document.addEventListener("ThrottlePosition", function(data) {
92 value = data.value.value;
93 var needleDegs = (value / 100 * 180) + 270
95 $('#throttleNeedle').css("-webkit-transform","rotate("+needleDegs+"deg)");
99 document.addEventListener("EngineCoolantTemperature", function(data) {
100 value = data.value.value;
101 var needleDegs = (value / 180 * 70) + 270
103 $('#engineCoolantNeedle').css("-webkit-transform","rotate("+needleDegs+"deg)");
107 document.addEventListener("MachineGunTurretStatus", function(data) {
108 value = data.value.value;
110 $('#machineGunTurretPopup').popup('open');
111 else $('#machineGunTurretPopup').popup('close');
115 document.addEventListener("MassAirFlow", function(data) {
116 value = data.value.value;
119 var mpg = Math.floor((14.7 * 6.17 * 4.54 * vss * 0.621371) / (3600 * maf / 100));
131 function connect(addy)
133 vehicle = new Vehicle(connected, function(){$('#velocity').text("ERR");}, "ws://"+addy, "http-only");
136 window.onload = function()
138 var addy = "127.0.0.1:23000";
140 if(typeof(Storage)!== "undefined")
142 addyTemp = localStorage.address;
143 if(addyTemp !== undefined) addy = addyTemp;
146 $("#address").val(addy);
147 $("#address").change(function() { localStorage.address = $("#address").val(); });
148 $("#connectButton").click(function() { connect(addy) });
154 var velocityUnits = $('#velocityUnits');
155 velocityUnits.click(function() {
156 if(velocityUnits.text() === "MPH")
158 velocityUnits.text("KPH");
160 else velocityUnits.text("MPH");