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
D.R.racer
315530ec16
Rebase onto main, reflect FINDA change (ADC->digital pin) in unit tests
2021-09-02 12:15:55 +02:00
D.R.racer
5a53acd802
Force Tool Change to load the filament if same slot but not loaded
...
MMU-63
2021-09-02 12:15:55 +02:00
Yuri D'Elia
6f3540a14d
Fix Motion::SetMode(axis, mode) and introduce SetMode(mode)
...
Motion::SetMode(axis, mode) was incorrectly looping through all axes,
setting the same axis three times.
Fix this and introduce Motion::SetMode(mode) which actually loops
through all axes (see PR #110 )
2021-09-02 12:04:59 +02:00