Merge branch 'sensor-data-timing' into hardware-interface-integration

Conflicts:
	aos/common/time.h
diff --git a/frc971/input/input.gyp b/frc971/input/input.gyp
index c62365b..27d6ae9 100644
--- a/frc971/input/input.gyp
+++ b/frc971/input/input.gyp
@@ -8,7 +8,6 @@
         'header_path': 'frc971/input',
       },
       'dependencies': [
-        '<(AOS)/build/aos.gyp:libaos',
         '<(AOS)/common/common.gyp:controls',
       ],
       'includes': ['../../aos/build/queues.gypi'],
@@ -20,9 +19,7 @@
         'JoystickReader.cc',
       ],
       'dependencies': [
-        '<(AOS)/build/aos.gyp:libaos',
         '<(AOS)/atom_code/input/input.gyp:joystick',
-        '<(AOS)/common/network/network.gyp:socket',
         'actions',
         '<(DEPTH)/frc971/control_loops/control_loops.gyp:control_loops',
         '<(DEPTH)/frc971/queues/queues.gyp:queues',
@@ -30,35 +27,50 @@
       ],
     },
     {
-      'target_name': 'SensorReader',
-      'type': '<(aos_target)',
+      'target_name': 'sensor_unpacker',
+      'type': 'static_library',
       'sources': [
-        'SensorReader.cc',
+        'sensor_unpacker.cc',
       ],
       'dependencies': [
-        '<(AOS)/build/aos.gyp:libaos',
         '<(DEPTH)/frc971/control_loops/control_loops.gyp:control_loops',
         '<(DEPTH)/frc971/queues/queues.gyp:queues',
-        '<(AOS)/common/network/network.gyp:socket',
-      ],
-      'conditions': [
-        ['OS!="crio"', {
-          'dependencies': [
-            '<(AOS)/atom_code/atom_code.gyp:init',
-          ],
-        }],
       ],
     },
     {
-      'target_name': 'SensorWriter',
-      'type': '<(aos_target)',
+      'target_name': 'sensor_receiver',
+      'type': 'executable',
       'sources': [
-        'SensorWriter.cc',
+        'sensor_receiver.cc',
       ],
       'dependencies': [
-        '<(AOS)/build/aos.gyp:libaos',
-        '<(DEPTH)/frc971/control_loops/control_loops.gyp:control_loops',
+        '<(AOS)/atom_code/atom_code.gyp:init',
+        'sensor_unpacker',
+        '<(AOS)/common/sensors/sensors.gyp:sensor_receiver',
+        '<(AOS)/atom_code/atom_code.gyp:init',
+      ],
+    },
+    {
+      'target_name': 'sensor_packer',
+      'type': 'static_library',
+      'sources': [
+        'sensor_packer.cc',
+      ],
+      'dependencies': [
+        '<(EXTERNALS):WPILib',
         '<(AOS)/crio/shared_libs/shared_libs.gyp:interrupt_notifier',
+        '<(AOS)/common/common.gyp:mutex',
+        '<(AOS)/common/common.gyp:time',
+        '<(AOS)/crio/hardware/hardware.gyp:counter',
+        '<(AOS)/crio/hardware/hardware.gyp:digital_source',
+        '<(DEPTH)/frc971/control_loops/index/index.gyp:index_lib',
+      ],
+      'export_dependent_settings': [
+        '<(EXTERNALS):WPILib',
+        '<(AOS)/crio/shared_libs/shared_libs.gyp:interrupt_notifier',
+        '<(AOS)/common/common.gyp:mutex',
+        '<(AOS)/crio/hardware/hardware.gyp:counter',
+        '<(AOS)/crio/hardware/hardware.gyp:digital_source',
       ],
     },
     {