Send less data to the RIO

The wakeups were slaughtering the CPU load on the RIO.  Most things only
need to talk to the IMU pi, so drop the connection to the RIO.  This
saves 20% CPU usage, making it so we no longer get disabled
periodically.

Change-Id: Ib48cdf1e34b8b9dbbe7ff67d486932d08004e5cc
Signed-off-by: Austin Schuh <austin.linux@gmail.com>
diff --git a/y2023/y2023_imu.json b/y2023/y2023_imu.json
index 535d97f..5aae0a9 100644
--- a/y2023/y2023_imu.json
+++ b/y2023/y2023_imu.json
@@ -126,20 +126,10 @@
       "num_senders": 20,
       "max_size": 2048,
       "logger_nodes": [
-        "roborio",
         "logger"
       ],
       "destination_nodes": [
         {
-          "name": "roborio",
-          "priority": 5,
-          "time_to_live": 5000000,
-          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
-          "timestamp_logger_nodes": [
-            "imu"
-          ]
-        },
-        {
           "name": "logger",
           "priority": 5,
           "time_to_live": 5000000,
@@ -172,20 +162,10 @@
       "num_senders": 2,
       "logger": "LOCAL_AND_REMOTE_LOGGER",
       "logger_nodes": [
-        "roborio",
         "logger"
       ],
       "destination_nodes": [
         {
-          "name": "roborio",
-          "priority": 5,
-          "time_to_live": 5000000,
-          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
-          "timestamp_logger_nodes": [
-            "imu"
-          ]
-        },
-        {
           "name": "logger",
           "priority": 5,
           "time_to_live": 5000000,
@@ -197,13 +177,6 @@
       ]
     },
     {
-      "name": "/imu/aos/remote_timestamps/roborio/imu/aos/aos-starter-StarterRpc",
-      "type": "aos.message_bridge.RemoteMessage",
-      "frequency": 20,
-      "source_node": "imu",
-      "max_size": 208
-    },
-    {
       "name": "/imu/aos/remote_timestamps/logger/imu/aos/aos-starter-StarterRpc",
       "type": "aos.message_bridge.RemoteMessage",
       "frequency": 20,
@@ -366,35 +339,6 @@
       "max_size": 200
     },
     {
-      "name": "/roborio/aos",
-      "type": "aos.starter.Status",
-      "source_node": "roborio",
-      "logger": "LOCAL_AND_REMOTE_LOGGER",
-      "logger_nodes": [
-        "imu"
-      ],
-      "destination_nodes": [
-        {
-          "name": "imu",
-          "priority": 5,
-          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
-          "timestamp_logger_nodes": [
-            "roborio"
-          ],
-          "time_to_live": 5000000
-        }
-      ]
-    },
-    {
-      "name": "/roborio/aos/remote_timestamps/imu/roborio/aos/aos-starter-Status",
-      "type": "aos.message_bridge.RemoteMessage",
-      "source_node": "roborio",
-      "logger": "NOT_LOGGED",
-      "frequency": 50,
-      "num_senders": 2,
-      "max_size": 200
-    },
-    {
       "name": "/localizer",
       "type": "frc971.IMUValuesBatch",
       "source_node": "imu",
diff --git a/y2023/y2023_logger.json b/y2023/y2023_logger.json
index 9b0ba55..df3a55b 100644
--- a/y2023/y2023_logger.json
+++ b/y2023/y2023_logger.json
@@ -37,7 +37,7 @@
           "priority": 2,
           "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
           "timestamp_logger_nodes": [
-            "roborio"
+            "logger"
           ],
           "time_to_live": 5000000
         }
@@ -64,7 +64,11 @@
         {
           "name": "logger",
           "priority": 1,
-          "time_to_live": 5000000
+          "time_to_live": 5000000,
+          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
+          "timestamp_logger_nodes": [
+            "pi1"
+          ]
         }
       ]
     },
@@ -80,7 +84,11 @@
         {
           "name": "logger",
           "priority": 1,
-          "time_to_live": 5000000
+          "time_to_live": 5000000,
+          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
+          "timestamp_logger_nodes": [
+            "pi2"
+          ]
         }
       ]
     },
