Alex Voinea
739f4cd2a3
Check for tmc2130 error flags
2022-10-11 07:13:42 +02:00
Alex Voinea
8b2de34e34
Make sure the error flags are turned into bools
2022-10-11 07:13:42 +02:00
Alex Voinea
31c4a26d82
Make gpio write atomic
...
Unfortunately, there is no way to differentiate between an optimized gpio write (safe always on the atmega32u4) and an unoptimized write (read-modify-write, dangerous if any other pin on that Port is used in an ISR).
While very quickly polling the tmc registers, I noticed that the moving stepper would do some random extra steps. That can only be explained by the following sequence of actions:
- the spi code reads the PORT register
- ISR toggles the step line, changing the value in the PORT register
- the spi code writes the upated PORT back, resetting the step line to the old state
After making the writes atomic, the stepping issue disappeared and the driver checks also worked correctly
2022-10-11 07:13:42 +02:00
Yuri D'Elia
b4e95f0c49
Merge pull request #207 from wavexx/cmake_tweaks
...
cmake build tweaks
2022-10-10 19:35:57 +02:00
vintagepc
c029ba48ec
Merge pull request #215 from prusa3d/vintagepc-restore-hwcheck-axis-bits
...
Restore Hardware Error check axis bits
2022-10-10 13:29:23 -04:00
VintagePC
33b9e74b72
Restore the Error check axis bits
2022-10-10 12:08:58 -04:00
Yuri D'Elia
03e1757b0f
cmake: Reformat
2022-10-10 15:19:58 +02:00
Yuri D'Elia
d287ab2357
cmake: Full reproducibility support
2022-10-10 15:19:58 +02:00
Yuri D'Elia
ea38115152
cmake: Generate correct inline source listings in asm output
...
Manually provide a source path prefix to objdump
2022-10-10 15:19:58 +02:00
Yuri D'Elia
74dfb27c20
cmake: Improve AVR target flags
...
- Filter C++-only flags correctly
- Split sections correctly at link time with LTO
- Remove uneeded linker flags
2022-10-10 15:19:58 +02:00
Yuri D'Elia
c6b600d623
cmake: Strip prefix from debug info
...
Paves the way for some extra reproducibility.
2022-10-10 15:19:58 +02:00
Yuri D'Elia
38657f5d77
cmake: Improved way to set default compiler flags
2022-10-10 15:19:58 +02:00
Yuri D'Elia
f43884a0ca
Merge pull request #214 from wavexx/precommit_update
...
hooks: Update cmake-format to 0.6.13
2022-10-10 14:46:20 +02:00
Yuri D'Elia
5bacabe209
hooks: Update cmake-format to 0.6.13
...
Synchronize rules with Buddy
2022-10-10 11:50:05 +02:00
Guðni Már Gilbert
a8df6732fe
Merge pull request #208 from prusa3d/fix-flash-failure
...
Don't detach USB before entering bootloader
2022-10-08 13:55:42 +00:00
Guðni Már Gilbert
fd7e9c415c
Don't detach USB before entering bootloader
2022-10-07 17:58:35 +00:00
vintagepc
9c7701c123
Merge pull request #203 from prusa3d/vintagepc-check-hardware
...
Add module to check for sketchy electronics
2022-09-22 12:17:04 -04:00
Yuri D'Elia
1007402b24
Change TIMSK1 atomically in mm::IsrSetEnabled
2022-09-22 17:05:11 +02:00
Alex Voinea
dd7042e567
Fix typo
2022-09-22 12:16:41 +02:00
D.R.racer
4f1a301e0e
Force fix formatting
2022-09-22 12:16:41 +02:00
D.R.racer
0fa8a3c278
Refactor original solution from @leptun
...
- rename stall*guard to StallGuard (match name with the vendor)
- separate TMC2130 module from EEPROM (they do not need to know about each other at all)
- separate SGTHRS settings from motion - moved to globals like all other "global" parameters
- improved EEPROM storage for SGTHRS
2022-09-22 12:16:41 +02:00
Alex Voinea
d5249f99fd
Configurable SGTHRS
2022-09-22 12:16:41 +02:00
VintagePC
c5a5304775
Minor cleanup
2022-09-21 18:28:22 -04:00
VintagePC
8c6435d4e8
Change back a debug test
2022-09-16 19:46:48 -04:00
VintagePC
10fd23700b
Improve implementation
2022-09-16 19:39:27 -04:00
VintagePC
df86a6d472
Make test run by default, get fault display working
2022-09-13 21:43:51 -04:00
VintagePC
973db11bec
First pass/WIP
2022-09-13 08:47:27 -04:00
3d-gussner
860b91e42b
Add Write gcode M708
...
Fix doxygen format
2022-09-09 16:57:04 +02:00
3d-gussner
5accb05b2d
Fix and add units
2022-09-09 16:57:04 +02:00
3d-gussner
9c751d592d
Update register documentation
2022-09-09 16:57:04 +02:00
D.R.racer
210bd99eaa
Implement Idler moves via registers
2022-09-08 11:51:59 +02:00
D.R.racer
48d5bbc19e
Fix computation of CRC for Write requests (non-zero value2)
2022-09-08 11:39:10 +02:00
D.R.racer
9a5a6d9498
Fix computation of CRC
...
came out of unit tests of read/write registers functionality.
2022-09-07 15:44:08 +02:00
D.R.racer
5d2a0dab04
Fix selector's homing feedrate
2022-08-18 07:29:51 +02:00
D.R.racer
a5ce819143
Raise version (due to changed register layout)
2022-08-16 10:35:31 +02:00
D.R.racer
10514380a4
Change layout of registers - avoid empty registers
2022-08-16 10:35:31 +02:00
D.R.racer
74160c6c81
Remove PROGMEM temporarily - make registers actually work on AVR
...
This needs some investigation if it is really possible to push the Registers into PROGMEM. I think it should be possible, but the compiler is currently not collaborating.
It is not critical though as we have lots of free RAM at the moment (I can't believe I wrote this on an AVR project :) )
2022-08-11 10:26:42 +02:00
D.R.racer
89fc176955
Add basic unit test infrastructure for application + registers
2022-08-11 10:26:42 +02:00
vintagepc
fdb2058d2b
Fix test build
2022-08-11 10:26:42 +02:00
VintagePC
fc5e8a6ae0
Make CMake the source of truth for versioning
2022-08-11 10:26:42 +02:00
D.R.racer
39caece714
Add CRC to the protocol + unit tests
2022-08-11 10:26:42 +02:00
D.R.racer
bf5c0f3f23
Allow result codes on a Finished Command state
...
Helpful for the printer to show, that a command has been cancelled (or anything else we can think of in the future).
MMU-146
2022-08-11 10:26:42 +02:00
D.R.racer
283403306e
Add additional registers
...
It looks like the units' conversion linked some floating point routines ... C++ units are a PITA :(
2022-08-11 10:26:42 +02:00
D.R.racer
8473e84f89
Fixup CppCheck complaints
2022-08-11 10:26:42 +02:00
D.R.racer
caf3bc86b7
Fixup after rebase
2022-08-11 10:26:42 +02:00
D.R.racer
94d6795252
Add register for FSensorToNozzleFeedrate
2022-08-11 10:26:42 +02:00
D.R.racer
7bc9217cd7
Move register map into PROGMEM
...
hopefully the compiler understands...
2022-08-11 10:26:42 +02:00
D.R.racer
48dacd57bd
Improve code style (constexpr + unions = avoid reinterpret_cast)
2022-08-11 10:26:42 +02:00
D.R.racer
ad0b26c5ec
Fix unit tests
2022-08-11 10:26:42 +02:00
D.R.racer
a0bff0ef3a
Introduce register map + use Read/Write register
2022-08-11 10:26:42 +02:00