Commit Graph

695 Commits (e91e382c5c28e3e283d71014b5e3fc1e356d28e8)

Author SHA1 Message Date
Alex Voinea 9f0f7bc33b Fix limits.h naming conflict 2021-09-20 18:18:52 +02:00
Alex Voinea 6346dd3989 USB reset initial 2021-09-20 17:31:45 +02:00
Alex Voinea 29018671b5 Reduce verbosity 2021-09-20 17:31:45 +02:00
Alex Voinea a8b1725dfe Line encoding update 2021-09-20 17:31:45 +02:00
Alex Voinea 9611db9f53 Fix formatting and 🐑 2021-09-20 17:31:45 +02:00
Alex Voinea 895671aeb2 Fix descriptors 2021-09-20 17:31:45 +02:00
Alex Voinea 26fd53251b Checkpoint 2021-09-20 17:31:45 +02:00
Alex Voinea 21ad153941 Add compile options 2021-09-20 17:31:26 +02:00
Alex Voinea 44b160c2c1 Fix warnings 2021-09-20 17:31:26 +02:00
Alex Voinea c2411619dd Set LUFA F_USB 2021-09-20 17:31:26 +02:00
Alex Voinea b4ecf39ce5 Fix LUFA build 2021-09-20 17:31:26 +02:00
D.R.racer 0862964c82 Add cmake project for LUFA
MMU-80
2021-09-20 17:31:26 +02:00
D.R.racer f8ac620379 Fix buttons' unit tests 2021-09-20 17:22:49 +02:00
3d-gussner c0b776375d Fix right button issue on some hardware
My MM-control-board v0.3 has following ADC readings in DEBUG_BUTTONS
- none = 1023
- left = 169
- mid = 91-92
- right = 0

As the comparison was larger than 0 MY MMU2 right button wasn't detected.
2021-09-20 17:22:49 +02:00
DRracer 1d1e2ef108
Merge pull request #67 from DRracer/watchdog
Add watchdog implementation + use it in main()
2021-09-20 17:21:54 +02:00
D.R.racer b9811e3c21 Fix indentation 2021-09-20 17:18:46 +02:00
Alex Voinea fbe8d3d6cd Simplify logic 2021-09-20 17:10:10 +02:00
Alex Voinea 89a2bdc7e4 Fix configuration compute() math 2021-09-20 17:10:10 +02:00
Alex Voinea 0e9802c4cd watchdog configuration 2021-09-20 17:10:10 +02:00
Alex Voinea e86def99f9 Add Disable and use the avrlibc wdt functions 2021-09-20 17:09:54 +02:00
Alex Voinea 954ef2fb8d Reset the board using the cpu hal instead of the watchdog hal
Also some naming changes
2021-09-20 17:09:54 +02:00
D.R.racer 4ba6c6e679 Add handling of the X0 message (restart the MMU) via Watchdog 2021-09-20 17:09:09 +02:00
D.R.racer a23ed5e1bf Add watchdog implementation + use it in main() 2021-09-20 17:09:09 +02:00
Alex Voinea d1fd815e0c Quick and dirty workaround 2021-09-20 16:36:44 +02:00
Alex Voinea 7fe6f6c9eb Simplify logic 2021-09-20 16:28:53 +02:00
Alex Voinea cf636ec095 Fix configuration compute() math 2021-09-20 16:28:53 +02:00
Alex Voinea 06b959bb66 watchdog configuration 2021-09-20 16:28:53 +02:00
Alex Voinea a433db5648 Add Disable and use the avrlibc wdt functions 2021-09-20 16:28:42 +02:00
Alex Voinea 56eee8dcfb Reset the board using the cpu hal instead of the watchdog hal
Also some naming changes
2021-09-20 16:28:42 +02:00
D.R.racer 3b46c35595 Add handling of the X0 message (restart the MMU) via Watchdog 2021-09-20 16:28:17 +02:00
D.R.racer 324ced6807 Add watchdog implementation + use it in main() 2021-09-20 16:28:17 +02:00
Alex Voinea 82a9eaae43 Fix selector noise. IRUN=31(VS=1), MRES=x8 2021-09-16 10:30:27 +02:00
Alex Voinea bec3f73864 Fix typo
typo
2021-09-16 10:30:27 +02:00
Alex Voinea 91f622fcdc Tighter TPWMTHRS at standstill 2021-09-16 10:30:27 +02:00
Alex Voinea e0babfa4ba Updated motor currents and added freewheeling 2021-09-16 10:30:27 +02:00
Yuri D'Elia ad096c9d14 Motion: make Motion::Step finally inline 2021-09-07 15:09:49 +02:00
Yuri D'Elia b7fcfa5cb5 Add tests for single and multi-axis AbortPlannedMoves()
This introduces a new #define UNITTEST_MOTION which is used to control
the testing scenario:

