changed samplig
[goodfet] / client / FordExperiments.py
index 15e59b6..9d93376 100644 (file)
@@ -888,13 +888,13 @@ class FordExperiments(experiments):
         print "compression: %s " %music.getcompname()
         
         
-        numFramesToRead = music.getframerate()*.1 # grab .1s of audio
+        numFramesToRead = music.getframerate()*.05 # grab .1s of audio
                 
         while(1):
 
             runningSum = 0
             
-            sample = music.readframes(numFramesToRead) # grab .1s of audio
+            sample = music.readframes(int(numFramesToRead)) # grab .1s of audio
             
             length = len(sample)
             
@@ -902,9 +902,11 @@ class FordExperiments(experiments):
                 runningSum += ord(sample[i])   #average the dual-channel
                 runningSum += ord(sample[i+2])
             
-            avg = runningSum/(length / 2)              # we used 2 of every 4 frames, so divide length by 2
-
-            val = (40 + 5*(avg-120))                   # normalize to speedometer range of values
+             avg = math.fabs(runningSum/(length /2) -127)       # we used 2 of every 4 frames, so divide length by 2
+             if( sampNum > 0):
+                 avg = (avg+avgprev)/2
+                 
+            val = int(avg*15 + 40)                     # normalize to speedometer range of values
             
             print "speedometerVal = %f " %val;
             print "speed = %f" %(1.617*val-63.5)       # speed we're trying to display
@@ -935,13 +937,13 @@ class FordExperiments(experiments):
 #sample width: 2 --> 2 bytes per sample
 #framerate: 44100 
 
-       def engineDiagnostic(self, data):
+    def engineDiagnostic(self, data):
        
-               self.addFilter([513, 513, 513,513])
+        self.addFilter([513, 513, 513,513])
                
-               startTime = tT.time()
+        startTime = tT.time()
         while((tT.time() - startTime ) < 15):
-                       packet = None;
+                packet = None;
         
                        #catch a packet to decode
                while (packet == None):
@@ -950,7 +952,7 @@ class FordExperiments(experiments):
                rpm = 64.5 * ord(packet[5]) - 61.88
                mph = 1.617 * ord(packet[9]) - 63.5
 
-               data.put("Engine RPM: %d Current Speed: %d mph"%(rpm, mph))
+               data.put("Engine RPM: %d Current Speed: %d mph"%(rpm, mph))
                time.sleep(.5)