Add a translator for imu can values
This provides a translation layer between the raw CAN frames from the
IMU and a flatbuffer filled with the information being sent.
Signed-off-by: Maxwell Henderson <mxwhenderson@gmail.com>
Change-Id: Ifd295e7353da8ca622e334569ed58dcae0d59a70
diff --git a/y2024/BUILD b/y2024/BUILD
index d8d0db7..45ff96c 100644
--- a/y2024/BUILD
+++ b/y2024/BUILD
@@ -71,6 +71,7 @@
],
start_binaries = [
"//aos/events/logging:logger_main",
+ "//frc971/imu_fdcan:can_translator",
"//aos/network:message_bridge_client",
"//aos/network:message_bridge_server",
"//aos/network:web_proxy_main",
@@ -111,6 +112,8 @@
flatbuffers = [
"//aos/network:message_bridge_client_fbs",
"//aos/network:message_bridge_server_fbs",
+ "//frc971/imu_fdcan:dual_imu_fbs",
+ "//frc971/imu_fdcan:can_translator_status_fbs",
"//y2024/constants:constants_fbs",
"//frc971/can_logger:can_logging_fbs",
"//aos/network:timestamp_fbs",
diff --git a/y2024/y2024_imu.json b/y2024/y2024_imu.json
index 5dd4710..6a611ff 100644
--- a/y2024/y2024_imu.json
+++ b/y2024/y2024_imu.json
@@ -160,6 +160,22 @@
"max_size": 200
},
{
+ "name": "/imu",
+ "type": "frc971.imu.DualImu",
+ "source_node": "imu",
+ "frequency": 1100,
+ "num_senders": 1,
+ "max_size": 496
+ },
+ {
+ "name": "/imu",
+ "type": "frc971.imu.CanTranslatorStatus",
+ "source_node": "imu",
+ "frequency": 1000,
+ "num_senders": 1,
+ "max_size": 200
+ },
+ {
"name": "/can/cana",
"type": "frc971.can_logger.CanFrame",
"source_node": "imu",
@@ -260,6 +276,17 @@
"imu"
]
},
+ // TODO(max): Update the channel value with whatever channel the IMU is on.
+ {
+ "name": "can_translator",
+ "executable_name": "can_translator",
+ "args": [
+ "--channel=/can/canb"
+ ],
+ "nodes": [
+ "imu"
+ ]
+ },
{
"name": "web_proxy",
"executable_name": "web_proxy_main",