@@ -96,6 +104,10 @@
         {
           "name": "logger",
           "priority": 1,
+          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
+          "timestamp_logger_nodes": [
+            "pi3"
+          ],
           "time_to_live": 5000000
         }
       ]
@@ -112,6 +124,10 @@
         {
           "name": "logger",
           "priority": 1,
+          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
+          "timestamp_logger_nodes": [
+            "pi4"
+          ],
           "time_to_live": 5000000
         }
       ]
@@ -157,64 +173,16 @@
       "name": "/logger/aos",
       "type": "aos.starter.Status",
       "source_node": "logger",
-      "logger": "LOCAL_AND_REMOTE_LOGGER",
       "frequency": 50,
       "num_senders": 20,
-      "max_size": 2000,
-      "logger_nodes": [
-        "roborio"
-      ],
-      "destination_nodes": [
-        {
-          "name": "roborio",
-          "priority": 5,
-          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
-          "timestamp_logger_nodes": [
-            "logger"
-          ],
-          "time_to_live": 5000000
-        }
-      ]
-    },
-    {
-      "name": "/logger/aos/remote_timestamps/roborio/logger/aos/aos-starter-Status",
-      "type": "aos.message_bridge.RemoteMessage",
-      "source_node": "logger",
-      "logger": "NOT_LOGGED",
-      "frequency": 50,
-      "num_senders": 2,
-      "max_size": 200
+      "max_size": 2000
     },
     {
       "name": "/logger/aos",
       "type": "aos.starter.StarterRpc",
       "source_node": "logger",
-      "logger": "LOCAL_AND_REMOTE_LOGGER",
-      "logger_nodes": [
-        "roborio"
-      ],
       "frequency": 10,
-      "num_senders": 2,
-      "destination_nodes": [
-        {
-          "name": "roborio",
-          "priority": 5,
-          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
-          "timestamp_logger_nodes": [
-            "logger"
-          ],
-          "time_to_live": 5000000
-        }
-      ]
-    },
-    {
-      "name": "/logger/aos/remote_timestamps/roborio/logger/aos/aos-starter-StarterRpc",
-      "type": "aos.message_bridge.RemoteMessage",
-      "source_node": "logger",
-      "logger": "NOT_LOGGED",
-      "frequency": 20,
-      "num_senders": 2,
-      "max_size": 200
+      "num_senders": 2
     },
     {
       "name": "/logger/aos",
@@ -225,8 +193,12 @@
       "max_size": 400,
       "logger": "LOCAL_AND_REMOTE_LOGGER",
       "logger_nodes": [
-        "roborio",
-        "imu"
+        "imu",
+        "pi1",
+        "pi2",
+        "pi3",
+        "pi4",
+        "roborio"
       ],
       "destination_nodes": [
         {
@@ -286,15 +258,6 @@
       ]
     },
     {
-      "name": "/logger/aos/remote_timestamps/roborio/logger/aos/aos-message_bridge-Timestamp",
-      "type": "aos.message_bridge.RemoteMessage",
-      "source_node": "logger",
-      "logger": "NOT_LOGGED",
-      "frequency": 20,
-      "num_senders": 2,
-      "max_size": 200
-    },
-    {
       "name": "/logger/aos/remote_timestamps/imu/logger/aos/aos-message_bridge-Timestamp",
       "type": "aos.message_bridge.RemoteMessage",
       "source_node": "logger",
@@ -340,6 +303,15 @@
       "max_size": 200
     },
     {
+      "name": "/logger/aos/remote_timestamps/roborio/logger/aos/aos-message_bridge-Timestamp",
+      "type": "aos.message_bridge.RemoteMessage",
+      "source_node": "logger",
+      "logger": "NOT_LOGGED",
+      "frequency": 20,
+      "num_senders": 2,
+      "max_size": 200
+    },
+    {
       "name": "/logger/camera",
       "type": "frc971.vision.CameraImage",
       "source_node": "logger",
@@ -504,13 +476,13 @@
       "name": "pi3"
     },
     {
-      "name": "roborio"
-    },
-    {
       "name": "imu"
     },
     {
       "name": "pi4"
+    },
+    {
+      "name": "roborio"
     }
   ]
 }
