Commit Graph
1845 Commits
Author SHA1 Message Date
Paul Guenette b968a6735d Add function to remove anticogging bias 2023-03-07 21:59:50 -08:00
Paul Guenette 39d66b0fdc Add more cyclic messages 2022-10-10 22:42:55 -07:00
Paul Guenette 5c039a9761 Add CONFIG_ARM_COMPILER_PATH 2022-09-29 21:18:00 -07:00
Paul Guenette 9a754031b3 Add value tables and units to every signal in .dbc 2022-09-25 19:58:31 -07:00
Paul Guenette e88fa10978 Make vel_ramp safer by limiting the vel_setpoint to vel_limit 2022-09-22 00:28:44 -07:00
Paul Guenette 3056a4c2ac Add function to index into cogmap (#716) 2022-09-21 20:25:46 -07:00
Paul Guenette 073da34a02 Fix load encoder issues
Fixes #651
2022-09-21 20:25:46 -07:00
Paul Guenette 5f9b45e080 Add heartbeat flags to .dbc 2022-09-21 20:01:13 -07:00
DiabloandPaul Guenette e9d1b3310a Can heartbeat flags (#711)
* Update heartbeat flags

Update heartbeat message to set/send motor, encoder and controller flags if there are errors

* Update Firmware/communication/can/can_simple.cpp

Co-authored-by: Paul Guenette <Wetmelon@users.noreply.github.com>

* Update Firmware/communication/can/can_simple.cpp

Co-authored-by: Paul Guenette <Wetmelon@users.noreply.github.com>

* Update Firmware/communication/can/can_simple.cpp

Co-authored-by: Paul Guenette <Wetmelon@users.noreply.github.com>

Co-authored-by: Paul Guenette <Wetmelon@users.noreply.github.com>
2022-09-21 19:49:55 -07:00
Paul Guenette fb70a83ee0 Merge pull request #710 from odriverobotics/hotfix/homing_fix
Fix race condition in homing behaviour
2022-09-07 08:57:46 -07:00
Paul Guenette fba8106ae1 Update vbus_voltage message to match Pro 2022-09-05 22:26:07 -07:00
Paul Guenette 52384fff5b Merge branch 'devel' into hotfix/homing_fix 2022-09-05 22:13:21 -07:00
Paul Guenette b17a4a6d50 Always restore control and input mode after leaving homing 2022-09-05 21:55:29 -07:00
Paul Guenette 64bbfea5e3 Ensure pos_estimate is updated at least once after homing 2022-09-05 21:55:06 -07:00
Paul Guenette 08d5a204af Fix homing running off when it's done 2022-09-05 19:35:10 -07:00
Paul Guenette 45fee3af5c Add controller error message 2022-09-05 19:10:20 -07:00
Malaphor 73b15f2fe6 Add get_adc_voltage() 2022-08-18 20:18:04 -07:00
Oskar Weigl 4ca99a62c8 fix setter logic 2022-05-05 13:58:33 -07:00
Oskar Weigl 6444197251 make input mode change trigger consistent with all sources 2022-05-05 13:40:07 -07:00
Torbjørn Ludvigsen fa144cff29 Makes behavior consistent across interfaces
Defines and uses set_setpoint_to_estimate() reusable function
Uses it in three places:
 - axis.cpp to avoid transient on startup
 - can_simple.cpp to avoid sudden movement upon mode change
 - odrive-interface.yaml just to make it executable via USB and UART

Swaps set_input_pos() to set_input_pos_and_steps() so that we get the
same behavior when changing input_pos over USB and UART as we get when
we change it via CAN.
2022-05-05 11:11:01 +02:00
Torbjørn Ludvigsen c5017f4baf Making circular_setpoints optional in step/dir mode
.. because circular_setpoints was broken beyond repair.
2022-05-04 16:30:30 +02:00
Torbjørn Ludvigsen 58a6567f83 Stands still upon switching to position mode via can 2022-04-07 15:10:25 +02:00
Torbjørn Ludvigsen d272fbe2b4 Puts fmodf_pos back into the steps_ assignment 2022-04-07 15:10:25 +02:00
Torbjørn Ludvigsen ae262e4cd1 Sets steps_ in CANSimple::set_input_pos_callback
... because otherwise, the effect of the callback is canceled by an
assignment in the main update() loop, that calculates input_pos
based on steps_, if we're in step/dir mode.

- Fixes a steps_ underflow/wrapping bug
2022-04-07 15:10:25 +02:00
samuelsadok daa089c3db Merge pull request #682 from odriverobotics/error-flags
Add back subcomponent error flags
2022-04-05 13:11:54 +02:00
Samuel Sadok cc7bbd47f8 add back subcomponent error flags
These flags were previously removed in 5661a3b5ed
2022-04-05 13:10:17 +02:00
Paul Guenette 6ab5807428 Fix get_iq_callbacks function 2022-04-01 13:04:39 -04:00
Paul Guenette 5148dd0d69 Merge branch 'master' into devel 2022-03-07 21:28:45 -05:00
Paul Guenette 122aeda5e3 Major improvements to API reference documentation 2022-03-06 16:03:39 -05:00
Paul Guenette 20f3028dd3 Fix axis_state signal length 2022-02-09 18:11:19 -05:00
nick-a-schneider f578973d31 moved reST into docs, fixed API table 2022-02-08 10:53:03 -05:00
Paul Guenette a9d7d5497a Merge branch 'master' into devel 2022-02-04 19:06:06 -05:00
Paul Guenette 8ece19f0b9 Fix input mode "Tuning" case in API docs 2022-02-04 19:05:49 -05:00
Paul Guenette 0aca4911e2 Increase error threshold for SPI encoders 2022-02-02 19:09:46 -05:00
Paul Guenette ad648dd40a Reduce SPI slew rate to reduce ringing 2022-02-02 19:09:05 -05:00
Paul Guenette 78ba7884fe Increase comms speed with encoders to match DRV8301 2022-02-02 19:08:50 -05:00
samuelsadok 8691e883e3 fix memory leak in libfibre 2022-01-26 11:47:14 +01:00
Paul Guenette 7402cf8044 Reset trajectory_done_ during homing to fix #634 2022-01-22 17:48:41 -05:00
Paul Guenette d1bb0049bf Update endstops before checking for errors 2022-01-22 17:48:41 -05:00
samuelsadok 56de67731c raise limit for ERROR_UNBALANCED_PHASES
See #648
2021-12-10 12:19:13 +01:00
Paul Guenette f04f02aff7 Add input_xxx to the setpoints for autotuning 2021-12-01 17:41:00 -05:00
Paul Guenette fbb9dd4a9a Merge branch 'master' into devel 2021-11-20 13:12:14 -05:00
Paul Guenette 86ff244b20 Fix a couple static analysis catches
Fixes #643
2021-11-16 17:39:54 -05:00
Aleksandr 31e601ebed Fix race condition in trap traj control 2021-11-02 15:23:42 +03:00
Paul Guenette 13f95dece3 Make rtr only necessary when DLC > 0 in CANsimple 2021-10-21 20:05:56 -04:00
Oskar Weigl 777d71aeba clean up duplicate docstring, remove hardcoded default unit value from docstring 2021-10-10 16:34:17 -07:00
Oskar Weigl f5caa53520 Merge pull request #626 from pbrier/master
Added integrator_limit to allow prevention of integrator windup
2021-10-10 16:30:30 -07:00
Paul Guenette 965c0a14e6 Allow setting controller gains on CAN Simple 2021-09-23 00:09:44 -04:00
Samuel Sadok f451f3ff12 fix uint8_t writes over ascii protocol
%hhd seems to be unimplemented in some compilers. This caused `w axis0.requested_state 4` to return `not implemented` on fw v0.5.3.
2021-09-22 11:21:20 +02:00
pbrier ef03591379 Added integrator_limit to allow prevention of integrator windup 2021-09-16 10:06:07 +02:00