D.R.racer
3cb3cebed9
Add forced reinit of all automata for the unit tests
...
+ added a few constexpr to constructors on the way
2021-06-21 10:22:17 +02:00
D.R.racer
b8f6bc9a4e
Tune Feed to FINDA state machine and its unit test
...
so that it works as expected
Still, there is a task of resetting all of the state machines just for
the next unit test to be run.
2021-06-21 10:22:17 +02:00
D.R.racer
f0a042c1b6
Add unit tests for Feed to FINDA state machine
...
+ improve infrastructure
2021-06-21 10:22:17 +02:00
D.R.racer
925201d77a
Basic unit test structure for the logic layer
...
It compiles the Cut Filament unit test with all the necessary components.
Still, the unit test does nothing.
2021-06-21 10:22:17 +02:00
Alex Voinea
e5215c7b84
SHR16 tmc control
2021-06-21 06:14:01 +02:00
Alex Voinea
19bc26219b
Fix usart not working
2021-06-18 06:43:55 +02:00
Alex Voinea
113f9d7664
Fix build
2021-06-18 06:42:28 +02:00
Alex Voinea
6bd4db2681
Functional SHR16
2021-06-18 06:42:28 +02:00
Alex Voinea
7845f9aad4
SHR16 gpio
2021-06-18 06:42:28 +02:00
D.R.racer
58fe013471
Fix compilation
2021-06-16 06:43:20 +02:00
D.R.racer
d6c9e58e66
Add global state hive
...
+ solve many TODO's in the code (active slot/extruder and filament loaded flag)
2021-06-16 06:43:20 +02:00
Yuri D'Elia
4d1a26aeea
Define missing definition of CMAKE_OBJDUMP
2021-06-15 06:53:03 +02:00
Yuri D'Elia
070552200a
Use cmake's binutils paths for custom targets
...
Again, this fixes the build when multiple versions of binutils/avr
toolchains are avalable.
2021-06-14 07:36:17 +02:00
Yuri D'Elia
f30c009304
Use AVR_TOOLCHAIN_DIR correctly
...
Probably copy/paste typos.
2021-06-14 07:36:17 +02:00
D.R.racer
9e4bd97968
Add empty EEPROM HAL implementation
2021-06-14 07:34:59 +02:00
D.R.racer
dfb57bcae5
Add Load filament state machine
...
+ printer's fsensor (external) module
+ state machine for loading to bondtech
2021-06-14 07:34:59 +02:00
D.R.racer
7cab9dc915
Add Tool change operation
2021-06-14 07:34:59 +02:00
D.R.racer
ea65b75120
Add Eject filament operation
...
+ refactor other state machines a bit - Reset() now has the parameter which comes in the RequestMsg
2021-06-14 07:34:59 +02:00
D.R.racer
7bfc1bad97
Cut filament prototype state machine
2021-06-14 07:34:59 +02:00
D.R.racer
4a79b4b865
UnloadFilament - refactor for the new Idler API
2021-06-14 07:34:59 +02:00
D.R.racer
96be4b18a2
main - add Idler and Selector modules into main loop stepping
2021-06-14 07:34:59 +02:00
D.R.racer
d0095a01aa
Buttons - add AnyButtonPressed()
2021-06-14 07:34:59 +02:00
D.R.racer
ade5f11fe2
Motion - remove dummy Idler functions
2021-06-14 07:34:59 +02:00
D.R.racer
9caf680633
Add Feed to FINDA state machine
2021-06-14 07:34:59 +02:00
D.R.racer
7555bbb906
Add Selector module
2021-06-14 07:34:59 +02:00
D.R.racer
b4e8c3fa5d
Add Idler module
2021-06-14 07:34:59 +02:00
D.R.racer
05ff998c01
Lay out the other high-level commands/operations
...
- cut, eject, load filament, toolchange
- uncomment them in main.cpp
- their implementation is still empty
2021-06-14 07:34:59 +02:00
D.R.racer
5b4eb0cee3
Extract Unload filament into a separate file
...
+ cleanup the object structure
+ add no_command as the starting "operation" to simplify the rest of the command handling at runtime
2021-06-14 07:34:59 +02:00
D.R.racer
271a2dd7df
Minor tweaks after rebase onto main
2021-06-14 07:34:59 +02:00
D.R.racer
6f1624b718
Make logic prototype compilable
2021-06-14 07:34:59 +02:00
D.R.racer
2159558d88
Prototype of Unload Filament command/operation
...
+ related stuff:
- command decoding+processing+reporting in main.cpp
- slight refactoring of modules
2021-06-14 07:34:59 +02:00
D.R.racer
ca6de101c3
Logic - first try
2021-06-14 07:34:59 +02:00
D.R.racer
019f74d6f2
Add debouncing for FINDA
2021-06-08 07:00:07 +02:00
D.R.racer
c4b181e842
Update CMakeLists.txt
2021-06-08 07:00:07 +02:00
D.R.racer
939b47d260
FINDA interface module
2021-06-08 07:00:07 +02:00
D.R.racer
3ef113cf6c
Add basic motion API
2021-06-08 06:59:49 +02:00
D.R.racer
8e994c3b17
Take over permanent storage implementation from MM-control-01
2021-06-08 06:59:14 +02:00
D.R.racer
9f2b5e5ecb
Add vscode configuration to allow easier switching among firmware and unit tests
2021-05-31 12:28:47 +02:00
DRracer
2c6ab48196
Merge pull request #13 from DRracer/leds
...
Add interface module for driving LEDs
2021-05-27 13:55:17 +02:00
D.R.racer
bd335ec30d
Unit test for LEDs interface + fixes
2021-05-26 11:39:24 +02:00
D.R.racer
004db59da0
Add shift register interface and improve LED integration with it
2021-05-26 09:29:32 +02:00
D.R.racer
c377674aee
Prepare unit tests for LEDs
2021-05-25 12:33:50 +02:00
D.R.racer
9226230fd5
Reformat sources to fit the new namespace formatting rules
2021-05-25 12:24:19 +02:00
D.R.racer
acc33bfacb
Do not indent namespaces
2021-05-25 12:23:29 +02:00
D.R.racer
6cb072ce79
Rebase onto main + clean up the code a bit
2021-05-25 11:55:28 +02:00
D.R.racer
fce2195558
Interface module for driving LEDs
...
+ start shaping up main.cpp
+ make the usage of namespaces and class names more consistent throughout the whole project
+ refactor related unit tests accordingly
2021-05-25 11:00:30 +02:00
D.R.racer
7611b98830
Add more unit tests and optimize (saved 1 byte per button on the AVR)
2021-05-25 10:02:02 +02:00
D.R.racer
7ece1fb28d
Add missing buttons.h
2021-05-25 10:02:02 +02:00
D.R.racer
ba8eacfe33
Buttons module implementation
...
A module representing a model of the 3 buttons
Includes a unit test project (empty at this stage)
2021-05-25 10:02:02 +02:00
Alex Voinea
47528c3bca
USART hal prototype
2021-05-24 12:32:10 +02:00