diff --git a/motors/decode_dump.py b/motors/decode_dump.py
index 1010e88..27e1757 100755
--- a/motors/decode_dump.py
+++ b/motors/decode_dump.py
@@ -31,28 +31,30 @@
 
 def current(reading, ref):
   reading_voltage = reading / 4096 * 3.3  / 1.47 * (0.768 + 1.47)
+  reading_voltage = reading / 4096 * 3.3  / 18.0 * (18.0 + 10.0)
   #reading_ref = ref / 4096 * 3.3
   reading_ref = 2.5
-  reading_ref = 0
-  return (reading_voltage - reading_ref) / 50 / 0.0003
+  #reading_ref = 0
+  #return (reading_voltage - reading_ref) / 50 / 0.0003
+  return (reading_voltage - reading_ref) / 0.195
 
 with open(sys.argv[1], 'w') as out:
-  out.write('current0.0,current1.0,current2.0,current0.1,current1.1,current2.1,count\n')
+  out.write('balanced0,balanced1,balanced2,current0.0,current1.0,current2.0,current0.1,current1.1,current2.1,count\n')
   #for point in decoded[2000:7200]:
   for point in decoded:
     out.write(','.join(str(d) for d in (
         current(point[0], point[6]),
-    	current(point[1], point[6]),
-    	current(point[2], point[6]),
-        #current(point[3], point[6]),
-    	#current(point[4], point[6]),
-    	#current(point[5], point[6]),
-        point[3] / 100.0,
-        point[4] / 100.0,
-        point[5] / 100.0,
-        point[6] / 100.0,
-        point[7] / 100.0,
-        point[8] / 100.0,
+        current(point[1], point[6]),
+        current(point[2], point[6]),
+        current(point[3], point[6]),
+        current(point[4], point[6]),
+        current(point[5], point[6]),
+        current(point[6], point[6]),
+        current(point[7], point[6]),
+        current(point[8], point[6]),
+        #point[6] / 100.0,
+        #point[7] / 100.0,
+        #point[8] / 100.0,
         point[9] / 100.0,
         point[10] / 100.0,
         )) + '\n')
