Merge changes Ic8468bb4,I7b348a7c
* changes:
Make swerve C++ physics match python
Fix signs on wheels pointed backwards
diff --git a/aos/starter/starter_cmd.cc b/aos/starter/starter_cmd.cc
index c4d324d..85f62a5 100644
--- a/aos/starter/starter_cmd.cc
+++ b/aos/starter/starter_cmd.cc
@@ -122,21 +122,20 @@
}
// Convert --sort flag to lowercase for testing below.
- std::transform(absl::GetFlag(FLAGS_sort).begin(),
- absl::GetFlag(FLAGS_sort).end(),
- absl::GetFlag(FLAGS_sort).begin(), tolower);
+ std::string sort_on = absl::GetFlag(FLAGS_sort);
+ std::transform(sort_on.begin(), sort_on.end(), sort_on.begin(), tolower);
// This function is called once for each node being reported upon, so there is
// no need to sort on node, it happens implicitly.
- if (absl::GetFlag(FLAGS_sort) == "name") {
+ if (sort_on == "name") {
// Sort on name using std::string_view::operator< for lexicographic order.
std::sort(sorted_statuses.begin(), sorted_statuses.end(),
[](const aos::starter::ApplicationStatus *lhs,
const aos::starter::ApplicationStatus *rhs) {
return lhs->name()->string_view() < rhs->name()->string_view();
});
- } else if (absl::GetFlag(FLAGS_sort) == "state") {
+ } else if (sort_on == "state") {
// Sort on state first, and then name for apps in same state.
// ApplicationStatus::state is an enum, so need to call EnumNameState()
// convenience wrapper to convert enum to char*, and then wrap in
@@ -152,7 +151,7 @@
: (lhs->name()->string_view() <
rhs->name()->string_view());
});
- } else if (absl::GetFlag(FLAGS_sort) == "pid") {
+ } else if (sort_on == "pid") {
// Sort on pid first, and then name for when both apps are not running.
// If the app state is STOPPED, then it will not have a pid, so need to test
// that first. If only one app is STOPPED, then return Boolean state to put
@@ -175,7 +174,7 @@
}
}
});
- } else if (absl::GetFlag(FLAGS_sort) == "uptime") {
+ } else if (sort_on == "uptime") {
// Sort on last_start_time first, and then name for when both apps are not
// running, or have exact same start time. Only use last_start_time when app
// is not STOPPED. If only one app is STOPPED, then return Boolean state to
@@ -202,8 +201,7 @@
}
});
} else {
- std::cerr << "Unknown sort criteria \"" << absl::GetFlag(FLAGS_sort) << "\""
- << std::endl;
+ std::cerr << "Unknown sort criteria \"" << sort_on << "\"" << std::endl;
exit(1);
}
diff --git a/motors/driver_station.h b/motors/driver_station.h
index 244fe3f..a8585b0 100644
--- a/motors/driver_station.h
+++ b/motors/driver_station.h
@@ -39,11 +39,6 @@
};
typedef struct {
- uint16_t enc0_trim;
- uint16_t enc1_trim;
-} ENCODER_TRIMS_S;
-
-typedef struct {
abs_Measurement_State state;
uint32_t period;
uint32_t width;
diff --git a/y2024/y2024_imu.json b/y2024/y2024_imu.json
index aa8b042..3dede17 100644
--- a/y2024/y2024_imu.json
+++ b/y2024/y2024_imu.json
@@ -42,7 +42,7 @@
"source_node": "imu",
"frequency": 50,
"num_senders": 30,
- "max_size": 8192
+ "max_size": 10912
},
{
"name": "/imu/aos",
@@ -57,7 +57,7 @@
"source_node": "imu",
"frequency": 50,
"num_senders": 20,
- "max_size": 4096
+ "max_size": 6144
},
{
"name": "/imu/aos",