- Normal tests, we allow the stub to override the built-in definition.
- For motion tests, we stub the lower-level classes and test the
  effective implementation

We also repeat the prototype of the function, which IMHO is more
readable and more flexible: we need to use inline for the real
definition, which would require even more macros otherwise.
2021-09-07 15:09:49 +02:00
D.R.racer 37ff9b8a8f Fix unit tests for AbortPlannedMoves(axis) 2021-09-07 15:03:36 +02:00
D.R.racer a6800d491d Leverage the capability of aborting a move on just one axis 2021-09-07 15:03:36 +02:00
D.R.racer b1b5b9db84 Set better planned moves for homing + abort moves at StallGuard 2021-09-07 15:03:36 +02:00
D.R.racer 52a6d57704 Remove Motion::Home completely 2021-09-07 15:03:36 +02:00
D.R.racer dea41738a5 Add homing capability to Idler and Selector
MMU-73
2021-09-07 15:03:36 +02:00
Yuri D'Elia d18032b729 Motion: allow to abort movement on a single axis
This can be useful for things like faster homing in the future and comes
at no expense.
2021-09-07 14:48:06 +02:00
D.R.racer a380a698d9 Remove unnecessary #include 2021-09-07 14:17:03 +02:00
D.R.racer 3646b8b1c0 Change M0/M1 into a command
That implies changing motor's mode from SpreadCycle into StealtMode (or vice versa)
requires a stand still MMU with no other command (i.e. motor moves) being performed.
This elegantly solves the synchronization problem of TMC2130 mode change, as it results
in severe jerking while a motor is moving.

The change in protocol is minimal - M0/M1 first return `M0 A` (accepted) and another `Q0` then
returns `M0 F` (finished). The MK4 counterpart may ignore the additional report if necessary
as the mode change is done immediately (shortly after responding with `M0 A`)
2021-09-07 14:17:03 +02:00
Alan Dragomirecký 641b91f0cb git subrepo clone --branch=LUFA-210130 git@github.com:abcminiuser/lufa.git lib/lufa
subrepo:
  subdir:   "lib/lufa"
  merged:   "fa2cc3e1c"
upstream:
  origin:   "git@github.com:abcminiuser/lufa.git"
  branch:   "LUFA-210130"
  commit:   "fa2cc3e1c"
git-subrepo:
  version:  "0.4.3"
  origin:   "???"
  commit:   "???"
2021-09-06 15:56:43 +02:00
Alan Dragomirecký b842f58bc8 Add lufa to pre-commit's exception list 2021-09-06 15:56:43 +02:00
D.R.racer 09f81f8b33 Leverage the ability of motion to SetMode to all know axes 2021-09-02 12:27:41 +02:00
D.R.racer 852ca37e8f Add stealtMode flag into the global storage hive
May be used elsewhere to return to the desired motors' mode e.g. after homing
(which requires switching to normal mode)
2021-09-02 12:27:41 +02:00
D.R.racer 1e6194a9b9 Add support for M0/M1 messages
... route the messages into modules::motion's SetMode of all axes.
2021-09-02 12:27:41 +02:00