Forward timestamps back from the pi to the roboRIO

This makes it so log reading can actually estimate the time offest of
the pi's and replay log files with pi data in them.

Change-Id: I15b9c53f5a49ef93bd562f208fa2b6b0fbec05c7
diff --git a/y2020/BUILD b/y2020/BUILD
index 4643ae8..59642fe 100644
--- a/y2020/BUILD
+++ b/y2020/BUILD
@@ -210,6 +210,7 @@
     src = "y2020_roborio.json",
     flatbuffers = [
         ":setpoint_fbs",
+        "//aos/events/logging:logger_fbs",
         "//aos/network:message_bridge_client_fbs",
         "//aos/network:message_bridge_server_fbs",
         "//aos/network:timestamp_fbs",
diff --git a/y2020/y2020_pi_template.json b/y2020/y2020_pi_template.json
index 4b04c6c..8217acd 100644
--- a/y2020/y2020_pi_template.json
+++ b/y2020/y2020_pi_template.json
@@ -36,12 +36,16 @@
       "source_node": "pi{{ NUM }}",
       "frequency": 10,
       "num_senders": 2,
+      "logger": "LOCAL_AND_REMOTE_LOGGER",
+      "logger_nodes": ["roborio"],
       "max_size": 200,
       "destination_nodes": [
         {
           "name": "roborio",
           "priority": 1,
-          "time_to_live": 5000000
+          "time_to_live": 5000000,
+          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
+          "timestamp_logger_nodes": ["roborio"]
         }
       ]
     },
diff --git a/y2020/y2020_roborio.json b/y2020/y2020_roborio.json
index 0ab9664..9f71f06 100644
--- a/y2020/y2020_roborio.json
+++ b/y2020/y2020_roborio.json
@@ -11,33 +11,7 @@
       "name": "/roborio/aos",
       "type": "aos.RobotState",
       "source_node": "roborio",
-      "frequency": 200,
-      "destination_nodes": [
-        {
-          "name": "pi1",
-          "priority": 2,
-          "timestamp_logger": "LOCAL_LOGGER",
-          "time_to_live": 10000000
-        },
-        {
-          "name": "pi2",
-          "priority": 2,
-          "timestamp_logger": "LOCAL_LOGGER",
-          "time_to_live": 10000000
-        },
-        {
-          "name": "pi3",
-          "priority": 2,
-          "timestamp_logger": "LOCAL_LOGGER",
-          "time_to_live": 10000000
-        },
-        {
-          "name": "pi4",
-          "priority": 2,
-          "timestamp_logger": "LOCAL_LOGGER",
-          "time_to_live": 10000000
-        }
-      ]
+      "frequency": 200
     },
     {
       "name": "/roborio/aos",
@@ -69,6 +43,30 @@
       "num_senders": 2
     },
     {
+      "name": "/roborio/aos/remote_timestamps/pi1",
+      "type": "aos.logger.MessageHeader",
+      "logger": "NOT_LOGGED",
+      "source_node": "roborio"
+    },
+    {
+      "name": "/roborio/aos/remote_timestamps/pi2",
+      "type": "aos.logger.MessageHeader",
+      "logger": "NOT_LOGGED",
+      "source_node": "roborio"
+    },
+    {
+      "name": "/roborio/aos/remote_timestamps/pi3",
+      "type": "aos.logger.MessageHeader",
+      "logger": "NOT_LOGGED",
+      "source_node": "roborio"
+    },
+    {
+      "name": "/roborio/aos/remote_timestamps/pi4",
+      "type": "aos.logger.MessageHeader",
+      "logger": "NOT_LOGGED",
+      "source_node": "roborio"
+    },
+    {
       "name": "/roborio/aos",
       "type": "aos.message_bridge.Timestamp",
       "source_node": "roborio",
@@ -79,21 +77,29 @@
         {
           "name": "pi1",
           "priority": 1,
+          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
+          "timestamp_logger_nodes": ["roborio"],
           "time_to_live": 5000000
         },
         {
           "name": "pi2",
           "priority": 1,
+          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
+          "timestamp_logger_nodes": ["roborio"],
           "time_to_live": 5000000
         },
         {
           "name": "pi3",
           "priority": 1,
+          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
+          "timestamp_logger_nodes": ["roborio"],
           "time_to_live": 5000000
         },
         {
           "name": "pi4",
           "priority": 1,
+          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
+          "timestamp_logger_nodes": ["roborio"],
           "time_to_live": 5000000
         }
       ]
@@ -177,16 +183,29 @@
         {
           "name": "pi1",
           "priority": 5,
+          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
+          "timestamp_logger_nodes": ["roborio"],
           "time_to_live": 5000000
         },
         {
           "name": "pi2",
           "priority": 5,
+          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
+          "timestamp_logger_nodes": ["roborio"],
           "time_to_live": 5000000
         },
         {
           "name": "pi3",
           "priority": 5,
+          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
+          "timestamp_logger_nodes": ["roborio"],
+          "time_to_live": 5000000
+        },
+        {
+          "name": "pi4",
+          "priority": 5,
+          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
+          "timestamp_logger_nodes": ["roborio"],
           "time_to_live": 5000000
         }
       ]