aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/modules/uavcan/actuators/esc.cpp10
-rw-r--r--src/modules/uavcan/uavcan_main.cpp10
2 files changed, 15 insertions, 5 deletions
diff --git a/src/modules/uavcan/actuators/esc.cpp b/src/modules/uavcan/actuators/esc.cpp
index 995c8987c..f7adbed76 100644
--- a/src/modules/uavcan/actuators/esc.cpp
+++ b/src/modules/uavcan/actuators/esc.cpp
@@ -98,11 +98,11 @@ void UavcanEscController::update_outputs(float *outputs, unsigned num_outputs)
/*
* Rate limiting - we don't want to congest the bus
*/
- const auto timestamp = _node.getMonotonicTime();
- if ((timestamp - _prev_cmd_pub).toUSec() < (1000000 / MAX_RATE_HZ)) {
- return;
- }
- _prev_cmd_pub = timestamp;
+// const auto timestamp = _node.getMonotonicTime();
+// if ((timestamp - _prev_cmd_pub).toUSec() < (1000000 / MAX_RATE_HZ)) {
+// return;
+// }
+// _prev_cmd_pub = timestamp;
/*
* Fill the command message
diff --git a/src/modules/uavcan/uavcan_main.cpp b/src/modules/uavcan/uavcan_main.cpp
index af5f2ec96..c29cd8323 100644
--- a/src/modules/uavcan/uavcan_main.cpp
+++ b/src/modules/uavcan/uavcan_main.cpp
@@ -357,6 +357,16 @@ int UavcanNode::run()
_actuator_direct_poll_fd_num = add_poll_fd(_actuator_direct_sub);
}
+ _esc_controller.arm_all_escs(true);
+ while (true) {
+ for (int i = 0; i < 1000; i++) {
+ node_spin_once();
+ _outputs.noutputs = 8;
+ _esc_controller.update_outputs(_outputs.output, _outputs.noutputs);
+ }
+ ::usleep(1000);
+ }
+
while (!_task_should_exit) {
// update actuator controls subscriptions if needed
if (_groups_subscribed != _groups_required) {