finished getting all of the usb stuff working nicely(ish)
diff --git a/aos/atom_code/starter/starter.sh b/aos/atom_code/starter/starter.sh
index 72478af..394ae7c 100755
--- a/aos/atom_code/starter/starter.sh
+++ b/aos/atom_code/starter/starter.sh
@@ -3,7 +3,7 @@
 echo '/home/driver/tmp/robot_logs/%e-%s-%p-%t.coredump' > /proc/sys/kernel/core_pattern
 
 #echo $$ > /var/run/`basename $0`.pid IT FORKS AFTER THIS!!!!
-insmod /home/driver/robot_code/bin/aos_module.ko
+#insmod /home/driver/robot_code/bin/aos_module.ko
 #chrt -p 45 `pidof sshd`
 chrt -o 0 bash -c "export PATH=$PATH:/home/driver/robot_code/bin; starter_loop.sh $*" &
 #chrt -o 0 bash -c "while true; do cd /home/driver/mjpg-streamer2; ./server.sh; sleep 5; done" &
diff --git a/aos/common/inttypes.h b/aos/common/inttypes.h
index d243860..a96130f 100644
--- a/aos/common/inttypes.h
+++ b/aos/common/inttypes.h
@@ -9,6 +9,7 @@
 #include <inttypes.h>
 #else
 #define PRId64 "lld"
+#define PRIu64 "llu"
 
 // It warns about just "d", but not this, which is kind of weird because
 // sizeof(int) == sizeof(long) == sizeof(int32_t) == 4, but oh well.
diff --git a/aos/crio/motor_server/MotorServer.h b/aos/crio/motor_server/MotorServer.h
index 2f7fbde..032f526 100644
--- a/aos/crio/motor_server/MotorServer.h
+++ b/aos/crio/motor_server/MotorServer.h
@@ -45,6 +45,10 @@
 
   static const int32_t WORK_PRIORITY = 100;
 
+  // Needs to be called by some other piece of code every 10ms (after any
+  // control loops have been run etc).
+  static void WriteOutputs();
+
  private:
   template<class Values>
   friend class CRIOControlLoopRunner;
@@ -54,9 +58,6 @@
   // Would take days to overflow.
   static int count;
   static SEM_ID motorSync;
-  // Gets called by CRIOControlLoopRunner every 10ms after it runs all of the
-  // control loops.
-  static void WriteOutputs();
 
   static void RunReaderTask();
   static Task *tcpTask;
diff --git a/aos/crio/motor_server/motor_server.gyp b/aos/crio/motor_server/motor_server.gyp
index 09de2f3..1e88ef8 100644
--- a/aos/crio/motor_server/motor_server.gyp
+++ b/aos/crio/motor_server/motor_server.gyp
@@ -65,6 +65,7 @@
         '<(AOS)/crio/shared_libs/shared_libs.gyp:ByteBuffer',
         'output',
         '<(AOS)/common/network/network.gyp:socket',
+        '<(AOS)/common/common.gyp:controls',
       ],
       'export_dependent_settings': [
         '<(EXTERNALS):WPILib',
@@ -74,6 +75,7 @@
         '<(AOS)/common/network/network.gyp:socket',
         '<(AOS)/crio/shared_libs/shared_libs.gyp:ByteBuffer',
         '<(AOS)/common/network/network.gyp:socket',
+        '<(AOS)/common/common.gyp:controls',
       ],
     },
   ],