diff --git a/y2023/y2023_pi_template.json b/y2023/y2023_pi_template.json
index 31f4045..46678f3 100644
--- a/y2023/y2023_pi_template.json
+++ b/y2023/y2023_pi_template.json
@@ -24,19 +24,17 @@
       "max_size": 2000,
       "logger": "LOCAL_AND_REMOTE_LOGGER",
       "logger_nodes": [
-        "roborio",
         "logger"
       ],
       "destination_nodes": [
         {
-          "name": "roborio",
-          "priority": 5,
-          "time_to_live": 5000000
-        },
-        {
           "name": "logger",
           "priority": 5,
-          "time_to_live": 5000000
+          "time_to_live": 5000000,
+          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
+          "timestamp_logger_nodes": [
+            "pi{{ NUM }}"
+          ]
         }
       ]
     },
@@ -48,23 +46,28 @@
       "num_senders": 2,
       "logger": "LOCAL_AND_REMOTE_LOGGER",
       "logger_nodes": [
-        "roborio",
         "logger"
       ],
       "destination_nodes": [
         {
-          "name": "roborio",
-          "priority": 5,
-          "time_to_live": 5000000
-        },
-        {
           "name": "logger",
           "priority": 5,
-          "time_to_live": 5000000
+          "time_to_live": 5000000,
+          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
+          "timestamp_logger_nodes": [
+            "pi{{ NUM }}"
+          ]
         }
       ]
     },
     {
+      "name": "/pi{{ NUM }}/aos/remote_timestamps/logger/pi{{ NUM }}/aos/aos-starter-StarterRpc",
+      "type": "aos.message_bridge.RemoteMessage",
+      "frequency": 20,
+      "source_node": "pi{{ NUM }}",
+      "max_size": 208
+    },
+    {
       "name": "/pi{{ NUM }}/aos",
       "type": "aos.message_bridge.ServerStatistics",
       "source_node": "pi{{ NUM }}",
@@ -93,39 +96,22 @@
       "num_senders": 2,
       "logger": "LOCAL_AND_REMOTE_LOGGER",
       "logger_nodes": [
-        "roborio",
         "imu"
       ],
       "max_size": 200,
       "destination_nodes": [
         {
-          "name": "roborio",
-          "priority": 1,
-          "time_to_live": 5000000,
-          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
-          "timestamp_logger_nodes": [
-            "roborio"
-          ]
-        },
-        {
           "name": "imu",
           "priority": 1,
           "time_to_live": 5000000,
           "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
           "timestamp_logger_nodes": [
-            "imu"
+            "pi{{ NUM }}"
           ]
         }
       ]
     },
     {
-      "name": "/pi{{ NUM }}/aos/remote_timestamps/roborio/pi{{ NUM }}/aos/aos-message_bridge-Timestamp",
-      "type": "aos.message_bridge.RemoteMessage",
-      "frequency": 20,
-      "source_node": "pi{{ NUM }}",
-      "max_size": 208
-    },
-    {
       "name": "/pi{{ NUM }}/aos/remote_timestamps/imu/pi{{ NUM }}/aos/aos-message_bridge-Timestamp",
       "type": "aos.message_bridge.RemoteMessage",
       "frequency": 20,
@@ -234,6 +220,10 @@
       "name": "/logger/aos",
       "type": "aos.starter.StarterRpc",
       "source_node": "logger",
+      "logger": "LOCAL_AND_REMOTE_LOGGER",
+      "logger_nodes": [
+        "pi{{ NUM }}"
+      ],
       "destination_nodes": [
         {
           "name": "pi{{ NUM }}",
@@ -259,6 +249,10 @@
       "name": "/logger/aos",
       "type": "aos.starter.Status",
       "source_node": "logger",
+      "logger": "LOCAL_AND_REMOTE_LOGGER",
+      "logger_nodes": [
+        "pi{{ NUM }}"
+      ],
       "destination_nodes": [
         {
           "name": "pi{{ NUM }}",
@@ -272,6 +266,22 @@
       ]
     },
     {
+      "name": "/pi{{ NUM }}/aos/remote_timestamps/logger/pi{{ NUM }}/aos/aos-starter-Status",
+      "type": "aos.message_bridge.RemoteMessage",
+      "frequency": 100,
+      "source_node": "pi{{ NUM }}",
+      "max_size": 208
+    },
+    {
+       "name": "/pi{{ NUM }}/aos/remote_timestamps/logger/pi{{ NUM }}/aos/aos-message_bridge-Timestamp",
+       "type": "aos.message_bridge.RemoteMessage",
+       "source_node": "pi{{ NUM }}",
+       "logger": "NOT_LOGGED",
+       "frequency": 15,
+       "num_senders": 2,
+       "max_size": 200
+    },
+    {
       "name": "/logger/aos/remote_timestamps/pi{{ NUM }}/logger/aos/aos-starter-Status",
       "type": "aos.message_bridge.RemoteMessage",
       "source_node": "logger",
@@ -281,56 +291,6 @@
       "max_size": 200
     },
     {
-      "name": "/roborio/aos",
-      "type": "aos.starter.StarterRpc",
-      "source_node": "roborio",
-      "destination_nodes": [
-        {
-          "name": "pi{{ NUM }}",
-          "priority": 5,
-          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
-          "timestamp_logger_nodes": [
-            "roborio"
-          ],
-          "time_to_live": 5000000
-        }
-      ]
-    },
-    {
-      "name": "/roborio/aos/remote_timestamps/pi{{ NUM }}/roborio/aos/aos-starter-StarterRpc",
-      "type": "aos.message_bridge.RemoteMessage",
-      "source_node": "roborio",
-      "logger": "NOT_LOGGED",
-      "frequency": 20,
-      "num_senders": 2,
-      "max_size": 200
-    },
-    {
-      "name": "/roborio/aos",
-      "type": "aos.starter.Status",
-      "source_node": "roborio",
-      "destination_nodes": [
-        {
-          "name": "pi{{ NUM }}",
-          "priority": 5,
-          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
-          "timestamp_logger_nodes": [
-            "roborio"
-          ],
-          "time_to_live": 5000000
-        }
-      ]
-    },
-    {
-      "name": "/roborio/aos/remote_timestamps/pi{{ NUM }}/roborio/aos/aos-starter-Status",
-      "type": "aos.message_bridge.RemoteMessage",
-      "source_node": "roborio",
-      "logger": "NOT_LOGGED",
-      "frequency": 50,
-      "num_senders": 2,
-      "max_size": 200
-    },
-    {
       "name": "/pi{{ NUM }}/constants",
       "type": "y2023.Constants",
       "source_node": "pi{{ NUM }}",
@@ -492,9 +452,6 @@
     },
     {
       "name": "imu"
-    },
-    {
-      "name": "roborio"
     }
   ]
 }
diff --git a/y2023/y2023_roborio.json b/y2023/y2023_roborio.json
index 452a570..2888690 100644
--- a/y2023/y2023_roborio.json
+++ b/y2023/y2023_roborio.json
@@ -7,18 +7,13 @@
       "frequency": 100,
       "logger": "LOCAL_AND_REMOTE_LOGGER",
       "logger_nodes": [
-        "imu",
-        "logger"
+        "imu"
       ],
       "destination_nodes": [
         {
           "name": "imu",
           "priority": 5,
-          "time_to_live": 50000000,
-          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
-          "timestamp_logger_nodes": [
-            "roborio"
-          ]
+          "time_to_live": 50000000
         }
       ]
     },
