Commit Graph
109 Commits
Author SHA1 Message Date
Unknown 3c49b7f8ca Merge branch 'rc-v0.5.1' into devel 2020-09-02 20:51:13 -04:00
Unknown f691536b3c Fix DRV lock-up problem when using absolute encoders 2020-09-02 20:44:56 -04:00
Samuel Sadok f3fa0af5c1 Fix pullup/pulldown configuration, update docs 2020-08-24 13:00:15 +02:00
Samuel Sadok b6ac7c306a rename config push/pop to write/read, fix order 2020-07-30 17:14:30 +02:00
Samuel Sadok 5e61c5a88a turn GPIO feature matrix into sparse matrix 2020-07-30 17:14:30 +02:00
Samuel Sadok 5e628c5783 enhance resource usage diagnostics 2020-07-21 19:09:46 +02:00
Samuel Sadok 2d256f43cb more refactoring in perparation for new hardware 2020-07-21 13:02:03 +02:00
Samuel Sadok 938f088fc2 make axis allocation static 2020-07-21 13:02:03 +02:00
Samuel Sadok b3ddadb360 further improve hardware independence 2020-07-21 12:55:10 +02:00
Samuel Sadok 71cc825ba2 Move complexity out of CubeMX autogenerated code
Where viable, customizations in the CubeMX code (mostly the USER
CODE sections) are moved to our own files (primarily main.cpp and
board.cpp).

This will minimize code duplication when adding a new, completely
separate instance of the CubeMX files. The USB code still contains a
large amount of customization which is not touched by this commit and
should be refactored separately later on.

The entry point is now in main.cpp (moved from the CubeMX-generated
main.c). This increases control over the boot process while also
improving code organization.
2020-07-21 12:55:10 +02:00
Samuel Sadok 1f3391c81b introduce GPIO modes 2020-07-21 12:55:10 +02:00
Samuel Sadok c745983f95 define gpios as array of Stm32Gpio objects 2020-07-21 12:31:03 +02:00
Samuel Sadok cc79c8eecb overhaul timer setup/synchronization
This new method is more flexible in the sense of what timers to
synchronize and also provides clearer guarantees with respect to
the repetition counter and prescaler.
2020-07-21 12:31:03 +02:00
Samuel Sadok 6377df4b1e move ext int subscribe logic to Stm32Gpio class 2020-07-21 12:31:03 +02:00
Samuel Sadok ab7957f07f Overhaul upper level NVM configuration manager
Instead of using a declarative compile-time type that defines the layout
of the NVM data, now we use procedural style code to load and store the
configuration as a series of pop and push calls.  This allows for more
flexible code organization and opens the future possibility of storing
dynamically sized data (e.g. an array prepended by a length field).
2020-07-21 12:31:03 +02:00
Samuel Sadok b9b70b9c0a integrate SPI arbiter with SPI encoder 2020-07-21 12:31:03 +02:00
Samuel Sadok 856455077d refactor drv8301 driver 2020-07-21 12:31:03 +02:00
Rowan Goemans 1a0d6acace - Refactored thermal and current lmiting sub-systems and introduced motor thermistor support.
- Added thermal errors to dump_errors call in odrivetool.
- Added function in odrivetool to set thermistor coefficients based on thermistor specs.
- Added documentation for users on how to connect and configure their own thermistors.
2020-07-17 14:09:47 +02:00
Samuel Sadok e4d70a22b7 Initial implementation of interface autogenerator.
TODO:
 - write to endpoints from float (for PWM/analog input)
 - ascii protocol
2020-05-14 23:05:02 +02:00
Unknown 141d1edd35 Change UART baudrate via fibre 2020-05-12 01:30:40 -04:00
Unknown bf6d47f950 Add some missing reference & symbols 2020-05-05 21:37:47 -04:00
Unknown 7290e55525 Convert Axes to a std::array 2020-05-05 20:30:03 -04:00
Samuel Sadok 8cd673363c Reboot on erase_configuration().
This avoids unexpected behavior of a subsequent `save_configuration()`
call, since the configuration is only erased from NVM, not from RAM.
2020-04-27 15:19:32 +02:00
Unknown 930de28de9 Clean up static analysis warnings 2020-01-08 22:59:57 -05:00
Unknown 7a756c1761 Merge branch 'devel' into RazorsEdge 2020-01-01 21:45:41 -05:00
Unknown c9d35415db Configure motors before encoders to avoid SPI collision 2020-01-01 21:37:04 -05:00
Unknown a4664fbf5e Merge branch 'RazorsEdge' into RazorsFrozen 2019-12-22 17:07:32 -05:00
Unknown 2c9f43c9ff Add safety disarm in the stack overflow hook and increase stack sizes 2019-12-04 00:09:57 -05:00
Unknown f127df72f1 Add stack_size vars, reduce stack usage 2019-10-26 14:28:06 -04:00
Unknown 1550170201 Merge branch 'CommsStackFix' into RazorsFrozen 2019-10-26 14:24:01 -04:00
Oskar Weigl 1a3b6bf010 encoder can now be precalibrated without offset when using ACIM 2019-10-11 16:25:18 -07:00
Samuel Sadok 82e8cd64fb cosmetic changes 2019-09-27 18:01:38 +02:00
Unknown ecf1ccd25e Add stack_size vars, reduce stack usage 2019-09-25 22:47:40 -04:00
Unknown be48bef9cb Merge branch 'CommsStackFix' into RazorsEdge 2019-09-24 21:04:43 -04:00
Samuel Sadok f8ea7d5684 [homing] make separate control mode
[endstops] enable in all control modes
[load encoder] use load encoder more consequently
2019-09-23 12:23:27 +02:00
Unknown f5a1235038 Construct the object tree outside of the comms task 2019-09-23 01:42:22 -04:00
Unknown 9e782cce7b Revert "Formatting pass"
This reverts commit 2b58d15d8d.
2019-09-15 01:15:51 -04:00
Unknown 2b58d15d8d Formatting pass 2019-08-20 23:13:54 -04:00
Paul Guenette e8a6698fa5 Merge branch 'devel' into RazorsEdge 2019-06-03 00:30:25 +02:00
Paul Guenette 687cf5b877 Merge branch 'Endstops' into develop 2019-05-25 13:53:38 +02:00
Paul Guenette b09e835647 Remove doctest from STM builds 2019-05-19 21:18:46 +02:00
Paul Guenette d8b335fcb9 Merge branch 'feature/doctest' into feature/CAN 2019-05-19 19:27:20 +02:00
Oskar Weigl 9af9ea0bf0 add axis_num member 2019-05-15 23:06:45 -07:00
Paul Guenette 0598c2c995 Setup doctest 2019-05-16 00:03:37 +02:00
Paul Guenette 1e5b82ca8b Merge branch 'devel' into Endstops 2019-04-23 21:48:43 +02:00
Paul Guenette 5fee14a378 Merge branch 'devel' into feature/CAN 2019-03-23 09:33:42 +01:00
Oskar WeiglandWetmelon 8695f1fc6e Apply comment suggestions from code review
Co-Authored-By: Wetmelon <Wetmelon@users.noreply.github.com>
2019-03-19 07:10:04 +01:00
Paul Guenette 2e71e81dd1 Call load_configuration before any threads start 2019-03-17 20:33:14 +01:00
Paul Guenette 1296537582 Assign different can_node_ids to each axis by default 2019-03-08 21:53:02 +01:00
Paul Guenette 40ad2a0060 Merge branch 'devel' into feature/CAN 2019-03-01 22:56:11 +01:00