D.R.racer
3988a9aff0
Improve logging in unit tests' helpers.ipp
...
Based on work from @gudnimg: https://github.com/gudnimg/Prusa-Firmware-MMU-Private/tree/MMU-206
2022-12-20 10:35:59 +01:00
D.R.racer
3e9410c4f9
Fix: make sure VerifyEnvironmentState checks filamentLoaded reliably
...
... and improve unit tests
2022-12-20 06:32:51 +01:00
D.R.racer
c0189d81af
Distinguish among different error states when recovering ToolChange
...
Some errors need specific recovery, it seems it is no longer possible to "just" retry.
2022-11-18 22:42:05 +01:00
D.R.racer
ca86797a9c
Invalidate currentSlot while homing
...
makes calls to Slot() consistent and reliable
2022-02-21 18:38:04 +01:00
D.R.racer
b685ec4aff
Fix waiting for homing of Selector after UnloadFilament
2022-02-17 08:21:15 +01:00
D.R.racer
c95c6677b1
Add more unit tests for homing + fix the homing
...
It is a carpet-bombing-commit again, but solving the problem correctly required such an approach.
2022-02-17 08:21:15 +01:00
D.R.racer
18891dbeaf
Add ClearButtons into unit tests
2022-02-17 08:21:15 +01:00
D.R.racer
7fbd3c9c7e
Fix homing error recovery + add homing unit tests
2022-02-17 08:21:15 +01:00
D.R.racer
c2325b687a
Unittests: set buttons more consistently
2021-11-17 08:48:59 +01:00
D.R.racer
ffd8924d8c
Fix start MMU with filament blocking the selector
2021-11-03 10:37:51 +01:00
D.R.racer
22522c253f
Update code after rebase onto main
2021-10-21 15:16:29 +02:00
D.R.racer
9438253106
Avoid trying to unload filament when not loaded
...
however, it looks like the EEPROM is not updated correctly, needs more testing
2021-10-21 15:16:29 +02:00
D.R.racer
ee247246ee
Fix unit tests
...
- fix homing procedure for Idler and Selector
(homing now ends with a move to the Parking position)
- fix unit tests' startup conditions with regard to necessary
homing of Idler and Selector
TODO: still test_cut_filament fails for minor reasons
2021-10-21 07:55:41 +02:00
D.R.racer
c26cc30185
Add finer filament loaded states and improve unit tests
...
We need to know better where the filament is, a simple "filament loaded true/false"
does not correspond to the reality.
2021-10-12 18:11:05 +02:00
D.R.racer
5cf4a496e3
Introduce checking for enabled/disabled Pulley axis in unit tests
2021-10-12 18:11:05 +02:00
D.R.racer
bb574603ba
Reformat helpers.ipp - makes placing breakpoint easier
2021-10-12 18:11:05 +02:00
D.R.racer
e0ea47595f
Add unit tests for logic state machines reusal
...
as it will work in the real FW
2021-08-12 10:30:40 +02:00
D.R.racer
9ba116e06e
Handle slot indices out of range correctly at top level
...
Besides Unload Filament, which only operates on active slot, all other
top level state machines check the validity of the command's parameter.
If the parameter is out of range for available slots, they return
ErrorCode::INVALID_TOOL now.
2021-08-12 10:30:40 +02:00
Yuri D'Elia
d955897829
Convert config::selectorSlotPositions to physical units
2021-07-25 23:13:28 +02:00
Yuri D'Elia
6daf7fd060
Convert config::idlerSlotPositions to physical units
2021-07-25 22:39:18 +02:00
D.R.racer
b484eeacb6
Start using config.h
...
Added some constexpr vars for buttons, finda, fsensor and
applied them in the FW and unit tests accordingly.
2021-07-05 18:07:54 +02:00
D.R.racer
9efb127acb
Explain and fix the LED states while cutting filament
...
now the test is correct including LEDs
2021-07-01 08:12:47 +02:00
D.R.racer
f6e5d4ae76
Improve and verify Load filament alg and unit tests
2021-06-30 07:39:31 +02:00