@@ -59,31 +54,7 @@
       "source_node": "roborio",
       "frequency": 50,
       "num_senders": 20,
-      "max_size": 2000,
-      "logger": "LOCAL_AND_REMOTE_LOGGER",
-      "logger_nodes": [
-        "logger"
-      ],
-      "destination_nodes": [
-        {
-          "name": "logger",
-          "priority": 5,
-          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
-          "timestamp_logger_nodes": [
-            "roborio"
-          ],
-          "time_to_live": 5000000
-        }
-      ]
-    },
-    {
-      "name": "/roborio/aos/remote_timestamps/logger/roborio/aos/aos-starter-Status",
-      "type": "aos.message_bridge.RemoteMessage",
-      "source_node": "roborio",
-      "logger": "NOT_LOGGED",
-      "frequency": 50,
-      "num_senders": 2,
-      "max_size": 200
+      "max_size": 2000
     },
     {
       "name": "/roborio/aos",
@@ -91,31 +62,7 @@
       "source_node": "roborio",
       "frequency": 10,
       "max_size": 400,
-      "num_senders": 2,
-      "logger": "LOCAL_AND_REMOTE_LOGGER",
-      "logger_nodes": [
-        "logger"
-      ],
-      "destination_nodes": [
-        {
-          "name": "logger",
-          "priority": 5,
-          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
-          "timestamp_logger_nodes": [
-            "roborio"
-          ],
-          "time_to_live": 5000000
-        }
-      ]
-    },
-    {
-      "name": "/roborio/aos/remote_timestamps/logger/roborio/aos/aos-starter-StarterRpc",
-      "type": "aos.message_bridge.RemoteMessage",
-      "source_node": "roborio",
-      "logger": "NOT_LOGGED",
-      "frequency": 20,
-      "num_senders": 2,
-      "max_size": 200
+      "num_senders": 2
     },
     {
       "name": "/roborio/aos",
@@ -140,38 +87,6 @@
       "num_senders": 2
     },
     {
-      "name": "/roborio/aos/remote_timestamps/logger/roborio/aos/aos-message_bridge-Timestamp",
-      "type": "aos.message_bridge.RemoteMessage",
-      "frequency": 300,
-      "source_node": "roborio"
-    },
-    {
-      "name": "/roborio/aos/remote_timestamps/pi1/roborio/aos/aos-message_bridge-Timestamp",
-      "type": "aos.message_bridge.RemoteMessage",
-      "frequency": 20,
-      "source_node": "roborio",
-      "max_size": 208
-    },
-    {
-      "name": "/roborio/aos/remote_timestamps/pi2/roborio/aos/aos-message_bridge-Timestamp",
-      "type": "aos.message_bridge.RemoteMessage",
-      "frequency": 20,
-      "source_node": "roborio",
-      "max_size": 208
-    },
-    {
-      "name": "/roborio/aos/remote_timestamps/pi3/roborio/aos/aos-message_bridge-Timestamp",
-      "type": "aos.message_bridge.RemoteMessage",
-      "frequency": 20,
-      "source_node": "roborio"
-    },
-    {
-      "name": "/roborio/aos/remote_timestamps/pi4/roborio/aos/aos-message_bridge-Timestamp",
-      "type": "aos.message_bridge.RemoteMessage",
-      "frequency": 20,
-      "source_node": "roborio"
-    },
-    {
       "name": "/roborio/aos/remote_timestamps/imu/roborio/aos/aos-message_bridge-Timestamp",
       "type": "aos.message_bridge.RemoteMessage",
       "frequency": 20,
@@ -179,6 +94,12 @@
       "max_size": 208
     },
     {
+      "name": "/roborio/aos/remote_timestamps/logger/roborio/aos/aos-message_bridge-Timestamp",
+      "type": "aos.message_bridge.RemoteMessage",
+      "frequency": 300,
+      "source_node": "roborio"
+    },
+    {
       "name": "/roborio/aos",
       "type": "aos.message_bridge.Timestamp",
       "source_node": "roborio",
@@ -191,42 +112,6 @@
       ],
       "destination_nodes": [
         {
-          "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
-        },
-        {
           "name": "imu",
           "priority": 1,
           "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
@@ -344,10 +229,6 @@
         {
           "name": "imu",
           "priority": 5,
-          "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
-          "timestamp_logger_nodes": [
-            "imu"
-          ],
           "time_to_live": 5000000
         }
       ]
@@ -385,7 +266,7 @@
           "priority": 5,
           "timestamp_logger": "LOCAL_AND_REMOTE_LOGGER",
           "timestamp_logger_nodes": [
-            "imu"
+            "roborio"
           ],
           "time_to_live": 0
         }
@@ -578,6 +459,7 @@
     {
       "name": "can_logger",
       "executable_name": "can_logger",
+      "autostart": false,
       "nodes": [
         "roborio"
       ]