Compare commits
806 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
61c0c8d2ef | ||
|
|
ce7657e537 | ||
|
|
037377b927 | ||
|
|
5493bdfb48 | ||
|
|
4b9cb36247 | ||
|
|
f3e89e25c5 | ||
|
|
655861cf12 | ||
|
|
050bc33241 | ||
|
|
46ee920b93 | ||
|
|
3a9e9a4bef | ||
|
|
3beb465247 | ||
|
|
2ec69ae361 | ||
|
|
52b07f467e | ||
|
|
81a1a03ed0 | ||
|
|
869440a7ed | ||
|
|
20f26b534d | ||
|
|
91cba8a17f | ||
|
|
be429caba3 | ||
|
|
8176ba22aa | ||
|
|
4b9add2fc3 | ||
|
|
55f60601ca | ||
|
|
876f351127 | ||
|
|
089516a6f2 | ||
|
|
f511e201f9 | ||
|
|
52617455ce | ||
|
|
d679f711eb | ||
|
|
68dbbc8d41 | ||
|
|
59ebdce605 | ||
|
|
310747a636 | ||
|
|
a3b4b39ff1 | ||
|
|
fb91aad583 | ||
|
|
825d4baf90 | ||
|
|
8faed8d9fe | ||
|
|
272e815522 | ||
|
|
06d65ef5ac | ||
|
|
d886c1761b | ||
|
|
47aa28e530 | ||
|
|
fbd5b49215 | ||
|
|
dad2196776 | ||
|
|
b50d740542 | ||
|
|
3e7efe5ef1 | ||
|
|
75a10bfcaf | ||
|
|
730e5951bc | ||
|
|
941fb5a367 | ||
|
|
17d471c07c | ||
|
|
ef1d8bc3bd | ||
|
|
581c954f40 | ||
|
|
98068beca0 | ||
|
|
3c1bf4ccfe | ||
|
|
1836ec431c | ||
|
|
14c105b86e | ||
|
|
2f6d240900 | ||
|
|
edc3d34beb | ||
|
|
53f1bf2af2 | ||
|
|
1fc6d214f4 | ||
|
|
bf5c4daf86 | ||
|
|
ec56167032 | ||
|
|
15339aec64 | ||
|
|
a90110d9ba | ||
|
|
e24ea3652c | ||
|
|
508c28e689 | ||
|
|
fec3e685c9 | ||
|
|
b16cb6575d | ||
|
|
329fbd01d8 | ||
|
|
01b0e98ab2 | ||
|
|
638c085ffa | ||
|
|
8a2de5f23e | ||
|
|
2c90c97ccd | ||
|
|
2db2ef82f2 | ||
|
|
eb0581c264 | ||
|
|
61fb5fe29c | ||
|
|
9fd415d3f5 | ||
|
|
b7366ae3fc | ||
|
|
6cdcf75e6b | ||
|
|
d57fe4395e | ||
|
|
0114d72a6c | ||
|
|
8c1037ef1b | ||
|
|
ed796fcfaa | ||
|
|
6ab253366c | ||
|
|
4aa550837f | ||
|
|
c72d73ec45 | ||
|
|
5fe333934d | ||
|
|
9a06d2b7e8 | ||
|
|
cf3b0475da | ||
|
|
aae29ba48b | ||
|
|
485c8f2ef0 | ||
|
|
7083879700 | ||
|
|
9ca71d8608 | ||
|
|
8a3d2afd79 | ||
|
|
80d185c94c | ||
|
|
cb13ee76ff | ||
|
|
a2a91654a9 | ||
|
|
383b83d788 | ||
|
|
2b9e041a86 | ||
|
|
90c1b82baa | ||
|
|
896343d943 | ||
|
|
1499bfa489 | ||
|
|
b7233d1197 | ||
|
|
16b4b6b302 | ||
|
|
7f89668d6c | ||
|
|
aecb29d2b0 | ||
|
|
9ce631e8d1 | ||
|
|
2165c90011 | ||
|
|
a6df541104 | ||
|
|
62325d4a35 | ||
|
|
03068b48fe | ||
|
|
d45b9c92d8 | ||
|
|
49205f92ff | ||
|
|
5493c60373 | ||
|
|
847331260c | ||
|
|
8291788f40 | ||
|
|
a18c74be05 | ||
|
|
42d8b9b847 | ||
|
|
2cfef4d94d | ||
|
|
f2e69a3703 | ||
|
|
d6494ffed5 | ||
|
|
9bd0d47576 | ||
|
|
a46dba08e2 | ||
|
|
f6718291b7 | ||
|
|
8a203cf2cb | ||
|
|
58541a799e | ||
|
|
848124ac4d | ||
|
|
3cdb1793d4 | ||
|
|
64ba37c02e | ||
|
|
06bb49f135 | ||
|
|
61f81bdb26 | ||
|
|
c28ed06e98 | ||
|
|
405935f918 | ||
|
|
906431bb00 | ||
|
|
4ef21a1e9b | ||
|
|
c5c79c936f | ||
|
|
f00919070e | ||
|
|
2ad0b1afc2 | ||
|
|
c75eb53c0c | ||
|
|
9f328cab95 | ||
|
|
c88ee84bed | ||
|
|
38bf6f2693 | ||
|
|
4f3a7fd227 | ||
|
|
f119e96e8f | ||
|
|
6d1256ddcc | ||
|
|
2af8d3f1d0 | ||
|
|
6631275ab6 | ||
|
|
9d36f31615 | ||
|
|
0f7887fffe | ||
|
|
a34034494e | ||
|
|
eeb2678ec2 | ||
|
|
a91d8a66f3 | ||
|
|
9d4ab862b9 | ||
|
|
85ebafd3f6 | ||
|
|
9adb313ee8 | ||
|
|
faa89be816 | ||
|
|
89d94dd33b | ||
|
|
a796ca5e72 | ||
|
|
94da4d10d7 | ||
|
|
31fe50ffa3 | ||
|
|
b381f509d1 | ||
|
|
ea546c789b | ||
|
|
f0a7797712 | ||
|
|
08102a0bf9 | ||
|
|
1c3b30b815 | ||
|
|
1563a68144 | ||
|
|
48590a35e4 | ||
|
|
335a0e20c2 | ||
|
|
8a1c3cd668 | ||
|
|
2c246c7d33 | ||
|
|
a4aa2a9002 | ||
|
|
08a85ba869 | ||
|
|
39f08aeda1 | ||
|
|
fe89c19ac0 | ||
|
|
0c806d84f7 | ||
|
|
55339998e5 | ||
|
|
0855994e59 | ||
|
|
8e1cdb199a | ||
|
|
34e9ea55df | ||
|
|
52af688245 | ||
|
|
8a530cbcce | ||
|
|
b89d552387 | ||
|
|
96cceed23e | ||
|
|
8f361a15b2 | ||
|
|
f4143af4fa | ||
|
|
1c0adb9af8 | ||
|
|
8a7a39530e | ||
|
|
3358295de8 | ||
|
|
ef75346861 | ||
|
|
064eee6859 | ||
|
|
8b7cc43952 | ||
|
|
9426485bb6 | ||
|
|
b4aca122a1 | ||
|
|
d9236f1c20 | ||
|
|
8a5801a204 | ||
|
|
71433b8224 | ||
|
|
87ac69363a | ||
|
|
5731d964b6 | ||
|
|
f323a4fcc7 | ||
|
|
69e0d866c0 | ||
|
|
0532a41c75 | ||
|
|
900bf2be55 | ||
|
|
cc4ad6670f | ||
|
|
28995a8bce | ||
|
|
7940a6a728 | ||
|
|
6ade82ed7e | ||
|
|
3a57f71f33 | ||
|
|
293858c51f | ||
|
|
14a83103c3 | ||
|
|
08a1c9f127 | ||
|
|
40d6a06f8f | ||
|
|
f71d2c7cfc | ||
|
|
81de9a8615 | ||
|
|
f9d7a71195 | ||
|
|
ff3eed2ad8 | ||
|
|
9e45ec222e | ||
|
|
3e55008323 | ||
|
|
d81eb557d7 | ||
|
|
d5e5a6da2d | ||
|
|
c0edfbc4ea | ||
|
|
3f2ef88eb9 | ||
|
|
503e7e368b | ||
|
|
ca815f52c8 | ||
|
|
025ae2349d | ||
|
|
d7d9092a92 | ||
|
|
ba2a149e9a | ||
|
|
13c75ea876 | ||
|
|
cb15d0fec6 | ||
|
|
055f07c638 | ||
|
|
c0095812ff | ||
|
|
0844388d70 | ||
|
|
12cd1d9e81 | ||
|
|
6848843224 | ||
|
|
bd1dbc8af3 | ||
|
|
7603953ef7 | ||
|
|
0087f04cc3 | ||
|
|
c84d78f3f1 | ||
|
|
248d3dbf8b | ||
|
|
00cb683def | ||
|
|
34732f857a | ||
|
|
9318901f19 | ||
|
|
4d21ffc1d6 | ||
|
|
6d70050261 | ||
|
|
2d73211190 | ||
|
|
d89722056b | ||
|
|
9fa0fb1a0e | ||
|
|
7149bb1b6d | ||
|
|
ba529996ea | ||
|
|
4ac283cc0e | ||
|
|
a19d64febd | ||
|
|
a19af08894 | ||
|
|
2c7e09cfa6 | ||
|
|
fc0f17b920 | ||
|
|
c7b7c11cc3 | ||
|
|
f2df011c68 | ||
|
|
0a14e33150 | ||
|
|
11f04ba1ba | ||
|
|
863a463cb2 | ||
|
|
ae227d485c | ||
|
|
433fcb6f24 | ||
|
|
beba2c2d33 | ||
|
|
fcf064ba68 | ||
|
|
aa0dbf6ee6 | ||
|
|
49f511e679 | ||
|
|
429aa2b2a6 | ||
|
|
bf1bc1ee0f | ||
|
|
1591a51f76 | ||
|
|
8de7153952 | ||
|
|
0d87bec159 | ||
|
|
589bd64ce0 | ||
|
|
36b8831c7e | ||
|
|
17c645f000 | ||
|
|
d4bae4dffe | ||
|
|
931d1ce8f4 | ||
|
|
93245b3678 | ||
|
|
068d2a9f5a | ||
|
|
f72f94e299 | ||
|
|
58753e58a2 | ||
|
|
abfe3675d6 | ||
|
|
e780049a74 | ||
|
|
f4adb29999 | ||
|
|
982a50c70a | ||
|
|
de9798fb5b | ||
|
|
f9a2920cee | ||
|
|
292512f813 | ||
|
|
6ea5b94d1e | ||
|
|
6f6122a576 | ||
|
|
8fc11b4a2e | ||
|
|
bec47e0492 | ||
|
|
12f92c55f1 | ||
|
|
49c0ad6369 | ||
|
|
6cd174208b | ||
|
|
3078912f1d | ||
|
|
b6a0063235 | ||
|
|
4a92727eab | ||
|
|
37482178b5 | ||
|
|
4709f1fad5 | ||
|
|
04c562941c | ||
|
|
cb6cce3934 | ||
|
|
3dc7c9ab29 | ||
|
|
6fac654352 | ||
|
|
29bfbd02f9 | ||
|
|
236d780a0a | ||
|
|
5d52b32e64 | ||
|
|
2efde0111e | ||
|
|
faee2c0e52 | ||
|
|
b7f7b8a346 | ||
|
|
694d38c791 | ||
|
|
dae8b8cacf | ||
|
|
e0cbd7b5fc | ||
|
|
ed8dca8df0 | ||
|
|
5249d955bb | ||
|
|
0f3f29101c | ||
|
|
1ca1054957 | ||
|
|
f01c8853ca | ||
|
|
472d8e5b66 | ||
|
|
80b55d3528 | ||
|
|
8f510da12b | ||
|
|
79930ed99a | ||
|
|
434770eaf9 | ||
|
|
7e8c7f46a9 | ||
|
|
af149b4781 | ||
|
|
d8d072b375 | ||
|
|
7b490f3ec1 | ||
|
|
b1eec53ff4 | ||
|
|
0b329c5d28 | ||
|
|
c3ec4af6cc | ||
|
|
2f6e94c94c | ||
|
|
713b509698 | ||
|
|
28faf81414 | ||
|
|
819599362c | ||
|
|
abb7910316 | ||
|
|
9ceaae3847 | ||
|
|
56829b07d2 | ||
|
|
f73e6dcd12 | ||
|
|
144af05270 | ||
|
|
95fdb68587 | ||
|
|
c106955850 | ||
|
|
12e9b633d8 | ||
|
|
2425a74638 | ||
|
|
36f9b26ef9 | ||
|
|
75d7c17656 | ||
|
|
c37329e9e2 | ||
|
|
4cfa266e00 | ||
|
|
a8b493a1ae | ||
|
|
b09897245e | ||
|
|
30e0fddbbf | ||
|
|
28281c595b | ||
|
|
13b2926e0c | ||
|
|
b0d90fd013 | ||
|
|
d84fc431a1 | ||
|
|
da2b258441 | ||
|
|
b8f1df3a96 | ||
|
|
acdf8bb108 | ||
|
|
fa5fa74761 | ||
|
|
01c7befacb | ||
|
|
b029d04668 | ||
|
|
6f16e11197 | ||
|
|
24c884e9f3 | ||
|
|
75a40e817d | ||
|
|
5e280680c5 | ||
|
|
67c152745e | ||
|
|
9e1cbdcee3 | ||
|
|
0aacbc3973 | ||
|
|
bedec55154 | ||
|
|
239f8e59e0 | ||
|
|
e37b007f67 | ||
|
|
d9043345b6 | ||
|
|
40728e9231 | ||
|
|
de1cf216ac | ||
|
|
e6df93fcf8 | ||
|
|
235b75be3c | ||
|
|
78a15b6d81 | ||
|
|
bfb71bc2dc | ||
|
|
09a78c31bb | ||
|
|
0291a1554c | ||
|
|
d99d1a8463 | ||
|
|
bb512ef5d7 | ||
|
|
bddefdde36 | ||
|
|
0105aa330f | ||
|
|
18de421c4a | ||
|
|
71604b712a | ||
|
|
31de734d19 | ||
|
|
b98375b360 | ||
|
|
a77d07907f | ||
|
|
28f06a104b | ||
|
|
72b301a285 | ||
|
|
4f00f21991 | ||
|
|
c92732e4f1 | ||
|
|
2f7b234189 | ||
|
|
b2ac0f1ce3 | ||
|
|
9a940ffccb | ||
|
|
0aaabf1904 | ||
|
|
0cd16e956d | ||
|
|
1b24f6a2ad | ||
|
|
6ce6fbbce0 | ||
|
|
9f41f53c5e | ||
|
|
16a7b50ce9 | ||
|
|
600e89ae8c | ||
|
|
5e3daa6f21 | ||
|
|
5e433fff06 | ||
|
|
f1982edcd5 | ||
|
|
44e79e0c37 | ||
|
|
23c5b20f5b | ||
|
|
55e46aa625 | ||
|
|
43a9685c58 | ||
|
|
fd2feff67d | ||
|
|
1baa45913f | ||
|
|
7abafb575b | ||
|
|
4115ea128a | ||
|
|
2e8b54ae5f | ||
|
|
f653db9c88 | ||
|
|
daf875e6e4 | ||
|
|
d785b396a7 | ||
|
|
d853c19811 | ||
|
|
6f0e91f69f | ||
|
|
2dc4cfc5df | ||
|
|
266e96621c | ||
|
|
dc6182f3b3 | ||
|
|
95e1a290f1 | ||
|
|
5ff555a705 | ||
|
|
3275614b89 | ||
|
|
83d0d2f19b | ||
|
|
94719fe327 | ||
|
|
1d92be71da | ||
|
|
6cc409f6fb | ||
|
|
d633ef2cfc | ||
|
|
43d0dba4b4 | ||
|
|
7a74888b43 | ||
|
|
3d3b87f97f | ||
|
|
447a88eb08 | ||
|
|
1ea9f3aa35 | ||
|
|
dab39c02cd | ||
|
|
96ab906946 | ||
|
|
84aa3caa45 | ||
|
|
49315b3cc4 | ||
|
|
1a1568c38b | ||
|
|
b50d6669a8 | ||
|
|
0665dc8976 | ||
|
|
92fe8f15b8 | ||
|
|
25bc649cd2 | ||
|
|
9847b44901 | ||
|
|
d7f6348ae6 | ||
|
|
b502558052 | ||
|
|
6f686ddee3 | ||
|
|
c716edafe2 | ||
|
|
3370134593 | ||
|
|
95c753292d | ||
|
|
acde3720a4 | ||
|
|
ffd44c0219 | ||
|
|
f4c8f0bf88 | ||
|
|
3f84501955 | ||
|
|
43ce7c0b9a | ||
|
|
d6a4669ce0 | ||
|
|
e67cbbe5c1 | ||
|
|
978c294741 | ||
|
|
644f7e0872 | ||
|
|
fe56bf36c9 | ||
|
|
77619e912c | ||
|
|
147492b253 | ||
|
|
71ab6240f2 | ||
|
|
547bfbf818 | ||
|
|
3417940fd8 | ||
|
|
2defd7374a | ||
|
|
1e5f688b53 | ||
|
|
19862bc3b7 | ||
|
|
f0753bd338 | ||
|
|
6676c1df86 | ||
|
|
2c2bb720fa | ||
|
|
1a83845c9f | ||
|
|
fe7082e4a8 | ||
|
|
c5bd813d8b | ||
|
|
62bf52bfcf | ||
|
|
99d7af87fd | ||
|
|
c491ea669f | ||
|
|
b7b13588c7 | ||
|
|
9e574c3497 | ||
|
|
93cd8834f3 | ||
|
|
bafb126abd | ||
|
|
5bd32e2984 | ||
|
|
d929be487b | ||
|
|
7ed3c679dc | ||
|
|
0ccf5f8e47 | ||
|
|
fc102edc24 | ||
|
|
05d5451347 | ||
|
|
795ce490a0 | ||
|
|
38221df83a | ||
|
|
03f69cd81a | ||
|
|
ea2f6bc0f5 | ||
|
|
bb4711c5d3 | ||
|
|
187cc2f1b8 | ||
|
|
3c8f202dfa | ||
|
|
83df4a8627 | ||
|
|
29b7550ce5 | ||
|
|
48a05eaa54 | ||
|
|
4688c21c54 | ||
|
|
3f8f30d612 | ||
|
|
74473322e5 | ||
|
|
0d67d9c45d | ||
|
|
0acf3035e8 | ||
|
|
9e765daeed | ||
|
|
233f50424c | ||
|
|
64a97431b5 | ||
|
|
03982f2c7e | ||
|
|
bee7ec720b | ||
|
|
9b15293547 | ||
|
|
a629b87ae0 | ||
|
|
f7567a0db9 | ||
|
|
6749985302 | ||
|
|
0c521b601d | ||
|
|
593486fadc | ||
|
|
dd01e99c59 | ||
|
|
b1f597c550 | ||
|
|
ecc9bbf52a | ||
|
|
5edc7fee7e | ||
|
|
7eabf02f5b | ||
|
|
83ef0e135e | ||
|
|
447125faae | ||
|
|
043f18da26 | ||
|
|
615db729e7 | ||
|
|
6adff3954b | ||
|
|
78ae83c314 | ||
|
|
5b204866c5 | ||
|
|
472fd32cab | ||
|
|
90427fe30e | ||
|
|
bdeec0f56d | ||
|
|
83eecae028 | ||
|
|
cd8d57c2c6 | ||
|
|
b1361d9e5b | ||
|
|
01ac5334e9 | ||
|
|
1e3ace2170 | ||
|
|
aa726cb7cb | ||
|
|
7bd32994d4 | ||
|
|
a4cd0336bd | ||
|
|
21b7842979 | ||
|
|
e9bf2d4c5c | ||
|
|
8ef0f7d7e3 | ||
|
|
2acfa28294 | ||
|
|
8f178b892a | ||
|
|
5f58fe7484 | ||
|
|
5f990f93d5 | ||
|
|
073665cebb | ||
|
|
ec1dcf3bd2 | ||
|
|
c9aa7ac871 | ||
|
|
01ed8096d8 | ||
|
|
261efdd86c | ||
|
|
4292136b16 | ||
|
|
15c3824e9b | ||
|
|
dd368c107c | ||
|
|
07792a02b4 | ||
|
|
aa8ba30f8a | ||
|
|
594c024355 | ||
|
|
00b78c68cc | ||
|
|
20d87c73fe | ||
|
|
ed66982b8e | ||
|
|
55d09771b1 | ||
|
|
6f7c743615 | ||
|
|
039daecb4f | ||
|
|
36be1cfc51 | ||
|
|
ea330717cd | ||
|
|
fee385dad8 | ||
|
|
e9534d6f92 | ||
|
|
ba4eed175d | ||
|
|
d725dfd309 | ||
|
|
7e93af2574 | ||
|
|
fbc5589097 | ||
|
|
73d017aa89 | ||
|
|
5fc5d95ca5 | ||
|
|
366b0de1c8 | ||
|
|
1c482581c3 | ||
|
|
ffb5105b55 | ||
|
|
6d48adf9ef | ||
|
|
a96608add4 | ||
|
|
e62929fe2f | ||
|
|
f163a37f5e | ||
|
|
f4a3dfa53f | ||
|
|
b9247810b9 | ||
|
|
d32a833455 | ||
|
|
1374c701ab | ||
|
|
623ebf2fb1 | ||
|
|
2ae3dd2f78 | ||
|
|
9a77d8859b | ||
|
|
8fe18f27a9 | ||
|
|
1ad4c0fd6e | ||
|
|
775092fc01 | ||
|
|
0245073c55 | ||
|
|
38e79dffb6 | ||
|
|
9cb2656914 | ||
|
|
5ee72d320c | ||
|
|
6cbb6f144b | ||
|
|
6ce2bd61cc | ||
|
|
15d302901f | ||
|
|
645a1b8364 | ||
|
|
b389c70d5a | ||
|
|
3bbae611f9 | ||
|
|
a3c00d0bed | ||
|
|
e15bad4844 | ||
|
|
345934bd68 | ||
|
|
98ed0a8168 | ||
|
|
90e1477d72 | ||
|
|
a919594b66 | ||
|
|
0539e9f266 | ||
|
|
ddf0994ba2 | ||
|
|
14ff50c94d | ||
|
|
23bbbaa21b | ||
|
|
81e4636f42 | ||
|
|
5f0d252b40 | ||
|
|
624d360a34 | ||
|
|
16c53992d6 | ||
|
|
ec61f10f0f | ||
|
|
37315bf336 | ||
|
|
7511151ac9 | ||
|
|
2471918f08 | ||
|
|
33b18fd62b | ||
|
|
a3eebab4f2 | ||
|
|
b89a049fdb | ||
|
|
3bd0be40d5 | ||
|
|
1a24e7c5b6 | ||
|
|
3b0729c949 | ||
|
|
06e5c577bd | ||
|
|
6414e1772d | ||
|
|
1987742545 | ||
|
|
bec1d957d2 | ||
|
|
b17ae55f5b | ||
|
|
28f11244c3 | ||
|
|
3377f29bc5 | ||
|
|
f10c60eea7 | ||
|
|
8b2074e068 | ||
|
|
10e816979e | ||
|
|
5a49372dec | ||
|
|
9b59d745f1 | ||
|
|
011b4e39e6 | ||
|
|
80a7744b42 | ||
|
|
c2fe372925 | ||
|
|
d68a6c28ba | ||
|
|
40b4b34998 | ||
|
|
cba119db3a | ||
|
|
4748dffd7a | ||
|
|
a8b1b0ef05 | ||
|
|
c2b2278a49 | ||
|
|
d16adc356b | ||
|
|
aa8a6f4cf1 | ||
|
|
83308a1051 | ||
|
|
22ee889f41 | ||
|
|
acca55b074 | ||
|
|
754a67af4e | ||
|
|
8850084fcf | ||
|
|
e5ed245ff2 | ||
|
|
ecc23fc6fa | ||
|
|
ef34c5bb5d | ||
|
|
23e82d37f1 | ||
|
|
27dab0ee51 | ||
|
|
fec7ddd8ae | ||
|
|
c9731a6fe2 | ||
|
|
36e0afea2d | ||
|
|
9fe3152e23 | ||
|
|
d8a9ab5ef7 | ||
|
|
4026365270 | ||
|
|
d518152ab2 | ||
|
|
346e3901f6 | ||
|
|
1a2033aba8 | ||
|
|
e93f39444c | ||
|
|
16f54c8200 | ||
|
|
52f4e20c26 | ||
|
|
2466b7a2c6 | ||
|
|
e2d7c59812 | ||
|
|
73f4c6cd00 | ||
|
|
0469710a69 | ||
|
|
c54d83c9f1 | ||
|
|
a9feeaa9eb | ||
|
|
fd167894a0 | ||
|
|
dd39091388 | ||
|
|
117c1d42ac | ||
|
|
0d5b96a601 | ||
|
|
136283bd14 | ||
|
|
45dd30c820 | ||
|
|
87f109984a | ||
|
|
2337d05f48 | ||
|
|
187173cbb5 | ||
|
|
9d77f44995 | ||
|
|
ca6e5fe514 | ||
|
|
5a69d0f857 | ||
|
|
e3485fc31b | ||
|
|
57c4da5ecf | ||
|
|
4b1536d62f | ||
|
|
bee1c67416 | ||
|
|
e6307ca9fe | ||
|
|
b2178f49ec | ||
|
|
6b75f54e50 | ||
|
|
e6ef48cdf7 | ||
|
|
a5fb20765e | ||
|
|
761b350c80 | ||
|
|
0a9a0eac3d | ||
|
|
14bf9f8ba8 | ||
|
|
ea65670239 | ||
|
|
d881171739 | ||
|
|
69dcda1696 | ||
|
|
0a645e4916 | ||
|
|
b7978d37b3 | ||
|
|
d7bd7f1f4b | ||
|
|
848a78d1a5 | ||
|
|
aca0c71a2b | ||
|
|
738ddaf362 | ||
|
|
4b5d056421 | ||
|
|
72b6bd7efa | ||
|
|
94cbf5ff48 | ||
|
|
1e7057e917 | ||
|
|
df1137ef75 | ||
|
|
5ffe5d6349 | ||
|
|
da8d4b0231 | ||
|
|
17f7c03921 | ||
|
|
ae9169c4c3 | ||
|
|
5644481590 | ||
|
|
791ad6162a | ||
|
|
fa78e6b8fb | ||
|
|
d479366242 | ||
|
|
f250bdfd8a | ||
|
|
1979c9d090 | ||
|
|
13fd2833ce | ||
|
|
4cd5e9d222 | ||
|
|
e3253cb79e | ||
|
|
4df1adeb2e | ||
|
|
ead81fbf74 | ||
|
|
6273d7e05d | ||
|
|
0407c24c78 | ||
|
|
6026a99ad8 | ||
|
|
1a693c18d6 | ||
|
|
3935f78543 | ||
|
|
80943d3846 | ||
|
|
33f973e452 | ||
|
|
cefbad9ef4 | ||
|
|
d372f913ef | ||
|
|
51526fd627 | ||
|
|
cef0b70c88 | ||
|
|
1034f19134 | ||
|
|
0bf073ba08 | ||
|
|
f571618376 | ||
|
|
876c3ffffd | ||
|
|
efdc29f589 | ||
|
|
9b7dcfa333 | ||
|
|
e631840ad6 | ||
|
|
deed7f829a | ||
|
|
cf25c3907c | ||
|
|
5502be01f7 | ||
|
|
86acee6e8b | ||
|
|
4671cf2d0e | ||
|
|
bca2671efb | ||
|
|
52b33c1b81 | ||
|
|
bd2a849566 | ||
|
|
f1203d56f6 | ||
|
|
4ea11dbb4f | ||
|
|
01f90e8f28 | ||
|
|
4395ae96a7 | ||
|
|
a564824009 | ||
|
|
cbc17a7cb6 | ||
|
|
3cd8a72e60 | ||
|
|
448c1a1488 | ||
|
|
9c2ccceb9f | ||
|
|
b337cc3ee8 | ||
|
|
40d8c2ef16 | ||
|
|
6ae6aaf711 | ||
|
|
f57ff2c07e | ||
|
|
29ba5ab05a | ||
|
|
1ff0a5494a | ||
|
|
b51b068442 | ||
|
|
c620f4836e | ||
|
|
34fd3f41ea | ||
|
|
806cf233ec | ||
|
|
4ca1e5f670 | ||
|
|
4753315601 | ||
|
|
9b60daf62d | ||
|
|
aac613bf44 | ||
|
|
f078a27905 | ||
|
|
8621ebbed2 | ||
|
|
4af8786587 | ||
|
|
b6cd77f6e3 | ||
|
|
be74c72555 | ||
|
|
2a25733cd8 | ||
|
|
3c1ed3bb27 | ||
|
|
0c43ae1fd4 | ||
|
|
02b45c91fb | ||
|
|
b0d9cbfb4b | ||
|
|
7d1df81e5e | ||
|
|
41c7bb818f | ||
|
|
ac090d9d52 | ||
|
|
f31540b357 | ||
|
|
e33b41abaa | ||
|
|
9d668d63a7 | ||
|
|
f6199ef613 | ||
|
|
fe0fc29616 | ||
|
|
9b342c65c8 | ||
|
|
dc94a35752 | ||
|
|
d40ebdab06 | ||
|
|
52a6bed24e | ||
|
|
e16a693b1e | ||
|
|
6ba2c3e1d1 | ||
|
|
347dfa58ea | ||
|
|
69f76b3b66 | ||
|
|
201f715b55 | ||
|
|
ba365aff96 | ||
|
|
0c5c87d7c0 | ||
|
|
c7f323e863 | ||
|
|
0972561783 | ||
|
|
516fdae2b7 | ||
|
|
03006f5ca3 | ||
|
|
336cc92a0a | ||
|
|
a42f615881 | ||
|
|
50b2e2e67e | ||
|
|
c5d56f4438 | ||
|
|
9ab367d813 | ||
|
|
a1de69e39b |
8
.github/workflows/build-test.yaml
vendored
8
.github/workflows/build-test.yaml
vendored
@@ -4,12 +4,12 @@ on: [push, pull_request]
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-20.04
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
- name: Setup cache
|
- name: Setup cache
|
||||||
uses: actions/cache@v2
|
uses: actions/cache@v3
|
||||||
with:
|
with:
|
||||||
path: ci_cache
|
path: ci_cache
|
||||||
key: ${{ runner.os }}-build-${{ hashFiles('scripts/ci-install.sh') }}
|
key: ${{ runner.os }}-build-${{ hashFiles('scripts/ci-install.sh') }}
|
||||||
@@ -21,7 +21,7 @@ jobs:
|
|||||||
run: ./scripts/ci-build.sh 2>&1
|
run: ./scripts/ci-build.sh 2>&1
|
||||||
|
|
||||||
- name: Upload micro-controller data dictionaries
|
- name: Upload micro-controller data dictionaries
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: data-dict
|
name: data-dict
|
||||||
path: ci_build/dict
|
path: ci_build/dict
|
||||||
|
|||||||
8
.github/workflows/klipper3d-deploy.yaml
vendored
8
.github/workflows/klipper3d-deploy.yaml
vendored
@@ -12,12 +12,12 @@ jobs:
|
|||||||
deploy:
|
deploy:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- name: Setup python
|
- name: Setup python
|
||||||
uses: actions/setup-python@v2
|
uses: actions/setup-python@v4
|
||||||
with:
|
with:
|
||||||
python-version: '3.8'
|
python-version: '3.8'
|
||||||
- uses: actions/cache@v2
|
- uses: actions/cache@v3
|
||||||
with:
|
with:
|
||||||
path: ~/.cache/pip
|
path: ~/.cache/pip
|
||||||
key: ${{ runner.os }}-pip-${{ hashFiles('docs/_klipper3d/mkdocs-requirements.txt') }}
|
key: ${{ runner.os }}-pip-${{ hashFiles('docs/_klipper3d/mkdocs-requirements.txt') }}
|
||||||
@@ -28,7 +28,7 @@ jobs:
|
|||||||
- name: Build MkDocs Pages
|
- name: Build MkDocs Pages
|
||||||
run: docs/_klipper3d/build-translations.sh
|
run: docs/_klipper3d/build-translations.sh
|
||||||
- name: Deploy
|
- name: Deploy
|
||||||
uses: JamesIves/github-pages-deploy-action@v4.2.5
|
uses: JamesIves/github-pages-deploy-action@v4.4.3
|
||||||
with:
|
with:
|
||||||
branch: gh-pages # The branch the action should deploy to.
|
branch: gh-pages # The branch the action should deploy to.
|
||||||
folder: site # The folder the action should deploy.
|
folder: site # The folder the action should deploy.
|
||||||
|
|||||||
4
.github/workflows/reviewer-needed-label.yaml
vendored
4
.github/workflows/reviewer-needed-label.yaml
vendored
@@ -34,7 +34,7 @@ jobs:
|
|||||||
+ " bulk of a review has already been completed."
|
+ " bulk of a review has already been completed."
|
||||||
+ "\n"
|
+ "\n"
|
||||||
+ "2. Consider opening a topic on the [Klipper Discourse]"
|
+ "2. Consider opening a topic on the [Klipper Discourse]"
|
||||||
+ "(https://www.klipper3d.org/Contact.html#community-forum)"
|
+ "(https://www.klipper3d.org/Contact.html#discourse-forum)"
|
||||||
+ " server to discuss this work. The Discourse server is a good"
|
+ " server to discuss this work. The Discourse server is a good"
|
||||||
+ " place to discuss development ideas and to engage users"
|
+ " place to discuss development ideas and to engage users"
|
||||||
+ " interested in testing. Reviewers are more likely to"
|
+ " interested in testing. Reviewers are more likely to"
|
||||||
@@ -50,7 +50,7 @@ jobs:
|
|||||||
+ " this GitHub Pull Request then it will be automatically"
|
+ " this GitHub Pull Request then it will be automatically"
|
||||||
+ " closed. If this happens, then it is a good idea to move"
|
+ " closed. If this happens, then it is a good idea to move"
|
||||||
+ " further discussion to the [Klipper Discourse]"
|
+ " further discussion to the [Klipper Discourse]"
|
||||||
+ "(https://www.klipper3d.org/Contact.html#community-forum)"
|
+ "(https://www.klipper3d.org/Contact.html#discourse-forum)"
|
||||||
+ " server. Reviewers can reach out on that forum to let you"
|
+ " server. Reviewers can reach out on that forum to let you"
|
||||||
+ " know if they are interested and when they are available."
|
+ " know if they are interested and when they are available."
|
||||||
+ "\n\n"
|
+ "\n\n"
|
||||||
|
|||||||
106
.github/workflows/stale-issue-bot.yaml
vendored
106
.github/workflows/stale-issue-bot.yaml
vendored
@@ -9,7 +9,7 @@ jobs:
|
|||||||
if: github.repository == 'Klipper3d/klipper'
|
if: github.repository == 'Klipper3d/klipper'
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/stale@v3
|
- uses: actions/stale@v8
|
||||||
with:
|
with:
|
||||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
stale-issue-message: |
|
stale-issue-message: |
|
||||||
@@ -31,6 +31,8 @@ jobs:
|
|||||||
exempt-issue-labels: 'enhancement,bug'
|
exempt-issue-labels: 'enhancement,bug'
|
||||||
days-before-stale: 35
|
days-before-stale: 35
|
||||||
days-before-close: 7
|
days-before-close: 7
|
||||||
|
days-before-pr-stale: -1
|
||||||
|
days-before-pr-close: -1
|
||||||
# Close tickets marked with "not on github" label
|
# Close tickets marked with "not on github" label
|
||||||
close_not_on_github:
|
close_not_on_github:
|
||||||
if: github.repository == 'Klipper3d/klipper'
|
if: github.repository == 'Klipper3d/klipper'
|
||||||
@@ -60,54 +62,54 @@ jobs:
|
|||||||
state: 'closed'
|
state: 'closed'
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
# Close tickets marked with "reviewer needed" label for 2+ weeks
|
# # Close tickets marked with "reviewer needed" label for 2+ weeks
|
||||||
close_reviewer_needed:
|
# close_reviewer_needed:
|
||||||
if: github.repository == 'Klipper3d/klipper'
|
# if: github.repository == 'Klipper3d/klipper'
|
||||||
runs-on: ubuntu-latest
|
# runs-on: ubuntu-latest
|
||||||
steps:
|
# steps:
|
||||||
- uses: actions/github-script@v6
|
# - uses: actions/github-script@v6
|
||||||
with:
|
# with:
|
||||||
script: |
|
# script: |
|
||||||
const issues = await github.rest.issues.listForRepo({
|
# const issues = await github.rest.issues.listForRepo({
|
||||||
owner: context.repo.owner,
|
# owner: context.repo.owner,
|
||||||
repo: context.repo.repo,
|
# repo: context.repo.repo,
|
||||||
state: 'open',
|
# state: 'open',
|
||||||
labels: 'reviewer needed',
|
# labels: 'reviewer needed',
|
||||||
assignee: 'none',
|
# assignee: 'none',
|
||||||
per_page: 100,
|
# per_page: 100,
|
||||||
page: 1
|
# page: 1
|
||||||
});
|
# });
|
||||||
msg = "Unfortunately a reviewer has not assigned themselves to"
|
# msg = "Unfortunately a reviewer has not assigned themselves to"
|
||||||
+ " this GitHub Pull Request and it is therefore being"
|
# + " this GitHub Pull Request and it is therefore being"
|
||||||
+ " closed. It is a good idea to move"
|
# + " closed. It is a good idea to move"
|
||||||
+ " further discussion to the [Klipper Discourse]"
|
# + " further discussion to the [Klipper Discourse]"
|
||||||
+ "(https://www.klipper3d.org/Contact.html#community-forum)"
|
# + "(https://www.klipper3d.org/Contact.html#discourse-forum)"
|
||||||
+ " server. Reviewers can reach out on that forum to let you"
|
# + " server. Reviewers can reach out on that forum to let you"
|
||||||
+ " know if they are interested and when they are available."
|
# + " know if they are interested and when they are available."
|
||||||
+ "\n\n"
|
# + "\n\n"
|
||||||
+ "Best regards,\n"
|
# + "Best regards,\n"
|
||||||
+ "~ Your friendly GitIssueBot"
|
# + "~ Your friendly GitIssueBot"
|
||||||
+ "\n\n"
|
# + "\n\n"
|
||||||
+ "PS: I'm just an automated script, not a human being.";
|
# + "PS: I'm just an automated script, not a human being.";
|
||||||
const expireMillis = 1000 * 60 * 60 * 24 * 14;
|
# const expireMillis = 1000 * 60 * 60 * 24 * 14;
|
||||||
const curtime = new Date().getTime();
|
# const curtime = new Date().getTime();
|
||||||
for (const issue of issues.data.values()) {
|
# for (const issue of issues.data.values()) {
|
||||||
const updatetime = new Date(issue.updated_at).getTime();
|
# const updatetime = new Date(issue.updated_at).getTime();
|
||||||
if (curtime < updatetime + expireMillis)
|
# if (curtime < updatetime + expireMillis)
|
||||||
continue;
|
# continue;
|
||||||
await github.rest.issues.createComment({
|
# await github.rest.issues.createComment({
|
||||||
owner: context.repo.owner,
|
# owner: context.repo.owner,
|
||||||
repo: context.repo.repo,
|
# repo: context.repo.repo,
|
||||||
issue_number: issue.number,
|
# issue_number: issue.number,
|
||||||
body: msg
|
# body: msg
|
||||||
});
|
# });
|
||||||
await github.rest.issues.update({
|
# await github.rest.issues.update({
|
||||||
owner: context.repo.owner,
|
# owner: context.repo.owner,
|
||||||
repo: context.repo.repo,
|
# repo: context.repo.repo,
|
||||||
issue_number: issue.number,
|
# issue_number: issue.number,
|
||||||
state: 'closed'
|
# state: 'closed'
|
||||||
});
|
# });
|
||||||
}
|
# }
|
||||||
# Mark unassigned PRs that are idle for 2 weeks
|
# Mark unassigned PRs that are idle for 2 weeks
|
||||||
mark_reviewer_needed:
|
mark_reviewer_needed:
|
||||||
if: github.repository == 'Klipper3d/klipper'
|
if: github.repository == 'Klipper3d/klipper'
|
||||||
@@ -135,7 +137,7 @@ jobs:
|
|||||||
+ " bulk of a review has already been completed."
|
+ " bulk of a review has already been completed."
|
||||||
+ "\n"
|
+ "\n"
|
||||||
+ "2. Consider opening a topic on the [Klipper Discourse]"
|
+ "2. Consider opening a topic on the [Klipper Discourse]"
|
||||||
+ "(https://www.klipper3d.org/Contact.html#community-forum)"
|
+ "(https://www.klipper3d.org/Contact.html#discourse-forum)"
|
||||||
+ " server to discuss this work. The Discourse server is a good"
|
+ " server to discuss this work. The Discourse server is a good"
|
||||||
+ " place to discuss development ideas and to engage users"
|
+ " place to discuss development ideas and to engage users"
|
||||||
+ " interested in testing. Reviewers are more likely to"
|
+ " interested in testing. Reviewers are more likely to"
|
||||||
@@ -151,7 +153,7 @@ jobs:
|
|||||||
+ " this GitHub Pull Request then it will be automatically"
|
+ " this GitHub Pull Request then it will be automatically"
|
||||||
+ " closed. If this happens, then it is a good idea to move"
|
+ " closed. If this happens, then it is a good idea to move"
|
||||||
+ " further discussion to the [Klipper Discourse]"
|
+ " further discussion to the [Klipper Discourse]"
|
||||||
+ "(https://www.klipper3d.org/Contact.html#community-forum)"
|
+ "(https://www.klipper3d.org/Contact.html#discourse-forum)"
|
||||||
+ " server. Reviewers can reach out on that forum to let you"
|
+ " server. Reviewers can reach out on that forum to let you"
|
||||||
+ " know if they are interested and when they are available."
|
+ " know if they are interested and when they are available."
|
||||||
+ "\n\n"
|
+ "\n\n"
|
||||||
@@ -332,7 +334,7 @@ jobs:
|
|||||||
if: github.repository == 'Klipper3d/klipper'
|
if: github.repository == 'Klipper3d/klipper'
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: dessant/lock-threads@v3
|
- uses: dessant/lock-threads@v4
|
||||||
with:
|
with:
|
||||||
issue-inactive-days: '180'
|
issue-inactive-days: '180'
|
||||||
issue-lock-reason: ''
|
issue-lock-reason: ''
|
||||||
|
|||||||
7
Makefile
7
Makefile
@@ -29,10 +29,11 @@ dirs-y = src
|
|||||||
cc-option=$(shell if test -z "`$(1) $(2) -S -o /dev/null -xc /dev/null 2>&1`" \
|
cc-option=$(shell if test -z "`$(1) $(2) -S -o /dev/null -xc /dev/null 2>&1`" \
|
||||||
; then echo "$(2)"; else echo "$(3)"; fi ;)
|
; then echo "$(2)"; else echo "$(3)"; fi ;)
|
||||||
|
|
||||||
CFLAGS := -I$(OUT) -Isrc -I$(OUT)board-generic/ -std=gnu11 -O2 -MD \
|
CFLAGS := -iquote $(OUT) -iquote src -iquote $(OUT)board-generic/ \
|
||||||
-Wall -Wold-style-definition $(call cc-option,$(CC),-Wtype-limits,) \
|
-std=gnu11 -O2 -MD -Wall \
|
||||||
|
-Wold-style-definition $(call cc-option,$(CC),-Wtype-limits,) \
|
||||||
-ffunction-sections -fdata-sections -fno-delete-null-pointer-checks
|
-ffunction-sections -fdata-sections -fno-delete-null-pointer-checks
|
||||||
CFLAGS += -flto -fwhole-program -fno-use-linker-plugin -ggdb3
|
CFLAGS += -flto=auto -fwhole-program -fno-use-linker-plugin -ggdb3
|
||||||
|
|
||||||
OBJS_klipper.elf = $(patsubst %.c, $(OUT)src/%.o,$(src-y))
|
OBJS_klipper.elf = $(patsubst %.c, $(OUT)src/%.o,$(src-y))
|
||||||
OBJS_klipper.elf += $(OUT)compile_time_request.o
|
OBJS_klipper.elf += $(OUT)compile_time_request.o
|
||||||
|
|||||||
15
README.md
15
README.md
@@ -4,15 +4,14 @@ Welcome to the Klipper project!
|
|||||||
|
|
||||||
https://www.klipper3d.org/
|
https://www.klipper3d.org/
|
||||||
|
|
||||||
Klipper is a 3d-Printer firmware. It combines the power of a general
|
The Klipper firmware controls 3d-Printers. It combines the power of a
|
||||||
purpose computer with one or more micro-controllers. See the
|
general purpose computer with one or more micro-controllers. See the
|
||||||
[features document](https://www.klipper3d.org/Features.html) for more
|
[features document](https://www.klipper3d.org/Features.html) for more
|
||||||
information on why you should use Klipper.
|
information on why you should use the Klipper software.
|
||||||
|
|
||||||
To begin using Klipper start by
|
Start by [installing Klipper software](https://www.klipper3d.org/Installation.html).
|
||||||
[installing](https://www.klipper3d.org/Installation.html) it.
|
|
||||||
|
|
||||||
Klipper is Free Software. See the [license](COPYING) or read the
|
Klipper software is Free Software. See the [license](COPYING) or read
|
||||||
[documentation](https://www.klipper3d.org/Overview.html). We depend on
|
the [documentation](https://www.klipper3d.org/Overview.html). We
|
||||||
the generous support from our
|
depend on the generous support from our
|
||||||
[sponsors](https://www.klipper3d.org/Sponsors.html).
|
[sponsors](https://www.klipper3d.org/Sponsors.html).
|
||||||
|
|||||||
223
config/generic-I3DBEEZ9.cfg
Normal file
223
config/generic-I3DBEEZ9.cfg
Normal file
@@ -0,0 +1,223 @@
|
|||||||
|
# This file contains common pin mappings for the I3DBEEZ9 V1.0.
|
||||||
|
# To use this config, the firmware should be compiled for the
|
||||||
|
# STM32F407 with a "32KiB bootloader".
|
||||||
|
|
||||||
|
# The "make flash" command does not work on the I3DBEEZ9. Instead,
|
||||||
|
# after running "make", copy the generated "out/klipper.bin" file to a
|
||||||
|
# file named "firmware.bin" on an SD card and then restart the I3DBEEZ9
|
||||||
|
# with that SD card.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PE9
|
||||||
|
dir_pin: PF1
|
||||||
|
enable_pin: !PF2
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PB10
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PE11
|
||||||
|
dir_pin: PE1
|
||||||
|
enable_pin: !PD7
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PE12
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PE13
|
||||||
|
dir_pin: PC2
|
||||||
|
enable_pin: !PC0
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: PG8
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PE14
|
||||||
|
dir_pin: PA0
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 33.500
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PB1 # Heat0
|
||||||
|
sensor_pin: PF4 # T1 Header
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 22.2
|
||||||
|
pid_Ki: 1.08
|
||||||
|
pid_Kd: 114
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
#[extruder1]
|
||||||
|
#step_pin: PD15
|
||||||
|
#dir_pin: PE7
|
||||||
|
#enable_pin: !PA3
|
||||||
|
#heater_pin: PD14 # Heat1
|
||||||
|
#sensor_pin: PF5 # T2
|
||||||
|
#...
|
||||||
|
|
||||||
|
#[extruder2]
|
||||||
|
#step_pin: PD13
|
||||||
|
#dir_pin: PG9
|
||||||
|
#enable_pin: !PF0
|
||||||
|
#heater_pin: PB0 # Heat2
|
||||||
|
#sensor_pin: PF6 # T3
|
||||||
|
#...
|
||||||
|
|
||||||
|
#[stepper_z1]
|
||||||
|
#step_pin: PE4
|
||||||
|
#dir_pin: PE3
|
||||||
|
#enable_pin: !PC13
|
||||||
|
#microsteps: 16
|
||||||
|
#rotation_distance: 8
|
||||||
|
#endstop_pin: PD0
|
||||||
|
#position_endstop: 0.5
|
||||||
|
#position_max: 200
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PD12
|
||||||
|
sensor_pin: PF3 # T0
|
||||||
|
sensor_type: ATC Semitec 104GT-2
|
||||||
|
control: watermark
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PC8
|
||||||
|
|
||||||
|
[heater_fan fan1]
|
||||||
|
pin: PE5
|
||||||
|
|
||||||
|
#[heater_fan fan2]
|
||||||
|
#pin: PE6
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC2208 configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2208 stepper_x]
|
||||||
|
#uart_pin: PA15
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2208 stepper_y]
|
||||||
|
#uart_pin: PB8
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2208 stepper_z]
|
||||||
|
#uart_pin: PB9
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2208 extruder]
|
||||||
|
#uart_pin: PB3
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2208 extruder1]
|
||||||
|
#uart_pin: PG15
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2208 extruder2]
|
||||||
|
#uart_pin: PG12
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2208 stepper_z1]
|
||||||
|
#uart_pin: PE2
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC2130 configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2130 stepper_x]
|
||||||
|
#cs_pin: PA15
|
||||||
|
#spi_bus: spi3a
|
||||||
|
##diag1_pin: PB10
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_y]
|
||||||
|
#cs_pin: PB8
|
||||||
|
#spi_bus: spi3a
|
||||||
|
##diag1_pin: PE12
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_z]
|
||||||
|
#cs_pin: PB9
|
||||||
|
#spi_bus: spi3a
|
||||||
|
##diag1_pin: PG8
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder]
|
||||||
|
#cs_pin: PB3
|
||||||
|
#spi_bus: spi3a
|
||||||
|
##diag1_pin: PE15
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder1]
|
||||||
|
#cs_pin: PG15
|
||||||
|
#spi_bus: spi3a
|
||||||
|
##diag1_pin: PE10
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder2]
|
||||||
|
#cs_pin: PG12
|
||||||
|
#spi_bus: spi3a
|
||||||
|
##diag1_pin: PG5
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_z1]
|
||||||
|
#cs_pin: PE2
|
||||||
|
#spi_bus: spi3a
|
||||||
|
##diag1_pin: PD0
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# EXP1 / EXP2 (display) pins
|
||||||
|
########################################
|
||||||
|
|
||||||
|
[board_pins]
|
||||||
|
aliases:
|
||||||
|
# EXP1 header
|
||||||
|
EXP1_1=PG4, EXP1_3=PD11, EXP1_5=PG2, EXP1_7=PG6, EXP1_9=<GND>,
|
||||||
|
EXP1_2=PA8, EXP1_4=PD10, EXP1_6=PG3, EXP1_8=PG7, EXP1_10=<5V>,
|
||||||
|
# EXP2 header
|
||||||
|
EXP2_1=PB14, EXP2_3=PG10, EXP2_5=PF11, EXP2_7=PF12, EXP2_9=<GND>,
|
||||||
|
EXP2_2=PB13, EXP2_4=PB12, EXP2_6=PB15, EXP2_8=<RST>, EXP2_10=PF13
|
||||||
|
# Pins EXP2_1, EXP2_6, EXP2_2 are also MISO, MOSI, SCK of bus "spi2"
|
||||||
|
|
||||||
|
# See the sample-lcd.cfg file for definitions of common LCD displays.
|
||||||
200
config/generic-bigtreetech-manta-e3ez.cfg
Normal file
200
config/generic-bigtreetech-manta-e3ez.cfg
Normal file
@@ -0,0 +1,200 @@
|
|||||||
|
# This file contains common pin mappings for the BIGTREETECH Manta E3EZ
|
||||||
|
# To use this config, the firmware should be compiled for the
|
||||||
|
# STM32G0B1 with a "8KiB bootloader" "8 MHz crystal"
|
||||||
|
# and "USB (on PA11/PA12)" or "CAN bus (on PB12/PB13)".
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PA14
|
||||||
|
dir_pin: !PA10
|
||||||
|
enable_pin: !PA13
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^PC4
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 235
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PC8
|
||||||
|
dir_pin: !PA15
|
||||||
|
enable_pin: !PC14
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^PB0
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 235
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PD2
|
||||||
|
dir_pin: PD4
|
||||||
|
enable_pin: !PD3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: ^PC6
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 270
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PD5
|
||||||
|
dir_pin: !PD6
|
||||||
|
enable_pin: !PB3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 33.500
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PB11 #HE0
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PA4 #TH0
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 21.527
|
||||||
|
pid_Ki: 1.063
|
||||||
|
pid_Kd: 108.982
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_0]
|
||||||
|
#switch_pin: PC5
|
||||||
|
|
||||||
|
#[extruder1]
|
||||||
|
#step_pin: PB7
|
||||||
|
#dir_pin: PB6
|
||||||
|
#enable_pin: !PB4
|
||||||
|
#heater_pin: PB10 # HE1
|
||||||
|
#sensor_pin: PA5 # T1
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_1]
|
||||||
|
#switch_pin: PB1
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PB2 #HB
|
||||||
|
sensor_type: EPCOS 100K B57560G104F #Generic 3950
|
||||||
|
sensor_pin: PA3 #TB
|
||||||
|
control: watermark
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA8
|
||||||
|
|
||||||
|
#[heater_fan fan1]
|
||||||
|
#pin: PB15
|
||||||
|
|
||||||
|
#[heater_fan fan2]
|
||||||
|
#pin: PB14
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC2209 configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2209 stepper_x]
|
||||||
|
#uart_pin: PB8
|
||||||
|
##diag_pin: PC4
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 stepper_y]
|
||||||
|
#uart_pin: PC9
|
||||||
|
##diag_pin: PB0
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 stepper_z]
|
||||||
|
#uart_pin: PD0
|
||||||
|
##diag_pin: PC6
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder]
|
||||||
|
#uart_pin: PD1
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder1]
|
||||||
|
#uart_pin: PB5
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC2130 configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2130 stepper_x]
|
||||||
|
#cs_pin: PB8
|
||||||
|
#spi_software_miso_pin: PC11
|
||||||
|
#spi_software_mosi_pin: PC12
|
||||||
|
#spi_software_sclk_pin: PC10
|
||||||
|
##diag1_pin: PF3
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_y]
|
||||||
|
#cs_pin: PC9
|
||||||
|
#spi_software_miso_pin: PC11
|
||||||
|
#spi_software_mosi_pin: PC12
|
||||||
|
#spi_software_sclk_pin: PC10
|
||||||
|
##diag1_pin: PF4
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_z]
|
||||||
|
#cs_pin: PD0
|
||||||
|
#spi_software_miso_pin: PC11
|
||||||
|
#spi_software_mosi_pin: PC12
|
||||||
|
#spi_software_sclk_pin: PC10
|
||||||
|
##diag1_pin: PF5
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder]
|
||||||
|
#cs_pin: PD1
|
||||||
|
#spi_software_miso_pin: PC11
|
||||||
|
#spi_software_mosi_pin: PC12
|
||||||
|
#spi_software_sclk_pin: PC10
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder1]
|
||||||
|
#cs_pin: PB5
|
||||||
|
#spi_software_miso_pin: PC11
|
||||||
|
#spi_software_mosi_pin: PC12
|
||||||
|
#spi_software_sclk_pin: PC10
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
[board_pins]
|
||||||
|
aliases:
|
||||||
|
# EXP1 header
|
||||||
|
EXP1_1=PC1, EXP1_3=PC3, EXP1_5=PC0, EXP1_7=PA2, EXP1_9=<GND>,
|
||||||
|
EXP1_2=PC2, EXP1_4=<RST>, EXP1_6=PA0, EXP1_8=PA1, EXP1_10=<5V>
|
||||||
|
|
||||||
|
#[bltouch]
|
||||||
|
#sensor_pin: PA6
|
||||||
|
#control_pin: PA7
|
||||||
|
|
||||||
|
#[output_pin PS_ON]
|
||||||
|
#pin: PA9
|
||||||
|
|
||||||
|
#[output_pin pb9_pin]
|
||||||
|
#pin: PB9
|
||||||
|
|
||||||
|
#[neopixel my_neopixel]
|
||||||
|
#pin: PC7
|
||||||
|
|
||||||
|
#[adxl345]
|
||||||
|
#cs_pin: PC15
|
||||||
|
#spi_software_miso_pin: PC11
|
||||||
|
#spi_software_mosi_pin: PC12
|
||||||
|
#spi_software_sclk_pin: PC10
|
||||||
@@ -75,8 +75,8 @@ pin: PD2
|
|||||||
#pin: PD4
|
#pin: PD4
|
||||||
|
|
||||||
#[heater_fan SoC_fan]
|
#[heater_fan SoC_fan]
|
||||||
#pin: CB1: gpio79
|
#pin: CB1:gpio79
|
||||||
#pin: RPI: gpio26
|
#pin: RPI:gpio26
|
||||||
|
|
||||||
[mcu]
|
[mcu]
|
||||||
serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
||||||
|
|||||||
199
config/generic-bigtreetech-manta-m5p.cfg
Normal file
199
config/generic-bigtreetech-manta-m5p.cfg
Normal file
@@ -0,0 +1,199 @@
|
|||||||
|
# This file contains common pin mappings for the BIGTREETECH Manta M5P
|
||||||
|
# To use this config, the firmware should be compiled for the
|
||||||
|
# STM32G0B1 with a "8KiB bootloader" "8 MHz crystal"
|
||||||
|
# and "USB (on PA11/PA12)" or "CAN bus (on PD0/PD1)".
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PC8
|
||||||
|
dir_pin: !PC9
|
||||||
|
enable_pin: !PA15
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^PD3
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PA10
|
||||||
|
dir_pin: !PA14
|
||||||
|
enable_pin: !PA13
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^PD2
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PC6
|
||||||
|
dir_pin: PC7
|
||||||
|
enable_pin: !PA9
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: ^PC3
|
||||||
|
position_endstop: 0.0
|
||||||
|
position_max: 200
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PB12
|
||||||
|
dir_pin: !PB11
|
||||||
|
enable_pin: !PA8
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 33.500
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PC5
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PA1
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 21.527
|
||||||
|
pid_Ki: 1.063
|
||||||
|
pid_Kd: 108.982
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
#sensor_type:MAX31865
|
||||||
|
#sensor_pin: PA4
|
||||||
|
#spi_bus: spi1
|
||||||
|
#rtd_nominal_r: 100
|
||||||
|
#rtd_reference_r: 430
|
||||||
|
#rtd_num_of_wires: 2
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_0]
|
||||||
|
#switch_pin: PC2
|
||||||
|
|
||||||
|
#[extruder1]
|
||||||
|
#step_pin: PB0
|
||||||
|
#dir_pin: PB1
|
||||||
|
#enable_pin: !PC4
|
||||||
|
#heater_pin: PA7
|
||||||
|
#sensor_pin: PA2
|
||||||
|
#...
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA5
|
||||||
|
sensor_type: Generic 3950
|
||||||
|
sensor_pin: PA0
|
||||||
|
control: watermark
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA4
|
||||||
|
|
||||||
|
#[heater_fan fan1]
|
||||||
|
#pin: PA3
|
||||||
|
|
||||||
|
#[heater_fan SoC_fan]
|
||||||
|
#pin: CB1:gpio79
|
||||||
|
#pin: RPI:gpio26
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC2209 configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2209 stepper_x]
|
||||||
|
#uart_pin: PD9
|
||||||
|
#run_current: 0.800
|
||||||
|
#diag_pin: PD3
|
||||||
|
|
||||||
|
#[tmc2209 stepper_y]
|
||||||
|
#uart_pin: PD8
|
||||||
|
#run_current: 0.800
|
||||||
|
#diag_pin: PD2
|
||||||
|
|
||||||
|
#[tmc2209 stepper_z]
|
||||||
|
#uart_pin: PB10
|
||||||
|
#run_current: 0.800
|
||||||
|
#diag_pin: PC3
|
||||||
|
|
||||||
|
#[tmc2209 extruder]
|
||||||
|
#uart_pin: PB2
|
||||||
|
#run_current: 0.600
|
||||||
|
#diag_pin: PC2
|
||||||
|
|
||||||
|
#[tmc2209 extruder1]
|
||||||
|
#uart_pin: PA6
|
||||||
|
#run_current: 0.600
|
||||||
|
#diag_pin:
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC2130 configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2130 stepper_x]
|
||||||
|
#cs_pin: PD9
|
||||||
|
#spi_bus: spi2
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
#diag1_pin: PD3
|
||||||
|
|
||||||
|
#[tmc2130 stepper_y]
|
||||||
|
#cs_pin: PD8
|
||||||
|
#spi_bus: spi2
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
#diag1_pin: PD2
|
||||||
|
|
||||||
|
#[tmc2130 stepper_z]
|
||||||
|
#cs_pin: PB10
|
||||||
|
#spi_bus: spi2
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
#diag1_pin: PC3
|
||||||
|
|
||||||
|
#[tmc2130 extruder]
|
||||||
|
#cs_pin: PB2
|
||||||
|
#spi_bus: spi2
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
#diag1_pin: PC2
|
||||||
|
|
||||||
|
#[tmc2130 extruder1]
|
||||||
|
#cs_pin: PA6
|
||||||
|
#spi_bus: spi2
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
#diag1_pin:
|
||||||
|
|
||||||
|
[board_pins]
|
||||||
|
aliases:
|
||||||
|
# EXP1 header
|
||||||
|
EXP1_1=PD5, EXP1_3=PB3, EXP1_5=PB5, EXP1_7=PB7, EXP1_9=<GND>,
|
||||||
|
EXP1_2=PD4, EXP1_4=PD6, EXP1_6=PB4, EXP1_8=PB6, EXP1_10=<5V>,
|
||||||
|
# EXP2 header
|
||||||
|
EXP2_1=PB14, EXP2_3=PB8, EXP2_5=PC10, EXP2_7=PC12, EXP2_9=<GND>,
|
||||||
|
EXP2_2=PB13, EXP2_4=PB9, EXP2_6=PB15, EXP2_8=<RST>, EXP2_10=<NC>
|
||||||
|
|
||||||
|
# See the sample-lcd.cfg file for definitions of common LCD displays.
|
||||||
|
|
||||||
|
#[bltouch]
|
||||||
|
#sensor_pin: PC13
|
||||||
|
#control_pin: PC15
|
||||||
|
|
||||||
|
# Proximity switch
|
||||||
|
#[probe]
|
||||||
|
#pin: PC15
|
||||||
|
|
||||||
|
#[neopixel my_neopixel1]
|
||||||
|
#pin: PC11
|
||||||
|
|
||||||
|
#[neopixel my_neopixel2]
|
||||||
|
#pin: PC14
|
||||||
|
|
||||||
|
#[adxl345]
|
||||||
|
#cs_pin: PC0
|
||||||
|
#spi_bus: spi2
|
||||||
@@ -43,7 +43,7 @@ position_max: 270
|
|||||||
#[stepper_]
|
#[stepper_]
|
||||||
#step_pin: PD3
|
#step_pin: PD3
|
||||||
#dir_pin: PD2
|
#dir_pin: PD2
|
||||||
#enable_pin: PD5
|
#enable_pin: !PD5
|
||||||
#endstop_pin: PC0
|
#endstop_pin: PC0
|
||||||
#...
|
#...
|
||||||
|
|
||||||
@@ -258,7 +258,7 @@ aliases:
|
|||||||
EXP2_3=PF7, EXP2_4=PB12,
|
EXP2_3=PF7, EXP2_4=PB12,
|
||||||
EXP2_5=PE7, EXP2_6=PB11, # Slot in the socket on this side
|
EXP2_5=PE7, EXP2_6=PB11, # Slot in the socket on this side
|
||||||
EXP2_7=PE8, EXP2_8=<RST>,
|
EXP2_7=PE8, EXP2_8=<RST>,
|
||||||
EXP2_9=<GND>, EXP2_10=PC5
|
EXP2_9=<GND>, EXP2_10=<NC>
|
||||||
|
|
||||||
# See the sample-lcd.cfg file for definitions of common LCD displays.
|
# See the sample-lcd.cfg file for definitions of common LCD displays.
|
||||||
|
|
||||||
@@ -282,3 +282,7 @@ aliases:
|
|||||||
#[hall_filament_width_sensor]
|
#[hall_filament_width_sensor]
|
||||||
#adc1: PC5
|
#adc1: PC5
|
||||||
#adc2: PB0
|
#adc2: PB0
|
||||||
|
|
||||||
|
#[adxl345]
|
||||||
|
#cs_pin: PB15
|
||||||
|
#spi_bus: spi1
|
||||||
295
config/generic-bigtreetech-manta-m8p-v1.1.cfg
Normal file
295
config/generic-bigtreetech-manta-m8p-v1.1.cfg
Normal file
@@ -0,0 +1,295 @@
|
|||||||
|
# This file contains common pin mappings for the BIGTREETECH Manta M8P
|
||||||
|
# To use this config, the firmware should be compiled for the
|
||||||
|
# STM32G0B1 with a "8KiB bootloader" "8 MHz crystal"
|
||||||
|
# and "USB (on PA11/PA12)" or "CAN bus (on PD12/PD13)".
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PE2
|
||||||
|
dir_pin: PB4
|
||||||
|
enable_pin: !PC11
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^PF3
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 235
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PF12
|
||||||
|
dir_pin: PF11
|
||||||
|
enable_pin: !PB3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^PF4
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 235
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PD7
|
||||||
|
dir_pin: !PD6
|
||||||
|
enable_pin: !PF10
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: ^PF5
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 270
|
||||||
|
|
||||||
|
# Motor4
|
||||||
|
# The M8P only has 4 heater outputs which leaves an extra stepper
|
||||||
|
# This can be used for a second Z stepper, dual_carriage, extruder co-stepper,
|
||||||
|
# or other accesory such as an MMU
|
||||||
|
#[stepper_]
|
||||||
|
#step_pin: PD3
|
||||||
|
#dir_pin: PD2
|
||||||
|
#enable_pin: !PD5
|
||||||
|
#endstop_pin: PC0
|
||||||
|
#...
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PC9
|
||||||
|
dir_pin: PC8
|
||||||
|
enable_pin: !PD1
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 33.500
|
||||||
|
nozzle_diameter: 0.4
|
||||||
|
filament_diameter: 1.75
|
||||||
|
heater_pin: PE3 # HE0
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PA1 # T0
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 22.2
|
||||||
|
pid_Ki: 1.08
|
||||||
|
pid_Kd: 114
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_0]
|
||||||
|
#switch_pin: PC1
|
||||||
|
|
||||||
|
# Motor6
|
||||||
|
#[extruder1]
|
||||||
|
#step_pin: PA10
|
||||||
|
#dir_pin: PA14
|
||||||
|
#enable_pin: !PA15
|
||||||
|
#heater_pin: PB5 # HE1
|
||||||
|
#sensor_pin: PA2 # T1
|
||||||
|
#...
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_1]
|
||||||
|
#switch_pin: PC2
|
||||||
|
|
||||||
|
# Motor7
|
||||||
|
#[extruder2]
|
||||||
|
#step_pin: PD11
|
||||||
|
#dir_pin: PD9
|
||||||
|
#enable_pin: !PD15
|
||||||
|
#heater_pin: PB6 # HE2
|
||||||
|
#sensor_pin: PA3 # T2
|
||||||
|
#...
|
||||||
|
|
||||||
|
# Motor8
|
||||||
|
#[extruder3]
|
||||||
|
#step_pin: PD8
|
||||||
|
#dir_pin: PC6
|
||||||
|
#enable_pin: !PC7
|
||||||
|
#heater_pin: PE1 # HE3
|
||||||
|
#sensor_pin: PA4 # T3
|
||||||
|
#...
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PB7
|
||||||
|
sensor_type: Generic 3950
|
||||||
|
sensor_pin: PA0 # TB
|
||||||
|
control: watermark
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PE6
|
||||||
|
|
||||||
|
#[heater_fan fan1]
|
||||||
|
#pin: PE0
|
||||||
|
|
||||||
|
#[heater_fan fan2]
|
||||||
|
#pin: PC12
|
||||||
|
|
||||||
|
#[heater_fan fan3]
|
||||||
|
#pin: PE5
|
||||||
|
|
||||||
|
#[heater_fan fan4]
|
||||||
|
#pin: PE4
|
||||||
|
|
||||||
|
#[heater_fan fan5]
|
||||||
|
#pin: PB8
|
||||||
|
#tachometer_pin: PC14
|
||||||
|
|
||||||
|
#[heater_fan fan6]
|
||||||
|
#pin: PB9
|
||||||
|
#tachometer_pin: PC15
|
||||||
|
|
||||||
|
#[heater_fan SoC_fan]
|
||||||
|
#pin: CB1:gpio79
|
||||||
|
#pin: RPI:gpio26
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC2209 configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2209 stepper_x]
|
||||||
|
#uart_pin: PC10
|
||||||
|
##diag_pin: PF3
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 stepper_y]
|
||||||
|
#uart_pin: PF13
|
||||||
|
##diag_pin: PF4
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 stepper_z]
|
||||||
|
#uart_pin: PF9
|
||||||
|
##diag_pin: PF5
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 stepper_]
|
||||||
|
#uart_pin: PD4
|
||||||
|
##diag_pin: PC0
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder]
|
||||||
|
#uart_pin: PD0
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder1]
|
||||||
|
#uart_pin: PF8
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder2]
|
||||||
|
#uart_pin: PD14
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder3]
|
||||||
|
#uart_pin: PD10
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC2130 configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2130 stepper_x]
|
||||||
|
#cs_pin: PC10
|
||||||
|
#spi_bus: spi1
|
||||||
|
##diag1_pin: PF3
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_y]
|
||||||
|
#cs_pin: PF13
|
||||||
|
#spi_bus: spi1
|
||||||
|
##diag1_pin: PF4
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_z]
|
||||||
|
#cs_pin: PF9
|
||||||
|
#spi_bus: spi1
|
||||||
|
##diag1_pin: PF5
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_]
|
||||||
|
#cs_pin: PD4
|
||||||
|
#spi_bus: spi1
|
||||||
|
##diag1_pin: PC0
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder]
|
||||||
|
#cs_pin: PD0
|
||||||
|
#spi_bus: spi1
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder1]
|
||||||
|
#cs_pin: PF8
|
||||||
|
#spi_bus: spi1
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder2]
|
||||||
|
#cs_pin: PD14
|
||||||
|
#spi_bus: spi1
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder3]
|
||||||
|
#cs_pin: PD10
|
||||||
|
#spi_bus: spi1
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
[board_pins]
|
||||||
|
aliases:
|
||||||
|
# EXP1 header
|
||||||
|
EXP1_1=PE9, EXP1_2=PE10,
|
||||||
|
EXP1_3=PE11, EXP1_4=PE12,
|
||||||
|
EXP1_5=PE13, EXP1_6=PE14, # Slot in the socket on this side
|
||||||
|
EXP1_7=PE15, EXP1_8=PB10,
|
||||||
|
EXP1_9=<GND>, EXP1_10=<5V>,
|
||||||
|
|
||||||
|
# EXP2 header
|
||||||
|
EXP2_1=PB14, EXP2_2=PB13,
|
||||||
|
EXP2_3=PF7, EXP2_4=PB12,
|
||||||
|
EXP2_5=PE7, EXP2_6=PB11, # Slot in the socket on this side
|
||||||
|
EXP2_7=PE8, EXP2_8=<RST>,
|
||||||
|
EXP2_9=<GND>, EXP2_10=<NC>
|
||||||
|
|
||||||
|
# See the sample-lcd.cfg file for definitions of common LCD displays.
|
||||||
|
|
||||||
|
#[bltouch]
|
||||||
|
#sensor_pin: PB2
|
||||||
|
#control_pin: PB1
|
||||||
|
|
||||||
|
# Proximity switch
|
||||||
|
#[probe]
|
||||||
|
#pin: PF6
|
||||||
|
|
||||||
|
#[output_pin ps_on_pin]
|
||||||
|
#pin: PC3
|
||||||
|
|
||||||
|
#[output_pin pc13_pin]
|
||||||
|
#pin: PC13
|
||||||
|
|
||||||
|
#[neopixel my_neopixel_1]
|
||||||
|
#pin: PA9
|
||||||
|
|
||||||
|
#[neopixel my_neopixel_2]
|
||||||
|
#pin: PB15
|
||||||
|
|
||||||
|
#[hall_filament_width_sensor]
|
||||||
|
#adc1: PC5
|
||||||
|
#adc2: PB0
|
||||||
|
|
||||||
|
#[adxl345]
|
||||||
|
#cs_pin: PC4
|
||||||
|
#spi_bus: spi1
|
||||||
332
config/generic-bigtreetech-octopus-max-ez.cfg
Normal file
332
config/generic-bigtreetech-octopus-max-ez.cfg
Normal file
@@ -0,0 +1,332 @@
|
|||||||
|
# This file contains common pin mappings for the BIGTREETECH Octopus Max EZ.
|
||||||
|
# To use this config, the firmware should be compiled for the
|
||||||
|
# STM32H723 with a "128KiB bootloader" "25 MHz crystal"
|
||||||
|
# and "USB (on PA11/PA12)" or "CAN bus (on PD0/PD1)".
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
# Motor-1
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PC13
|
||||||
|
dir_pin: PC14
|
||||||
|
enable_pin: !PE6
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PF0
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
# Motor-2
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PE4
|
||||||
|
dir_pin: PE5
|
||||||
|
enable_pin: !PE3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PF2
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
# Motor-3
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PE1
|
||||||
|
dir_pin: PE0
|
||||||
|
enable_pin: !PE2
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: PF4
|
||||||
|
position_endstop: 0.5
|
||||||
|
position_max: 200
|
||||||
|
|
||||||
|
# Motor-4
|
||||||
|
# The Octopus only has 4 heater outputs which leaves an extra stepper
|
||||||
|
# This can be used for a second Z stepper, dual_carriage, extruder co-stepper,
|
||||||
|
# or other accesory such as an MMU
|
||||||
|
#[stepper_]
|
||||||
|
#step_pin: PB8
|
||||||
|
#dir_pin: PB9
|
||||||
|
#enable_pin: PB7
|
||||||
|
#endstop_pin: PF3
|
||||||
|
#...
|
||||||
|
|
||||||
|
# Motor-5
|
||||||
|
[extruder]
|
||||||
|
step_pin: PB5
|
||||||
|
dir_pin: PB4
|
||||||
|
enable_pin: !PB6
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 33.500
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PF6 # HE0
|
||||||
|
sensor_pin: PB0 # T0
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 22.2
|
||||||
|
pid_Ki: 1.08
|
||||||
|
pid_Kd: 114
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_0]
|
||||||
|
#switch_pin: PF1
|
||||||
|
|
||||||
|
# Motor-6
|
||||||
|
#[extruder1]
|
||||||
|
#step_pin: PG15
|
||||||
|
#dir_pin: PB3
|
||||||
|
#enable_pin: !PD5
|
||||||
|
#heater_pin: PA0 # HE1
|
||||||
|
#sensor_pin: PC5 # T1
|
||||||
|
#...
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_1]
|
||||||
|
#switch_pin: PC15
|
||||||
|
|
||||||
|
# Motor-7
|
||||||
|
#[extruder2]
|
||||||
|
#step_pin: PD3
|
||||||
|
#dir_pin: PD2
|
||||||
|
#enable_pin: !PD4
|
||||||
|
#heater_pin: PF9 # HE2
|
||||||
|
#sensor_pin: PC4 # T2
|
||||||
|
#...
|
||||||
|
|
||||||
|
# Motor-8
|
||||||
|
#[extruder3]
|
||||||
|
#step_pin: PA10
|
||||||
|
#dir_pin: PA9
|
||||||
|
#enable_pin: !PA15
|
||||||
|
#heater_pin: PF7 # HE3
|
||||||
|
#sensor_pin: PA7 # T3
|
||||||
|
#...
|
||||||
|
|
||||||
|
# Motor-9
|
||||||
|
#[extruder4]
|
||||||
|
#step_pin: PA8
|
||||||
|
#dir_pin: PC7
|
||||||
|
#enable_pin: !PC9
|
||||||
|
#...
|
||||||
|
|
||||||
|
# Motor-10
|
||||||
|
#[extruder5]
|
||||||
|
#step_pin: PG6
|
||||||
|
#dir_pin: PC6
|
||||||
|
#enable_pin: !PC8
|
||||||
|
#...
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PF5
|
||||||
|
sensor_pin: PB1 # TB
|
||||||
|
sensor_type: ATC Semitec 104GT-2
|
||||||
|
control: watermark
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA6
|
||||||
|
|
||||||
|
#[heater_fan fan1]
|
||||||
|
#pin: PA5
|
||||||
|
|
||||||
|
#[heater_fan fan2]
|
||||||
|
#pin: PA4
|
||||||
|
|
||||||
|
#[heater_fan fan3]
|
||||||
|
#pin: PA3
|
||||||
|
|
||||||
|
#[heater_fan fan4]
|
||||||
|
#pin: PA1
|
||||||
|
#tachometer_pin: PC3
|
||||||
|
|
||||||
|
#[heater_fan fan5]
|
||||||
|
#pin: PF8
|
||||||
|
#tachometer_pin: PC1
|
||||||
|
|
||||||
|
#[heater_fan fan6]
|
||||||
|
#pin: PA2
|
||||||
|
#tachometer_pin: PC2
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC2209 configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2209 stepper_x]
|
||||||
|
#uart_pin: PG14
|
||||||
|
##diag_pin: PF0
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 stepper_y]
|
||||||
|
#uart_pin: PG13
|
||||||
|
##diag_pin: PF2
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 stepper_z]
|
||||||
|
#uart_pin: PG12
|
||||||
|
##diag_pin: PF4
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 stepper_]
|
||||||
|
#uart_pin: PG11
|
||||||
|
##diag_pin: PF3
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder]
|
||||||
|
#uart_pin: PG10
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder1]
|
||||||
|
#uart_pin: PG9
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder2]
|
||||||
|
#uart_pin: PD7
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder3]
|
||||||
|
#uart_pin: PD6
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder4]
|
||||||
|
#uart_pin: PG8
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder5]
|
||||||
|
#uart_pin: PG7
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC2130 configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2130 stepper_x]
|
||||||
|
#cs_pin: PG14
|
||||||
|
#spi_bus: spi4
|
||||||
|
##diag1_pin: PF0
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_y]
|
||||||
|
#cs_pin: PG13
|
||||||
|
#spi_bus: spi4
|
||||||
|
##diag1_pin: PF2
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_z]
|
||||||
|
#cs_pin: PG12
|
||||||
|
#spi_bus: spi4
|
||||||
|
##diag1_pin: PF4
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_]
|
||||||
|
#cs_pin: PG11
|
||||||
|
#spi_bus: spi4
|
||||||
|
##diag1_pin: PF3
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder]
|
||||||
|
#cs_pin: PG10
|
||||||
|
#spi_bus: spi4
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder1]
|
||||||
|
#cs_pin: PG9
|
||||||
|
#spi_bus: spi4
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder2]
|
||||||
|
#cs_pin: PD7
|
||||||
|
#spi_bus: spi4
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder3]
|
||||||
|
#cs_pin: PD6
|
||||||
|
#spi_bus: spi4
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder4]
|
||||||
|
#cs_pin: PG8
|
||||||
|
#spi_bus: spi4
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder5]
|
||||||
|
#cs_pin: PG7
|
||||||
|
#spi_bus: spi4
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
[board_pins]
|
||||||
|
aliases:
|
||||||
|
# FPC header, Aliases EXP1 & EXP2 for mini12864
|
||||||
|
EXP1_1=PG2, EXP1_2=PD15,
|
||||||
|
EXP1_3=PD14, EXP1_4=PD13,
|
||||||
|
EXP1_5=PD12, EXP1_6=PD11,
|
||||||
|
EXP1_7=PD10, EXP1_8=PE15,
|
||||||
|
EXP1_9=<GND>, EXP1_10=<5V>,
|
||||||
|
|
||||||
|
# EXP2 header
|
||||||
|
EXP2_1=PE13, EXP2_2=PE12,
|
||||||
|
EXP2_3=PG5, EXP2_4=PE11,
|
||||||
|
EXP2_5=PG4, EXP2_6=PE14,
|
||||||
|
EXP2_7=PG3, EXP2_8=<RST>,
|
||||||
|
EXP2_9=<GND>, EXP2_10=<NC>
|
||||||
|
|
||||||
|
# See the sample-lcd.cfg file for definitions of common LCD displays.
|
||||||
|
|
||||||
|
#[bltouch]
|
||||||
|
#sensor_pin: ^PB15
|
||||||
|
#control_pin: PB14
|
||||||
|
|
||||||
|
# Proximity switch
|
||||||
|
#[probe]
|
||||||
|
#pin: PF11
|
||||||
|
|
||||||
|
#[output_pin ps_on_pin]
|
||||||
|
#pin: PF13
|
||||||
|
|
||||||
|
#[output_pin pf12_pin]
|
||||||
|
#pin: PF12
|
||||||
|
|
||||||
|
#[neopixel my_neopixel_1]
|
||||||
|
#pin: PE10
|
||||||
|
|
||||||
|
#[neopixel my_neopixel_2]
|
||||||
|
#pin: PE9
|
||||||
|
|
||||||
|
#[hall_filament_width_sensor]
|
||||||
|
#adc1: PC0
|
||||||
|
#adc2: PF10
|
||||||
|
|
||||||
|
#[adxl345]
|
||||||
|
#cs_pin: PF14
|
||||||
|
#spi_bus: spi4
|
||||||
289
config/generic-bigtreetech-octopus-pro-v1.0.cfg
Normal file
289
config/generic-bigtreetech-octopus-pro-v1.0.cfg
Normal file
@@ -0,0 +1,289 @@
|
|||||||
|
# This file contains common pin mappings for the BigTreeTech Octopus
|
||||||
|
# Pro v1.0 board.
|
||||||
|
|
||||||
|
# Important! Do not use this config with an Octopus Pro v1.1 board as
|
||||||
|
# doing so could result in a heater being inadvertently enabled.
|
||||||
|
|
||||||
|
# To use this config, start by identifying the micro-controller on the
|
||||||
|
# board - it may be an STM32F446, STM32F429, or an STM32H723. Select
|
||||||
|
# the appropriate micro-controller in "make menuconfig" and select
|
||||||
|
# "Enable low-level configuration options". For STM32F446 boards the
|
||||||
|
# firmware should be compiled with a "32KiB bootloader" and a "12MHz
|
||||||
|
# crystal" clock reference. For STM32F429 boards use a "32KiB
|
||||||
|
# bootloader" and an "8MHz crystal". For STM32H723 boards use a
|
||||||
|
# "128KiB bootloader" and a "25Mhz crystal".
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
# Driver0
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PF13
|
||||||
|
dir_pin: PF12
|
||||||
|
enable_pin: !PF14
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PG6
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
# Driver1
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PG0
|
||||||
|
dir_pin: PG1
|
||||||
|
enable_pin: !PF15
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PG9
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
# Driver2
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PF11
|
||||||
|
dir_pin: PG3
|
||||||
|
enable_pin: !PG5
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: PG10
|
||||||
|
position_endstop: 0.5
|
||||||
|
position_max: 200
|
||||||
|
|
||||||
|
# Driver3
|
||||||
|
# The Octopus only has 4 heater outputs which leaves an extra stepper
|
||||||
|
# This can be used for a second Z stepper, dual_carriage, extruder co-stepper,
|
||||||
|
# or other accesory such as an MMU
|
||||||
|
#[stepper_]
|
||||||
|
#step_pin: PG4
|
||||||
|
#dir_pin: PC1
|
||||||
|
#enable_pin: !PA0
|
||||||
|
#endstop_pin: PG11
|
||||||
|
#...
|
||||||
|
|
||||||
|
# Driver4
|
||||||
|
[extruder]
|
||||||
|
step_pin: PF9
|
||||||
|
dir_pin: PF10
|
||||||
|
enable_pin: !PG2
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 33.500
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PA2 # HE0
|
||||||
|
sensor_pin: PF4 # T0
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 22.2
|
||||||
|
pid_Ki: 1.08
|
||||||
|
pid_Kd: 114
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_0]
|
||||||
|
#switch_pin: PG12
|
||||||
|
|
||||||
|
# Driver5
|
||||||
|
#[extruder1]
|
||||||
|
#step_pin: PC13
|
||||||
|
#dir_pin: PF0
|
||||||
|
#enable_pin: !PF1
|
||||||
|
#heater_pin: PA3 # HE1
|
||||||
|
#sensor_pin: PF5 # T1
|
||||||
|
#...
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_1]
|
||||||
|
#switch_pin: PG13
|
||||||
|
|
||||||
|
# Driver6
|
||||||
|
#[extruder2]
|
||||||
|
#step_pin: PE2
|
||||||
|
#dir_pin: PE3
|
||||||
|
#enable_pin: !PD4
|
||||||
|
#heater_pin: PB10 # HE2
|
||||||
|
#sensor_pin: PF6 # T2
|
||||||
|
#...
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_2]
|
||||||
|
#switch_pin: PG14
|
||||||
|
|
||||||
|
# Driver7
|
||||||
|
#[extruder3]
|
||||||
|
#step_pin: PE6
|
||||||
|
#dir_pin: PA14
|
||||||
|
#enable_pin: !PE0
|
||||||
|
#heater_pin: PB11 # HE3
|
||||||
|
#sensor_pin: PF7 # T3
|
||||||
|
#...
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_3]
|
||||||
|
#switch_pin: PG15
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA1
|
||||||
|
sensor_pin: PF3 # TB
|
||||||
|
sensor_type: ATC Semitec 104GT-2
|
||||||
|
control: watermark
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA8
|
||||||
|
|
||||||
|
#[heater_fan fan1]
|
||||||
|
#pin: PE5
|
||||||
|
|
||||||
|
#[heater_fan fan2]
|
||||||
|
#pin: PD12
|
||||||
|
|
||||||
|
#[heater_fan fan3]
|
||||||
|
#pin: PD13
|
||||||
|
|
||||||
|
#[heater_fan fan4]
|
||||||
|
#pin: PD14
|
||||||
|
|
||||||
|
#[controller_fan fan5]
|
||||||
|
#pin: PD15
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
||||||
|
# CAN bus is also available on this board
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC2209 configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2209 stepper_x]
|
||||||
|
#uart_pin: PC4
|
||||||
|
##diag_pin: PG6
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 stepper_y]
|
||||||
|
#uart_pin: PD11
|
||||||
|
##diag_pin: PG9
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 stepper_z]
|
||||||
|
#uart_pin: PC6
|
||||||
|
##diag_pin: PG10
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 stepper_]
|
||||||
|
#uart_pin: PC7
|
||||||
|
##diag_pin: PG11
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder]
|
||||||
|
#uart_pin: PF2
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder1]
|
||||||
|
#uart_pin: PE4
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder2]
|
||||||
|
#uart_pin: PE1
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder3]
|
||||||
|
#uart_pin: PD3
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC2130 configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2130 stepper_x]
|
||||||
|
#cs_pin: PC4
|
||||||
|
#spi_bus: spi1
|
||||||
|
##diag1_pin: PG6
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_y]
|
||||||
|
#cs_pin: PD11
|
||||||
|
#spi_bus: spi1
|
||||||
|
##diag1_pin: PG9
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_z]
|
||||||
|
#cs_pin: PC6
|
||||||
|
#spi_bus: spi1
|
||||||
|
##diag1_pin: PG10
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_]
|
||||||
|
#cs_pin: PC7
|
||||||
|
#spi_bus: spi1
|
||||||
|
##diag1_pin: PG11
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder]
|
||||||
|
#cs_pin: PF2
|
||||||
|
#spi_bus: spi1
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder1]
|
||||||
|
#cs_pin: PE4
|
||||||
|
#spi_bus: spi1
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder2]
|
||||||
|
#cs_pin: PE1
|
||||||
|
#spi_bus: spi1
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder3]
|
||||||
|
#cs_pin: PD3
|
||||||
|
#spi_bus: spi1
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
[board_pins]
|
||||||
|
aliases:
|
||||||
|
# EXP1 header
|
||||||
|
EXP1_1=PE8, EXP1_2=PE7,
|
||||||
|
EXP1_3=PE9, EXP1_4=PE10,
|
||||||
|
EXP1_5=PE12, EXP1_6=PE13, # Slot in the socket on this side
|
||||||
|
EXP1_7=PE14, EXP1_8=PE15,
|
||||||
|
EXP1_9=<GND>, EXP1_10=<5V>,
|
||||||
|
|
||||||
|
# EXP2 header
|
||||||
|
EXP2_1=PA6, EXP2_2=PA5,
|
||||||
|
EXP2_3=PB1, EXP2_4=PA4,
|
||||||
|
EXP2_5=PB2, EXP2_6=PA7, # Slot in the socket on this side
|
||||||
|
EXP2_7=PC15, EXP2_8=<RST>,
|
||||||
|
EXP2_9=<GND>, EXP2_10=PC5
|
||||||
|
|
||||||
|
# See the sample-lcd.cfg file for definitions of common LCD displays.
|
||||||
|
|
||||||
|
# A [probe] section can be defined instead with a pin: setting identical
|
||||||
|
# to the sensor_pin: for a bltouch
|
||||||
|
#[bltouch]
|
||||||
|
#sensor_pin: PB7
|
||||||
|
#control_pin: PB6
|
||||||
|
#z_offset: 0
|
||||||
|
|
||||||
|
#[neopixel my_neopixel]
|
||||||
|
#pin: PB0
|
||||||
@@ -1,6 +1,13 @@
|
|||||||
# This file contains common pin mappings for the BigTreeTech Octopus.
|
# This file contains common pin mappings for the BigTreeTech Octopus
|
||||||
# To use this config, the firmware should be compiled for the
|
# Pro v1.1 board.
|
||||||
# STM32F446 with a "32KiB bootloader" and a "12MHz crystal" clock reference.
|
|
||||||
|
# Important! Do not use this config with an Octopus Pro v1.0 board nor
|
||||||
|
# non-Pro board.
|
||||||
|
|
||||||
|
# To use this config, during "make menuconfig", select "Enable
|
||||||
|
# low-level configuration options", select the STM32H723
|
||||||
|
# micro-controller, select a "128KiB bootloader", and select a "25Mhz
|
||||||
|
# crystal".
|
||||||
|
|
||||||
# See docs/Config_Reference.md for a description of parameters.
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
@@ -46,7 +53,7 @@ position_max: 200
|
|||||||
#[stepper_]
|
#[stepper_]
|
||||||
#step_pin: PG4
|
#step_pin: PG4
|
||||||
#dir_pin: PC1
|
#dir_pin: PC1
|
||||||
#enable_pin: PA0
|
#enable_pin: !PA2
|
||||||
#endstop_pin: PG11
|
#endstop_pin: PG11
|
||||||
#...
|
#...
|
||||||
|
|
||||||
@@ -59,7 +66,7 @@ microsteps: 16
|
|||||||
rotation_distance: 33.500
|
rotation_distance: 33.500
|
||||||
nozzle_diameter: 0.400
|
nozzle_diameter: 0.400
|
||||||
filament_diameter: 1.750
|
filament_diameter: 1.750
|
||||||
heater_pin: PA2 # HE0
|
heater_pin: PA0 # HE0
|
||||||
sensor_pin: PF4 # T0
|
sensor_pin: PF4 # T0
|
||||||
sensor_type: EPCOS 100K B57560G104F
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
control: pid
|
control: pid
|
||||||
@@ -89,7 +96,7 @@ max_temp: 250
|
|||||||
#step_pin: PE2
|
#step_pin: PE2
|
||||||
#dir_pin: PE3
|
#dir_pin: PE3
|
||||||
#enable_pin: !PD4
|
#enable_pin: !PD4
|
||||||
#heater_pin: PB10 # HE2
|
#heater_pin: PB0 # HE2
|
||||||
#sensor_pin: PF6 # T2
|
#sensor_pin: PF6 # T2
|
||||||
#...
|
#...
|
||||||
|
|
||||||
@@ -275,4 +282,4 @@ aliases:
|
|||||||
#z_offset: 0
|
#z_offset: 0
|
||||||
|
|
||||||
#[neopixel my_neopixel]
|
#[neopixel my_neopixel]
|
||||||
#pin: PB0
|
#pin: PB10
|
||||||
288
config/generic-bigtreetech-octopus-v1.1.cfg
Normal file
288
config/generic-bigtreetech-octopus-v1.1.cfg
Normal file
@@ -0,0 +1,288 @@
|
|||||||
|
# This file contains common pin mappings for the BigTreeTech Octopus
|
||||||
|
# (non-Pro) boards.
|
||||||
|
|
||||||
|
# Important! Do not use this config with an Octopus Pro v1.1 board as
|
||||||
|
# doing so could result in a heater being inadvertently enabled.
|
||||||
|
|
||||||
|
# To use this config, start by identifying the micro-controller on the
|
||||||
|
# board - it may be an STM32F446, or STM32F429. Select the
|
||||||
|
# appropriate micro-controller in "make menuconfig" and select "Enable
|
||||||
|
# low-level configuration options". For STM32F446 boards the firmware
|
||||||
|
# should be compiled with a "32KiB bootloader" and a "12MHz crystal"
|
||||||
|
# clock reference. For STM32F429 boards use a "32KiB bootloader" and
|
||||||
|
# an "8MHz crystal".
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
# Driver0
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PF13
|
||||||
|
dir_pin: PF12
|
||||||
|
enable_pin: !PF14
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PG6
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
# Driver1
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PG0
|
||||||
|
dir_pin: PG1
|
||||||
|
enable_pin: !PF15
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PG9
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
# Driver2
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PF11
|
||||||
|
dir_pin: PG3
|
||||||
|
enable_pin: !PG5
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: PG10
|
||||||
|
position_endstop: 0.5
|
||||||
|
position_max: 200
|
||||||
|
|
||||||
|
# Driver3
|
||||||
|
# The Octopus only has 4 heater outputs which leaves an extra stepper
|
||||||
|
# This can be used for a second Z stepper, dual_carriage, extruder co-stepper,
|
||||||
|
# or other accesory such as an MMU
|
||||||
|
#[stepper_]
|
||||||
|
#step_pin: PG4
|
||||||
|
#dir_pin: PC1
|
||||||
|
#enable_pin: !PA0
|
||||||
|
#endstop_pin: PG11
|
||||||
|
#...
|
||||||
|
|
||||||
|
# Driver4
|
||||||
|
[extruder]
|
||||||
|
step_pin: PF9
|
||||||
|
dir_pin: PF10
|
||||||
|
enable_pin: !PG2
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 33.500
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PA2 # HE0
|
||||||
|
sensor_pin: PF4 # T0
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 22.2
|
||||||
|
pid_Ki: 1.08
|
||||||
|
pid_Kd: 114
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_0]
|
||||||
|
#switch_pin: PG12
|
||||||
|
|
||||||
|
# Driver5
|
||||||
|
#[extruder1]
|
||||||
|
#step_pin: PC13
|
||||||
|
#dir_pin: PF0
|
||||||
|
#enable_pin: !PF1
|
||||||
|
#heater_pin: PA3 # HE1
|
||||||
|
#sensor_pin: PF5 # T1
|
||||||
|
#...
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_1]
|
||||||
|
#switch_pin: PG13
|
||||||
|
|
||||||
|
# Driver6
|
||||||
|
#[extruder2]
|
||||||
|
#step_pin: PE2
|
||||||
|
#dir_pin: PE3
|
||||||
|
#enable_pin: !PD4
|
||||||
|
#heater_pin: PB10 # HE2
|
||||||
|
#sensor_pin: PF6 # T2
|
||||||
|
#...
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_2]
|
||||||
|
#switch_pin: PG14
|
||||||
|
|
||||||
|
# Driver7
|
||||||
|
#[extruder3]
|
||||||
|
#step_pin: PE6
|
||||||
|
#dir_pin: PA14
|
||||||
|
#enable_pin: !PE0
|
||||||
|
#heater_pin: PB11 # HE3
|
||||||
|
#sensor_pin: PF7 # T3
|
||||||
|
#...
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_3]
|
||||||
|
#switch_pin: PG15
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA1
|
||||||
|
sensor_pin: PF3 # TB
|
||||||
|
sensor_type: ATC Semitec 104GT-2
|
||||||
|
control: watermark
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA8
|
||||||
|
|
||||||
|
#[heater_fan fan1]
|
||||||
|
#pin: PE5
|
||||||
|
|
||||||
|
#[heater_fan fan2]
|
||||||
|
#pin: PD12
|
||||||
|
|
||||||
|
#[heater_fan fan3]
|
||||||
|
#pin: PD13
|
||||||
|
|
||||||
|
#[heater_fan fan4]
|
||||||
|
#pin: PD14
|
||||||
|
|
||||||
|
#[controller_fan fan5]
|
||||||
|
#pin: PD15
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
||||||
|
# CAN bus is also available on this board
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC2209 configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2209 stepper_x]
|
||||||
|
#uart_pin: PC4
|
||||||
|
##diag_pin: PG6
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 stepper_y]
|
||||||
|
#uart_pin: PD11
|
||||||
|
##diag_pin: PG9
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 stepper_z]
|
||||||
|
#uart_pin: PC6
|
||||||
|
##diag_pin: PG10
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 stepper_]
|
||||||
|
#uart_pin: PC7
|
||||||
|
##diag_pin: PG11
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder]
|
||||||
|
#uart_pin: PF2
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder1]
|
||||||
|
#uart_pin: PE4
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder2]
|
||||||
|
#uart_pin: PE1
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder3]
|
||||||
|
#uart_pin: PD3
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC2130 configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2130 stepper_x]
|
||||||
|
#cs_pin: PC4
|
||||||
|
#spi_bus: spi1
|
||||||
|
##diag1_pin: PG6
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_y]
|
||||||
|
#cs_pin: PD11
|
||||||
|
#spi_bus: spi1
|
||||||
|
##diag1_pin: PG9
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_z]
|
||||||
|
#cs_pin: PC6
|
||||||
|
#spi_bus: spi1
|
||||||
|
##diag1_pin: PG10
|
||||||
|
#run_current: 0.650
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_]
|
||||||
|
#cs_pin: PC7
|
||||||
|
#spi_bus: spi1
|
||||||
|
##diag1_pin: PG11
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder]
|
||||||
|
#cs_pin: PF2
|
||||||
|
#spi_bus: spi1
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder1]
|
||||||
|
#cs_pin: PE4
|
||||||
|
#spi_bus: spi1
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder2]
|
||||||
|
#cs_pin: PE1
|
||||||
|
#spi_bus: spi1
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder3]
|
||||||
|
#cs_pin: PD3
|
||||||
|
#spi_bus: spi1
|
||||||
|
#run_current: 0.800
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
[board_pins]
|
||||||
|
aliases:
|
||||||
|
# EXP1 header
|
||||||
|
EXP1_1=PE8, EXP1_2=PE7,
|
||||||
|
EXP1_3=PE9, EXP1_4=PE10,
|
||||||
|
EXP1_5=PE12, EXP1_6=PE13, # Slot in the socket on this side
|
||||||
|
EXP1_7=PE14, EXP1_8=PE15,
|
||||||
|
EXP1_9=<GND>, EXP1_10=<5V>,
|
||||||
|
|
||||||
|
# EXP2 header
|
||||||
|
EXP2_1=PA6, EXP2_2=PA5,
|
||||||
|
EXP2_3=PB1, EXP2_4=PA4,
|
||||||
|
EXP2_5=PB2, EXP2_6=PA7, # Slot in the socket on this side
|
||||||
|
EXP2_7=PC15, EXP2_8=<RST>,
|
||||||
|
EXP2_9=<GND>, EXP2_10=PC5
|
||||||
|
|
||||||
|
# See the sample-lcd.cfg file for definitions of common LCD displays.
|
||||||
|
|
||||||
|
# A [probe] section can be defined instead with a pin: setting identical
|
||||||
|
# to the sensor_pin: for a bltouch
|
||||||
|
#[bltouch]
|
||||||
|
#sensor_pin: PB7
|
||||||
|
#control_pin: PB6
|
||||||
|
#z_offset: 0
|
||||||
|
|
||||||
|
#[neopixel my_neopixel]
|
||||||
|
#pin: PB0
|
||||||
@@ -1,6 +1,8 @@
|
|||||||
# This file contains common pin mappings for the BigTreeTech SKR 3.
|
# This file contains common pin mappings for the BigTreeTech SKR 3.
|
||||||
|
# This board can ship with one of two chips, STM32H743 or STM32H723.
|
||||||
# To use this config, during "make menuconfig" enable "low-level
|
# To use this config, during "make menuconfig" enable "low-level
|
||||||
# options", "STM32H743", "128KiB bootloader", and "25MHz clock".
|
# options", "STM32H743" or "STM32H723", "128KiB bootloader",
|
||||||
|
# and "25MHz clock".
|
||||||
|
|
||||||
# See docs/Config_Reference.md for a description of parameters.
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
|||||||
@@ -85,11 +85,10 @@ uart_pin: PC11
|
|||||||
tx_pin: PC10
|
tx_pin: PC10
|
||||||
uart_address: 3
|
uart_address: 3
|
||||||
run_current: 0.650
|
run_current: 0.650
|
||||||
stealthchop_threshold: 999999
|
|
||||||
|
|
||||||
[heater_bed]
|
[heater_bed]
|
||||||
heater_pin: PC9
|
heater_pin: PC9
|
||||||
sensor_type: ATC Semitec 104GT-2
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
sensor_pin: PC4
|
sensor_pin: PC4
|
||||||
control: pid
|
control: pid
|
||||||
pid_Kp: 54.027
|
pid_Kp: 54.027
|
||||||
|
|||||||
@@ -122,6 +122,12 @@ max_z_accel: 100
|
|||||||
[static_digital_output usb_pullup_enable]
|
[static_digital_output usb_pullup_enable]
|
||||||
pins: !PA14
|
pins: !PA14
|
||||||
|
|
||||||
|
#[neopixel my_neopixel]
|
||||||
|
#pin: PA8
|
||||||
|
|
||||||
|
[output_pin red_led]
|
||||||
|
pin: PA13
|
||||||
|
|
||||||
[board_pins]
|
[board_pins]
|
||||||
aliases:
|
aliases:
|
||||||
# EXP1 header
|
# EXP1 header
|
||||||
|
|||||||
@@ -106,6 +106,9 @@ pin: gpio18
|
|||||||
[heater_fan controller_fan]
|
[heater_fan controller_fan]
|
||||||
pin: gpio20
|
pin: gpio20
|
||||||
|
|
||||||
|
[temperature_sensor pico]
|
||||||
|
sensor_type: temperature_mcu
|
||||||
|
|
||||||
[mcu]
|
[mcu]
|
||||||
serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
||||||
|
|
||||||
|
|||||||
@@ -95,4 +95,4 @@ max_z_accel: 100
|
|||||||
aliases:
|
aliases:
|
||||||
EXP1_1=PC6,EXP1_3=PB10,EXP1_5=PB14,EXP1_7=PB12,EXP1_9=<GND>,
|
EXP1_1=PC6,EXP1_3=PB10,EXP1_5=PB14,EXP1_7=PB12,EXP1_9=<GND>,
|
||||||
EXP1_2=PB2,EXP1_4=PB11,EXP1_6=PB13,EXP1_8=PB15,EXP1_10=<5V>,
|
EXP1_2=PB2,EXP1_4=PB11,EXP1_6=PB13,EXP1_8=PB15,EXP1_10=<5V>,
|
||||||
PROBE_IN=PB0,PROBE_OUT=PB1,FIL_RUNOUT=PC6
|
PROBE_IN=PB0,PROBE_OUT=PB1,FIL_RUNOUT=PA4
|
||||||
|
|||||||
152
config/generic-duet3-6hc.cfg
Normal file
152
config/generic-duet3-6hc.cfg
Normal file
@@ -0,0 +1,152 @@
|
|||||||
|
# This file contains common pin mappings for the Duet3 6HC. To use
|
||||||
|
# this config, the firmware should be compiled for the SAME70Q20B.
|
||||||
|
|
||||||
|
# To flash the board, erase the existing firmware by jumpering the erase jumper.
|
||||||
|
# Boot the board, wait for reset to complete, remove the jumper, and then reboot the board,
|
||||||
|
# as described in Duet's documentation:
|
||||||
|
# https://docs.duet3d.com/en/User_manual/RepRapFirmware/Updating_firmware#all-other-duet-boards
|
||||||
|
# Then run: make flash FLASH_DEVICE=/dev/ttyACM0
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
|
||||||
|
# Pins for reference, v1.02 board:
|
||||||
|
# Driver Step Pins - 0:PC18 1:PC16 2:PC28 3:PC1 4:PC4 5:PC9
|
||||||
|
# Driver Dir Pins - 0:PB5 1:PD10 2:PA4 3:PA22 4:PC3 5:PD14
|
||||||
|
# Driver Enable - !PA9
|
||||||
|
# Driver CS - PD17
|
||||||
|
# Thermistor Pins - TEMP0:PC15 TEMP1:PC29 TEMP2:PC30 TEMP3:PC31
|
||||||
|
# Pullup Resistor - 2200
|
||||||
|
# Vssa Sense:PC13 | Vref Sense:PC0
|
||||||
|
# Current Sense resistor for drivers - 0.05ohm
|
||||||
|
# SPI lines:{PC25} -> SPIMosi:PC27 SPIMiso:PC26 SPISCLK:PC24
|
||||||
|
# Vin Monitor:PA20
|
||||||
|
# CAN Pins - TX0:PB2 RX0:PB3 TX1:PD12 RX1:PC12
|
||||||
|
# Heaters - Out0:PA7 Out1:PA24 Out2:PA16 Out3:PA11
|
||||||
|
# Fan outputs - Out4:PA15 Out5:PC5 Out6:PA8 Out7:PC11 Out8:PC8 Out9:PA12 | Out9 is shared with VFD_Out
|
||||||
|
# Tach Pins for Fans - Out4.Tach:PC7 Out5.Tach:PD23 Out6.Tach:PA1
|
||||||
|
# GPIO_out - IO0:PD26 IO1:PD16 IO2:PD27 IO3:PA3 IO4:PE0 IO5:PD21 IO6:PA0 IO7:PD23 IO8:PE1
|
||||||
|
# GPIO_in - IO0:PD25 IO1:PD15 IO2:PD28 IO3:PE5 IO4:PD30 IO5:PA19 IO6:PA18 IO7:PA17 IO8:PE3
|
||||||
|
# Driver Diag - 0:PD29 1:PC17 2:PD13 3:PC2 4:PD31 5:PC10
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
#driver 0
|
||||||
|
step_pin: PC18
|
||||||
|
dir_pin: PB5
|
||||||
|
enable_pin: !PA9
|
||||||
|
microsteps: 128
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PD25 #IO0
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 450
|
||||||
|
|
||||||
|
[tmc5160 stepper_x]
|
||||||
|
cs_pin: PD17
|
||||||
|
spi_bus: usart1
|
||||||
|
chain_position: 1
|
||||||
|
chain_length: 6
|
||||||
|
interpolate: False
|
||||||
|
run_current: 1
|
||||||
|
sense_resistor: 0.05
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
#driver 1
|
||||||
|
step_pin: PC16
|
||||||
|
dir_pin: PD10
|
||||||
|
enable_pin: !PA9
|
||||||
|
microsteps: 128
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PD15 #IO1
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 450
|
||||||
|
|
||||||
|
[tmc5160 stepper_y]
|
||||||
|
cs_pin: PD17
|
||||||
|
chain_position: 2
|
||||||
|
chain_length: 6
|
||||||
|
interpolate: False
|
||||||
|
run_current: 1.0
|
||||||
|
sense_resistor: 0.05
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
#driver2
|
||||||
|
step_pin: PC28
|
||||||
|
dir_pin: PA4
|
||||||
|
enable_pin: !PA9
|
||||||
|
microsteps: 64
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: PD28 #IO2
|
||||||
|
position_endstop: 0
|
||||||
|
position_min: 0
|
||||||
|
position_max: 400
|
||||||
|
|
||||||
|
[tmc5160 stepper_z]
|
||||||
|
cs_pin: PD17
|
||||||
|
chain_position: 3
|
||||||
|
chain_length: 6
|
||||||
|
interpolate: False
|
||||||
|
run_current: 1.0
|
||||||
|
sense_resistor: 0.05
|
||||||
|
|
||||||
|
[adc_scaled vref_scaled]
|
||||||
|
vref_pin: PC0
|
||||||
|
vssa_pin: PC13
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
#driver3
|
||||||
|
step_pin: PC1
|
||||||
|
dir_pin: PA22
|
||||||
|
enable_pin: !PA9
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 33.500
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PA24 #Out1
|
||||||
|
sensor_type: ATC Semitec 104GT-2
|
||||||
|
pullup_resistor: 2200
|
||||||
|
sensor_pin: vref_scaled:PC29 #Temp1
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 30.089
|
||||||
|
pid_Ki: 2.229
|
||||||
|
pid_Kd: 101.550
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 285
|
||||||
|
|
||||||
|
[tmc5160 extruder]
|
||||||
|
cs_pin: PD17
|
||||||
|
chain_position: 4
|
||||||
|
chain_length: 6
|
||||||
|
interpolate: False
|
||||||
|
run_current: .6
|
||||||
|
sense_resistor: 0.05
|
||||||
|
|
||||||
|
[heater_fan heatbreak_fan]
|
||||||
|
pin: PC8 #Out8
|
||||||
|
heater: extruder
|
||||||
|
heater_temp: 50.0
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA7 #Out0
|
||||||
|
sensor_type: Generic 3950
|
||||||
|
sensor_pin: vref_scaled:PC15 #Temp0
|
||||||
|
control: pid
|
||||||
|
pullup_resistor: 2200
|
||||||
|
pid_Kp: 61.049
|
||||||
|
pid_Ki: 2.339
|
||||||
|
pid_Kd: 398.344
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[heater_fan heatbreak_fan]
|
||||||
|
pin: PA15 #Out4
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PC5 #Out5
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/ttyACM0
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 350
|
||||||
|
max_accel: 3000
|
||||||
108
config/generic-duet3-6xd.cfg
Normal file
108
config/generic-duet3-6xd.cfg
Normal file
@@ -0,0 +1,108 @@
|
|||||||
|
# This file contains common pin mappings for the Duet3 6XD. To use
|
||||||
|
# this config, the firmware should be compiled for the SAME70Q20B.
|
||||||
|
|
||||||
|
# To flash the board, erase the existing firmware by jumpering the erase jumper.
|
||||||
|
# Boot the board, wait for reset to complete, remove the jumper, and then reboot the board,
|
||||||
|
# as described in Duet's documentation:
|
||||||
|
# https://docs.duet3d.com/en/User_manual/RepRapFirmware/Updating_firmware#all-other-duet-boards
|
||||||
|
# Then run: make flash FLASH_DEVICE=/dev/ttyACM0
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
|
||||||
|
# Pins for reference, v1.0 board:
|
||||||
|
# Driver Step Pins - 0:PC18 1:PC16 2:PC28 3:PC1 4:PC4 5:PC9
|
||||||
|
# Driver Dir Pins - 0:PB5 1:PD10 2:PA4 3:PA22 4:PC3 5:PD14
|
||||||
|
# Driver En Pins - 0:PB4 1:PA21 2:PC20 3:PA23 4:PA2 5:PD17
|
||||||
|
# Driver Err Pins - 0:PD29 1:PC17 2:PD13 3:PC2 4:PD31 5:PC10
|
||||||
|
# Thermistor Pins - TEMP0:PC15 TEMP1:PC29 TEMP2:PC0 TEMP3:PC31
|
||||||
|
# Pullup Resistor - 2200
|
||||||
|
# Vssa Sense:PC13 | Vref Sense:PC30
|
||||||
|
# SPI0:{PD19, PA5, PA6, PD20, PC22} -> SPIMosi:PB1 SPIMiso:PB0 SPISCLK:PB13
|
||||||
|
# SPI1:{PC25} -> SPIMosi:PC27 SPIMiso:PC26 SPISCLK:PC24 DATA_RDY:PE2
|
||||||
|
# Vin Monitor:PA20
|
||||||
|
# LED's - Diag:PB6, Act:PB7
|
||||||
|
# CAN Pins - TX0:PB2 RX0:PB3 TX1:PD12 RX1:PC12
|
||||||
|
# Heaters - Out0:PA24 Out1:PA16 Out2:PA11
|
||||||
|
# Fan outputs - Out3:PA15 Out4:PC5 Out5:PA8 Out6:PC11 Out7:PC8 Out8:PA12
|
||||||
|
# Tach Pins for Fans - Out3.Tach:PC7 Out4.Tach:PD23 Out5.Tach:PA1
|
||||||
|
# VFD - PA7
|
||||||
|
# GPIO_out - IO0:PD26 IO1:PD16 IO2:PD27 IO3:PA3 IO4:PE0 IO5:PD21 IO6:PA0 IO7:PD23 IO8:PE1
|
||||||
|
# GPIO_in - IO0:PD25 IO1:PD15 IO2:PD28 IO3:PE5 IO4:PD30 IO5:PA19 IO6:PA18 IO7:PA17 IO8:PE3
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
#driver 0
|
||||||
|
step_pin: PC18
|
||||||
|
dir_pin: PB5
|
||||||
|
enable_pin: PB4
|
||||||
|
microsteps: 128
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PD25 #IO0
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 450
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
#driver 1
|
||||||
|
step_pin: PC16
|
||||||
|
dir_pin: PD10
|
||||||
|
enable_pin: PA21
|
||||||
|
microsteps: 128
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PD15 #IO1
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 450
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
#driver2
|
||||||
|
step_pin: PC28
|
||||||
|
dir_pin: PA4
|
||||||
|
enable_pin: PC20
|
||||||
|
microsteps: 64
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: PD28 #IO2
|
||||||
|
position_endstop: 0
|
||||||
|
position_min: 0
|
||||||
|
position_max: 400
|
||||||
|
|
||||||
|
[adc_scaled vref_scaled]
|
||||||
|
vref_pin: PC30
|
||||||
|
vssa_pin: PC13
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
#driver3
|
||||||
|
step_pin: PC1
|
||||||
|
dir_pin: PA22
|
||||||
|
enable_pin: PA23
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 33.500
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PA24 #Out0
|
||||||
|
sensor_type: ATC Semitec 104GT-2
|
||||||
|
pullup_resistor: 2200
|
||||||
|
sensor_pin: vref_scaled:PC29 #Temp1
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 30.089
|
||||||
|
pid_Ki: 2.229
|
||||||
|
pid_Kd: 101.550
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 285
|
||||||
|
|
||||||
|
[heater_fan heatbreak_fan]
|
||||||
|
pin: PC8 #Out7
|
||||||
|
heater: extruder
|
||||||
|
heater_temp: 50.0
|
||||||
|
|
||||||
|
[heater_fan heatbreak_fan]
|
||||||
|
pin: PA15 #Out3
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PC5 #Out4
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/ttyACM0
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 350
|
||||||
|
max_accel: 3000
|
||||||
138
config/generic-fysetc-cheetah-v2.0.cfg
Normal file
138
config/generic-fysetc-cheetah-v2.0.cfg
Normal file
@@ -0,0 +1,138 @@
|
|||||||
|
# This file contains common pin mappings for the Fysetc Cheetah V2.0
|
||||||
|
# To use this config, the firmware should be compiled for the
|
||||||
|
# STM32F401 with a "32KiB bootloader".
|
||||||
|
|
||||||
|
# Rename "klipper.bin" to "firmware.bin", copy to Sdcard and insert in motherboard
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PC0
|
||||||
|
dir_pin: PC1
|
||||||
|
enable_pin: !PA8
|
||||||
|
rotation_distance: 40
|
||||||
|
microsteps: 64
|
||||||
|
endstop_pin: ^PB4
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[tmc2209 stepper_x]
|
||||||
|
uart_pin: PA3
|
||||||
|
tx_pin: PA2
|
||||||
|
uart_address: 0
|
||||||
|
run_current: 0.800
|
||||||
|
interpolate: false
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PC14
|
||||||
|
dir_pin: !PC13
|
||||||
|
enable_pin: !PC15
|
||||||
|
rotation_distance: 40
|
||||||
|
microsteps: 64
|
||||||
|
endstop_pin: ^PC8
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[tmc2209 stepper_y]
|
||||||
|
uart_pin: PA3
|
||||||
|
tx_pin: PA2
|
||||||
|
uart_address: 2
|
||||||
|
run_current: 0.800
|
||||||
|
interpolate: false
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PB9
|
||||||
|
dir_pin: PB8
|
||||||
|
enable_pin: !PC2
|
||||||
|
rotation_distance: 8
|
||||||
|
microsteps: 64
|
||||||
|
endstop_pin: ^PB1
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
|
||||||
|
[tmc2209 stepper_z]
|
||||||
|
uart_pin: PA3
|
||||||
|
tx_pin: PA2
|
||||||
|
uart_address: 1
|
||||||
|
run_current: 0.800
|
||||||
|
interpolate: false
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PB2
|
||||||
|
dir_pin: !PA15
|
||||||
|
enable_pin: !PD2
|
||||||
|
rotation_distance: 33.500
|
||||||
|
microsteps: 16
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PC6
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC4
|
||||||
|
control: pid
|
||||||
|
pid_kp: 21.527
|
||||||
|
pid_ki: 1.063
|
||||||
|
pid_kd: 108.982
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
[tmc2209 extruder]
|
||||||
|
uart_pin: PA3
|
||||||
|
tx_pin: PA2
|
||||||
|
uart_address: 3
|
||||||
|
run_current: 0.800
|
||||||
|
interpolate: false
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PC7
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC5
|
||||||
|
control: pid
|
||||||
|
pid_kp: 54.027
|
||||||
|
pid_ki: 0.770
|
||||||
|
pid_kd: 948.182
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 120
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA1
|
||||||
|
|
||||||
|
[heater_fan my_hotend_fan]
|
||||||
|
pin: PA13
|
||||||
|
heater: extruder
|
||||||
|
heater_temp: 50.0
|
||||||
|
|
||||||
|
[controller_fan my_controller_fan]
|
||||||
|
pin: PA14
|
||||||
|
heater: extruder, heater_bed
|
||||||
|
stepper: stepper_x, stepper_y, stepper_z, extruder
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 500
|
||||||
|
max_accel: 5000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 1000
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: INSERTSERIALIDHERE
|
||||||
|
|
||||||
|
[board_pins]
|
||||||
|
aliases:
|
||||||
|
# EXP1 header
|
||||||
|
EXP1_1=<5V>, EXP1_3=<RST>, EXP1_5=PA7, EXP1_7=PA4, EXP1_9=PA5,
|
||||||
|
EXP1_2=<GND>, EXP1_4=PC3, EXP1_6=PC11, EXP1_8=PC10, EXP1_10=PA6,
|
||||||
|
|
||||||
|
# EXP2 header
|
||||||
|
EXP2_1=<5V>, EXP2_3=PB7, EXP2_5=PB14, EXP2_7=PB12, EXP2_9=PC12,
|
||||||
|
EXP2_2=<GND>, EXP2_4=PB6, EXP2_6=PB13, EXP2_8=PB15, EXP2_10=PC9,
|
||||||
|
|
||||||
|
# EXP3 header
|
||||||
|
EXP3_1=PC9, EXP3_3=PC10, EXP3_5=PC11, EXP3_7=PB12, EXP3_9=<GND>,
|
||||||
|
EXP3_2=PC12, EXP3_4=PB14, EXP3_6=PB13, EXP3_8=PB15, EXP3_10=<5V>
|
||||||
|
# Pins EXP1_4, EXP1_8, EXP1_6 are also MISO, MOSI, SCK of bus "spi2"
|
||||||
@@ -78,7 +78,7 @@ max_temp: 130
|
|||||||
pin: PL5
|
pin: PL5
|
||||||
|
|
||||||
#fan for hotend FAN1
|
#fan for hotend FAN1
|
||||||
#[heater_fan my_nozzle_fan]
|
#[heater_fan heatbreak_cooling_fan]
|
||||||
#pin: PL4
|
#pin: PL4
|
||||||
#shutdown_speed: 1
|
#shutdown_speed: 1
|
||||||
|
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ max_temp: 130
|
|||||||
pin: PB0
|
pin: PB0
|
||||||
|
|
||||||
#fan for hotend FAN1
|
#fan for hotend FAN1
|
||||||
#[heater_fan my_nozzle_fan]
|
#[heater_fan heatbreak_cooling_fan]
|
||||||
#pin: PB1
|
#pin: PB1
|
||||||
#shutdown_speed: 1
|
#shutdown_speed: 1
|
||||||
|
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ max_temp: 130
|
|||||||
pin: PB0
|
pin: PB0
|
||||||
|
|
||||||
#fan for hotend FAN1
|
#fan for hotend FAN1
|
||||||
#[heater_fan my_nozzle_fan]
|
#[heater_fan heatbreak_cooling_fan]
|
||||||
#pin: PB1
|
#pin: PB1
|
||||||
#shutdown_speed: 1
|
#shutdown_speed: 1
|
||||||
|
|
||||||
|
|||||||
@@ -91,7 +91,7 @@ max_temp: 130
|
|||||||
pin: PB0
|
pin: PB0
|
||||||
|
|
||||||
#fan for hotend FAN1
|
#fan for hotend FAN1
|
||||||
#[heater_fan my_nozzle_fan]
|
#[heater_fan heatbreak_cooling_fan]
|
||||||
#pin: PB1
|
#pin: PB1
|
||||||
#shutdown_speed: 1
|
#shutdown_speed: 1
|
||||||
|
|
||||||
|
|||||||
241
config/generic-ldo-leviathan-v1.2.cfg
Normal file
241
config/generic-ldo-leviathan-v1.2.cfg
Normal file
@@ -0,0 +1,241 @@
|
|||||||
|
# This file contains common pin mappings for the LDO Leviathan v1.2.
|
||||||
|
|
||||||
|
# To use this config, during "make menuconfig", select "Enable
|
||||||
|
# low-level configuration options", select the STM32F446 micro-controller,
|
||||||
|
# select a "32KiB bootloader", and select a "12Mhz crystal".
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
# HV-STEPPER-0
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PB10
|
||||||
|
dir_pin: PB11
|
||||||
|
enable_pin: !PG0
|
||||||
|
microsteps: 32
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PC1 # X-ENDSTOP
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[tmc5160 stepper_x]
|
||||||
|
spi_bus: spi4
|
||||||
|
cs_pin: PE15
|
||||||
|
#diag0_pin: PG1
|
||||||
|
interpolate: False
|
||||||
|
sense_resistor: 0.075
|
||||||
|
run_current: 0.8
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
|
||||||
|
# HV-STEPPER-1
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PF15
|
||||||
|
dir_pin: PF14
|
||||||
|
enable_pin: !PE9
|
||||||
|
microsteps: 32
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PC2 # Y-ENDSTOP
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[tmc5160 stepper_y]
|
||||||
|
spi_bus: spi4
|
||||||
|
cs_pin: PE11
|
||||||
|
#diag0_pin: PE10
|
||||||
|
interpolate: False
|
||||||
|
sense_resistor: 0.075
|
||||||
|
run_current: 0.8
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
|
||||||
|
# STEPPER-0
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PD4
|
||||||
|
dir_pin: PD3
|
||||||
|
enable_pin: !PD7
|
||||||
|
microsteps: 32
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: PC3 # Z-ENDSTOP
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
|
||||||
|
[tmc2209 stepper_z]
|
||||||
|
uart_pin: PD5
|
||||||
|
#diag_pin: PD6
|
||||||
|
interpolate: False
|
||||||
|
run_current: 0.6
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
# The Leviathan was developed for Voron printers. It therefore has several
|
||||||
|
# steppers for the z-axes, but only one heater for one extruder.
|
||||||
|
|
||||||
|
# STEPPER-1
|
||||||
|
#[stepper_z1]
|
||||||
|
#step_pin: PC12
|
||||||
|
#dir_pin: PC11
|
||||||
|
#enable_pin: !PD2
|
||||||
|
#microsteps: 32
|
||||||
|
#rotation_distance: 8
|
||||||
|
#
|
||||||
|
#[tmc2209 stepper_z1]
|
||||||
|
#uart_pin: PD5
|
||||||
|
##diag_pin: PD6
|
||||||
|
#interpolate: False
|
||||||
|
#run_current: 0.6
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
# STEPPER-2
|
||||||
|
#[stepper_z2]
|
||||||
|
#step_pin: PC9
|
||||||
|
#dir_pin: PC8
|
||||||
|
#enable_pin: !PC10
|
||||||
|
#microsteps: 32
|
||||||
|
#rotation_distance: 8
|
||||||
|
#
|
||||||
|
#[tmc2209 stepper_z2]
|
||||||
|
#uart_pin: PA8
|
||||||
|
##diag_pin: PA15
|
||||||
|
#interpolate: False
|
||||||
|
#run_current: 0.6
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
# STEPPER-3
|
||||||
|
#[stepper_z3]
|
||||||
|
#step_pin: PG7
|
||||||
|
#dir_pin: PG6
|
||||||
|
#enable_pin: !PC7
|
||||||
|
#microsteps: 32
|
||||||
|
#rotation_distance: 8
|
||||||
|
#
|
||||||
|
#[tmc2209 stepper_z2]
|
||||||
|
#uart_pin: PG8
|
||||||
|
##diag_pin: PC6
|
||||||
|
#interpolate: False
|
||||||
|
#run_current: 0.6
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
# STEPPER-4
|
||||||
|
[extruder]
|
||||||
|
step_pin: PD10
|
||||||
|
dir_pin: PD9
|
||||||
|
enable_pin: !PD13
|
||||||
|
microsteps: 32
|
||||||
|
rotation_distance: 22.67
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PG10 # HEATER
|
||||||
|
sensor_pin: PA2 # TH1
|
||||||
|
sensor_type: ATC Semitec 104NT-4-R025H42G
|
||||||
|
pullup_resistor: 2200
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 36.787
|
||||||
|
pid_Ki: 4.716
|
||||||
|
pid_Kd: 71.735
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
[tmc2209 stepper_z]
|
||||||
|
uart_pin: PD11
|
||||||
|
#diag_pin: PD12
|
||||||
|
interpolate: False
|
||||||
|
run_current: 0.5
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
|
||||||
|
#[filament_switch_sensor material_0]
|
||||||
|
#switch_pin: PC0 # FILAMENT-SENSOR
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PG11 # HEATBED
|
||||||
|
sensor_pin: PA1 # TH0
|
||||||
|
sensor_type: ATC Semitec 104GT-2
|
||||||
|
pullup_resistor: 2200
|
||||||
|
control: pid
|
||||||
|
pid_kp: 56.723
|
||||||
|
pid_ki: 5.561
|
||||||
|
pid_kd: 144.642
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PB7 # FAN0
|
||||||
|
#tachometer_pin: PB0
|
||||||
|
|
||||||
|
#[heater_fan fan1]
|
||||||
|
#pin: PB3
|
||||||
|
#tachometer_pin: PB4
|
||||||
|
|
||||||
|
#[heater_fan fan2]
|
||||||
|
#pin: PF7
|
||||||
|
#tachometer_pin: PF6
|
||||||
|
|
||||||
|
#[controller_fan fan3]
|
||||||
|
#pin: PF9
|
||||||
|
#tachometer_pin: PF8
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
||||||
|
# CAN bus is also available on this board
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
[board_pins]
|
||||||
|
aliases:
|
||||||
|
# EXP1 header
|
||||||
|
EXP1_1=PG9, EXP1_2=PG12,
|
||||||
|
EXP1_3=PG13, EXP1_4=PG14,
|
||||||
|
EXP1_5=PC13, EXP1_6=PC14,
|
||||||
|
EXP1_7=PC15, EXP1_8=PF0,
|
||||||
|
EXP1_9=<GND>, EXP1_10=<5V>,
|
||||||
|
|
||||||
|
# EXP2 header
|
||||||
|
EXP2_1=PA6, EXP2_2=PA5,
|
||||||
|
EXP2_3=PE2, EXP2_4=PE4,
|
||||||
|
EXP2_5=PE3, EXP2_6=PA7,
|
||||||
|
EXP2_7=PE5, EXP2_8=<RST>,
|
||||||
|
EXP2_9=<GND>, EXP2_10=PE4,
|
||||||
|
|
||||||
|
# See the sample-lcd.cfg file for definitions of common LCD displays.
|
||||||
|
|
||||||
|
# EXTENSION PORT
|
||||||
|
EXP3_1=<5V>, EXP3_2=<5V>, # max. 0.5A
|
||||||
|
EXP3_3=<GND>, EXP3_4=<GND>,
|
||||||
|
EXP3_5=<3.3V>, EXP3_6=<3.3V>, # max. 0.5A
|
||||||
|
EXP3_7=PF5, EXP3_8=PF4,
|
||||||
|
EXP3_9=PF3, EXP3_10=PF2,
|
||||||
|
EXP3_11=PC4, EXP3_12=PC5, # EXP3_11 and EXP3_12 are ADC inputs
|
||||||
|
EXP3_13=PB0, EXP3_14=PB1, # EXP3_13 and EXP3_14 are ADC inputs
|
||||||
|
EXP3_15=PE8, EXP3_16=PE7, # EXP3_15 is UART5_TX, EXP3_16 is UART5_RX
|
||||||
|
EXP3_17=PG5, EXP3_18=PG4,
|
||||||
|
EXP3_19=PG3, EXP3_20=PG2,
|
||||||
|
EXP3_21=PD15, EXP3_22=PD14,
|
||||||
|
EXP3_23=PB15, EXP3_24=PB14, # EXP3_23 is SPI2_MOSI
|
||||||
|
# EXP3_24 is SPI2_MISO
|
||||||
|
EXP3_25=PB13, EXP3_26=PB12, # EXP3_25 is SPI2_SCK + CAN2_TX
|
||||||
|
# EXP3_26 is SPI2_CS + CAN2_RX
|
||||||
|
EXP3_27=<GND>, EXP3_28=<GND>,
|
||||||
|
EXP3_29=<24V>, EXP3_30=<24V>, # max. 0.5A
|
||||||
|
|
||||||
|
#[probe]
|
||||||
|
#sensor_pin: PF1 # Z-PROBE
|
||||||
|
#z_offset: 0
|
||||||
|
|
||||||
|
#[led my_led]
|
||||||
|
#white_pin: PE6 # LED-Strip
|
||||||
|
|
||||||
|
#[neopixel my_neopixel]
|
||||||
|
#pin: PF10 # NEOPIXEL
|
||||||
|
|
||||||
|
#[temperature_sensor TH2]
|
||||||
|
#sensor_type: ATC Semitec 104GT-2
|
||||||
|
#sensor_pin: PA0 # TH2
|
||||||
|
#pullup_resistor: 2200
|
||||||
|
|
||||||
|
#[temperature_sensor TH3]
|
||||||
|
#sensor_type: ATC Semitec 104GT-2
|
||||||
|
#sensor_pin: PA3 # TH3
|
||||||
|
#pullup_resistor: 2200
|
||||||
232
config/generic-mellow-fly-e3-v2.cfg
Normal file
232
config/generic-mellow-fly-e3-v2.cfg
Normal file
@@ -0,0 +1,232 @@
|
|||||||
|
# This file contains common pin mappings for the Mellow Fly-E3-v2.
|
||||||
|
# To use this config, the firmware should be compiled for the
|
||||||
|
# STM32F407 with a "32KiB bootloader".
|
||||||
|
|
||||||
|
# The "make flash" command does not work on the Fly-E3-v2. Instead,
|
||||||
|
# after running "make", copy the generated "out/klipper.bin" file to a
|
||||||
|
# file named "firmware.bin" or "klipper.bin" on an SD card and then restart the Fly-E3-v2
|
||||||
|
# with that SD card.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-Klipper_stm32f407xx_27004A001851323333353137-if00
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PE5
|
||||||
|
dir_pin: PC0
|
||||||
|
enable_pin: !PC1
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 30
|
||||||
|
full_steps_per_rotation: 200
|
||||||
|
endstop_pin: PE7 #X-STOP
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
second_homing_speed: 10
|
||||||
|
homing_retract_dist: 5.0
|
||||||
|
homing_positive_dir: false
|
||||||
|
step_pulse_duration: 0.000004
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PE4
|
||||||
|
dir_pin: !PC13
|
||||||
|
enable_pin: !PC14
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 30
|
||||||
|
full_steps_per_rotation: 200
|
||||||
|
endstop_pin: PE8 #Y-STOP
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
second_homing_speed: 10
|
||||||
|
homing_retract_dist: 5.0
|
||||||
|
homing_positive_dir: false
|
||||||
|
step_pulse_duration: 0.000004
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PE1
|
||||||
|
dir_pin: !PB7
|
||||||
|
enable_pin: !PE3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 30
|
||||||
|
full_steps_per_rotation: 200
|
||||||
|
endstop_pin: PE9 #Z-STOP
|
||||||
|
position_min: 0
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 5
|
||||||
|
second_homing_speed: 3
|
||||||
|
homing_retract_dist: 5.0
|
||||||
|
homing_positive_dir: false
|
||||||
|
step_pulse_duration: 0.000004
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PE2
|
||||||
|
dir_pin: PD5
|
||||||
|
enable_pin: !PD6
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 33.500
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PC6 #E0
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# Extruder 100K thermistor configuration
|
||||||
|
########################################
|
||||||
|
sensor_type: ATC Semitec 104GT-2
|
||||||
|
sensor_pin: PC4 #T0 TEMP
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 22.2
|
||||||
|
pid_Ki: 1.08
|
||||||
|
pid_Kd: 114
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 275
|
||||||
|
########################################
|
||||||
|
# Extruder MAX31865 PT100 2 wire config
|
||||||
|
########################################
|
||||||
|
# sensor_type: MAX31865
|
||||||
|
# sensor_pin: PD15 #PT-100
|
||||||
|
# spi_speed: 4000000
|
||||||
|
# spi_software_sclk_pin: PD12
|
||||||
|
# spi_software_mosi_pin: PD11
|
||||||
|
# spi_software_miso_pin: PD13
|
||||||
|
# rtd_nominal_r: 100
|
||||||
|
# rtd_reference_r: 430
|
||||||
|
# rtd_num_of_wires: 2
|
||||||
|
# rtd_use_50Hz_filter: True
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 300
|
||||||
|
|
||||||
|
#[extruder1]
|
||||||
|
#step_pin: PE0
|
||||||
|
#dir_pin: PD1
|
||||||
|
#enable_pin: !PD3
|
||||||
|
#microsteps: 16
|
||||||
|
#heater_pin: PC7 #E1
|
||||||
|
#sensor_pin: PC5 #T1 TEMP
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC2209 configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
[tmc2209 stepper_x]
|
||||||
|
uart_pin: PC15
|
||||||
|
interpolate: False
|
||||||
|
run_current: 0.3
|
||||||
|
sense_resistor: 0.110
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
[tmc2209 stepper_y]
|
||||||
|
uart_pin: PB6
|
||||||
|
interpolate: False
|
||||||
|
run_current: 0.3
|
||||||
|
sense_resistor: 0.110
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
[tmc2209 stepper_z]
|
||||||
|
uart_pin: PD7
|
||||||
|
interpolate: False
|
||||||
|
run_current: 0.4
|
||||||
|
sense_resistor: 0.110
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
[tmc2209 extruder]
|
||||||
|
uart_pin: PD4
|
||||||
|
interpolate: False
|
||||||
|
run_current: 0.27
|
||||||
|
sense_resistor: 0.075
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2209 extruder1]
|
||||||
|
#uart_pin: PD0
|
||||||
|
#interpolate: False
|
||||||
|
#run_current: 0.27
|
||||||
|
#sense_resistor: 0.075
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
|
||||||
|
#######################################
|
||||||
|
# Heated Bed
|
||||||
|
#######################################
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PB0 #BED
|
||||||
|
sensor_type: Generic 3950
|
||||||
|
sensor_pin: PB1 #B-TEMP
|
||||||
|
max_power: 1.0
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 120
|
||||||
|
control: pid
|
||||||
|
pid_kp: 58.437
|
||||||
|
pid_ki: 2.347
|
||||||
|
pid_kd: 363.769
|
||||||
|
|
||||||
|
#######################################
|
||||||
|
# LIGHTING
|
||||||
|
#######################################
|
||||||
|
|
||||||
|
#[led Toolhead]
|
||||||
|
#white_pin: PA2 #FAN2
|
||||||
|
#cycle_time: 0.010
|
||||||
|
#initial_white: 0
|
||||||
|
|
||||||
|
#######################################
|
||||||
|
# COOLING
|
||||||
|
#######################################
|
||||||
|
|
||||||
|
[heater_fan hotend_fan]
|
||||||
|
pin: PA1 #FAN1
|
||||||
|
max_power: 1.0
|
||||||
|
kick_start_time: 0.5
|
||||||
|
heater: extruder
|
||||||
|
heater_temp: 50
|
||||||
|
fan_speed: 1.0
|
||||||
|
|
||||||
|
[controller_fan controller_fan]
|
||||||
|
pin: PA0 #FAN0
|
||||||
|
max_power: 1.0
|
||||||
|
kick_start_time: 0.5
|
||||||
|
heater: extruder
|
||||||
|
stepper: stepper_x, stepper_y, stepper_z
|
||||||
|
fan_speed: 1.0
|
||||||
|
idle_timeout: 60
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA3 #FAN3
|
||||||
|
max_power: 1.0
|
||||||
|
off_below: 0.2
|
||||||
|
|
||||||
|
[temperature_sensor Mellow_Fly_E3_V2]
|
||||||
|
sensor_type: temperature_mcu
|
||||||
|
min_temp: 5
|
||||||
|
max_temp: 80
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 50
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# EXP1 / EXP2 (display) pins
|
||||||
|
########################################
|
||||||
|
[board_pins]
|
||||||
|
aliases:
|
||||||
|
EXP1_1=PD10, EXP1_3=PA8, EXP1_5=PE15, EXP1_7=PA14, EXP1_9=<GND>,
|
||||||
|
EXP1_2=PA9, EXP1_4=PA10, EXP1_6=PE14, EXP1_8=PA13, EXP1_10=<5V>,
|
||||||
|
# EXP2 header
|
||||||
|
EXP2_1=PA6, EXP2_3=PB11, EXP2_5=PB10, EXP2_7=PE13, EXP2_9=<GND>,
|
||||||
|
EXP2_2=PA5, EXP2_4=PA4, EXP2_6=PA7, EXP2_8=<RST>, EXP2_10=<NC>,
|
||||||
|
|
||||||
|
# See the sample-lcd.cfg file for definitions of common LCD displays.
|
||||||
|
|
||||||
|
#######################################
|
||||||
|
# BL-Touch
|
||||||
|
#######################################
|
||||||
|
|
||||||
|
#[bltouch]
|
||||||
|
#sensor_pin: PC2
|
||||||
|
#control_pin: PE6
|
||||||
|
#z_offset: 0
|
||||||
@@ -84,7 +84,7 @@ pwm: True
|
|||||||
scale: 2.0
|
scale: 2.0
|
||||||
cycle_time: .000030
|
cycle_time: .000030
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
static_value: 1.3
|
value: 1.3
|
||||||
|
|
||||||
[output_pin stepper_z_current]
|
[output_pin stepper_z_current]
|
||||||
pin: PL4
|
pin: PL4
|
||||||
@@ -92,7 +92,7 @@ pwm: True
|
|||||||
scale: 2.0
|
scale: 2.0
|
||||||
cycle_time: .000030
|
cycle_time: .000030
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
static_value: 1.3
|
value: 1.3
|
||||||
|
|
||||||
[output_pin stepper_e_current]
|
[output_pin stepper_e_current]
|
||||||
pin: PL5
|
pin: PL5
|
||||||
@@ -100,7 +100,7 @@ pwm: True
|
|||||||
scale: 2.0
|
scale: 2.0
|
||||||
cycle_time: .000030
|
cycle_time: .000030
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
static_value: 1.25
|
value: 1.25
|
||||||
|
|
||||||
[static_digital_output stepper_config]
|
[static_digital_output stepper_config]
|
||||||
pins:
|
pins:
|
||||||
|
|||||||
268
config/generic-mks-monster8.cfg
Normal file
268
config/generic-mks-monster8.cfg
Normal file
@@ -0,0 +1,268 @@
|
|||||||
|
# This file contains common pin mappings for MKS Monster8
|
||||||
|
# boards. To use this config, the firmware should be compiled for the
|
||||||
|
# stm32f407. When running "make menuconfig", select the 48KiB
|
||||||
|
# bootloader, and enable "USB for communication".
|
||||||
|
|
||||||
|
# The "make flash" command does not work on the MKS Monster8. Instead,
|
||||||
|
# after running "make", copy the generated "out/klipper.bin" file to a
|
||||||
|
# file named "mks_monster8.bin" on an SD card or Udisk and then restart the
|
||||||
|
# MKS Monster8 with that SD card or Udisk.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PC14
|
||||||
|
dir_pin: PC13
|
||||||
|
enable_pin: !PC15
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: !PA14 # PA13 for X-max; endstop have'!' is NO
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PE5
|
||||||
|
dir_pin: !PE4
|
||||||
|
enable_pin: !PC15
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: !PA15 # PC5 for Y-max; endstop have'!' is NO
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PE1
|
||||||
|
dir_pin: PE0
|
||||||
|
enable_pin: !PE2
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: !PB13 # PB12 for Z-max; endstop have'!' is NO
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 220
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PB5
|
||||||
|
dir_pin: !PB4
|
||||||
|
enable_pin: !PB6
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 33.500
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PB1
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC1
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 22
|
||||||
|
pid_Ki: 1.08
|
||||||
|
pid_Kd: 114
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 260
|
||||||
|
|
||||||
|
#[extruder1]
|
||||||
|
#step_pin: PD6
|
||||||
|
#dir_pin: !PD5
|
||||||
|
#enable_pin: !PD7
|
||||||
|
#heater_pin: PB0
|
||||||
|
#sensor_pin: PC2
|
||||||
|
|
||||||
|
#[extruder2]
|
||||||
|
#step_pin: PD2
|
||||||
|
#dir_pin: !PD1
|
||||||
|
#enable_pin: !PD3
|
||||||
|
#heater_pin: PA3
|
||||||
|
#sensor_pin: PC3
|
||||||
|
|
||||||
|
#[extruder3]
|
||||||
|
#step_pin: PC7
|
||||||
|
#dir_pin: PC6
|
||||||
|
#enable_pin: !PC8
|
||||||
|
|
||||||
|
#[extruder4]
|
||||||
|
#step_pin: PD13
|
||||||
|
#dir_pin: !PD12
|
||||||
|
#enable_pin: !PD14
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PB10
|
||||||
|
sensor_type: NTC 100K MGB18-104F39050L32
|
||||||
|
sensor_pin: PC0
|
||||||
|
max_power: 1.0
|
||||||
|
control: pid
|
||||||
|
pid_kp: 71.039
|
||||||
|
pid_ki: 2.223
|
||||||
|
pid_kd: 567.421
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 200
|
||||||
|
|
||||||
|
#fan for printed model FAN0
|
||||||
|
[fan]
|
||||||
|
pin: PA2
|
||||||
|
|
||||||
|
#fan for hotend FAN1
|
||||||
|
#[heater_fan my_nozzle_fan]
|
||||||
|
[heater_fan fan1]
|
||||||
|
pin: PA1
|
||||||
|
shutdown_speed: 1
|
||||||
|
|
||||||
|
#fan for control board FAN2
|
||||||
|
#[heater_fan my_control_fan]
|
||||||
|
[heater_fan fan2]
|
||||||
|
pin: PA0
|
||||||
|
shutdown_speed: 1
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-Klipper_stm32f407xx_4D0045001850314335393520-if00
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 10000
|
||||||
|
max_accel: 20000
|
||||||
|
max_z_velocity: 100
|
||||||
|
max_z_accel: 1000
|
||||||
|
|
||||||
|
#####################################################################
|
||||||
|
# LED Control
|
||||||
|
#####################################################################
|
||||||
|
|
||||||
|
#[output_pin caselight ](Use PA9)
|
||||||
|
## Chamber Lighting - In 5V-RGB Position
|
||||||
|
#pin: PA9
|
||||||
|
#pwm: true
|
||||||
|
#shutdown_value: 0
|
||||||
|
#value:100
|
||||||
|
#cycle_time: 0.01
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC UART configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2208 stepper_x]
|
||||||
|
#uart_pin: PE6
|
||||||
|
#run_current: 0.8
|
||||||
|
#hold_current: 0.5
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2208 stepper_y]
|
||||||
|
#uart_pin: PE3
|
||||||
|
#run_current: 0.8
|
||||||
|
#hold_current: 0.5
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2208 stepper_z]
|
||||||
|
#uart_pin: PB7
|
||||||
|
#run_current: 0.8
|
||||||
|
#hold_current: 0.5
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2208 extruder]
|
||||||
|
#uart_pin: PB3
|
||||||
|
#run_current: 0.8
|
||||||
|
#hold_current: 0.5
|
||||||
|
#sense_resistor: 0.110
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2208 extruder1]
|
||||||
|
#uart_pin: PD4
|
||||||
|
#run_current: 0.8
|
||||||
|
#hold_current: 0.5
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2208 extruder2]
|
||||||
|
#uart_pin: PD0
|
||||||
|
#run_current: 0.8
|
||||||
|
#hold_current: 0.5
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2208 extruder3]
|
||||||
|
#uart_pin: PD15
|
||||||
|
#run_current: 0.8
|
||||||
|
#hold_current: 0.5
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2208 extruder4]
|
||||||
|
#uart_pin: PD11
|
||||||
|
#run_current: 0.8
|
||||||
|
#hold_current: 0.5
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# TMC SPI configuration
|
||||||
|
########################################
|
||||||
|
|
||||||
|
#[tmc2130 stepper_x]
|
||||||
|
#spi_bus: spi4
|
||||||
|
#cs_pin: PE6
|
||||||
|
#diag1_pin: PA14
|
||||||
|
#run_current: 0.800
|
||||||
|
#hold_current: 0.500
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_y]
|
||||||
|
#spi_bus: spi4
|
||||||
|
#cs_pin: PE3
|
||||||
|
#diag1_pin: PA15
|
||||||
|
#run_current: 0.800
|
||||||
|
#hold_current: 0.500
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 stepper_z]
|
||||||
|
#spi_bus: spi4
|
||||||
|
#cs_pin: PB7
|
||||||
|
#diag1_pin: PB13
|
||||||
|
#run_current: 0.800
|
||||||
|
#hold_current: 0.500
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder]
|
||||||
|
#spi_bus: spi4
|
||||||
|
#cs_pin: PB3
|
||||||
|
#diag1_pin: PA13
|
||||||
|
#run_current: 0.800
|
||||||
|
#hold_current: 0.500
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder1]
|
||||||
|
#spi_bus: spi4
|
||||||
|
#cs_pin: PD4
|
||||||
|
#diag1_pin: PC5
|
||||||
|
#run_current: 0.800
|
||||||
|
#hold_current: 0.500
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder2]
|
||||||
|
#spi_bus: spi4
|
||||||
|
#cs_pin: PD0
|
||||||
|
#diag1_pin: PB12
|
||||||
|
#run_current: 0.800
|
||||||
|
#hold_current: 0.500
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder3]
|
||||||
|
#spi_bus: spi4
|
||||||
|
#cs_pin: PD15
|
||||||
|
#run_current: 0.800
|
||||||
|
#hold_current: 0.500
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
#[tmc2130 extruder4]
|
||||||
|
#spi_bus: spi4
|
||||||
|
#cs_pin: PD11
|
||||||
|
#run_current: 0.800
|
||||||
|
#hold_current: 0.500
|
||||||
|
#stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
########################################
|
||||||
|
# EXP1 / EXP2 (display) pins
|
||||||
|
########################################
|
||||||
|
|
||||||
|
[board_pins]
|
||||||
|
aliases:
|
||||||
|
# EXP1 header
|
||||||
|
EXP1_1=PB2, EXP1_3=PE11, EXP1_5=PD9, EXP1_7=PE15, EXP1_9=<GND>,
|
||||||
|
EXP1_2=PE10, EXP1_4=PD10, EXP1_6=PD8, EXP1_8=PE7, EXP1_10=<5V>,
|
||||||
|
# EXP2 header
|
||||||
|
EXP2_1=PA6, EXP2_3=PE9, EXP2_5=PE8, EXP2_7=PB11, EXP2_9=<GND>,
|
||||||
|
EXP2_2=PA5, EXP2_4=PA4, EXP2_6=PA7, EXP2_8=<RST>, EXP2_10=<3.3v>
|
||||||
|
# Pins EXP2_1, EXP2_6, EXP2_2 are also MISO, MOSI, SCK of bus "ssp1"
|
||||||
117
config/generic-remram.cfg
Normal file
117
config/generic-remram.cfg
Normal file
@@ -0,0 +1,117 @@
|
|||||||
|
# This file contains common pin mappings for remram boards. To use this
|
||||||
|
# config, the firmware should be compiled for the ST stm32f765.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/ttyACM0
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PA15
|
||||||
|
dir_pin: PC10
|
||||||
|
enable_pin: !PC12
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^!PB12 # X_MIN
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 10
|
||||||
|
|
||||||
|
[tmc2130 stepper_x]
|
||||||
|
cs_pin: PB1
|
||||||
|
spi_bus: spi1
|
||||||
|
run_current: 0.600
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
diag1_pin: ^!PC11
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PB3
|
||||||
|
dir_pin: !PD6
|
||||||
|
enable_pin: !PD4
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^!PB14 # Y_MIN
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 10
|
||||||
|
|
||||||
|
[tmc2130 stepper_y]
|
||||||
|
cs_pin: PB0
|
||||||
|
spi_bus: spi1
|
||||||
|
run_current: 0.600
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
diag1_pin: ^!PD5
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PB10
|
||||||
|
dir_pin: PE13
|
||||||
|
enable_pin: !PE15
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: ^!PD8 # Z_MIN
|
||||||
|
position_endstop: 0.5
|
||||||
|
position_max: 200
|
||||||
|
homing_speed: 10
|
||||||
|
|
||||||
|
[tmc2130 stepper_z]
|
||||||
|
cs_pin: PC5
|
||||||
|
spi_bus: spi1
|
||||||
|
run_current: 0.600
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
diag1_pin: ^!PE14
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PB11
|
||||||
|
dir_pin: PE10
|
||||||
|
enable_pin: !PE11
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 33.500
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PA3 # HEATER
|
||||||
|
sensor_type: Generic 3950
|
||||||
|
sensor_pin: PC1 # TEMP2
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 22.2
|
||||||
|
pid_Ki: 1.08
|
||||||
|
pid_Kd: 114
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
[tmc2130 extruder]
|
||||||
|
cs_pin: PC4
|
||||||
|
spi_bus: spi1
|
||||||
|
run_current: 0.600
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
diag1_pin: ^!PE12
|
||||||
|
|
||||||
|
[heater_fan hotend_fan]
|
||||||
|
pin: PA2 # FAN2
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA1 # BED OUT
|
||||||
|
sensor_type: Generic 3950
|
||||||
|
sensor_pin: PC0 # TEMP1
|
||||||
|
control: watermark
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[fan] # Print cooling fan.
|
||||||
|
pin: PA0 # FAN1
|
||||||
|
|
||||||
|
# [temperature_sensor temp3]
|
||||||
|
# sensor_type: Generic 3950
|
||||||
|
# sensor_pin: PC2 # TEMP3
|
||||||
|
# min_temp: 0
|
||||||
|
# max_temp: 300
|
||||||
|
# gcode_id: temp3
|
||||||
|
|
||||||
|
[static_digital_output yellow_led]
|
||||||
|
pins: !PD0 # STATUS LED
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
# This file contains common pin mappings for the TH3D EZBoard Lite v2.
|
# This file contains common pin mappings for the TH3D EZBoard v2.
|
||||||
# To use this config, check "Enable extra low-level configuration options"
|
# To use this config, check "Enable extra low-level configuration options"
|
||||||
# and compile the firmware for the STM32F405 with 12mhz Crystal,
|
# and compile the firmware for the STM32F405 with 12mhz Crystal,
|
||||||
# 48KiB Bootloader, and USB communication.
|
# 48KiB Bootloader, and USB communication.
|
||||||
@@ -97,7 +97,7 @@ max_z_accel: 30
|
|||||||
|
|
||||||
[output_pin case_light]
|
[output_pin case_light]
|
||||||
pin: PH5
|
pin: PH5
|
||||||
static_value: 1.0
|
value: 1.0
|
||||||
|
|
||||||
# Motor current settings.
|
# Motor current settings.
|
||||||
[output_pin stepper_xy_current]
|
[output_pin stepper_xy_current]
|
||||||
@@ -107,7 +107,7 @@ scale: 2.000
|
|||||||
# Max power setting.
|
# Max power setting.
|
||||||
cycle_time: .000030
|
cycle_time: .000030
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
static_value: 1.200
|
value: 1.200
|
||||||
# Power adjustment setting.
|
# Power adjustment setting.
|
||||||
|
|
||||||
[output_pin stepper_z_current]
|
[output_pin stepper_z_current]
|
||||||
@@ -116,7 +116,7 @@ pwm: True
|
|||||||
scale: 2.000
|
scale: 2.000
|
||||||
cycle_time: .000030
|
cycle_time: .000030
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
static_value: 1.200
|
value: 1.200
|
||||||
|
|
||||||
[output_pin stepper_e_current]
|
[output_pin stepper_e_current]
|
||||||
pin: PL3
|
pin: PL3
|
||||||
@@ -124,4 +124,4 @@ pwm: True
|
|||||||
scale: 2.000
|
scale: 2.000
|
||||||
cycle_time: .000030
|
cycle_time: .000030
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
static_value: 1.250
|
value: 1.250
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ pwm: True
|
|||||||
scale: 2.0
|
scale: 2.0
|
||||||
cycle_time: .000030
|
cycle_time: .000030
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
static_value: 1.3
|
value: 1.3
|
||||||
|
|
||||||
[output_pin stepper_z_current]
|
[output_pin stepper_z_current]
|
||||||
pin: PL4
|
pin: PL4
|
||||||
@@ -97,7 +97,7 @@ pwm: True
|
|||||||
scale: 2.0
|
scale: 2.0
|
||||||
cycle_time: .000030
|
cycle_time: .000030
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
static_value: 1.3
|
value: 1.3
|
||||||
|
|
||||||
[output_pin stepper_e_current]
|
[output_pin stepper_e_current]
|
||||||
pin: PL3
|
pin: PL3
|
||||||
@@ -105,7 +105,7 @@ pwm: True
|
|||||||
scale: 2.0
|
scale: 2.0
|
||||||
cycle_time: .000030
|
cycle_time: .000030
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
static_value: 1.25
|
value: 1.25
|
||||||
|
|
||||||
[display]
|
[display]
|
||||||
lcd_type: st7920
|
lcd_type: st7920
|
||||||
|
|||||||
@@ -126,7 +126,6 @@ restart_method: arduino
|
|||||||
kinematics: cartesian
|
kinematics: cartesian
|
||||||
max_velocity: 150
|
max_velocity: 150
|
||||||
max_accel: 3000
|
max_accel: 3000
|
||||||
max_accel_to_decel: 1500
|
|
||||||
max_z_velocity: 7
|
max_z_velocity: 7
|
||||||
max_z_accel: 50
|
max_z_accel: 50
|
||||||
square_corner_velocity: 5
|
square_corner_velocity: 5
|
||||||
|
|||||||
133
config/printer-anycubic-kobra-go-2022.cfg
Normal file
133
config/printer-anycubic-kobra-go-2022.cfg
Normal file
@@ -0,0 +1,133 @@
|
|||||||
|
# This file contains a configuration for the Anycubic Kobra Go printer.
|
||||||
|
#
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
#
|
||||||
|
# To build the firmware, use the following configuration:
|
||||||
|
# - Micro-controller: Huada Semiconductor HC32F460
|
||||||
|
# - Communication interface: Serial (PA3 & PA2) - Anycubic
|
||||||
|
#
|
||||||
|
# Installation:
|
||||||
|
# 1. Rename the klipper bin to `firmware.bin` and copy it to an SD Card.
|
||||||
|
# 2. Power off the Printer, insert the SD Card and power it on.
|
||||||
|
# 3. The the LCD will be stuck on the Firmware-update screen.
|
||||||
|
# Just Wait for 3-5 minutes to ensure the firmware is flashed.
|
||||||
|
# 4. After waiting, shutdown the printer and remove the SD Card.
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PA12
|
||||||
|
dir_pin: PA11
|
||||||
|
enable_pin: !PA15
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: !PH2
|
||||||
|
position_endstop: -13
|
||||||
|
position_min:-13
|
||||||
|
position_max: 236
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PA9
|
||||||
|
dir_pin: PA8
|
||||||
|
enable_pin: !PA15
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^!PC13
|
||||||
|
position_endstop: -9
|
||||||
|
position_min:-9
|
||||||
|
position_max: 230
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PC7
|
||||||
|
dir_pin: !PC6
|
||||||
|
enable_pin: !PA15
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: ^PC14
|
||||||
|
position_endstop: 0
|
||||||
|
position_min: -10
|
||||||
|
position_max: 255
|
||||||
|
homing_speed: 5
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PB15
|
||||||
|
dir_pin: PB14
|
||||||
|
enable_pin: !PA15
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 31.07
|
||||||
|
max_extrude_only_velocity: 25
|
||||||
|
max_extrude_only_accel: 1000
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PB8
|
||||||
|
sensor_type: ATC Semitec 104GT-2
|
||||||
|
sensor_pin: PC3
|
||||||
|
min_extrude_temp: 170
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
control: pid
|
||||||
|
pid_kp: 19.56
|
||||||
|
pid_ki: 1.62
|
||||||
|
pid_kd: 200.00
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PB9
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC1
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 120
|
||||||
|
control: pid
|
||||||
|
pid_kp: 97.1
|
||||||
|
pid_ki: 1.41
|
||||||
|
pid_kd: 1675.16
|
||||||
|
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 200
|
||||||
|
horizontal_move_z: 2.5
|
||||||
|
mesh_min: 5, 5
|
||||||
|
mesh_max: 215, 215
|
||||||
|
probe_count: 5, 5
|
||||||
|
|
||||||
|
[probe]
|
||||||
|
pin: PA1
|
||||||
|
x_offset: -20.8
|
||||||
|
y_offset: 0
|
||||||
|
z_offset: 0
|
||||||
|
samples: 3
|
||||||
|
samples_result: average
|
||||||
|
samples_tolerance_retries: 3
|
||||||
|
sample_retract_dist: 0.5
|
||||||
|
speed: 2
|
||||||
|
lift_speed: 4
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 0, 0
|
||||||
|
speed: 5
|
||||||
|
z_hop: 10
|
||||||
|
z_hop_speed: 15
|
||||||
|
|
||||||
|
[controller_fan controller_fan]
|
||||||
|
pin: PB12
|
||||||
|
|
||||||
|
[heater_fan extruder_fan]
|
||||||
|
pin: PB13
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PB5
|
||||||
|
cycle_time: 0.00005 #20kHz
|
||||||
|
|
||||||
|
[output_pin enable_pin]
|
||||||
|
pin: PB6
|
||||||
|
value: 1
|
||||||
|
#This pin enables the bed, hotend, extruder fan, part fan.
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
|
||||||
|
restart_method: command
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 500
|
||||||
|
max_z_velocity: 4
|
||||||
|
max_z_accel: 100
|
||||||
197
config/printer-anycubic-kobra-plus-2022.cfg
Normal file
197
config/printer-anycubic-kobra-plus-2022.cfg
Normal file
@@ -0,0 +1,197 @@
|
|||||||
|
# This file contains a configuration for the Anycubic Kobra Plus printer.
|
||||||
|
#
|
||||||
|
# The Kobra Plus mainboard must be modified to correct conflicting UART
|
||||||
|
# addresses. As delivered, the X stepper and E0 stepper use UART address 0.
|
||||||
|
# To correct, move resistor R65 to R66. This moves the X stepper to address 3.
|
||||||
|
#
|
||||||
|
# After making this modification, any future firmwares will need to use the new
|
||||||
|
# address for the X stepper. To revert to the stock firmware, either undo the
|
||||||
|
# modification, or recompile the stock firmware using the correct addresses for
|
||||||
|
# X_SLAVE_ADDRESS and E0_SLAVE_ADDRESS.
|
||||||
|
#
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
#
|
||||||
|
# To build the firmware, use the following configuration:
|
||||||
|
# - Micro-controller: Huada Semiconductor HC32F460
|
||||||
|
# - Communication interface: Serial (PA3 & PA2) - Anycube
|
||||||
|
# - Clock Speed: 200 MHz
|
||||||
|
#
|
||||||
|
# Installation:
|
||||||
|
# 1. Rename the klipper bin to `firmware.bin` and copy it to an SD Card.
|
||||||
|
# 2. Power off the Printer, insert the SD Card and power it on.
|
||||||
|
# 3. The printer should beep several times and the LCD will be stuck on the
|
||||||
|
# Splash screen.
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
|
||||||
|
restart_method: command
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 1800
|
||||||
|
max_z_velocity: 40
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PA5
|
||||||
|
dir_pin: PA4
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: !PA6
|
||||||
|
position_min: -4
|
||||||
|
position_endstop: -4
|
||||||
|
position_max: 304
|
||||||
|
homing_speed: 100
|
||||||
|
|
||||||
|
[tmc2209 stepper_x]
|
||||||
|
uart_pin: PA15
|
||||||
|
tx_pin: PA9
|
||||||
|
sense_resistor: 0.100
|
||||||
|
run_current: 0.9
|
||||||
|
uart_address: 3
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PC4
|
||||||
|
dir_pin: PA7
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 32
|
||||||
|
endstop_pin: !PC5
|
||||||
|
position_min: -6
|
||||||
|
position_endstop: -6
|
||||||
|
position_max: 300
|
||||||
|
homing_speed: 100
|
||||||
|
|
||||||
|
[tmc2209 stepper_y]
|
||||||
|
uart_pin: PA15
|
||||||
|
tx_pin: PA9
|
||||||
|
sense_resistor: 0.100
|
||||||
|
run_current: 0.9
|
||||||
|
uart_address: 1
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PC7
|
||||||
|
dir_pin: !PC6
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: PA8
|
||||||
|
position_endstop: 0
|
||||||
|
position_min: -15
|
||||||
|
position_max: 350
|
||||||
|
homing_speed: 10
|
||||||
|
|
||||||
|
[tmc2209 stepper_z]
|
||||||
|
uart_pin: PA15
|
||||||
|
tx_pin: PA9
|
||||||
|
sense_resistor: 0.100
|
||||||
|
run_current: 0.9
|
||||||
|
uart_address: 2
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
[stepper_z1]
|
||||||
|
step_pin: PB1
|
||||||
|
dir_pin: !PB0
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
max_extrude_only_distance: 200
|
||||||
|
max_extrude_only_velocity: 60
|
||||||
|
max_extrude_only_accel: 3000
|
||||||
|
step_pin: PC14
|
||||||
|
dir_pin: !PC15
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 7.71
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PA1
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC1
|
||||||
|
min_extrude_temp: 170
|
||||||
|
control: pid
|
||||||
|
pid_kp: 22.20
|
||||||
|
pid_ki: 1.08
|
||||||
|
pid_kd: 119.0
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 275
|
||||||
|
|
||||||
|
[tmc2208 extruder]
|
||||||
|
uart_pin: PA15
|
||||||
|
tx_pin: PA9
|
||||||
|
sense_resistor: 0.100
|
||||||
|
run_current: 0.8
|
||||||
|
uart_address: 0
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA0
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC0
|
||||||
|
control: pid
|
||||||
|
pid_kp: 97.1
|
||||||
|
pid_ki: 1.41
|
||||||
|
pid_kd: 1675.16
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 120
|
||||||
|
|
||||||
|
[filament_switch_sensor runout]
|
||||||
|
pause_on_runout: True
|
||||||
|
switch_pin: !PC13
|
||||||
|
|
||||||
|
[controller_fan controller_fan]
|
||||||
|
pin: PA14
|
||||||
|
heater: heater_bed
|
||||||
|
|
||||||
|
[heater_fan hotend_fan]
|
||||||
|
pin: PA13
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PB9
|
||||||
|
|
||||||
|
[probe]
|
||||||
|
pin: !PB6
|
||||||
|
speed: 2.0
|
||||||
|
lift_speed: 4.0
|
||||||
|
samples: 2
|
||||||
|
sample_retract_dist: 5
|
||||||
|
samples_tolerance_retries: 3
|
||||||
|
z_offset: 0.2
|
||||||
|
activate_gcode: probe_reset
|
||||||
|
|
||||||
|
[output_pin probe_reset_pin]
|
||||||
|
pin: PB7
|
||||||
|
value: 1
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 0, 0
|
||||||
|
speed: 100
|
||||||
|
z_hop: 10
|
||||||
|
z_hop_speed: 15
|
||||||
|
move_to_previous: False
|
||||||
|
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 100
|
||||||
|
mesh_min: 10, 10
|
||||||
|
mesh_max: 290, 290
|
||||||
|
algorithm: bicubic
|
||||||
|
probe_count: 5, 5
|
||||||
|
|
||||||
|
[gcode_macro probe_reset]
|
||||||
|
gcode:
|
||||||
|
SET_PIN PIN=probe_reset_pin VALUE=0
|
||||||
|
G4 P300
|
||||||
|
SET_PIN PIN=probe_reset_pin VALUE=1
|
||||||
|
G4 P100
|
||||||
|
|
||||||
|
[output_pin LED]
|
||||||
|
pin: PB8
|
||||||
|
|
||||||
|
[output_pin beeper]
|
||||||
|
pin: PB5
|
||||||
@@ -102,6 +102,10 @@ max_temp: 110
|
|||||||
[fan]
|
[fan]
|
||||||
pin: PA0
|
pin: PA0
|
||||||
|
|
||||||
|
[controller_fan controller_fan]
|
||||||
|
pin: PA14
|
||||||
|
stepper: stepper_x,stepper_y,stepper_z,stepper_z1
|
||||||
|
|
||||||
[probe]
|
[probe]
|
||||||
pin: !PB12
|
pin: !PB12
|
||||||
z_offset: 0
|
z_offset: 0
|
||||||
|
|||||||
126
config/printer-artillery-genius-pro-2022.cfg
Normal file
126
config/printer-artillery-genius-pro-2022.cfg
Normal file
@@ -0,0 +1,126 @@
|
|||||||
|
# This file contains pin mappings for the Artillery Genius Pro (2022)
|
||||||
|
# with a Artillery_Ruby-v1.2 board. To use this config, during "make menuconfig"
|
||||||
|
# select the STM32F401 with "No bootloader" and USB (on PA11/PA12)
|
||||||
|
# communication.
|
||||||
|
|
||||||
|
# To flash this firmware, set the physical bridge between +3.3V and Boot0 PIN
|
||||||
|
# on Artillery_Ruby mainboard. Then run the command:
|
||||||
|
# make flash FLASH_DEVICE=/dev/serial/by-id/usb-Klipper_stm32f401xc_*-if00
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
max_extrude_only_distance: 700.0
|
||||||
|
step_pin: PA7
|
||||||
|
dir_pin: PA6
|
||||||
|
enable_pin: !PC4
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 7.1910
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PC9
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC0
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 23.223
|
||||||
|
pid_Ki: 1.518
|
||||||
|
pid_Kd: 88.826
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: !PB14
|
||||||
|
dir_pin: PB13
|
||||||
|
enable_pin: !PB15
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: !PA2
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 220
|
||||||
|
homing_speed: 60
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PB10
|
||||||
|
dir_pin: PB2
|
||||||
|
enable_pin: !PB12
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: !PA1
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 220
|
||||||
|
homing_speed: 60
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PB0
|
||||||
|
dir_pin: !PC5
|
||||||
|
enable_pin: !PB1
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: probe:z_virtual_endstop
|
||||||
|
position_max: 250
|
||||||
|
position_min: -5
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA8
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC1
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 23.223
|
||||||
|
pid_Ki: 1.518
|
||||||
|
pid_Kd: 88.826
|
||||||
|
|
||||||
|
[bed_screws]
|
||||||
|
screw1: 38,45
|
||||||
|
screw2: 180,45
|
||||||
|
screw3: 180,180
|
||||||
|
screw4: 38,180
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PC8
|
||||||
|
off_below: 0.1
|
||||||
|
|
||||||
|
[heater_fan hotend_fan]
|
||||||
|
pin: PC7
|
||||||
|
heater: extruder
|
||||||
|
heater_temp: 50.0
|
||||||
|
|
||||||
|
[controller_fan stepper_fan]
|
||||||
|
pin: PC6
|
||||||
|
idle_timeout: 300
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-Klipper_stm32f401xc_
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 500
|
||||||
|
max_accel: 4000
|
||||||
|
max_z_velocity: 50
|
||||||
|
square_corner_velocity: 5.0
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
[bltouch]
|
||||||
|
sensor_pin: PC2
|
||||||
|
control_pin: PC3
|
||||||
|
x_offset:27.25
|
||||||
|
y_offset:-12.8
|
||||||
|
z_offset: 0.25
|
||||||
|
speed:10
|
||||||
|
samples:1
|
||||||
|
samples_result:average
|
||||||
|
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 800
|
||||||
|
mesh_min: 30, 20
|
||||||
|
mesh_max: 210, 200
|
||||||
|
probe_count: 5,5
|
||||||
|
algorithm: bicubic
|
||||||
|
move_check_distance: 3.0
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 110,110
|
||||||
|
speed: 100
|
||||||
|
z_hop: 10
|
||||||
|
z_hop_speed: 5
|
||||||
@@ -132,9 +132,9 @@ screw1_name: front left
|
|||||||
screw2: 223,63
|
screw2: 223,63
|
||||||
screw2_name: front right
|
screw2_name: front right
|
||||||
screw3: 223,263
|
screw3: 223,263
|
||||||
screw3_name: back left
|
screw3_name: back right
|
||||||
screw4: 23,263
|
screw4: 23,263
|
||||||
screw4_name: back right
|
screw4_name: back left
|
||||||
speed: 100.0
|
speed: 100.0
|
||||||
screw_thread: CW-M5
|
screw_thread: CW-M5
|
||||||
|
|
||||||
|
|||||||
188
config/printer-artillery-sidewinder-x3-plus-2024.cfg
Normal file
188
config/printer-artillery-sidewinder-x3-plus-2024.cfg
Normal file
@@ -0,0 +1,188 @@
|
|||||||
|
# For the Artillery Sidewinder X3 Pro/Plus that came factory installed with V1.29 firmware, follow these steps.
|
||||||
|
# - Compile with the processor model STM32F401.
|
||||||
|
# - Select the 48KiB bootloader,
|
||||||
|
# - Select USB PA11/PA12 for USB communication interface.
|
||||||
|
# - Select USART2 PA3/PA2 for UART communication via the Wi-Fi Tx/Rx pins
|
||||||
|
# To set 48KiB bootloader, you need to make a change to make menuconfig Kconfig file
|
||||||
|
# Here is a link to a how-to video: https://youtu.be/dpc76zN7Dh0
|
||||||
|
# Rename klipper.bin to yuntu.bin
|
||||||
|
# Copy the file out/yuntu.bin to an SD card and then restart the printer with that SD card
|
||||||
|
#
|
||||||
|
# For models that did not come with V1.29 installed
|
||||||
|
# - Compile with the processor model STM32F401.
|
||||||
|
# - Select the NO BOOTLOADER
|
||||||
|
# - Select USB PA11/PA12 for USB communication interface.
|
||||||
|
# - Select USART2 PA3/PA2 for UART communication via the Wi-Fi Tx/Rx pins
|
||||||
|
# - quit, save, make
|
||||||
|
# - Connect your printer to a computer running Pronterface, Octoprint, Repetier, BedLeveler5000 (anything with Console capability)
|
||||||
|
# - Power on the machine and send M997 through console into Marlin, this will put the board into "DFU" mode
|
||||||
|
# - DO NOT TURN OFF THE PRINTER
|
||||||
|
# - Connect your Linux/Klipper device to the USB port
|
||||||
|
# - Run lsusb and verify that the STM32 DFU device is visible (Bus 001 Device 006: ID 0483:df11 STMicroelectronics STM Device in DFU Mode)
|
||||||
|
# - Run sudo make flash 0483:df11
|
||||||
|
# - Run lsusb again and there should be two devices:
|
||||||
|
# Bus 001 Device 007: ID 1d50:614e OpenMoko, Inc. stm32f401xc
|
||||||
|
# Bus 001 Device 003: ID 0cf3:e010 Qualcomm Atheros Communications stm32f401xc
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/ttyACM0
|
||||||
|
restart_method: command
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 15
|
||||||
|
max_z_accel: 100
|
||||||
|
square_corner_velocity: 5
|
||||||
|
|
||||||
|
[led LED_Light]
|
||||||
|
white_pin: PC2
|
||||||
|
initial_white: 1.0
|
||||||
|
|
||||||
|
[neopixel hotend_neopixel]
|
||||||
|
pin: PD2
|
||||||
|
color_order: GRB
|
||||||
|
initial_RED: 1.0
|
||||||
|
initial_GREEN: 1.0
|
||||||
|
initial_BLUE: 1.0
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PA8
|
||||||
|
dir_pin: PC9
|
||||||
|
enable_pin: !PA15
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: !PB9
|
||||||
|
position_min: 0
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 315
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PC7
|
||||||
|
dir_pin: !PC6
|
||||||
|
enable_pin: !PC8
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: !PB8
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 315
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PB10
|
||||||
|
dir_pin: !PA4
|
||||||
|
enable_pin: !PC4
|
||||||
|
rotation_distance: 8
|
||||||
|
microsteps: 16
|
||||||
|
position_min: -1
|
||||||
|
position_max: 400
|
||||||
|
endstop_pin: probe:z_virtual_endstop # Use Z- as endstop
|
||||||
|
#homing_speed: 10.0
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
max_extrude_only_distance: 100.0
|
||||||
|
step_pin: PC11
|
||||||
|
dir_pin: !PC10
|
||||||
|
enable_pin: !PC12
|
||||||
|
microsteps: 64
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PA6
|
||||||
|
sensor_type: EPCOS 100K B57560G104F #Generic 3950
|
||||||
|
sensor_pin: PC5
|
||||||
|
min_extrude_temp: 170
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 300
|
||||||
|
# Calibrate E-Steps https://www.klipper3d.org/Rotation_Distance.html#calibrating-rotation_distance-on-extruders
|
||||||
|
rotation_distance: 17.75
|
||||||
|
# Calibrate PID: https://www.klipper3d.org/Config_checks.html#calibrate-pid-settings
|
||||||
|
# - Example: PID_CALIBRATE HEATER=extruder TARGET=200
|
||||||
|
control: pid
|
||||||
|
pid_kp: 30.356
|
||||||
|
pid_ki: 1.857
|
||||||
|
pid_kd: 124.081
|
||||||
|
# Calibrate PA: https://www.klipper3d.org/Pressure_Advance.html
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA7
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC0
|
||||||
|
max_temp: 100
|
||||||
|
min_temp: 0
|
||||||
|
# Calibrate PID: https://www.klipper3d.org/Config_checks.html#calibrate-pid-settings
|
||||||
|
# - Example: PID_CALIBRATE HEATER=heater_bed TARGET=60
|
||||||
|
control: pid
|
||||||
|
pid_kp: 64.230
|
||||||
|
pid_ki: 0.723
|
||||||
|
pid_kd: 1425.905
|
||||||
|
|
||||||
|
[heater_fan hotend_fan]
|
||||||
|
pin: PB1
|
||||||
|
heater: extruder
|
||||||
|
heater_temp: 50.0
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PB0
|
||||||
|
|
||||||
|
[temperature_fan Artillery_MCU]
|
||||||
|
sensor_type: temperature_mcu
|
||||||
|
pin: PA5
|
||||||
|
max_temp: 60.0
|
||||||
|
target_temp: 40.0
|
||||||
|
min_temp: 0
|
||||||
|
shutdown_speed: 0.0
|
||||||
|
kick_start_time: 0.5
|
||||||
|
off_below: 0.19
|
||||||
|
max_speed: 1.0
|
||||||
|
min_speed: 0.0
|
||||||
|
control: watermark
|
||||||
|
|
||||||
|
[filament_switch_sensor filament_sensor]
|
||||||
|
pause_on_runout: true
|
||||||
|
switch_pin: PC1
|
||||||
|
|
||||||
|
[probe]
|
||||||
|
pin: PC14
|
||||||
|
x_offset:45.2
|
||||||
|
y_offset:11.6
|
||||||
|
speed:5
|
||||||
|
lift_speed:15
|
||||||
|
z_offset: 2.350
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 110, 145 # X, Y coordinate (e.g. 100, 100) where the Z homing should be
|
||||||
|
speed: 300.0
|
||||||
|
z_hop: 10
|
||||||
|
z_hop_speed: 15.0
|
||||||
|
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 300
|
||||||
|
horizontal_move_z: 6
|
||||||
|
mesh_min: 46,15
|
||||||
|
mesh_max: 300,300
|
||||||
|
probe_count: 10, 10
|
||||||
|
fade_start: 1.0
|
||||||
|
fade_end: 0.0
|
||||||
|
algorithm: bicubic
|
||||||
|
|
||||||
|
[screws_tilt_adjust]
|
||||||
|
screw1: 120, 153
|
||||||
|
screw1_name: center reference
|
||||||
|
screw2: 7, 45
|
||||||
|
screw2_name: front left
|
||||||
|
screw3: 210, 45
|
||||||
|
screw3_name: front right
|
||||||
|
screw4: 227, 145
|
||||||
|
screw4_name: right center
|
||||||
|
screw5: 210, 245
|
||||||
|
screw5_name: rear right
|
||||||
|
screw6: 7, 245
|
||||||
|
screw6_name: rear left
|
||||||
|
screw7: 7, 145
|
||||||
|
screw7_name: left center
|
||||||
|
horizontal_move_z: 8
|
||||||
|
speed: 300
|
||||||
|
screw_thread: CW-M4
|
||||||
@@ -6,7 +6,8 @@
|
|||||||
# communication. Enable PA0 GPIO pin on startup.
|
# communication. Enable PA0 GPIO pin on startup.
|
||||||
#
|
#
|
||||||
# Flash this firmware on the MCU by copying "out/klipper.bin" to an SD
|
# Flash this firmware on the MCU by copying "out/klipper.bin" to an SD
|
||||||
# card and turning the printer on with the card inserted. The firmware
|
# card and turning the printer on by pressing and holding the power
|
||||||
|
# button with the card inserted for 10-20 seconds. The firmware
|
||||||
# filename must end in ".bin" and must not match the last filename
|
# filename must end in ".bin" and must not match the last filename
|
||||||
# that was flashed.
|
# that was flashed.
|
||||||
#
|
#
|
||||||
|
|||||||
154
config/printer-creality-cr10s-pro-v2-2020.cfg
Normal file
154
config/printer-creality-cr10s-pro-v2-2020.cfg
Normal file
@@ -0,0 +1,154 @@
|
|||||||
|
# This file contains pin mappings for the Creality CR-10S Pro V2. To use
|
||||||
|
# this config, the firmware should be compiled for the AVR atmega2560.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
## General Config
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/<YOUR_USB_ID>
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 200
|
||||||
|
max_accel: 1500
|
||||||
|
max_z_velocity: 10
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
## Stepper Motors and Extruder
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PF0 #ar54
|
||||||
|
dir_pin: PF1 #ar55
|
||||||
|
enable_pin: !PD7 #!ar38
|
||||||
|
rotation_distance: 40
|
||||||
|
microsteps: 16
|
||||||
|
full_steps_per_rotation: 200
|
||||||
|
endstop_pin: ^PE5 #^ar3
|
||||||
|
position_endstop: 0
|
||||||
|
position_min: 0
|
||||||
|
position_max: 300
|
||||||
|
homing_speed: 50
|
||||||
|
homing_retract_dist: 5
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PF6 #ar60
|
||||||
|
dir_pin: !PF7 #ar61
|
||||||
|
enable_pin: !PF2 #!ar56
|
||||||
|
rotation_distance: 40
|
||||||
|
microsteps: 16
|
||||||
|
full_steps_per_rotation: 200
|
||||||
|
endstop_pin: ^PJ1 #^ar14
|
||||||
|
position_endstop: 0
|
||||||
|
position_min: 0
|
||||||
|
position_max: 310
|
||||||
|
homing_speed: 50
|
||||||
|
homing_retract_dist: 5
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PL3 #ar46
|
||||||
|
dir_pin: !PL1 #!ar48
|
||||||
|
enable_pin: !PK0 #!ar62
|
||||||
|
rotation_distance: 8
|
||||||
|
microsteps: 16
|
||||||
|
full_steps_per_rotation: 200
|
||||||
|
endstop_pin: probe:z_virtual_endstop
|
||||||
|
position_min: -3
|
||||||
|
position_max: 363 # you can go higher but then the cables crimp
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PA4 # ar26
|
||||||
|
dir_pin: PA6 # !ar28
|
||||||
|
enable_pin: !PA2 # !ar24
|
||||||
|
rotation_distance: 22.900
|
||||||
|
microsteps: 16
|
||||||
|
full_steps_per_rotation: 200
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
max_extrude_only_distance: 500.0
|
||||||
|
max_extrude_only_velocity: 70.0
|
||||||
|
max_extrude_only_accel: 1000.0
|
||||||
|
heater_pin: PB4 #ar10
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PK5 #analog13
|
||||||
|
control: pid #calibrated in Klipper, you will need to run this for your machine
|
||||||
|
pid_kp: 28.359
|
||||||
|
pid_ki: 1.616
|
||||||
|
pid_kd: 124.426
|
||||||
|
min_extrude_temp: 170
|
||||||
|
min_temp: 5
|
||||||
|
max_temp: 275
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PH6 #ar9
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PH5 #ar8
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PK6 #analog14
|
||||||
|
control: pid #calibrated in Klipper, you will need to run this for your machine
|
||||||
|
pid_kp: 70.936
|
||||||
|
pid_ki: 1.151
|
||||||
|
pid_kd: 1093.298
|
||||||
|
min_temp: 5
|
||||||
|
max_temp: 140
|
||||||
|
|
||||||
|
## BLTouch and Safe Z Settings
|
||||||
|
[bltouch]
|
||||||
|
sensor_pin: ^PD2
|
||||||
|
control_pin: PB5
|
||||||
|
stow_on_each_sample: False # Be careful
|
||||||
|
probe_with_touch_mode: True
|
||||||
|
x_offset: -27
|
||||||
|
y_offset: -2
|
||||||
|
z_offset: 2 # you will need to calibrate this in Klipper
|
||||||
|
speed: 4.0
|
||||||
|
samples: 2
|
||||||
|
sample_retract_dist: 3.0
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 177,155
|
||||||
|
speed: 80.0
|
||||||
|
z_hop: 10.0
|
||||||
|
z_hop_speed: 5.0
|
||||||
|
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 120
|
||||||
|
horizontal_move_z: 5
|
||||||
|
mesh_min: 5, 5
|
||||||
|
mesh_max: 268, 305
|
||||||
|
probe_count: 5,5
|
||||||
|
fade_start: 1
|
||||||
|
fade_end: 10
|
||||||
|
|
||||||
|
[filament_switch_sensor e0_sensor]
|
||||||
|
switch_pin: PE4 #ar2
|
||||||
|
pause_on_runout: False
|
||||||
|
runout_gcode:
|
||||||
|
PAUSE_PARK
|
||||||
|
|
||||||
|
## Calibrating the Bed
|
||||||
|
# this is for the bltouch to calibrate the bed
|
||||||
|
[screws_tilt_adjust]
|
||||||
|
screw1: 40,40
|
||||||
|
screw1_name: front left screw
|
||||||
|
screw2: 295,40
|
||||||
|
screw2_name: front right screw
|
||||||
|
screw3: 295,280
|
||||||
|
screw3_name: rear right screw
|
||||||
|
screw4: 40,280
|
||||||
|
screw4_name: rear left screw
|
||||||
|
speed: 50
|
||||||
|
horizontal_move_z: 10
|
||||||
|
screw_thread: CW-M3
|
||||||
|
|
||||||
|
[bed_screws]
|
||||||
|
screw1: 13,38
|
||||||
|
screw1_name: front left screw
|
||||||
|
screw2: 268,38
|
||||||
|
screw2_name: front right screw
|
||||||
|
screw3: 268,278
|
||||||
|
screw3_name: rear right screw
|
||||||
|
screw4: 13,38
|
||||||
|
screw4_name: rear left screw
|
||||||
|
horizontal_move_z: 5
|
||||||
|
|
||||||
|
[pause_resume]
|
||||||
@@ -98,7 +98,6 @@ max_temp: 100
|
|||||||
|
|
||||||
[output_pin led]
|
[output_pin led]
|
||||||
pin: PC14
|
pin: PC14
|
||||||
static_value: 0
|
|
||||||
|
|
||||||
# Neopixel LED support
|
# Neopixel LED support
|
||||||
# [neopixel led_neopixel]
|
# [neopixel led_neopixel]
|
||||||
|
|||||||
152
config/printer-creality-cr5pro-ht-2022.cfg
Normal file
152
config/printer-creality-cr5pro-ht-2022.cfg
Normal file
@@ -0,0 +1,152 @@
|
|||||||
|
# This file contains common pin mappings for the Creality CR5 Pro HT.
|
||||||
|
# The mainboard is a Creality 3D v2.5.1 (8-bit mainboard with
|
||||||
|
# ATMega2560). To use this config, the firmware should be compiled for
|
||||||
|
# the AVR atmega2560.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PF0 #ar54
|
||||||
|
dir_pin: !PF1 #ar55
|
||||||
|
enable_pin: !PD7 #!ar38
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40 # 16 microsteps * 200 steps/rotation / 80 steps/mm
|
||||||
|
endstop_pin: ^!PE5 #^ar3
|
||||||
|
position_min: 0
|
||||||
|
position_max: 300
|
||||||
|
position_endstop: 0
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PF6 #ar60
|
||||||
|
dir_pin: !PF7 #ar61
|
||||||
|
enable_pin: !PF2 #!ar56
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40 # 16 microsteps * 200 steps/rotation / 80 steps/mm
|
||||||
|
endstop_pin: ^!PJ1 #^ar14
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 220
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PL3 #ar46
|
||||||
|
dir_pin: !PL1 #!ar48
|
||||||
|
enable_pin: !PK0 #!ar62
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 4 # 16 microsteps * 200 steps/rotation / 800 steps/mm
|
||||||
|
position_max: 380
|
||||||
|
position_min: -10
|
||||||
|
endstop_pin: probe:z_virtual_endstop
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 140, 110
|
||||||
|
speed: 80
|
||||||
|
z_hop: 10
|
||||||
|
z_hop_speed: 10
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PA4 # ar26
|
||||||
|
dir_pin: !PA6 # !ar28
|
||||||
|
enable_pin: !PA2 # !ar24
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 23.24736 # 16 microsteps * 200 steps/rotation / 137.65 steps/mm
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PB4 #ar10
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PK5 #analog13
|
||||||
|
control: pid
|
||||||
|
pid_kp: 17.647
|
||||||
|
pid_ki: 1.079
|
||||||
|
pid_kd: 72.131
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 300
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PH5 #ar8
|
||||||
|
sensor_type: ATC Semitec 104GT-2
|
||||||
|
sensor_pin: PK6 #analog14
|
||||||
|
control: pid
|
||||||
|
pid_kp: 75.501
|
||||||
|
pid_ki: 2.542
|
||||||
|
pid_kd: 560.598
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PH6 #ar9
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/ttyUSB0
|
||||||
|
restart_method: command
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 2000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
#[display]
|
||||||
|
# DWIN screen currently unsupported
|
||||||
|
|
||||||
|
[bltouch]
|
||||||
|
sensor_pin: ^PD2 #^ar19
|
||||||
|
control_pin: PB5 #ar11
|
||||||
|
set_output_mode: 5V
|
||||||
|
pin_move_time: 0.4
|
||||||
|
x_offset: 37.0
|
||||||
|
y_offset: 0.0
|
||||||
|
z_offset: 2.40
|
||||||
|
samples: 2
|
||||||
|
sample_retract_dist: 2
|
||||||
|
samples_result: average
|
||||||
|
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 50
|
||||||
|
horizontal_move_z: 6
|
||||||
|
mesh_min: 47,10
|
||||||
|
mesh_max: 270,210
|
||||||
|
probe_count: 7,7
|
||||||
|
algorithm: bicubic
|
||||||
|
|
||||||
|
[pause_resume]
|
||||||
|
recover_velocity: 50
|
||||||
|
|
||||||
|
[filament_switch_sensor fil_runout_sensor]
|
||||||
|
pause_on_runout: True
|
||||||
|
switch_pin: !PE4 #ar2
|
||||||
|
|
||||||
|
[bed_screws]
|
||||||
|
screw1: 8,5
|
||||||
|
screw1_name: front left screw
|
||||||
|
screw2: 8,210
|
||||||
|
screw2_name: rear left screw
|
||||||
|
screw3: 218,210
|
||||||
|
screw3_name: rear right screw
|
||||||
|
screw4: 218,5
|
||||||
|
screw4_name: front right screw
|
||||||
|
|
||||||
|
[screws_tilt_adjust]
|
||||||
|
screw1: 8,5
|
||||||
|
screw1_name: front left screw
|
||||||
|
screw2: 8,210
|
||||||
|
screw2_name: rear left screw
|
||||||
|
screw3: 218,210
|
||||||
|
screw3_name: rear right screw
|
||||||
|
screw4: 218,5
|
||||||
|
screw4_name: front right screw
|
||||||
|
speed: 50
|
||||||
|
horizontal_move_z: 10
|
||||||
|
screw_thread: CW-M4
|
||||||
|
|
||||||
|
[output_pin case_light]
|
||||||
|
pin: PH4 #ar7
|
||||||
|
value: 1
|
||||||
|
|
||||||
|
[gcode_macro CASE_LIGHT_ON]
|
||||||
|
gcode:
|
||||||
|
SET_PIN PIN=case_light VALUE=1
|
||||||
|
|
||||||
|
[gcode_macro CASE_LIGHT_OFF]
|
||||||
|
gcode:
|
||||||
|
SET_PIN PIN=case_light VALUE=0
|
||||||
@@ -98,6 +98,10 @@ z_offset: 0.0
|
|||||||
speed: 2.0
|
speed: 2.0
|
||||||
samples: 5
|
samples: 5
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 117, 117
|
||||||
|
z_hop: 10
|
||||||
|
|
||||||
[filament_switch_sensor filament_sensor]
|
[filament_switch_sensor filament_sensor]
|
||||||
pause_on_runout: true
|
pause_on_runout: true
|
||||||
switch_pin: ^!PA7
|
switch_pin: ^!PA7
|
||||||
|
|||||||
@@ -98,6 +98,10 @@ z_offset: 0.0
|
|||||||
speed: 2.0
|
speed: 2.0
|
||||||
samples: 5
|
samples: 5
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 117, 117
|
||||||
|
z_hop: 10
|
||||||
|
|
||||||
[filament_switch_sensor filament_sensor]
|
[filament_switch_sensor filament_sensor]
|
||||||
pause_on_runout: true
|
pause_on_runout: true
|
||||||
switch_pin: ^!PA7
|
switch_pin: ^!PA7
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
# If you prefer a direct serial connection, in "make menuconfig"
|
# If you prefer a direct serial connection, in "make menuconfig"
|
||||||
# select "Enable extra low-level configuration options" and select
|
# select "Enable extra low-level configuration options" and select
|
||||||
# serial (on USART3 PB11/PB10), which is broken out on the 10 pin IDC
|
# serial (on USART2 PA3/PA2), which is broken out on the 10 pin IDC
|
||||||
# cable used for the LCD module as follows:
|
# cable used for the LCD module as follows:
|
||||||
# 3: Tx, 4: Rx, 9: GND, 10: VCC
|
# 3: Tx, 4: Rx, 9: GND, 10: VCC
|
||||||
|
|
||||||
|
|||||||
95
config/printer-creality-ender2pro-hc32-2022.cfg
Normal file
95
config/printer-creality-ender2pro-hc32-2022.cfg
Normal file
@@ -0,0 +1,95 @@
|
|||||||
|
# This file contains pin mappings for the Creality Ender2 Pro
|
||||||
|
# with the HC32F460. The board is CR-FDM-v2.5.S4.170
|
||||||
|
# To use this config, during "make menuconfig" select HC32F460
|
||||||
|
|
||||||
|
# Flash this firmware by copying "out/klipper.bin" to a SD card
|
||||||
|
# as /user/firmware.bin
|
||||||
|
# Turn on the printer with the card inserted.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PC1
|
||||||
|
dir_pin: PC0
|
||||||
|
enable_pin: !PC2
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^PA5
|
||||||
|
position_min: -20
|
||||||
|
position_endstop: -20
|
||||||
|
position_max: 165
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PB9
|
||||||
|
dir_pin: PB8
|
||||||
|
enable_pin: !PH2
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^PA6
|
||||||
|
position_min: -5
|
||||||
|
position_endstop: -5
|
||||||
|
position_max: 165
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PB6
|
||||||
|
dir_pin: !PB5
|
||||||
|
enable_pin: !PB7
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: ^PB0
|
||||||
|
position_endstop: 0.0
|
||||||
|
position_max: 180
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
max_extrude_only_distance: 100.0
|
||||||
|
step_pin: PB3
|
||||||
|
dir_pin: PA15
|
||||||
|
enable_pin: !PB4
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 27.53480577
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PA1
|
||||||
|
sensor_pin: PC5
|
||||||
|
sensor_type: Generic 3950
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 29.634
|
||||||
|
pid_Ki: 2.102
|
||||||
|
pid_Kd: 104.459
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 260
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PB10
|
||||||
|
sensor_type: Generic 3950
|
||||||
|
sensor_pin: PC4
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 72.921
|
||||||
|
pid_Ki: 1.594
|
||||||
|
pid_Kd: 834.031
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 80
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA0
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
|
||||||
|
restart_method: command
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
[display]
|
||||||
|
lcd_type: st7920
|
||||||
|
cs_pin: PB15
|
||||||
|
sclk_pin: PB14
|
||||||
|
sid_pin: PB12
|
||||||
|
encoder_pins: ^PB13,^PA2
|
||||||
|
click_pin: ^!PC7
|
||||||
@@ -110,8 +110,8 @@ stow_on_each_sample: false
|
|||||||
|
|
||||||
[bed_mesh]
|
[bed_mesh]
|
||||||
speed: 120
|
speed: 120
|
||||||
mesh_min: 20, 20
|
mesh_min: 10, 10
|
||||||
mesh_max: 200, 197
|
mesh_max: 200, 194
|
||||||
probe_count: 4,4
|
probe_count: 4,4
|
||||||
algorithm: bicubic
|
algorithm: bicubic
|
||||||
|
|
||||||
@@ -120,7 +120,6 @@ home_xy_position: 147, 154
|
|||||||
speed: 75
|
speed: 75
|
||||||
z_hop: 10
|
z_hop: 10
|
||||||
z_hop_speed: 5
|
z_hop_speed: 5
|
||||||
move_to_previous: true
|
|
||||||
|
|
||||||
[filament_switch_sensor e0_sensor]
|
[filament_switch_sensor e0_sensor]
|
||||||
switch_pin: !PC15
|
switch_pin: !PC15
|
||||||
@@ -129,3 +128,9 @@ runout_gcode: PAUSE
|
|||||||
|
|
||||||
[pause_resume]
|
[pause_resume]
|
||||||
recover_velocity: 25
|
recover_velocity: 25
|
||||||
|
|
||||||
|
[bed_screws]
|
||||||
|
screw1: 20, 29
|
||||||
|
screw2: 195, 29
|
||||||
|
screw3: 195, 198
|
||||||
|
screw4: 20, 198
|
||||||
|
|||||||
@@ -120,7 +120,6 @@ home_xy_position: 187, 192
|
|||||||
speed: 75
|
speed: 75
|
||||||
z_hop: 10
|
z_hop: 10
|
||||||
z_hop_speed: 5
|
z_hop_speed: 5
|
||||||
move_to_previous: true
|
|
||||||
|
|
||||||
[filament_switch_sensor e0_sensor]
|
[filament_switch_sensor e0_sensor]
|
||||||
switch_pin: !PC15
|
switch_pin: !PC15
|
||||||
|
|||||||
155
config/printer-creality-ender3-v2-neo-2022.cfg
Normal file
155
config/printer-creality-ender3-v2-neo-2022.cfg
Normal file
@@ -0,0 +1,155 @@
|
|||||||
|
# This file contains pin mappings for the stock 2022 Creality Ender 3
|
||||||
|
# V2 Neo. To use this config, during "make menuconfig" select the
|
||||||
|
# STM32F103 with a "28KiB bootloader" and serial (on USART1 PA10/PA9)
|
||||||
|
# communication.
|
||||||
|
|
||||||
|
# If you prefer a direct serial connection, in "make menuconfig"
|
||||||
|
# select "Enable extra low-level configuration options" and select
|
||||||
|
# serial (on USART3 PB11/PB10), which is broken out on the 10 pin IDC
|
||||||
|
# cable used for the LCD module as follows:
|
||||||
|
# 3: Tx, 4: Rx, 9: GND, 10: VCC
|
||||||
|
|
||||||
|
# Flash this firmware by copying "out/klipper.bin" to a SD card and
|
||||||
|
# turning on the printer with the card inserted. The firmware
|
||||||
|
# filename must end in ".bin" and must not match the last filename
|
||||||
|
# that was flashed.
|
||||||
|
|
||||||
|
# This also works for the GD32F303 based Creality 4.2.2 board.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PC2
|
||||||
|
dir_pin: PB9
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^PA5
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 235
|
||||||
|
homing_speed: 80
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PB8
|
||||||
|
dir_pin: PB7
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^PA6
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 235
|
||||||
|
homing_speed: 80
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PB6
|
||||||
|
dir_pin: !PB5
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: probe:z_virtual_endstop
|
||||||
|
position_max: 250
|
||||||
|
homing_speed: 4
|
||||||
|
second_homing_speed: 1
|
||||||
|
homing_retract_dist: 2.0
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
max_extrude_only_distance: 100.0
|
||||||
|
step_pin: PB4
|
||||||
|
dir_pin: PB3
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 34.406
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PA1
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC5
|
||||||
|
control: pid
|
||||||
|
# tuned for stock hardware with 200 degree Celsius target
|
||||||
|
pid_Kp: 21.527
|
||||||
|
pid_Ki: 1.063
|
||||||
|
pid_Kd: 108.982
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA2
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC4
|
||||||
|
control: pid
|
||||||
|
# tuned for stock hardware with 70 degree Celsius target
|
||||||
|
pid_kp: 70.405
|
||||||
|
pid_ki: 1.229
|
||||||
|
pid_kd: 1008.553
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA0
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
|
||||||
|
restart_method: command
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 5000
|
||||||
|
max_z_velocity: 5
|
||||||
|
square_corner_velocity: 5.0
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
[bltouch]
|
||||||
|
sensor_pin: ^PB1
|
||||||
|
control_pin: PB0
|
||||||
|
x_offset: -45.0
|
||||||
|
y_offset: -10.0
|
||||||
|
z_offset: 0
|
||||||
|
speed: 20
|
||||||
|
samples: 1
|
||||||
|
sample_retract_dist: 8.0
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 160,120
|
||||||
|
speed: 150
|
||||||
|
z_hop: 10
|
||||||
|
z_hop_speed: 10
|
||||||
|
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 120
|
||||||
|
mesh_min: 30,30 # Need to handle head distance with cr-touch (bl_touch)
|
||||||
|
mesh_max: 189,189 # Max probe range
|
||||||
|
probe_count: 5,5
|
||||||
|
fade_start: 1
|
||||||
|
fade_end: 10
|
||||||
|
fade_target: 0
|
||||||
|
algorithm: bicubic
|
||||||
|
|
||||||
|
[bed_screws]
|
||||||
|
screw1:30,25
|
||||||
|
screw1_name:1
|
||||||
|
screw2:200,25
|
||||||
|
screw2_name:2
|
||||||
|
screw3:200,195
|
||||||
|
screw3_name:3
|
||||||
|
screw4:30,195
|
||||||
|
screw4_name:4
|
||||||
|
|
||||||
|
[screws_tilt_adjust]
|
||||||
|
screw1: 67, 42
|
||||||
|
screw1_name: front left screw
|
||||||
|
screw2: 237.60, 42
|
||||||
|
screw2_name: front right screw
|
||||||
|
screw3: 237.60, 212
|
||||||
|
screw3_name: rear right screw
|
||||||
|
screw4: 67.60, 212
|
||||||
|
screw4_name: rear left screw
|
||||||
|
horizontal_move_z: 10
|
||||||
|
speed: 200
|
||||||
|
screw_thread: CW-M4 # Use CW for Clockwise and CCW for Counter Clockwise
|
||||||
|
|
||||||
|
# [display]
|
||||||
|
# The Ender 3 v2 Neo's 4.3" LCD display is not supported by klipper
|
||||||
|
|
||||||
|
[output_pin beeper]
|
||||||
|
pin: PB13
|
||||||
@@ -1,10 +1,12 @@
|
|||||||
# This file contains common pin mappings for the 2019 Creality
|
# This file contains common pin mappings for the 2019 Creality
|
||||||
# Ender 5. To use this config, the firmware should be compiled for the
|
# Ender 5. To use this config, the firmware should be compiled for the
|
||||||
# AVR atmega1284p.
|
# AVR atmega1284p. This also works for the v1.1.5 silent boards.
|
||||||
|
|
||||||
# Note, a number of Melzi boards are shipped with a bootloader that
|
# Note, a number of Melzi boards are shipped with a bootloader that
|
||||||
# requires the following command to flash the board:
|
# requires the following command to flash the board:
|
||||||
# avrdude -p atmega1284p -c arduino -b 57600 -P /dev/ttyUSB0 -U out/klipper.elf.hex
|
# avrdude -p atmega1284p -c arduino -b 57600 -P /dev/ttyUSB0 -U out/klipper.elf.hex
|
||||||
|
# For v1.1.5 silent boards, the following command is used:
|
||||||
|
# avrdude -p atmega1284p -c arduino -P /dev/ttyUSB0 -b 115200 -U flash:w:out/klipper.elf.hex
|
||||||
# If the above command does not work and "make flash" does not work
|
# If the above command does not work and "make flash" does not work
|
||||||
# then one may need to flash a bootloader to the board - see the
|
# then one may need to flash a bootloader to the board - see the
|
||||||
# Klipper docs/Bootloaders.md file for more information.
|
# Klipper docs/Bootloaders.md file for more information.
|
||||||
@@ -80,6 +82,8 @@ pin: PB4
|
|||||||
|
|
||||||
[mcu]
|
[mcu]
|
||||||
serial: /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0
|
serial: /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0
|
||||||
|
# Silent boards tend to have the exact same serial ID, except without USB2.0, using USB instead.
|
||||||
|
# e.g. /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
|
||||||
|
|
||||||
[printer]
|
[printer]
|
||||||
kinematics: cartesian
|
kinematics: cartesian
|
||||||
|
|||||||
170
config/printer-creality-ender5-s1-2023.cfg
Normal file
170
config/printer-creality-ender5-s1-2023.cfg
Normal file
@@ -0,0 +1,170 @@
|
|||||||
|
# Creality Ender 5 S1 (HW version: CR4NS200141C13)
|
||||||
|
#
|
||||||
|
# printer_size: 220x220x280
|
||||||
|
# To use this config, during "make menuconfig" select the STM32F401
|
||||||
|
# with a "64KiB bootloader" and serial (on USART1 PA10/PA9)
|
||||||
|
# communication.
|
||||||
|
#
|
||||||
|
# Flash this firmware by creating a directory named "STM32F4_UPDATE"
|
||||||
|
# on an SD card, copying the "out/klipper.bin" to it and then turn
|
||||||
|
# on the printer with the card inserted. The firmware filename must
|
||||||
|
# end in ".bin" and must not match the last filename that was flashed.
|
||||||
|
#
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PC2
|
||||||
|
dir_pin: !PB9
|
||||||
|
enable_pin: !PC3
|
||||||
|
rotation_distance: 40
|
||||||
|
microsteps: 16
|
||||||
|
endstop_pin: !PA5
|
||||||
|
position_endstop: 220
|
||||||
|
position_max: 222
|
||||||
|
homing_speed: 80
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PB8
|
||||||
|
dir_pin: !PB7
|
||||||
|
enable_pin: !PC3
|
||||||
|
rotation_distance: 40
|
||||||
|
microsteps: 16
|
||||||
|
endstop_pin: !PA6
|
||||||
|
position_endstop: 220
|
||||||
|
position_max: 220
|
||||||
|
homing_speed: 80
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PB6
|
||||||
|
dir_pin: PB5
|
||||||
|
enable_pin: !PC3
|
||||||
|
rotation_distance: 8
|
||||||
|
microsteps: 16
|
||||||
|
endstop_pin: probe:z_virtual_endstop
|
||||||
|
position_max: 280
|
||||||
|
homing_speed: 20
|
||||||
|
second_homing_speed: 1
|
||||||
|
homing_retract_dist: 2.0
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PB4
|
||||||
|
dir_pin: PB3
|
||||||
|
enable_pin: !PC3
|
||||||
|
rotation_distance: 7.5
|
||||||
|
microsteps: 16
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PA1
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC5
|
||||||
|
control: pid # tuned for stock hardware with 210 degree Celsius target
|
||||||
|
pid_kp: 20.749
|
||||||
|
pid_ki: 1.064
|
||||||
|
pid_kd: 101.153
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 305
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA7
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC4
|
||||||
|
control: pid # tuned for stock hardware with 60 degree Celsius target
|
||||||
|
pid_kp: 66.566
|
||||||
|
pid_ki: 0.958
|
||||||
|
pid_kd: 1155.761
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 110
|
||||||
|
|
||||||
|
# Part cooling fan
|
||||||
|
[fan]
|
||||||
|
pin: PA0
|
||||||
|
kick_start_time: 0.5
|
||||||
|
|
||||||
|
# Hotend fan
|
||||||
|
# set fan runnig when extruder temperature is over 60
|
||||||
|
[heater_fan heatbreak_fan]
|
||||||
|
pin: PC0
|
||||||
|
heater:extruder
|
||||||
|
heater_temp: 60
|
||||||
|
fan_speed: 0.8
|
||||||
|
|
||||||
|
[filament_switch_sensor filament_sensor]
|
||||||
|
pause_on_runout: true
|
||||||
|
switch_pin: ^!PC15
|
||||||
|
|
||||||
|
# Stock CR Touch bed sensor
|
||||||
|
[bltouch]
|
||||||
|
sensor_pin: ^PC14
|
||||||
|
control_pin: PC13
|
||||||
|
x_offset: -13
|
||||||
|
y_offset: 27
|
||||||
|
z_offset: 2.0
|
||||||
|
speed: 10
|
||||||
|
stow_on_each_sample: true # Occasional bed crashes when false
|
||||||
|
samples: 4
|
||||||
|
sample_retract_dist: 2
|
||||||
|
samples_result: average
|
||||||
|
probe_with_touch_mode: true
|
||||||
|
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 150
|
||||||
|
mesh_min: 3,28 # need to handle head distance with bl_touch
|
||||||
|
mesh_max: 205,218
|
||||||
|
mesh_pps: 3
|
||||||
|
probe_count: 4,4
|
||||||
|
fade_start: 1
|
||||||
|
fade_end: 10
|
||||||
|
fade_target: 0
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
|
||||||
|
restart_method: command
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 123,83
|
||||||
|
speed: 200
|
||||||
|
z_hop: 10
|
||||||
|
z_hop_speed: 10
|
||||||
|
|
||||||
|
# Many Ender 5 S1 printers appear to suffer from a slight twist
|
||||||
|
# in the X axis. This twist can be measured, and compensated for
|
||||||
|
# using the AXIS_TWIST_COMPENSATION_CALIBRATE G-Code command. See
|
||||||
|
# https://www.klipper3d.org/Axis_Twist_Compensation.html for more
|
||||||
|
# information. This section provides the setup for this optional
|
||||||
|
# calibration step.
|
||||||
|
[axis_twist_compensation]
|
||||||
|
calibrate_start_x: 3
|
||||||
|
calibrate_end_x: 207
|
||||||
|
calibrate_y: 110
|
||||||
|
|
||||||
|
# Probe locations for assisted bed screw adjustment.
|
||||||
|
[screws_tilt_adjust]
|
||||||
|
screw1: 38,6
|
||||||
|
screw1_name: Front Left Screw
|
||||||
|
screw2: 215,6
|
||||||
|
screw2_name: Front Right Screw
|
||||||
|
screw3: 215,175
|
||||||
|
screw3_name: Rear Right Screw
|
||||||
|
screw4: 38,175
|
||||||
|
screw4_name: Rear Left Screw
|
||||||
|
horizontal_move_z: 5
|
||||||
|
speed: 100
|
||||||
|
screw_thread: CW-M4
|
||||||
|
|
||||||
|
[bed_screws]
|
||||||
|
screw1: 25,25
|
||||||
|
screw1_name: Front Left Screw
|
||||||
|
screw2: 195,25
|
||||||
|
screw2_name: Front Right Screw
|
||||||
|
screw3: 195,195
|
||||||
|
screw3_name: Rear Right Screw
|
||||||
|
screw4: 25,195
|
||||||
|
screw4_name: Rear Left Screw
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 5000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
square_corner_velocity: 5.0
|
||||||
126
config/printer-elegoo-neptune3-pro-2023.cfg
Normal file
126
config/printer-elegoo-neptune3-pro-2023.cfg
Normal file
@@ -0,0 +1,126 @@
|
|||||||
|
# This file contains pin mappings for the stock Elegoo Neptune 3 Pro (ZNP Robin Nano_DW V2.2)
|
||||||
|
# To use this config, during "make menuconfig" select the STM32F401 with a
|
||||||
|
# "32KiB bootloader" and serial (on USART1 PA10/PA9) communication.
|
||||||
|
|
||||||
|
# Note that the "make flash" command does not work with ZNP Robin boards.
|
||||||
|
# After running "make", rename the out/klipper.bin file to out/ZNP_ROBIN_NANO.bin
|
||||||
|
# Copy the file out/ZNP_ROBIN_NANO.bin to an SD card formatted to FAT32
|
||||||
|
# and then restart the printer with the SD card inserted.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
# Core
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
|
||||||
|
restart_method: command
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
# Steppers
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PC12
|
||||||
|
dir_pin: PB3
|
||||||
|
enable_pin: !PD2
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PA13
|
||||||
|
position_min: -5
|
||||||
|
position_endstop: -5
|
||||||
|
position_max: 235
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PC11
|
||||||
|
dir_pin: PA15
|
||||||
|
enable_pin: !PC10
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: PB8
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 234
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PC7
|
||||||
|
dir_pin: !PC9
|
||||||
|
enable_pin: !PC8
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
position_min: -0.8
|
||||||
|
endstop_pin: probe:z_virtual_endstop
|
||||||
|
position_max: 283
|
||||||
|
homing_speed: 10
|
||||||
|
|
||||||
|
[probe]
|
||||||
|
pin: PA8
|
||||||
|
# NOTE: Set this to a value based on your printer and bed.
|
||||||
|
z_offset: 0
|
||||||
|
x_offset: -28.5
|
||||||
|
y_offset: 22
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PB10
|
||||||
|
dir_pin: PB1
|
||||||
|
enable_pin: !PC6
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8.42
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PA6
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC1
|
||||||
|
control: pid
|
||||||
|
# NOTE: These settings are for PETG, thus 240C at 30% fan.
|
||||||
|
pid_Kp: 26.27
|
||||||
|
pid_Ki: 1.607
|
||||||
|
pid_Kd: 107.380
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 260
|
||||||
|
max_extrude_only_distance: 100
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA5
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC0
|
||||||
|
control: pid
|
||||||
|
# NOTE: These settings are for PETG, thus 80C bed temperature.
|
||||||
|
pid_Kp: 70.173
|
||||||
|
pid_Ki: 1.418
|
||||||
|
pid_Kd: 868.388
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 100
|
||||||
|
|
||||||
|
# Coooling
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA7
|
||||||
|
|
||||||
|
[heater_fan hotend_fan]
|
||||||
|
pin: PB0
|
||||||
|
|
||||||
|
# Rest
|
||||||
|
|
||||||
|
# This is put on the FAN3 pin.
|
||||||
|
[led top_LEDs]
|
||||||
|
white_pin: PB9
|
||||||
|
cycle_time: 0.005
|
||||||
|
|
||||||
|
[filament_switch_sensor filament_runout_sensor]
|
||||||
|
switch_pin: PB4
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 143.5, 93
|
||||||
|
|
||||||
|
[bed_mesh]
|
||||||
|
mesh_min: 10, 25
|
||||||
|
mesh_max: 205, 220
|
||||||
|
probe_count: 6, 6
|
||||||
|
algorithm: bicubic
|
||||||
|
speed: 100
|
||||||
@@ -71,25 +71,21 @@ pid_Kp: 39
|
|||||||
pid_Ki: 2
|
pid_Ki: 2
|
||||||
pid_Kd: 210
|
pid_Kd: 210
|
||||||
|
|
||||||
[extruder1]
|
[extruder_stepper e1]
|
||||||
|
extruder:
|
||||||
step_pin: PA0
|
step_pin: PA0
|
||||||
dir_pin: !PB6
|
dir_pin: !PB6
|
||||||
enable_pin: !PA1
|
enable_pin: !PA1
|
||||||
microsteps: 16
|
microsteps: 16
|
||||||
rotation_distance: 32
|
rotation_distance: 32
|
||||||
nozzle_diameter: 0.4
|
|
||||||
filament_diameter: 1.75
|
|
||||||
shared_heater: extruder
|
|
||||||
|
|
||||||
[extruder2]
|
[extruder_stepper e2]
|
||||||
|
extruder:
|
||||||
step_pin: PB2
|
step_pin: PB2
|
||||||
dir_pin: !PB11
|
dir_pin: !PB11
|
||||||
enable_pin: !PC4
|
enable_pin: !PC4
|
||||||
microsteps: 16
|
microsteps: 16
|
||||||
rotation_distance: 32
|
rotation_distance: 32
|
||||||
nozzle_diameter: 0.4
|
|
||||||
filament_diameter: 1.75
|
|
||||||
shared_heater: extruder
|
|
||||||
|
|
||||||
[heater_bed]
|
[heater_bed]
|
||||||
heater_pin: PB1
|
heater_pin: PB1
|
||||||
|
|||||||
256
config/printer-geeetech-A10T-A20T-2021.cfg
Normal file
256
config/printer-geeetech-A10T-A20T-2021.cfg
Normal file
@@ -0,0 +1,256 @@
|
|||||||
|
# This file contains common pin mappings for the Geeetech GT2560 v4.0 and v4.1b
|
||||||
|
# boards. These boards use a firmware compiled for the AVR atmega2560.
|
||||||
|
# For default Geeetech A10/A20 (1 extruder),
|
||||||
|
# A10M/A20M (mixing 2 in 1 out),
|
||||||
|
# A10T/A20T (mixing 3 in 1 out) printers
|
||||||
|
# Installation: https://www.klipper3d.org/Installation.html
|
||||||
|
# Always read for first start: https://www.klipper3d.org/Config_checks.html
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
# Might need to be changed: https://www.klipper3d.org/Installation.html
|
||||||
|
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 200
|
||||||
|
max_accel: 1500
|
||||||
|
max_z_velocity: 20
|
||||||
|
max_z_accel: 500
|
||||||
|
|
||||||
|
# # uncomment for BLTouch/3DTouch
|
||||||
|
# [bltouch]
|
||||||
|
# sensor_pin: PC7 # there is an external pull up so no need in ^
|
||||||
|
# control_pin: PB5
|
||||||
|
# speed: 3.0
|
||||||
|
# samples: 2
|
||||||
|
# x_offset: -42.0
|
||||||
|
# y_offset: -1.0
|
||||||
|
# z_offset: 1.0 # during calibration this line is commented out and new record added at the end of file
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 100, 100 # Change coordinates to the center of your print bed
|
||||||
|
speed: 50
|
||||||
|
z_hop: 10 # Move up 10mm
|
||||||
|
z_hop_speed: 5
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
enable_pin: !PC2
|
||||||
|
dir_pin: !PG2
|
||||||
|
step_pin: PC0
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: !PA2 # there are external pull ups
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 220 # for A10/M/T / change to 250 for A20/M/T
|
||||||
|
homing_speed: 40
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
enable_pin: !PA7
|
||||||
|
dir_pin: !PC4
|
||||||
|
step_pin: PC6
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: !PA6 # there are external pull ups
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 220 # for A10/M/T / change to 250 for A20/M/T
|
||||||
|
homing_speed: 40
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
enable_pin: !PA5
|
||||||
|
dir_pin: PA1
|
||||||
|
step_pin: PA3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
#endstop_pin: probe:z_virtual_endstop # uncomment for BLTouch/3DTouch
|
||||||
|
endstop_pin: !PC7 # comment for BLTouch/3DTouch
|
||||||
|
position_endstop: 0 # comment for BLTouch/3DTouch
|
||||||
|
position_max: 230 # for A10/M/T / change to 250 for A20/M/T
|
||||||
|
position_min: -5
|
||||||
|
homing_speed: 20
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
enable_pin: !PB6
|
||||||
|
dir_pin: PL5
|
||||||
|
step_pin: PL3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8 # Needs to be optimized: https://www.klipper3d.org/Rotation_Distance.html#calibrating-rotation_distance-on-extruders
|
||||||
|
nozzle_diameter: 0.4
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PB4
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PK3
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
max_extrude_only_distance: 200.0
|
||||||
|
# Parameters for stock hotend on A10M
|
||||||
|
# Please recalibrate according to https://www.klipper3d.org/Config_checks.html#calibrate-pid-settings
|
||||||
|
control: pid
|
||||||
|
pid_kp: 54.722
|
||||||
|
pid_ki: 4.800
|
||||||
|
pid_kd: 155.958
|
||||||
|
|
||||||
|
[extruder_stepper extruder_1]
|
||||||
|
extruder:
|
||||||
|
enable_pin: !PL1
|
||||||
|
dir_pin: PL2
|
||||||
|
step_pin: PL0
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8 # Needs to be optimized: https://www.klipper3d.org/Rotation_Distance.html#calibrating-rotation_distance-on-extruders
|
||||||
|
|
||||||
|
[extruder_stepper extruder_2]
|
||||||
|
extruder:
|
||||||
|
enable_pin: !PG0
|
||||||
|
dir_pin: PL4
|
||||||
|
step_pin: PL6
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8 # Needs to be optimized: https://www.klipper3d.org/Rotation_Distance.html#calibrating-rotation_distance-on-extruders
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PG5
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PK2
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 120
|
||||||
|
# Parameters for `SuperPlate` on A10M
|
||||||
|
# Please recalibrate according to https://www.klipper3d.org/Config_checks.html#calibrate-pid-settings
|
||||||
|
control: pid
|
||||||
|
pid_kp: 70.936
|
||||||
|
pid_ki: 1.785
|
||||||
|
pid_kd: 704.924
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PH6
|
||||||
|
cycle_time: 0.150
|
||||||
|
kick_start_time: 0.300
|
||||||
|
|
||||||
|
# # for GT2560V4.0 with 20pin flat cable toward the display
|
||||||
|
# [display]
|
||||||
|
# lcd_type: hd44780
|
||||||
|
# hd44780_protocol_init: True
|
||||||
|
# rs_pin: PD1
|
||||||
|
# e_pin: PH0
|
||||||
|
# d4_pin: PH1
|
||||||
|
# d5_pin: PD0
|
||||||
|
# d6_pin: PE3
|
||||||
|
# d7_pin: PC1
|
||||||
|
# encoder_pins: ^PG1, ^PL7
|
||||||
|
# click_pin: ^!PD2
|
||||||
|
|
||||||
|
|
||||||
|
# for GT2560V4.1B with 12pin flat cable toward the display YHCB2004-06 ver3.0
|
||||||
|
# the aip31068_spi driver was added to Klipper on 2024-12-02, commit aecb29d2
|
||||||
|
[display]
|
||||||
|
lcd_type: aip31068_spi
|
||||||
|
latch_pin: PE3
|
||||||
|
spi_software_sclk_pin: PD0
|
||||||
|
spi_software_mosi_pin: PC1
|
||||||
|
spi_software_miso_pin: PH7 # any unused pin
|
||||||
|
encoder_pins: ^PH0, ^PH1
|
||||||
|
click_pin: ^!PD2
|
||||||
|
|
||||||
|
|
||||||
|
[filament_switch_sensor sensor_e0]
|
||||||
|
switch_pin: !PK4
|
||||||
|
|
||||||
|
[filament_switch_sensor sensor_e1]
|
||||||
|
switch_pin: !PK5
|
||||||
|
|
||||||
|
[filament_switch_sensor sensor_e2]
|
||||||
|
# switch_pin: !PE2 # for GT2560V4.0
|
||||||
|
switch_pin: !PF0 # for GT2560V4.1B
|
||||||
|
|
||||||
|
# to enable M118 echo command
|
||||||
|
[respond]
|
||||||
|
|
||||||
|
# Specific macros for mixing colors.
|
||||||
|
# Add in slicer new filament color and in filament start G-Code add desired mixing factor:
|
||||||
|
# M163 S0 P50 ; set extruder 0 to 50%
|
||||||
|
# M163 S1 P40 ; set extruder 1 to 40%
|
||||||
|
# M163 S2 P10 ; set extruder 2 to 10%
|
||||||
|
# M164 ; commit the mix factors
|
||||||
|
[gcode_macro M163]
|
||||||
|
description: M163 [P<factor>] [S<index>] Set a single mix factor (in proportion to the sum total of all mix factors). The mix must be committed to a virtual tool by M164 before it takes effect.
|
||||||
|
gcode:
|
||||||
|
{% if 'P' in params %}
|
||||||
|
{% set s = params.S|default(0)| int %}
|
||||||
|
{% if s == 0 %}
|
||||||
|
SET_GCODE_VARIABLE MACRO=M164 VARIABLE=e0_parts VALUE={params.P|default(0)|float}
|
||||||
|
M118 Set Mixing factor for extruder 0 to {params.P|default(0)|float}
|
||||||
|
{% elif s == 1 %}
|
||||||
|
SET_GCODE_VARIABLE MACRO=M164 VARIABLE=e1_parts VALUE={params.P|default(0)|float}
|
||||||
|
M118 Set Mixing factor for extruder 1 to {params.P|default(0)|float}
|
||||||
|
{% elif s == 2 %}
|
||||||
|
SET_GCODE_VARIABLE MACRO=M164 VARIABLE=e2_parts VALUE={params.P|default(0)|float}
|
||||||
|
M118 Set Mixing factor for extruder 2 to {params.P|default(0)|float}
|
||||||
|
{% endif %}
|
||||||
|
{% else %}
|
||||||
|
M118 No Mixing factor set, missing value for P
|
||||||
|
{% endif %}
|
||||||
|
M118 {e0_parts} {e1_parts} {e2_parts}
|
||||||
|
|
||||||
|
|
||||||
|
[gcode_macro M164]
|
||||||
|
description: Applies the set mixing factors to the extruders
|
||||||
|
# default values:
|
||||||
|
variable_e0_parts : 100
|
||||||
|
variable_e1_parts : 0
|
||||||
|
variable_e2_parts : 0
|
||||||
|
gcode:
|
||||||
|
# normalize the parts to sum of 1
|
||||||
|
{% set e0 = e0_parts / (e0_parts + e1_parts + e2_parts) | float %}
|
||||||
|
{% set e1 = e1_parts / (e0_parts + e1_parts + e2_parts) | float %}
|
||||||
|
{% set e2 = e2_parts / (e0_parts + e1_parts + e2_parts) | float %}
|
||||||
|
M118 scaled rot-dist_e0 { printer.configfile.settings.extruder.rotation_distance / (e0 + 0.000001) | float }
|
||||||
|
M118 scaled rot-dist_e1 { printer.configfile.settings['extruder_stepper extruder_1'].rotation_distance / (e1 + 0.000001) | float }
|
||||||
|
M118 scaled rot-dist_e2 { printer.configfile.settings['extruder_stepper extruder_2'].rotation_distance / (e2 + 0.000001) |float }
|
||||||
|
# activate stepper percentages
|
||||||
|
SYNC_EXTRUDER_MOTION EXTRUDER=extruder MOTION_QUEUE=extruder
|
||||||
|
SYNC_EXTRUDER_MOTION EXTRUDER=extruder_1 MOTION_QUEUE=extruder
|
||||||
|
SYNC_EXTRUDER_MOTION EXTRUDER=extruder_2 MOTION_QUEUE=extruder
|
||||||
|
SET_EXTRUDER_ROTATION_DISTANCE EXTRUDER=extruder DISTANCE={ printer.configfile.settings.extruder.rotation_distance / (e0+0.000001)|float }
|
||||||
|
SET_EXTRUDER_ROTATION_DISTANCE EXTRUDER=extruder_1 DISTANCE={ printer.configfile.settings['extruder_stepper extruder_1'].rotation_distance / (e1+0.000001)|float }
|
||||||
|
SET_EXTRUDER_ROTATION_DISTANCE EXTRUDER=extruder_2 DISTANCE={ printer.configfile.settings['extruder_stepper extruder_2'].rotation_distance / (e2+0.000001)|float }
|
||||||
|
M118 Mixing factors {e0} {e1} {e2} are activated
|
||||||
|
|
||||||
|
# In PrusaSlicer:
|
||||||
|
# - you can add as many extruders as mixing ratios you want
|
||||||
|
# - in Printer Settings -> Custom G-code -> Tool change G-code add:
|
||||||
|
# TOOL_CHANGE EXTRUDER={next_extruder}
|
||||||
|
# - in this config file add:
|
||||||
|
# [gcode_macro TOOL_CHANGE]
|
||||||
|
# description: Tool change macro with mix ratio setup for 11 extruders
|
||||||
|
# variable_extruder: 0
|
||||||
|
# gcode:
|
||||||
|
# {% set extruder = params.EXTRUDER|default(0)| int %}
|
||||||
|
# {% if extruder == 0 %}
|
||||||
|
# M163 S0 P100
|
||||||
|
# M163 S1 P0
|
||||||
|
# M163 S2 P0
|
||||||
|
# M164
|
||||||
|
# M118 Switching to Extruder 0
|
||||||
|
# {% elif extruder == 1 %}
|
||||||
|
# M163 S0 P90
|
||||||
|
# M163 S1 P10
|
||||||
|
# M163 S2P0
|
||||||
|
# M164
|
||||||
|
# M118 Switching to Extruder 1
|
||||||
|
# {% elif extruder == 2 %}
|
||||||
|
# # and so on ...
|
||||||
|
# {% else %}
|
||||||
|
# M118 Unknown extruder number: {extruder}
|
||||||
|
# {% endif %}
|
||||||
|
|
||||||
|
# In OrcaSlicer:
|
||||||
|
# you can add as many filaments as mixing ratios you want
|
||||||
|
# in Material settings -> Advanced -> Filament start G-code add desired mixing ratio:
|
||||||
|
# ; filament start gcode
|
||||||
|
# M163 S0 P100 ; set extruder 0
|
||||||
|
# M163 S1 P0 ; set extruder 1
|
||||||
|
# M163 S2 P0 ; set extruder 2
|
||||||
|
# M164 ; commit the mix factors
|
||||||
|
|
||||||
|
# For gradient over Z axis:
|
||||||
|
# In `Printer -> Custom G-code -> After layer change G-code` add:
|
||||||
|
# M163 S0 P{ layer_num * 100 / total_layer_count } ; Gradient 0-100
|
||||||
|
# M163 S1 P{(total_layer_count-layer_num) * 100 / total_layer_count} ; Gradient 100-0
|
||||||
|
# M164 ; commit the mix factors
|
||||||
108
config/printer-kingroon-kp3s-2020.cfg
Normal file
108
config/printer-kingroon-kp3s-2020.cfg
Normal file
@@ -0,0 +1,108 @@
|
|||||||
|
# This file contains common pin mappings for the Kingroon KP3S printer,
|
||||||
|
# which uses a modified MKS Robin board.
|
||||||
|
# To use this config, the firmware should be compiled for the
|
||||||
|
# STM32F103. When running "make menuconfig", enable "extra low-level
|
||||||
|
# configuration setup", select the 28KiB bootloader, and serial (on
|
||||||
|
# USART3 PB11/PB10) communication. Also, select "Enable extra low-level
|
||||||
|
# configuration options" and configure "GPIO pins to set at
|
||||||
|
# micro-controller startup" to "!PC6,!PD13" to disable the LCD as it is not
|
||||||
|
# compatible with klipper
|
||||||
|
|
||||||
|
# Note that the "make flash" command does not work with MKS Robin
|
||||||
|
# boards. After running "make", run the following command:
|
||||||
|
# ./scripts/update_mks_robin.py out/klipper.bin out/Robin_nano.bin
|
||||||
|
# Copy the file out/Robin_nano.bin to an SD card and then restart the
|
||||||
|
# printer with that SD card.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PE3
|
||||||
|
dir_pin: !PE2
|
||||||
|
enable_pin: !PE4
|
||||||
|
microsteps: 32
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: !PA15
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 180
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PE0
|
||||||
|
dir_pin: !PB9
|
||||||
|
enable_pin: !PE1
|
||||||
|
microsteps: 32
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: !PA12
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 180
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PB5
|
||||||
|
dir_pin: PB4
|
||||||
|
enable_pin: !PB8
|
||||||
|
microsteps: 32
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: !PA11
|
||||||
|
position_endstop: 0.5
|
||||||
|
position_max: 180
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 90,90
|
||||||
|
z_hop: 10
|
||||||
|
|
||||||
|
[thermistor Kingroon_B3950]
|
||||||
|
temperature1: 25.0
|
||||||
|
resistance1: 103180.0
|
||||||
|
temperature2: 150.0
|
||||||
|
resistance2: 1366.2
|
||||||
|
temperature3: 250.0
|
||||||
|
resistance3: 168.6
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PD6
|
||||||
|
dir_pin: !PD3
|
||||||
|
enable_pin: !PB3
|
||||||
|
microsteps: 32
|
||||||
|
gear_ratio: 3:1
|
||||||
|
rotation_distance: 23.244
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PC3
|
||||||
|
sensor_type: Kingroon_B3950
|
||||||
|
sensor_pin: PC1
|
||||||
|
control: pid
|
||||||
|
pid_kp: 27.057
|
||||||
|
pid_ki: 1.171
|
||||||
|
pid_kd: 156.254
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA0
|
||||||
|
sensor_type: Kingroon_B3950
|
||||||
|
sensor_pin: PC0
|
||||||
|
control: pid
|
||||||
|
pid_kp: 61.779
|
||||||
|
pid_ki: 1.572
|
||||||
|
pid_kd: 606.980
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PB1
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
|
||||||
|
restart_method: command
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 250
|
||||||
|
max_accel: 2000
|
||||||
|
max_z_velocity: 25
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
[static_digital_output display_reset]
|
||||||
|
pins: !PC6, !PD13
|
||||||
118
config/printer-longer-lk4x-2022.cfg
Normal file
118
config/printer-longer-lk4x-2022.cfg
Normal file
@@ -0,0 +1,118 @@
|
|||||||
|
# This file contains pin mappings for the stock 2022 LONGER3D LK4 X
|
||||||
|
# with the 32-bit LGT_KIT_V2_X board. To use this config, during
|
||||||
|
# "make menuconfig" select the STM32F103 with a "32KiB bootloader" and
|
||||||
|
# serial (on USART1 PA10/PA9) communication.
|
||||||
|
|
||||||
|
# Flash this firmware by copying "out/klipper.bin" to a SD card,
|
||||||
|
# then rename it to "firmware.bin"and turning on the printer with
|
||||||
|
# the card inserted.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 4000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PD3
|
||||||
|
dir_pin: PD2
|
||||||
|
enable_pin: !PD4
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^!PE6
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 265
|
||||||
|
homing_speed: 80
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PD6
|
||||||
|
dir_pin: PD5
|
||||||
|
enable_pin: !PD7
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^!PE4
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 220
|
||||||
|
homing_speed: 80
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PB4
|
||||||
|
dir_pin: !PB3
|
||||||
|
enable_pin: !PB5
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
# Without BLTouch
|
||||||
|
# endstop_pin: ^!PE2
|
||||||
|
# With BLTouch
|
||||||
|
endstop_pin: probe: z_virtual_endstop
|
||||||
|
# position_endstop: 0.0
|
||||||
|
position_min: -5
|
||||||
|
position_max: 250
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
max_extrude_only_distance: 200
|
||||||
|
step_pin: PB9
|
||||||
|
dir_pin: PB8
|
||||||
|
enable_pin: !PE0
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 4.4504
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PA7
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC1
|
||||||
|
control: pid
|
||||||
|
# tuned for stock hardware with 200 degree Celsius target
|
||||||
|
pid_Kp: 25.011
|
||||||
|
pid_Ki: 1.463
|
||||||
|
pid_Kd: 106.922
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 260
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA0
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC0
|
||||||
|
control: pid
|
||||||
|
# tuned for stock hardware with 60 degree Celsius target
|
||||||
|
pid_Kp: 69.370
|
||||||
|
pid_Ki: 1.526
|
||||||
|
pid_Kd: 788.215
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 110
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA1
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
|
||||||
|
restart_method: command
|
||||||
|
|
||||||
|
[bed_screws]
|
||||||
|
screw1: 30,30
|
||||||
|
screw2: 190,30
|
||||||
|
screw3: 190,190
|
||||||
|
screw4: 30,190
|
||||||
|
|
||||||
|
# Pin mappings for BL_T port
|
||||||
|
[bltouch]
|
||||||
|
sensor_pin: ^PE1
|
||||||
|
control_pin: PA8
|
||||||
|
x_offset: -51
|
||||||
|
y_offset: -8
|
||||||
|
z_offset: 0 # You need to adjust this for your printer
|
||||||
|
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 120
|
||||||
|
mesh_min: 10, 10
|
||||||
|
mesh_max: 210, 210
|
||||||
|
probe_count: 4, 4
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 161, 118
|
||||||
|
speed: 80
|
||||||
|
z_hop: 10 # Move up 10mm
|
||||||
|
z_hop_speed: 5
|
||||||
@@ -125,7 +125,7 @@ pwm: True
|
|||||||
scale: 2.0
|
scale: 2.0
|
||||||
cycle_time: .000030
|
cycle_time: .000030
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
static_value: 1.300
|
value: 1.300
|
||||||
|
|
||||||
[output_pin stepper_z_current]
|
[output_pin stepper_z_current]
|
||||||
pin: PL4
|
pin: PL4
|
||||||
@@ -133,7 +133,7 @@ pwm: True
|
|||||||
scale: 2.0
|
scale: 2.0
|
||||||
cycle_time: .000030
|
cycle_time: .000030
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
static_value: 1.630
|
value: 1.630
|
||||||
|
|
||||||
[output_pin stepper_e_current]
|
[output_pin stepper_e_current]
|
||||||
pin: PL5
|
pin: PL5
|
||||||
@@ -141,7 +141,7 @@ pwm: True
|
|||||||
scale: 2.0
|
scale: 2.0
|
||||||
cycle_time: .000030
|
cycle_time: .000030
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
static_value: 1.250
|
value: 1.250
|
||||||
|
|
||||||
[static_digital_output stepper_config]
|
[static_digital_output stepper_config]
|
||||||
# Microstepping pins
|
# Microstepping pins
|
||||||
|
|||||||
157
config/printer-lulzbot-mini2-2018.cfg
Normal file
157
config/printer-lulzbot-mini2-2018.cfg
Normal file
@@ -0,0 +1,157 @@
|
|||||||
|
#This file contains pin mappings for the stock Lulzbot Mini 2 which uses
|
||||||
|
#EinsyRetro mainboard and SingleExtruder(0.5mm) hotend.
|
||||||
|
#To use this config, the firmware should be compiled for the AVR atmega2560.
|
||||||
|
|
||||||
|
# Pin numbers checked against Lulzbot fork of Marlin pins_EINSYRETRO.h
|
||||||
|
# https://gitlab.com/lulzbot3d/marlin/-/blob/master/Marlin/src/pins/rambo/
|
||||||
|
#pins_EINSY_RETRO.h
|
||||||
|
# validated against https://github.com/ultimachine/EinsyRetro/blob/1.0b/board/
|
||||||
|
#Project%20Outputs%20for%20EinsyRetro/Schematic%20Prints_EinsyRetro_1.0b.PDF
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/ttyACM0
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 2000
|
||||||
|
max_z_velocity: 40
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PC0
|
||||||
|
dir_pin: !PL0
|
||||||
|
enable_pin: !PA7
|
||||||
|
rotation_distance: 32
|
||||||
|
microsteps: 16
|
||||||
|
endstop_pin: tmc2130_stepper_x:virtual_endstop
|
||||||
|
position_endstop: -7
|
||||||
|
position_min: -7
|
||||||
|
position_max: 168
|
||||||
|
homing_retract_dist: 0
|
||||||
|
homing_speed: 30
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PC1
|
||||||
|
dir_pin: !PL1
|
||||||
|
enable_pin: !PA6
|
||||||
|
rotation_distance: 32
|
||||||
|
microsteps: 16
|
||||||
|
endstop_pin: tmc2130_stepper_y:virtual_endstop
|
||||||
|
position_endstop: -5
|
||||||
|
position_min: -5
|
||||||
|
position_max: 192
|
||||||
|
homing_retract_dist: 0
|
||||||
|
homing_speed: 30
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PC2
|
||||||
|
dir_pin: !PL2
|
||||||
|
enable_pin: !PA5
|
||||||
|
rotation_distance: 32
|
||||||
|
microsteps: 16
|
||||||
|
endstop_pin: PH4
|
||||||
|
position_endstop: 183
|
||||||
|
position_max: 185
|
||||||
|
position_min: -2
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PC3
|
||||||
|
dir_pin: PL6
|
||||||
|
enable_pin: !PA4
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 7.465
|
||||||
|
nozzle_diameter: 0.5
|
||||||
|
filament_diameter: 2.85
|
||||||
|
heater_pin: PE5
|
||||||
|
sensor_type: ATC Semitec 104GT-2
|
||||||
|
sensor_pin: PF0
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 280
|
||||||
|
control: pid
|
||||||
|
pid_kp: 24.121
|
||||||
|
pid_ki: 1.079
|
||||||
|
pid_kd: 134.779
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PG5
|
||||||
|
sensor_type: Honeywell 100K 135-104LAG-J01
|
||||||
|
sensor_pin: PF2
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
control: pid
|
||||||
|
pid_kp: 71.304
|
||||||
|
pid_ki: 1.662
|
||||||
|
pid_kd: 764.734
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PH5
|
||||||
|
|
||||||
|
[heater_fan nozzle_cooling_fan]
|
||||||
|
pin: PH3
|
||||||
|
|
||||||
|
[probe]
|
||||||
|
pin: ^!PB4
|
||||||
|
z_offset: 1.377
|
||||||
|
#z offset will need to be adjusted if you use the magnetic bed upgrade as the
|
||||||
|
#washer thickness will apply a different offset between the nozzle and true
|
||||||
|
#bed level.
|
||||||
|
samples: 3
|
||||||
|
sample_retract_dist: 1.0
|
||||||
|
samples_tolerance: 0.200
|
||||||
|
|
||||||
|
[bed_tilt]
|
||||||
|
points: -5, 22
|
||||||
|
-5, 190
|
||||||
|
160, 190
|
||||||
|
160, 22
|
||||||
|
speed: 30
|
||||||
|
horizontal_move_z: 5
|
||||||
|
|
||||||
|
[tmc2130 stepper_x]
|
||||||
|
cs_pin: PG0
|
||||||
|
run_current: 0.975
|
||||||
|
diag0_pin: ^!PK2
|
||||||
|
driver_SGT: 4
|
||||||
|
sense_resistor: 0.120
|
||||||
|
|
||||||
|
[tmc2130 stepper_y]
|
||||||
|
cs_pin: PG2
|
||||||
|
run_current: 0.975
|
||||||
|
diag0_pin: ^!PK7
|
||||||
|
driver_SGT: 4
|
||||||
|
sense_resistor: 0.120
|
||||||
|
|
||||||
|
[tmc2130 stepper_z]
|
||||||
|
cs_pin: PK5
|
||||||
|
run_current: 0.960
|
||||||
|
diag0_pin: ^!PK6
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
sense_resistor: 0.120
|
||||||
|
|
||||||
|
[tmc2130 extruder]
|
||||||
|
cs_pin: PK4
|
||||||
|
run_current: 0.960
|
||||||
|
diag0_pin: ^!PK3
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
sense_resistor: 0.120
|
||||||
|
|
||||||
|
[static_digital_output sd_card]
|
||||||
|
pins: PB0
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 75, 75
|
||||||
|
speed: 30.0
|
||||||
|
z_hop: 5
|
||||||
|
|
||||||
|
[display]
|
||||||
|
lcd_type: st7920
|
||||||
|
cs_pin: PD5
|
||||||
|
sclk_pin: PD2
|
||||||
|
sid_pin: PD3
|
||||||
|
menu_timeout: 5
|
||||||
|
encoder_pins: ^PJ1,^PJ2
|
||||||
|
encoder_steps_per_detent: 2
|
||||||
|
click_pin: ^!PH6
|
||||||
@@ -199,7 +199,6 @@ algorithm: bicubic
|
|||||||
bicubic_tension: 0.15
|
bicubic_tension: 0.15
|
||||||
fade_start: 0.5
|
fade_start: 0.5
|
||||||
fade_end: 2.5
|
fade_end: 2.5
|
||||||
relative_reference_index: 60
|
|
||||||
|
|
||||||
[bed_screws]
|
[bed_screws]
|
||||||
screw1: 0,0
|
screw1: 0,0
|
||||||
|
|||||||
180
config/printer-ratrig-v-minion-2021.cfg
Normal file
180
config/printer-ratrig-v-minion-2021.cfg
Normal file
@@ -0,0 +1,180 @@
|
|||||||
|
# This file contains pin mappings for a full Ratrig V-Minion kit
|
||||||
|
# with an Octopus Pro v1.1 board.
|
||||||
|
#
|
||||||
|
# This will not work with RatOS
|
||||||
|
#
|
||||||
|
# To use this config, during "make menuconfig" select the STM32F446
|
||||||
|
# with a "32KiB bootloader", USB (on PA11/PA12) communication, and
|
||||||
|
# a "12MHZ Crystal"
|
||||||
|
#
|
||||||
|
# Flash this firmware on the MCU by copying "out/klipper.bin" to an SD
|
||||||
|
# card and turning the printer on with the card inserted. The firmware
|
||||||
|
# filename must be named "firmware.bin"
|
||||||
|
#
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PF13
|
||||||
|
dir_pin: !PF12
|
||||||
|
enable_pin: !PF14
|
||||||
|
endstop_pin: ^PG6
|
||||||
|
rotation_distance: 40
|
||||||
|
microsteps: 64
|
||||||
|
position_max: 180
|
||||||
|
position_min: 0
|
||||||
|
homing_speed: 60
|
||||||
|
position_endstop: 0
|
||||||
|
|
||||||
|
[tmc2209 stepper_x]
|
||||||
|
uart_pin: PC4
|
||||||
|
run_current: 0.8
|
||||||
|
interpolate: false
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PG0
|
||||||
|
dir_pin: PG1
|
||||||
|
enable_pin: !PF15
|
||||||
|
endstop_pin: ^PG9
|
||||||
|
rotation_distance: 40
|
||||||
|
microsteps: 64
|
||||||
|
position_max: 180
|
||||||
|
position_min: 0
|
||||||
|
homing_speed: 60
|
||||||
|
position_endstop: 0
|
||||||
|
|
||||||
|
[tmc2209 stepper_y]
|
||||||
|
uart_pin: PD11
|
||||||
|
run_current: 0.8
|
||||||
|
interpolate: false
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PC13
|
||||||
|
dir_pin: !PF0
|
||||||
|
enable_pin: !PF1
|
||||||
|
endstop_pin: probe:z_virtual_endstop
|
||||||
|
rotation_distance: 4
|
||||||
|
position_min: -5
|
||||||
|
microsteps: 64
|
||||||
|
position_max: 180
|
||||||
|
|
||||||
|
[tmc2209 stepper_z]
|
||||||
|
uart_pin: PE4
|
||||||
|
run_current: 0.8
|
||||||
|
interpolate: false
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
rotation_distance: 5.57
|
||||||
|
full_steps_per_rotation: 200
|
||||||
|
filament_diameter: 1.750
|
||||||
|
step_pin: PF11
|
||||||
|
dir_pin: !PG3
|
||||||
|
enable_pin: !PG5
|
||||||
|
microsteps: 64
|
||||||
|
nozzle_diameter: 0.4
|
||||||
|
heater_pin: PA2
|
||||||
|
sensor_type: Generic 3950
|
||||||
|
sensor_pin: PF4
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 22.2
|
||||||
|
pid_Ki: 1.08
|
||||||
|
pid_Kd: 114
|
||||||
|
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 290
|
||||||
|
|
||||||
|
[tmc2209 extruder]
|
||||||
|
uart_pin: PC6
|
||||||
|
run_current: 0.70
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
interpolate: False
|
||||||
|
|
||||||
|
[probe]
|
||||||
|
pin: ^PB7
|
||||||
|
x_offset: -24.0
|
||||||
|
y_offset: -13.0
|
||||||
|
z_offset: 0.0
|
||||||
|
speed: 5
|
||||||
|
samples: 2
|
||||||
|
sample_retract_dist: 2
|
||||||
|
lift_speed: 5.0
|
||||||
|
samples_result: median
|
||||||
|
samples_tolerance: 0.02
|
||||||
|
samples_tolerance_retries: 5
|
||||||
|
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 300
|
||||||
|
horizontal_move_z: 5
|
||||||
|
mesh_min: 15,15
|
||||||
|
mesh_max: 150,160
|
||||||
|
probe_count: 5,5
|
||||||
|
fade_start: 1.0
|
||||||
|
fade_end: 10.0
|
||||||
|
mesh_pps: 2,2
|
||||||
|
algorithm: bicubic
|
||||||
|
bicubic_tension: .2
|
||||||
|
|
||||||
|
[screws_tilt_adjust]
|
||||||
|
screw1: 80, 108
|
||||||
|
screw1_name: Left Screw
|
||||||
|
screw2: 155, 72
|
||||||
|
screw2_name: Front Right Screw
|
||||||
|
screw3: 155, 147
|
||||||
|
screw3_name: Rear Right Screw
|
||||||
|
horizontal_move_z: 10
|
||||||
|
speed: 300
|
||||||
|
screw_thread: CCW-M4
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 90,90
|
||||||
|
z_hop: 5
|
||||||
|
speed: 300
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA1
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PF3
|
||||||
|
control: pid
|
||||||
|
pid_kp: 54.027
|
||||||
|
pid_ki: 0.770
|
||||||
|
pid_kd: 948.182
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 120
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA8
|
||||||
|
shutdown_speed: 0.0
|
||||||
|
|
||||||
|
[heater_fan hotend_cooling_fan]
|
||||||
|
pin: PE5
|
||||||
|
fan_speed: 1.0
|
||||||
|
heater: extruder
|
||||||
|
heater_temp: 50.0
|
||||||
|
|
||||||
|
[controller_fan controller_fan]
|
||||||
|
pin: PD12
|
||||||
|
fan_speed: 1.0
|
||||||
|
stepper: stepper_x, stepper_y, stepper_z
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 500
|
||||||
|
max_accel: 20000
|
||||||
|
max_z_velocity: 15
|
||||||
|
max_z_accel: 2000
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: INSERTSERIALIDHERE
|
||||||
|
|
||||||
|
[board_pins octopus_11_tmc2209]
|
||||||
|
aliases:
|
||||||
|
## Expansion ports
|
||||||
|
# EXP1 header
|
||||||
|
EXP1_1=PE8, EXP1_3=PE9, EXP1_5=PE12, EXP1_7=PE14, EXP1_9=<GND>,
|
||||||
|
EXP1_2=PE7, EXP1_4=PE10, EXP1_6=PE13, EXP1_8=PE15, EXP1_10=<5V>,
|
||||||
|
# EXP2 header
|
||||||
|
EXP2_1=PA6, EXP2_3=PB1, EXP2_5=PB2, EXP2_7=PC15, EXP2_9=<GND>,
|
||||||
|
EXP2_2=PA5, EXP2_4=PA4, EXP2_6=PA7, EXP2_8=<RST>, EXP2_10=PC5,
|
||||||
|
# Pins EXP2_1, EXP2_6, EXP2_2 are also MISO, MOSI, SCK of bus "spi2"
|
||||||
144
config/printer-sovol-sv05-2022.cfg
Normal file
144
config/printer-sovol-sv05-2022.cfg
Normal file
@@ -0,0 +1,144 @@
|
|||||||
|
# This file contains pin mappings for the stock 2022 Sovol SV05
|
||||||
|
# with the 32-bit Creality 4.2.2 board.
|
||||||
|
#
|
||||||
|
# To use this config, during "make menuconfig" select the STM32F103
|
||||||
|
# with a "28KiB bootloader" and serial (on USART1 PA10/PA9)
|
||||||
|
# communication.
|
||||||
|
#
|
||||||
|
# Flash this firmware by copying "out/klipper.bin" to a SD card and
|
||||||
|
# turning on the printer with the card inserted. The firmware
|
||||||
|
# filename must end in ".bin" and must not match the last filename
|
||||||
|
# that was flashed. Might need a renaming if printer dosnt flash.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
|
||||||
|
restart_method: command
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 1000
|
||||||
|
minimum_cruise_ratio: 0.0
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PC2
|
||||||
|
dir_pin: PB9
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^PA5
|
||||||
|
position_endstop: 220
|
||||||
|
position_max: 220
|
||||||
|
homing_speed: 50
|
||||||
|
position_min: -4
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PB8
|
||||||
|
dir_pin: PB7
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^PA6
|
||||||
|
position_endstop: 220
|
||||||
|
position_max: 220
|
||||||
|
position_min: -4
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PB6
|
||||||
|
dir_pin: PB5
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: probe:z_virtual_endstop
|
||||||
|
position_max: 300
|
||||||
|
position_min: -3
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA2
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC4
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
control: pid
|
||||||
|
pid_kp: 64.742
|
||||||
|
pid_ki: 0.827
|
||||||
|
pid_kd: 1267.326
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA0
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 70, 103
|
||||||
|
speed: 100
|
||||||
|
z_hop: 10
|
||||||
|
z_hop_speed: 20
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PB4
|
||||||
|
dir_pin: PB3
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 7.394
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
max_extrude_only_distance: 100.0
|
||||||
|
heater_pin: PA1
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC5
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 280
|
||||||
|
control: pid
|
||||||
|
pid_kp: 28.850
|
||||||
|
pid_ki: 1.658
|
||||||
|
pid_kd: 125.496
|
||||||
|
|
||||||
|
[bltouch]
|
||||||
|
sensor_pin: ^PB1
|
||||||
|
control_pin: PB0
|
||||||
|
z_offset: 0
|
||||||
|
x_offset: 40
|
||||||
|
y_offset: 7
|
||||||
|
samples: 2
|
||||||
|
samples_tolerance: 0.015
|
||||||
|
samples_tolerance_retries: 5
|
||||||
|
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 100
|
||||||
|
horizontal_move_z: 5
|
||||||
|
mesh_min: 40, 7
|
||||||
|
mesh_max: 220, 220
|
||||||
|
probe_count: 5, 5
|
||||||
|
algorithm: bicubic
|
||||||
|
fade_start: 1
|
||||||
|
fade_end: 10
|
||||||
|
|
||||||
|
[bed_screws]
|
||||||
|
screw1: 25,28
|
||||||
|
screw2: 195,28
|
||||||
|
screw3: 195,197
|
||||||
|
screw4: 25,197
|
||||||
|
|
||||||
|
[screws_tilt_adjust]
|
||||||
|
screw1: -4,21
|
||||||
|
screw1_name: front left screw
|
||||||
|
screw2: 155,21
|
||||||
|
screw2_name: front right screw
|
||||||
|
screw3: 155,190
|
||||||
|
screw3_name: rear right screw
|
||||||
|
screw4: -4,190
|
||||||
|
screw4_name: rear left screw
|
||||||
|
horizontal_move_z: 10
|
||||||
|
speed: 50
|
||||||
|
screw_thread: CW-M4
|
||||||
|
|
||||||
|
[display]
|
||||||
|
lcd_type: st7920
|
||||||
|
cs_pin: PB12
|
||||||
|
sclk_pin: PB13
|
||||||
|
sid_pin: PB15
|
||||||
|
encoder_pins: ^PB14, ^PB10
|
||||||
|
click_pin: ^!PB2
|
||||||
159
config/printer-sovol-sv06-2022.cfg
Normal file
159
config/printer-sovol-sv06-2022.cfg
Normal file
@@ -0,0 +1,159 @@
|
|||||||
|
# This file contains pin mappings for the stock Sovol SV06
|
||||||
|
# To use this config, during "make menuconfig" select the
|
||||||
|
# STM32F103 with a "28KiB bootloader" and serial (on USART1 PA10/PA9) communication.
|
||||||
|
# Also, since it is using the GD32F103, please select Disable SWD at startup
|
||||||
|
#
|
||||||
|
# Flash this firmware by copying "out/klipper.bin" to a SD card and
|
||||||
|
# turning on the printer with the card inserted. The firmware
|
||||||
|
# filename must end in ".bin" and must not match the last filename
|
||||||
|
# that was flashed.
|
||||||
|
#
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0
|
||||||
|
restart_method: command
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PC2
|
||||||
|
dir_pin: !PB9
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: tmc2209_stepper_x:virtual_endstop
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 220
|
||||||
|
homing_speed: 40
|
||||||
|
homing_retract_dist: 0
|
||||||
|
|
||||||
|
[tmc2209 stepper_x]
|
||||||
|
uart_pin: PC1
|
||||||
|
run_current: 0.860
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
interpolate: False
|
||||||
|
sense_resistor: 0.150
|
||||||
|
uart_address: 3
|
||||||
|
driver_SGTHRS: 81
|
||||||
|
diag_pin: PA5
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PB8
|
||||||
|
dir_pin: PB7
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: tmc2209_stepper_y:virtual_endstop
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 220
|
||||||
|
homing_speed: 40
|
||||||
|
homing_retract_dist: 0
|
||||||
|
|
||||||
|
[tmc2209 stepper_y]
|
||||||
|
uart_pin: PC0
|
||||||
|
run_current: 0.900
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
interpolate: False
|
||||||
|
sense_resistor: 0.150
|
||||||
|
uart_address: 3
|
||||||
|
driver_SGTHRS: 82
|
||||||
|
diag_pin: PA6
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PB6
|
||||||
|
dir_pin: !PB5
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 4
|
||||||
|
endstop_pin: probe:z_virtual_endstop
|
||||||
|
position_min: -4
|
||||||
|
position_max: 250
|
||||||
|
homing_speed: 4
|
||||||
|
|
||||||
|
[tmc2209 stepper_z]
|
||||||
|
uart_pin: PA15
|
||||||
|
run_current: 1.000
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
interpolate: False
|
||||||
|
sense_resistor: 0.150
|
||||||
|
uart_address: 3
|
||||||
|
diag_pin: PA7
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
max_extrude_only_distance: 100.0
|
||||||
|
step_pin: PB4
|
||||||
|
dir_pin: !PB3
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 4.56
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PA1
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC5
|
||||||
|
control: pid
|
||||||
|
pid_kd: 86.991
|
||||||
|
pid_kp: 21.479
|
||||||
|
pid_ki: 1.326
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 300
|
||||||
|
|
||||||
|
[tmc2209 extruder]
|
||||||
|
uart_pin: PC14
|
||||||
|
run_current: 0.550
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
interpolate: False
|
||||||
|
sense_resistor: 0.150
|
||||||
|
uart_address: 3
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA2
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC4
|
||||||
|
control: pid
|
||||||
|
pid_kp: 64.440
|
||||||
|
pid_ki: 0.773
|
||||||
|
pid_kd: 1343.571
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA0
|
||||||
|
|
||||||
|
[probe]
|
||||||
|
pin: PB1
|
||||||
|
x_offset: 27
|
||||||
|
y_offset: -20
|
||||||
|
z_offset: 0
|
||||||
|
samples: 2
|
||||||
|
samples_tolerance: 0.015
|
||||||
|
samples_tolerance_retries: 5
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 85,135
|
||||||
|
z_hop: 10
|
||||||
|
z_hop_speed: 5
|
||||||
|
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 120
|
||||||
|
horizontal_move_z: 5
|
||||||
|
mesh_min: 28, 20
|
||||||
|
mesh_max: 210, 205
|
||||||
|
probe_count: 10
|
||||||
|
algorithm: bicubic
|
||||||
|
fade_start: 1
|
||||||
|
fade_end: 10
|
||||||
|
fade_target: 0
|
||||||
|
|
||||||
|
[display]
|
||||||
|
lcd_type: st7920
|
||||||
|
cs_pin: PB12
|
||||||
|
sclk_pin: PB13
|
||||||
|
sid_pin: PB15
|
||||||
|
encoder_pins: ^PB14, ^PB10
|
||||||
|
click_pin: ^!PB2
|
||||||
147
config/printer-sovol-sv06-plus-2023.cfg
Normal file
147
config/printer-sovol-sv06-plus-2023.cfg
Normal file
@@ -0,0 +1,147 @@
|
|||||||
|
# This file contains pin mappings for the stock Sovol SV06 Plus
|
||||||
|
# To use this config, during "make menuconfig" select the
|
||||||
|
# STM32F103 with a "28KiB bootloader" and serial (on USART1 PA10/PA9) communication.
|
||||||
|
# Also, since it is using the GD32F103, please select Disable SWD at startup
|
||||||
|
#
|
||||||
|
# Flash this firmware by copying "out/klipper.bin" to a SD card and
|
||||||
|
# turning on the printer with the card inserted. The firmware
|
||||||
|
# filename must end in ".bin" and must not match the last filename
|
||||||
|
# that was flashed.
|
||||||
|
#
|
||||||
|
# Note: The stock LCD display does not currently work with Klipper
|
||||||
|
#
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0
|
||||||
|
restart_method: command
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 500
|
||||||
|
max_accel: 2000
|
||||||
|
max_z_velocity: 10
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PC2
|
||||||
|
dir_pin: !PB9
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: tmc2209_stepper_x:virtual_endstop
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 305
|
||||||
|
homing_speed: 40
|
||||||
|
homing_retract_dist: 0
|
||||||
|
|
||||||
|
[tmc2209 stepper_x]
|
||||||
|
uart_pin: PC1
|
||||||
|
run_current: 0.860
|
||||||
|
sense_resistor: 0.150
|
||||||
|
uart_address: 3
|
||||||
|
driver_SGTHRS: 86
|
||||||
|
diag_pin: PA5
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PB8
|
||||||
|
dir_pin: PB7
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: tmc2209_stepper_y:virtual_endstop
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 305
|
||||||
|
homing_speed: 40
|
||||||
|
homing_retract_dist: 0
|
||||||
|
|
||||||
|
[tmc2209 stepper_y]
|
||||||
|
uart_pin: PC0
|
||||||
|
run_current: 0.900
|
||||||
|
sense_resistor: 0.150
|
||||||
|
uart_address: 3
|
||||||
|
driver_SGTHRS: 110
|
||||||
|
diag_pin: PA6
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PB6
|
||||||
|
dir_pin: !PB5
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 4
|
||||||
|
endstop_pin: probe:z_virtual_endstop
|
||||||
|
position_min: -4
|
||||||
|
position_max: 350
|
||||||
|
homing_speed: 4
|
||||||
|
|
||||||
|
[tmc2209 stepper_z]
|
||||||
|
uart_pin: PA15
|
||||||
|
run_current: 1.000
|
||||||
|
interpolate: False
|
||||||
|
sense_resistor: 0.150
|
||||||
|
uart_address: 3
|
||||||
|
diag_pin: PA7
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
max_extrude_only_distance: 100.0
|
||||||
|
step_pin: PB4
|
||||||
|
dir_pin: !PB3
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 4.56
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PA1
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC5
|
||||||
|
control: pid
|
||||||
|
pid_kd: 41.96
|
||||||
|
pid_kp: 15.66
|
||||||
|
pid_ki: 1.49
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 300
|
||||||
|
|
||||||
|
[tmc2209 extruder]
|
||||||
|
uart_pin: PC14
|
||||||
|
run_current: 0.550
|
||||||
|
stealthchop_threshold: 0
|
||||||
|
interpolate: False
|
||||||
|
sense_resistor: 0.150
|
||||||
|
uart_address: 3
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA2
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC4
|
||||||
|
control: pid
|
||||||
|
pid_kp: 186.38
|
||||||
|
pid_ki: 36.12
|
||||||
|
pid_kd: 637.30
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA0
|
||||||
|
|
||||||
|
[probe]
|
||||||
|
pin: PB1
|
||||||
|
x_offset: 28
|
||||||
|
y_offset: -20
|
||||||
|
z_offset: 0
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 123,170
|
||||||
|
z_hop: 10
|
||||||
|
z_hop_speed: 5
|
||||||
|
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 120
|
||||||
|
mesh_min: 28, 20
|
||||||
|
mesh_max: 270, 270
|
||||||
|
probe_count: 5
|
||||||
|
algorithm: bicubic
|
||||||
|
fade_end: 10
|
||||||
|
fade_target: 0
|
||||||
|
|
||||||
|
[filament_switch_sensor filament_runout_sensor]
|
||||||
|
switch_pin: PA4
|
||||||
|
pause_on_runout: True
|
||||||
198
config/printer-sunlu-t3-2022.cfg
Normal file
198
config/printer-sunlu-t3-2022.cfg
Normal file
@@ -0,0 +1,198 @@
|
|||||||
|
# This file contains common pin mappings for the SUNLU Terminator T3 board
|
||||||
|
|
||||||
|
# To use this config, the firmware should be compiled for the
|
||||||
|
# STM32F103 with a "28KiB bootloader" and USB communication.
|
||||||
|
# Select "Disable SWD at startup (for GigaDevice stmf32f103 clones)"
|
||||||
|
# Also, select "Enable extra low-level configuration options" and configure
|
||||||
|
# "GPIO pins to set at micro-controller startup" to "!PA14".
|
||||||
|
|
||||||
|
# The "make flash" command does not work on the SUNLU Terminator T3 board. Instead,
|
||||||
|
# after running "make", copy the generated "out/klipper.bin" file to a
|
||||||
|
# file named "firmware.bin" on an SD card and then restart the board with that SD card.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
# Rename the file to printer.cfg
|
||||||
|
|
||||||
|
##################################################################
|
||||||
|
# Printer
|
||||||
|
##################################################################
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
#obtain your MCU id using ls /dev/serial/by-path/*
|
||||||
|
serial: dev/serial/by-id/usb-Klipper_stm32f103xe_00000000000
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
[static_digital_output usb_pullup_enable]
|
||||||
|
pins: !PA14
|
||||||
|
|
||||||
|
[bltouch]
|
||||||
|
sensor_pin: PC14
|
||||||
|
control_pin: PA1
|
||||||
|
x_offset: -28.45
|
||||||
|
y_offset: 4
|
||||||
|
z_offset: 1.915
|
||||||
|
pin_up_touch_mode_reports_triggered: FALSE #needed bc of the bltouch clone used by sunlu
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 115,115
|
||||||
|
speed: 75
|
||||||
|
z_hop: 10
|
||||||
|
z_hop_speed: 5
|
||||||
|
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 120
|
||||||
|
horizontal_move_z: 5
|
||||||
|
mesh_min: 10, 10
|
||||||
|
mesh_max: 190, 220
|
||||||
|
probe_count: 5,5
|
||||||
|
fade_start: 1
|
||||||
|
fade_end: 10
|
||||||
|
|
||||||
|
[bed_screws]
|
||||||
|
#for BED_SCREWS_ADJUST
|
||||||
|
screw1: 31,38 #X,Y Position
|
||||||
|
screw1_name: Front Left
|
||||||
|
screw2: 201,38 #X,Y Position
|
||||||
|
screw2_name: Front Right
|
||||||
|
screw3: 201,204 #X,Y Position
|
||||||
|
screw3_name: Rear Right
|
||||||
|
screw4: 31,204 #X,Y Position
|
||||||
|
screw4_name: Rear Left
|
||||||
|
|
||||||
|
##IMPORTANT. If using the filament sensor add CLEAR_PAUSE to your slicer's start gcode or to your print start macro.##
|
||||||
|
##The act of loading and unloading filament will trigger a paused state##
|
||||||
|
[filament_motion_sensor Filament_Sensor]
|
||||||
|
detection_length: 7.0
|
||||||
|
extruder: extruder
|
||||||
|
switch_pin: !PC15
|
||||||
|
pause_on_runout: FALSE
|
||||||
|
runout_gcode: PAUSE
|
||||||
|
|
||||||
|
#########################################################
|
||||||
|
# Motion Axis
|
||||||
|
#########################################################
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PB13
|
||||||
|
dir_pin: !PB12
|
||||||
|
enable_pin: !PB14
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: !PC0
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 235
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PB10
|
||||||
|
dir_pin: !PB2
|
||||||
|
enable_pin: !PB11
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: !PC1
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 235
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PB0
|
||||||
|
dir_pin: PC5
|
||||||
|
enable_pin: !PB1
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 4
|
||||||
|
position_max: 250
|
||||||
|
endstop_pin: probe:z_virtual_endstop
|
||||||
|
|
||||||
|
###################################################
|
||||||
|
# Heaters
|
||||||
|
###################################################
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PB3
|
||||||
|
dir_pin: !PB4
|
||||||
|
enable_pin: !PD2
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 23.18840579710145
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PC8
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PA0
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 19.479
|
||||||
|
pid_Ki: 1.073
|
||||||
|
pid_Kd: 88.385
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PC9
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC3
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 62.673
|
||||||
|
pid_Ki: 1.530
|
||||||
|
pid_Kd: 641.619
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
#########################################
|
||||||
|
# Fans
|
||||||
|
#########################################
|
||||||
|
|
||||||
|
[heater_fan Hotend]
|
||||||
|
pin: PC7
|
||||||
|
heater: extruder
|
||||||
|
heater_temp: 50.0
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PC6
|
||||||
|
|
||||||
|
###############################################
|
||||||
|
# Stock Screen
|
||||||
|
###############################################
|
||||||
|
|
||||||
|
[board_pins]
|
||||||
|
aliases:
|
||||||
|
# EXP1 header
|
||||||
|
EXP1_1=PB5, EXP1_3=PA9, EXP1_5=PA10, EXP1_7=PB8, EXP1_9=<GND>,
|
||||||
|
EXP1_2=PA15, EXP1_4=<RST>, EXP1_6=PB9, EXP1_8=PB15, EXP1_10=<5V>
|
||||||
|
|
||||||
|
[display]
|
||||||
|
lcd_type: st7920
|
||||||
|
cs_pin: PB8 #EXP1_7
|
||||||
|
sclk_pin: PB9 #EXP1_6
|
||||||
|
sid_pin: PB15 #EXP1_8
|
||||||
|
encoder_pins: ^PA10, ^PA9 #^EXP1_5, ^EXP1_3
|
||||||
|
click_pin: ^!PA15 #^!EXP1_2
|
||||||
|
|
||||||
|
[output_pin beeper]
|
||||||
|
pin: PB5 #EXP1_1
|
||||||
|
pwm: True
|
||||||
|
value: 0
|
||||||
|
shutdown_value: 0
|
||||||
|
cycle_time: 0.001
|
||||||
|
scale: 1
|
||||||
|
[gcode_macro M300]
|
||||||
|
gcode:
|
||||||
|
{% set S = params.S|default(1000)|int %} ; S sets the tone frequency
|
||||||
|
{% set P = params.P|default(100)|int %} ; P sets the tone duration
|
||||||
|
{% set L = 0.5 %} ; L varies the PWM on time, close to 0 or 1 the tone gets a bit quieter. 0.5 is a symmetric waveform
|
||||||
|
{% if S <= 0 %} ; dont divide through zero
|
||||||
|
{% set F = 1 %}
|
||||||
|
{% set L = 0 %}
|
||||||
|
{% elif S >= 10000 %} ;max frequency set to 10kHz
|
||||||
|
{% set F = 0 %}
|
||||||
|
{% else %}
|
||||||
|
{% set F = 1/S %} ;convert frequency to seconds
|
||||||
|
{% endif %}
|
||||||
|
SET_PIN PIN=beeper VALUE={L} CYCLE_TIME={F} ;Play tone
|
||||||
|
G4 P{P} ;tone duration
|
||||||
|
SET_PIN PIN=beeper VALUE=0
|
||||||
@@ -78,7 +78,7 @@ pid_Kd: 698.838
|
|||||||
min_temp: 0
|
min_temp: 0
|
||||||
max_temp: 70
|
max_temp: 70
|
||||||
|
|
||||||
[heater_fan my_nozzle_fan]
|
[heater_fan heatbreak_cooling_fan]
|
||||||
pin: PH4
|
pin: PH4
|
||||||
|
|
||||||
[fan]
|
[fan]
|
||||||
|
|||||||
138
config/printer-tronxy-crux1-2022.cfg
Normal file
138
config/printer-tronxy-crux1-2022.cfg
Normal file
@@ -0,0 +1,138 @@
|
|||||||
|
# Klipper configuration for the TronXY Crux1 printer
|
||||||
|
# CXY-V10.1-220921 mainboard, GD32F4XX or STM32F446 MCU
|
||||||
|
#
|
||||||
|
# =======================
|
||||||
|
# BUILD AND FLASH OPTIONS
|
||||||
|
# =======================
|
||||||
|
#
|
||||||
|
# MCU-architecture: STMicroelectronics
|
||||||
|
# Processor model: STM32F446
|
||||||
|
# Bootloader offset: 64KiB
|
||||||
|
# Comms interface: Serial on USART1 PA10/PA9
|
||||||
|
#
|
||||||
|
# Build the firmware with these options
|
||||||
|
# Rename the resulting klipper.bin into fmw_tronxy.bin
|
||||||
|
# Put the file into a directory called "update" on a FAT32 formatted SD card.
|
||||||
|
# Turn off the printer, plug in the SD card and turn the printer back on
|
||||||
|
# Flashing will start automatically and progress will be indicated on the LCD
|
||||||
|
# Once the flashing is completed the display will get stuck on the white Tronxy logo bootscreen
|
||||||
|
# The LCD display will NOT work anymore after flashing Klipper onto this printer
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
|
||||||
|
restart_method: command
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 250
|
||||||
|
max_accel: 1500
|
||||||
|
square_corner_velocity: 5
|
||||||
|
max_z_velocity: 15
|
||||||
|
max_z_accel: 100
|
||||||
|
|
||||||
|
[controller_fan drivers_fan]
|
||||||
|
pin: PD7
|
||||||
|
|
||||||
|
[pwm_cycle_time BEEPER_pin]
|
||||||
|
pin: PA8
|
||||||
|
value: 0
|
||||||
|
shutdown_value: 0
|
||||||
|
cycle_time: 0.001
|
||||||
|
|
||||||
|
[safe_z_home]
|
||||||
|
home_xy_position: 0, 0
|
||||||
|
speed: 100
|
||||||
|
z_hop: 10
|
||||||
|
z_hop_speed: 5
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PE5
|
||||||
|
dir_pin: PF1
|
||||||
|
enable_pin: !PF0
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 20
|
||||||
|
endstop_pin: ^!PC15
|
||||||
|
position_endstop: -1
|
||||||
|
position_min: -1
|
||||||
|
position_max: 180
|
||||||
|
homing_speed: 100
|
||||||
|
homing_retract_dist: 10
|
||||||
|
second_homing_speed: 25
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PF9
|
||||||
|
dir_pin: !PF3
|
||||||
|
enable_pin: !PF5
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 20
|
||||||
|
endstop_pin: ^!PC14
|
||||||
|
position_endstop: -3
|
||||||
|
position_min: -3
|
||||||
|
position_max: 180
|
||||||
|
homing_retract_dist: 10
|
||||||
|
homing_speed: 100
|
||||||
|
second_homing_speed: 25
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PA6
|
||||||
|
dir_pin: !PF15
|
||||||
|
enable_pin: !PA5
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 4
|
||||||
|
endstop_pin: ^!PC13
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 180
|
||||||
|
position_min: 0
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: PB1
|
||||||
|
dir_pin: PF13
|
||||||
|
enable_pin: !PF14
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 16.75
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PG7
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC3
|
||||||
|
control: pid
|
||||||
|
pid_kp: 22.2
|
||||||
|
pid_ki: 1.08
|
||||||
|
pid_kd: 114.00
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
min_extrude_temp: 170
|
||||||
|
max_extrude_only_distance: 450
|
||||||
|
|
||||||
|
[heater_fan hotend_fan]
|
||||||
|
heater: extruder
|
||||||
|
heater_temp: 50.0
|
||||||
|
pin: PG9
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PG0
|
||||||
|
|
||||||
|
[filament_switch_sensor filament_sensor]
|
||||||
|
pause_on_runout: True
|
||||||
|
switch_pin: ^!PE6
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PE2
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC2
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
control: pid
|
||||||
|
pid_kp: 10.00
|
||||||
|
pid_ki: 0.023
|
||||||
|
pid_kd: 305.4
|
||||||
|
|
||||||
|
[bed_screws]
|
||||||
|
screw1: 17.5, 11
|
||||||
|
screw1_name: front_left
|
||||||
|
screw2: 162.5, 11
|
||||||
|
screw2_name: front_right
|
||||||
|
screw3: 162.5, 162.5
|
||||||
|
screw3_name: back_right
|
||||||
|
screw4: 17.5, 162.5
|
||||||
|
screw4_name: back_left
|
||||||
84
config/printer-voxelab-aquila-2021.cfg
Normal file
84
config/printer-voxelab-aquila-2021.cfg
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
# This file contains pin mappings for the Voxelab Aquila
|
||||||
|
# with the FFP0173 1.0.1 mainboard. To use this config, during
|
||||||
|
# "make menuconfig" select the STM32F103 for STM32/G32, or
|
||||||
|
# Nation N32G452 for N32 version, 28KB boot, serial PA9/PA10.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[stepper_x]
|
||||||
|
step_pin: PC2
|
||||||
|
dir_pin: PB9
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^PA5
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 235
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_y]
|
||||||
|
step_pin: PB8
|
||||||
|
dir_pin: PB7
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 40
|
||||||
|
endstop_pin: ^PA6
|
||||||
|
position_endstop: 0
|
||||||
|
position_max: 235
|
||||||
|
homing_speed: 50
|
||||||
|
|
||||||
|
[stepper_z]
|
||||||
|
step_pin: PB6
|
||||||
|
dir_pin: !PB5
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 8
|
||||||
|
endstop_pin: ^PA7
|
||||||
|
position_endstop: 0.0
|
||||||
|
position_max: 250
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
max_extrude_only_distance: 100.0
|
||||||
|
step_pin: PB4
|
||||||
|
dir_pin: PB3
|
||||||
|
enable_pin: !PC3
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 34.406
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: PA1
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC5
|
||||||
|
control: pid
|
||||||
|
# tuned for stock hardware with 200 degree Celsius target
|
||||||
|
pid_Kp: 21.527
|
||||||
|
pid_Ki: 1.063
|
||||||
|
pid_Kd: 108.982
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
[heater_bed]
|
||||||
|
heater_pin: PA2
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: PC4
|
||||||
|
control: pid
|
||||||
|
# tuned for stock hardware with 50 degree Celsius target
|
||||||
|
pid_Kp: 54.027
|
||||||
|
pid_Ki: 0.770
|
||||||
|
pid_Kd: 948.182
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 130
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: PA0
|
||||||
|
|
||||||
|
[mcu]
|
||||||
|
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
|
||||||
|
restart_method: command
|
||||||
|
|
||||||
|
[printer]
|
||||||
|
kinematics: cartesian
|
||||||
|
max_velocity: 300
|
||||||
|
max_accel: 3000
|
||||||
|
max_z_velocity: 5
|
||||||
|
max_z_accel: 100
|
||||||
@@ -86,7 +86,7 @@ pwm: True
|
|||||||
scale: 2.782
|
scale: 2.782
|
||||||
cycle_time: .000030
|
cycle_time: .000030
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
static_value: 1.2
|
value: 1.2
|
||||||
|
|
||||||
[output_pin stepper_z_current]
|
[output_pin stepper_z_current]
|
||||||
pin: PL4
|
pin: PL4
|
||||||
@@ -94,7 +94,7 @@ pwm: True
|
|||||||
scale: 2.782
|
scale: 2.782
|
||||||
cycle_time: .000030
|
cycle_time: .000030
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
static_value: 1.2
|
value: 1.2
|
||||||
|
|
||||||
[output_pin stepper_e_current]
|
[output_pin stepper_e_current]
|
||||||
pin: PL3
|
pin: PL3
|
||||||
@@ -102,7 +102,7 @@ pwm: True
|
|||||||
scale: 2.782
|
scale: 2.782
|
||||||
cycle_time: .000030
|
cycle_time: .000030
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
static_value: 1.0
|
value: 1.0
|
||||||
|
|
||||||
[display]
|
[display]
|
||||||
lcd_type: ssd1306
|
lcd_type: ssd1306
|
||||||
|
|||||||
@@ -10,21 +10,21 @@ serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
|||||||
#canbus_uuid: 0e0d81e4210c
|
#canbus_uuid: 0e0d81e4210c
|
||||||
|
|
||||||
[adxl345]
|
[adxl345]
|
||||||
cs_pin: EBBCan: PB12
|
cs_pin: EBBCan:PB12
|
||||||
spi_bus: spi2
|
spi_bus: spi2
|
||||||
axes_map: x,y,z
|
axes_map: x,y,z
|
||||||
|
|
||||||
[extruder]
|
[extruder]
|
||||||
step_pin: EBBCan: PA9
|
step_pin: EBBCan:PA9
|
||||||
dir_pin: !EBBCan: PA8
|
dir_pin: !EBBCan:PA8
|
||||||
enable_pin: !EBBCan: PA10
|
enable_pin: !EBBCan:PA10
|
||||||
microsteps: 16
|
microsteps: 16
|
||||||
rotation_distance: 33.500
|
rotation_distance: 33.500
|
||||||
nozzle_diameter: 0.400
|
nozzle_diameter: 0.400
|
||||||
filament_diameter: 1.750
|
filament_diameter: 1.750
|
||||||
heater_pin: EBBCan: PB1
|
heater_pin: EBBCan:PB1
|
||||||
sensor_type: EPCOS 100K B57560G104F
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
sensor_pin: EBBCan: PA0
|
sensor_pin: EBBCan:PA0
|
||||||
control: pid
|
control: pid
|
||||||
pid_Kp: 21.527
|
pid_Kp: 21.527
|
||||||
pid_Ki: 1.063
|
pid_Ki: 1.063
|
||||||
@@ -33,22 +33,22 @@ min_temp: 0
|
|||||||
max_temp: 250
|
max_temp: 250
|
||||||
|
|
||||||
#sensor_type:MAX31865
|
#sensor_type:MAX31865
|
||||||
#sensor_pin: EBBCan: PA15
|
#sensor_pin: EBBCan:PA15
|
||||||
#spi_bus: spi1a
|
#spi_bus: spi1a
|
||||||
#rtd_nominal_r: 100
|
#rtd_nominal_r: 100
|
||||||
#rtd_reference_r: 430
|
#rtd_reference_r: 430
|
||||||
#rtd_num_of_wires: 2
|
#rtd_num_of_wires: 2
|
||||||
|
|
||||||
[tmc2209 extruder]
|
[tmc2209 extruder]
|
||||||
uart_pin: EBBCan: PA13
|
uart_pin: EBBCan:PA13
|
||||||
run_current: 0.650
|
run_current: 0.650
|
||||||
stealthchop_threshold: 999999
|
stealthchop_threshold: 999999
|
||||||
|
|
||||||
[fan]
|
[fan]
|
||||||
pin: EBBCan: PA1
|
pin: EBBCan:PA1
|
||||||
|
|
||||||
[heater_fan hotend_fan]
|
[heater_fan hotend_fan]
|
||||||
pin: EBBCan: PA2
|
pin: EBBCan:PA2
|
||||||
heater: extruder
|
heater: extruder
|
||||||
heater_temp: 50.0
|
heater_temp: 50.0
|
||||||
|
|
||||||
|
|||||||
@@ -10,23 +10,23 @@ serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
|||||||
#canbus_uuid: 0e0d81e4210c
|
#canbus_uuid: 0e0d81e4210c
|
||||||
|
|
||||||
[adxl345]
|
[adxl345]
|
||||||
cs_pin: EBBCan: PB12
|
cs_pin: EBBCan:PB12
|
||||||
spi_software_sclk_pin: EBBCan: PB10
|
spi_software_sclk_pin: EBBCan:PB10
|
||||||
spi_software_mosi_pin: EBBCan: PB11
|
spi_software_mosi_pin: EBBCan:PB11
|
||||||
spi_software_miso_pin: EBBCan: PB2
|
spi_software_miso_pin: EBBCan:PB2
|
||||||
axes_map: x,y,z
|
axes_map: x,y,z
|
||||||
|
|
||||||
[extruder]
|
[extruder]
|
||||||
step_pin: EBBCan: PD0
|
step_pin: EBBCan:PD0
|
||||||
dir_pin: !EBBCan: PD1
|
dir_pin: !EBBCan:PD1
|
||||||
enable_pin: !EBBCan: PD2
|
enable_pin: !EBBCan:PD2
|
||||||
microsteps: 16
|
microsteps: 16
|
||||||
rotation_distance: 33.500
|
rotation_distance: 33.500
|
||||||
nozzle_diameter: 0.400
|
nozzle_diameter: 0.400
|
||||||
filament_diameter: 1.750
|
filament_diameter: 1.750
|
||||||
heater_pin: EBBCan: PA2
|
heater_pin: EBBCan:PA2
|
||||||
sensor_type: EPCOS 100K B57560G104F
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
sensor_pin: EBBCan: PA3
|
sensor_pin: EBBCan:PA3
|
||||||
control: pid
|
control: pid
|
||||||
pid_Kp: 21.527
|
pid_Kp: 21.527
|
||||||
pid_Ki: 1.063
|
pid_Ki: 1.063
|
||||||
@@ -35,22 +35,22 @@ min_temp: 0
|
|||||||
max_temp: 250
|
max_temp: 250
|
||||||
|
|
||||||
# sensor_type:MAX31865
|
# sensor_type:MAX31865
|
||||||
# sensor_pin: EBBCan: PA4
|
# sensor_pin: EBBCan:PA4
|
||||||
# spi_bus: spi1
|
# spi_bus: spi1
|
||||||
# rtd_nominal_r: 100
|
# rtd_nominal_r: 100
|
||||||
# rtd_reference_r: 430
|
# rtd_reference_r: 430
|
||||||
# rtd_num_of_wires: 2
|
# rtd_num_of_wires: 2
|
||||||
|
|
||||||
[tmc2209 extruder]
|
[tmc2209 extruder]
|
||||||
uart_pin: EBBCan: PA15
|
uart_pin: EBBCan:PA15
|
||||||
run_current: 0.650
|
run_current: 0.650
|
||||||
stealthchop_threshold: 999999
|
stealthchop_threshold: 999999
|
||||||
|
|
||||||
[fan]
|
[fan]
|
||||||
pin: EBBCan: PA0
|
pin: EBBCan:PA0
|
||||||
|
|
||||||
[heater_fan hotend_fan]
|
[heater_fan hotend_fan]
|
||||||
pin: EBBCan: PA1
|
pin: EBBCan:PA1
|
||||||
heater: extruder
|
heater: extruder
|
||||||
heater_temp: 50.0
|
heater_temp: 50.0
|
||||||
|
|
||||||
|
|||||||
68
config/sample-bigtreetech-ebb-canbus-v1.2.cfg
Normal file
68
config/sample-bigtreetech-ebb-canbus-v1.2.cfg
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
# This file contains common pin mappings for the BIGTREETECH EBBCan
|
||||||
|
# Canbus board. To use this config, the firmware should be compiled for the
|
||||||
|
# STM32G0B1 with "8 MHz crystal" and "USB (on PA11/PA12)" or "CAN bus (on PB0/PB1)".
|
||||||
|
# The "EBB Can" micro-controller will be used to control the components on the nozzle.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[mcu EBBCan]
|
||||||
|
serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
||||||
|
#canbus_uuid: 0e0d81e4210c
|
||||||
|
|
||||||
|
[adxl345]
|
||||||
|
cs_pin: EBBCan:PB12
|
||||||
|
spi_software_sclk_pin: EBBCan:PB10
|
||||||
|
spi_software_mosi_pin: EBBCan:PB11
|
||||||
|
spi_software_miso_pin: EBBCan:PB2
|
||||||
|
axes_map: x,y,z
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: EBBCan:PD0
|
||||||
|
dir_pin: !EBBCan:PD1
|
||||||
|
enable_pin: !EBBCan:PD2
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 33.500
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: EBBCan:PB13
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: EBBCan:PA3
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 21.527
|
||||||
|
pid_Ki: 1.063
|
||||||
|
pid_Kd: 108.982
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
# sensor_type:MAX31865
|
||||||
|
# sensor_pin: EBBCan:PA4
|
||||||
|
# spi_bus: spi1
|
||||||
|
# rtd_nominal_r: 100
|
||||||
|
# rtd_reference_r: 430
|
||||||
|
# rtd_num_of_wires: 2
|
||||||
|
|
||||||
|
[tmc2209 extruder]
|
||||||
|
uart_pin: EBBCan:PA15
|
||||||
|
run_current: 0.650
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: EBBCan:PA0
|
||||||
|
|
||||||
|
[heater_fan hotend_fan]
|
||||||
|
pin: EBBCan:PA1
|
||||||
|
heater: extruder
|
||||||
|
heater_temp: 50.0
|
||||||
|
|
||||||
|
#[neopixel hotend_rgb]
|
||||||
|
#pin: EBBCan:PD3
|
||||||
|
|
||||||
|
#[bltouch]
|
||||||
|
#sensor_pin: ^EBBCan:PB8
|
||||||
|
#control_pin: EBBCan:PB9
|
||||||
|
|
||||||
|
#[filament_switch_sensor switch_sensor]
|
||||||
|
#switch_pin: EBBCan:PB4
|
||||||
|
|
||||||
|
#[filament_motion_sensor motion_sensor]
|
||||||
|
#switch_pin: ^EBBCan:PB3
|
||||||
84
config/sample-bigtreetech-ebb-sb-canbus-v1.0.cfg
Normal file
84
config/sample-bigtreetech-ebb-sb-canbus-v1.0.cfg
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
# This file contains common pin mappings for the BIGTREETECH EBBCan
|
||||||
|
# Canbus board. To use this config, the firmware should be compiled for the
|
||||||
|
# STM32G0B1 with "8 MHz crystal" and "USB (on PA11/PA12)" or "CAN bus (on PB0/PB1)".
|
||||||
|
# The "EBB Can" micro-controller will be used to control the components on the nozzle.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
[mcu EBBCan]
|
||||||
|
serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
||||||
|
#canbus_uuid: 0e0d81e4210c
|
||||||
|
|
||||||
|
[temperature_sensor EBB_NTC]
|
||||||
|
sensor_type: Generic 3950
|
||||||
|
sensor_pin: EBBCan:PA2
|
||||||
|
|
||||||
|
[adxl345]
|
||||||
|
cs_pin: EBBCan:PB12
|
||||||
|
spi_software_sclk_pin: EBBCan:PB10
|
||||||
|
spi_software_mosi_pin: EBBCan:PB11
|
||||||
|
spi_software_miso_pin: EBBCan:PB2
|
||||||
|
axes_map: x,y,z
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: EBBCan:PD0
|
||||||
|
dir_pin: !EBBCan:PD1
|
||||||
|
enable_pin: !EBBCan:PD2
|
||||||
|
microsteps: 16
|
||||||
|
rotation_distance: 33.500
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.750
|
||||||
|
heater_pin: EBBCan:PB13
|
||||||
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
|
sensor_pin: EBBCan:PA3
|
||||||
|
control: pid
|
||||||
|
pid_Kp: 21.527
|
||||||
|
pid_Ki: 1.063
|
||||||
|
pid_Kd: 108.982
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 250
|
||||||
|
|
||||||
|
# sensor_type:MAX31865
|
||||||
|
# sensor_pin: EBBCan:PA4
|
||||||
|
# spi_bus: spi1
|
||||||
|
# rtd_nominal_r: 100
|
||||||
|
# rtd_reference_r: 430
|
||||||
|
# rtd_num_of_wires: 2
|
||||||
|
|
||||||
|
[tmc2209 extruder]
|
||||||
|
uart_pin: EBBCan:PA15
|
||||||
|
run_current: 0.650
|
||||||
|
stealthchop_threshold: 999999
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: EBBCan:PA0
|
||||||
|
|
||||||
|
[heater_fan hotend_fan]
|
||||||
|
pin: EBBCan:PA1
|
||||||
|
heater: extruder
|
||||||
|
heater_temp: 50.0
|
||||||
|
|
||||||
|
#[heater_fan 4W_FAN0]
|
||||||
|
#pin: EBBCan:PB14
|
||||||
|
#tachometer_pin: EBBCan:PB15
|
||||||
|
#tachometer_ppr: 1
|
||||||
|
|
||||||
|
#[neopixel hotend_rgb]
|
||||||
|
#pin: EBBCan:PD3
|
||||||
|
|
||||||
|
#[bltouch]
|
||||||
|
#sensor_pin: ^EBBCan:PB8
|
||||||
|
#control_pin: EBBCan:PB9
|
||||||
|
|
||||||
|
## NPN and PNP proximity switch types can be set by jumper
|
||||||
|
#[probe]
|
||||||
|
#pin: ^EBBCan:PC13
|
||||||
|
|
||||||
|
#[output_pin PB5]
|
||||||
|
#pin: EBBCan:PB5
|
||||||
|
|
||||||
|
#[output_pin PB7]
|
||||||
|
#pin: EBBCan:PB7
|
||||||
|
|
||||||
|
#[output_pin PB6]
|
||||||
|
#pin: EBBCan:PB6
|
||||||
@@ -10,21 +10,21 @@ serial: /dev/serial/by-id/usb-Klipper_Klipper_firmware_12345-if00
|
|||||||
#canbus_uuid: 0e0d81e4210c
|
#canbus_uuid: 0e0d81e4210c
|
||||||
|
|
||||||
[adxl345]
|
[adxl345]
|
||||||
cs_pin: HermitCrab: PB12
|
cs_pin: HermitCrab:PB12
|
||||||
spi_bus: spi2
|
spi_bus: spi2
|
||||||
axes_map: y,z,-x
|
axes_map: y,z,-x
|
||||||
|
|
||||||
[extruder]
|
[extruder]
|
||||||
step_pin: HermitCrab: PA6
|
step_pin: HermitCrab:PA6
|
||||||
dir_pin: !HermitCrab: PA7
|
dir_pin: !HermitCrab:PA7
|
||||||
enable_pin: !HermitCrab: PA5
|
enable_pin: !HermitCrab:PA5
|
||||||
microsteps: 16
|
microsteps: 16
|
||||||
rotation_distance: 33.500
|
rotation_distance: 33.500
|
||||||
nozzle_diameter: 0.400
|
nozzle_diameter: 0.400
|
||||||
filament_diameter: 1.750
|
filament_diameter: 1.750
|
||||||
heater_pin: HermitCrab: PA2
|
heater_pin: HermitCrab:PA2
|
||||||
sensor_type: EPCOS 100K B57560G104F
|
sensor_type: EPCOS 100K B57560G104F
|
||||||
sensor_pin: HermitCrab: PA1
|
sensor_pin: HermitCrab:PA1
|
||||||
control: pid
|
control: pid
|
||||||
pid_Kp: 21.527
|
pid_Kp: 21.527
|
||||||
pid_Ki: 1.063
|
pid_Ki: 1.063
|
||||||
@@ -33,15 +33,15 @@ min_temp: 0
|
|||||||
max_temp: 250
|
max_temp: 250
|
||||||
|
|
||||||
[tmc2209 extruder]
|
[tmc2209 extruder]
|
||||||
uart_pin: HermitCrab: PB0
|
uart_pin: HermitCrab:PB0
|
||||||
run_current: 0.650
|
run_current: 0.650
|
||||||
stealthchop_threshold: 999999
|
stealthchop_threshold: 999999
|
||||||
|
|
||||||
[fan]
|
[fan]
|
||||||
pin: HermitCrab: PA4
|
pin: HermitCrab:PA4
|
||||||
|
|
||||||
[heater_fan hotend_fan]
|
[heater_fan hotend_fan]
|
||||||
pin: HermitCrab: PA3
|
pin: HermitCrab:PA3
|
||||||
heater: extruder
|
heater: extruder
|
||||||
heater_temp: 50.0
|
heater_temp: 50.0
|
||||||
|
|
||||||
|
|||||||
90
config/sample-duet3-1lc.cfg
Normal file
90
config/sample-duet3-1lc.cfg
Normal file
@@ -0,0 +1,90 @@
|
|||||||
|
# This file contains common pin mappings for the Duet3 1LC. To use
|
||||||
|
# this config, the firmware should be compiled for the SAMC21G18 with:
|
||||||
|
# Bootloader offset of "No Bootloader"
|
||||||
|
# Clock Reference of "25 Mhz crystal" if the board version is v1.1 or later
|
||||||
|
# Clock Reference of "12 Mhz crystal" if the board version is v1.0 or earlier
|
||||||
|
# Communication interface of "CAN bus (on PA25/PA24)"
|
||||||
|
|
||||||
|
# To flash the board use a debugger, or use a raspberry pi and follow
|
||||||
|
# the instructions at docs/Bootloaders.md fot the SAMC21. You may
|
||||||
|
# supply power to the 1LC by connecting the 3.3v rail on the Pi to the
|
||||||
|
# 5v input of the SWD header on the 1LC.
|
||||||
|
|
||||||
|
# See docs/Config_Reference.md for a description of parameters.
|
||||||
|
|
||||||
|
|
||||||
|
# Pins for reference, v1.3 board:
|
||||||
|
# Driver Step Pin - PA27
|
||||||
|
# Driver Dir Pin - PA28
|
||||||
|
# Driver Enable - !PB2
|
||||||
|
# Thermistor Pins - TEMP0:PB9 TEMP1:PA2
|
||||||
|
# Pullup Resistor - 2200
|
||||||
|
# Vssa Sense:PA6 | Vref Sense:PA7
|
||||||
|
# Current Sense resistor for drivers - 0.091ohm
|
||||||
|
# CAN Pins - CAN0_TX:PA24 CAN0_RX:PA25
|
||||||
|
# Heaters - OUT_0:PA11
|
||||||
|
# Fan outputs - OUT_1:PA10 OUT_2:PB11
|
||||||
|
# Tach Pins for Fans - OUT_1_TACHO:PA13 OUT_2_TACHO:PB10
|
||||||
|
# GPIO_out - IO0:PA12
|
||||||
|
# GPIO_in - IO0:PA9 IO1:PA21 IO2:PA18
|
||||||
|
# Driver Diag - 0:PB3
|
||||||
|
|
||||||
|
[adc_scaled toolboard_vref_scaled]
|
||||||
|
vref_pin: toolboard:PA7
|
||||||
|
vssa_pin: toolboard:PA6
|
||||||
|
|
||||||
|
[extruder]
|
||||||
|
step_pin: toolboard:PA27
|
||||||
|
dir_pin: toolboard:PA28
|
||||||
|
enable_pin: !toolboard:PB2
|
||||||
|
rotation_distance: 23.1336867485061
|
||||||
|
gear_ratio: 50:10
|
||||||
|
microsteps: 64
|
||||||
|
full_steps_per_rotation: 200
|
||||||
|
nozzle_diameter: 0.400
|
||||||
|
filament_diameter: 1.75
|
||||||
|
heater_pin: toolboard:PA11
|
||||||
|
sensor_type: PT1000
|
||||||
|
sensor_pin: toolboard_vref_scaled:PB9
|
||||||
|
pullup_resistor: 2200
|
||||||
|
min_temp: 0
|
||||||
|
max_temp: 280
|
||||||
|
max_power: 1.0
|
||||||
|
control: pid
|
||||||
|
pwm_cycle_time: 0.01666
|
||||||
|
pid_Kp: 26.454
|
||||||
|
pid_Ki: 1.357
|
||||||
|
pid_Kd: 128.955
|
||||||
|
|
||||||
|
[tmc2209 extruder]
|
||||||
|
uart_pin: toolboard:PA20
|
||||||
|
tx_pin: toolboard:PA22
|
||||||
|
interpolate: False
|
||||||
|
run_current: 0.35
|
||||||
|
sense_resistor: 0.091
|
||||||
|
|
||||||
|
[fan]
|
||||||
|
pin: toolboard:PA10
|
||||||
|
tachometer_pin: toolboard:PA13
|
||||||
|
|
||||||
|
[heater_fan hotend_fan]
|
||||||
|
pin: toolboard:PB11
|
||||||
|
tachometer_pin: toolboard:PB10
|
||||||
|
heater: extruder
|
||||||
|
heater_temp: 50.0
|
||||||
|
|
||||||
|
[probe]
|
||||||
|
pin: toolboard:PA9
|
||||||
|
z_offset: 20
|
||||||
|
|
||||||
|
[samd_sercom sercom_i2c]
|
||||||
|
sercom: sercom1
|
||||||
|
tx_pin: toolboard:PA16
|
||||||
|
clk_pin: toolboard:PA17
|
||||||
|
|
||||||
|
[lis3dh]
|
||||||
|
i2c_mcu: toolboard
|
||||||
|
i2c_bus: sercom1
|
||||||
|
|
||||||
|
[mcu toolboard]
|
||||||
|
canbus_uuid: 4b194673554e
|
||||||
@@ -19,15 +19,15 @@ canbus_uuid: ac20f0bbda05
|
|||||||
# ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
|
# ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
|
||||||
|
|
||||||
[extruder]
|
[extruder]
|
||||||
step_pin: huvud: PB3
|
step_pin: huvud:PB3
|
||||||
dir_pin: huvud: PB4
|
dir_pin: huvud:PB4
|
||||||
enable_pin: !huvud: PB5
|
enable_pin: !huvud:PB5
|
||||||
rotation_distance: 22.52453125
|
rotation_distance: 22.52453125
|
||||||
nozzle_diameter: 0.400
|
nozzle_diameter: 0.400
|
||||||
filament_diameter: 1.75
|
filament_diameter: 1.75
|
||||||
heater_pin: huvud: PA6
|
heater_pin: huvud:PA6
|
||||||
sensor_type: NTC 100K MGB18-104F39050L32
|
sensor_type: NTC 100K MGB18-104F39050L32
|
||||||
sensor_pin: huvud: PA0
|
sensor_pin: huvud:PA0
|
||||||
pullup_resistor: 2200
|
pullup_resistor: 2200
|
||||||
min_temp: 0
|
min_temp: 0
|
||||||
max_temp: 300
|
max_temp: 300
|
||||||
@@ -37,22 +37,22 @@ pid_ki: 1.304
|
|||||||
pid_kd: 131.721
|
pid_kd: 131.721
|
||||||
|
|
||||||
[tmc2209 extruder]
|
[tmc2209 extruder]
|
||||||
uart_pin: huvud: PA10
|
uart_pin: huvud:PA10
|
||||||
tx_pin: huvud: PA9
|
tx_pin: huvud:PA9
|
||||||
run_current: 0.35
|
run_current: 0.35
|
||||||
|
|
||||||
[probe]
|
[probe]
|
||||||
pin: huvud: PB12
|
pin: huvud:PB12
|
||||||
z_offset: 0
|
z_offset: 0
|
||||||
|
|
||||||
[fan]
|
[fan]
|
||||||
pin: huvud: PA8
|
pin: huvud:PA8
|
||||||
|
|
||||||
[heater_fan extruder_fan]
|
[heater_fan extruder_fan]
|
||||||
pin: huvud: PA7
|
pin: huvud:PA7
|
||||||
|
|
||||||
[adxl345]
|
[adxl345]
|
||||||
cs_pin: PB1
|
cs_pin: PB1
|
||||||
|
|
||||||
[led huvud_led]
|
[led huvud_led]
|
||||||
blue_pin: huvud: PC13
|
blue_pin: huvud:PC13
|
||||||
|
|||||||
@@ -62,6 +62,8 @@ endstop_pin: ^ar2
|
|||||||
position_endstop: 200
|
position_endstop: 200
|
||||||
position_max: 200
|
position_max: 200
|
||||||
homing_speed: 50
|
homing_speed: 50
|
||||||
|
# A minimum distance between the carriages to enforce
|
||||||
|
safe_distance: 40
|
||||||
|
|
||||||
[extruder1]
|
[extruder1]
|
||||||
step_pin: ar36
|
step_pin: ar36
|
||||||
@@ -94,3 +96,37 @@ gcode:
|
|||||||
ACTIVATE_EXTRUDER EXTRUDER=extruder1
|
ACTIVATE_EXTRUDER EXTRUDER=extruder1
|
||||||
SET_DUAL_CARRIAGE CARRIAGE=1
|
SET_DUAL_CARRIAGE CARRIAGE=1
|
||||||
SET_GCODE_OFFSET Y=15
|
SET_GCODE_OFFSET Y=15
|
||||||
|
|
||||||
|
# A helper script to activate copy mode
|
||||||
|
[gcode_macro ACTIVATE_COPY_MODE]
|
||||||
|
gcode:
|
||||||
|
SET_DUAL_CARRIAGE CARRIAGE=0 MODE=PRIMARY
|
||||||
|
G1 X0
|
||||||
|
ACTIVATE_EXTRUDER EXTRUDER=extruder
|
||||||
|
SET_DUAL_CARRIAGE CARRIAGE=1 MODE=PRIMARY
|
||||||
|
G1 X100
|
||||||
|
SET_DUAL_CARRIAGE CARRIAGE=1 MODE=COPY
|
||||||
|
SYNC_EXTRUDER_MOTION EXTRUDER=extruder1 MOTION_QUEUE=extruder
|
||||||
|
|
||||||
|
# A helper script to activate mirror mode
|
||||||
|
[gcode_macro ACTIVATE_MIRROR_MODE]
|
||||||
|
gcode:
|
||||||
|
SET_DUAL_CARRIAGE CARRIAGE=0 MODE=PRIMARY
|
||||||
|
G1 X0
|
||||||
|
ACTIVATE_EXTRUDER EXTRUDER=extruder
|
||||||
|
SET_DUAL_CARRIAGE CARRIAGE=1 MODE=PRIMARY
|
||||||
|
G1 X200
|
||||||
|
SET_DUAL_CARRIAGE CARRIAGE=1 MODE=MIRROR
|
||||||
|
SYNC_EXTRUDER_MOTION EXTRUDER=extruder1 MOTION_QUEUE=extruder
|
||||||
|
|
||||||
|
## An optional input shaper support
|
||||||
|
#[input_shaper]
|
||||||
|
## The section is intentionally empty
|
||||||
|
#
|
||||||
|
#[delayed_gcode init_shaper]
|
||||||
|
#initial_duration: 0.1
|
||||||
|
#gcode:
|
||||||
|
# SET_DUAL_CARRIAGE CARRIAGE=1
|
||||||
|
# SET_INPUT_SHAPER SHAPER_TYPE_X=<dual_carriage_shaper> SHAPER_FREQ_X=<dual_carriage_freq> SHAPER_TYPE_Y=<y_shaper> SHAPER_FREQ_Y=<y_freq>
|
||||||
|
# SET_DUAL_CARRIAGE CARRIAGE=0
|
||||||
|
# SET_INPUT_SHAPER SHAPER_TYPE_X=<primary_carriage_shaper> SHAPER_FREQ_X=<primary_carriage_freq> SHAPER_TYPE_Y=<y_shaper> SHAPER_FREQ_Y=<y_freq>
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
######################################################################
|
######################################################################
|
||||||
|
|
||||||
# Replace the slicer's custom start and end g-code scripts with
|
# Replace the slicer's custom start and end g-code scripts with
|
||||||
# START_PRINT and END_PRINT.
|
# START_PRINT and END_PRINT. See docs/Slicers.md for more information on using these macros.
|
||||||
|
|
||||||
[gcode_macro START_PRINT]
|
[gcode_macro START_PRINT]
|
||||||
gcode:
|
gcode:
|
||||||
@@ -61,12 +61,10 @@ gcode:
|
|||||||
# P is the tone duration, S the tone frequency.
|
# P is the tone duration, S the tone frequency.
|
||||||
# The frequency won't be pitch perfect.
|
# The frequency won't be pitch perfect.
|
||||||
|
|
||||||
[output_pin BEEPER_pin]
|
[pwm_cycle_time BEEPER_pin]
|
||||||
pin: ar37
|
pin: ar37
|
||||||
# Beeper pin. This parameter must be provided.
|
# Beeper pin. This parameter must be provided.
|
||||||
# ar37 is the default RAMPS/MKS pin.
|
# ar37 is the default RAMPS/MKS pin.
|
||||||
pwm: True
|
|
||||||
# A piezo beeper needs a PWM signal, a DC buzzer doesn't.
|
|
||||||
value: 0
|
value: 0
|
||||||
# Silent at power on, set to 1 if active low.
|
# Silent at power on, set to 1 if active low.
|
||||||
shutdown_value: 0
|
shutdown_value: 0
|
||||||
|
|||||||
@@ -2,9 +2,8 @@
|
|||||||
# such as a laser or spindle.
|
# such as a laser or spindle.
|
||||||
# See docs/Using_PWM_Tools.md for a more detailed description.
|
# See docs/Using_PWM_Tools.md for a more detailed description.
|
||||||
|
|
||||||
[output_pin TOOL]
|
[pwm_tool TOOL]
|
||||||
pin: !ar9 # use your fan's pin number
|
pin: !ar9 # use your fan's pin number
|
||||||
pwm: True
|
|
||||||
hardware_pwm: True
|
hardware_pwm: True
|
||||||
cycle_time: 0.001
|
cycle_time: 0.001
|
||||||
shutdown_value: 0
|
shutdown_value: 0
|
||||||
@@ -36,9 +35,9 @@ gcode:
|
|||||||
|
|
||||||
[menu __main __control __toolonoff]
|
[menu __main __control __toolonoff]
|
||||||
type: input
|
type: input
|
||||||
enable: {'output_pin TOOL' in printer}
|
enable: {'pwm_tool TOOL' in printer}
|
||||||
name: Fan: {'ON ' if menu.input else 'OFF'}
|
name: Fan: {'ON ' if menu.input else 'OFF'}
|
||||||
input: {printer['output_pin TOOL'].value}
|
input: {printer['pwm_tool TOOL'].value}
|
||||||
input_min: 0
|
input_min: 0
|
||||||
input_max: 1
|
input_max: 1
|
||||||
input_step: 1
|
input_step: 1
|
||||||
@@ -47,9 +46,9 @@ gcode:
|
|||||||
|
|
||||||
[menu __main __control __toolspeed]
|
[menu __main __control __toolspeed]
|
||||||
type: input
|
type: input
|
||||||
enable: {'output_pin TOOL' in printer}
|
enable: {'pwm_tool TOOL' in printer}
|
||||||
name: Tool speed: {'%3d' % (menu.input*100)}%
|
name: Tool speed: {'%3d' % (menu.input*100)}%
|
||||||
input: {printer['output_pin TOOL'].value}
|
input: {printer['pwm_tool TOOL'].value}
|
||||||
input_min: 0
|
input_min: 0
|
||||||
input_max: 1
|
input_max: 1
|
||||||
input_step: 0.01
|
input_step: 0.01
|
||||||
|
|||||||
@@ -364,6 +364,22 @@ and might later produce asynchronous messages such as:
|
|||||||
The "header" field in the initial query response is used to describe
|
The "header" field in the initial query response is used to describe
|
||||||
the fields found in later "data" responses.
|
the fields found in later "data" responses.
|
||||||
|
|
||||||
|
### load_cell/dump_force
|
||||||
|
|
||||||
|
This endpoint is used to subscribe to force data produced by a load_cell.
|
||||||
|
Using this endpoint may increase Klipper's system load.
|
||||||
|
|
||||||
|
A request may look like:
|
||||||
|
`{"id": 123, "method":"load_cell/dump_force",
|
||||||
|
"params": {"sensor": "load_cell", "response_template": {}}}`
|
||||||
|
and might return:
|
||||||
|
`{"id": 123,"result":{"header":["time", "force (g)", "counts", "tare_counts"]}}`
|
||||||
|
and might later produce asynchronous messages such as:
|
||||||
|
`{"params":{"data":[[3292.432935, 40.65, 562534, -234467]]}}`
|
||||||
|
|
||||||
|
The "header" field in the initial query response is used to describe
|
||||||
|
the fields found in later "data" responses.
|
||||||
|
|
||||||
### pause_resume/cancel
|
### pause_resume/cancel
|
||||||
|
|
||||||
This endpoint is similar to running the "PRINT_CANCEL" G-Code command.
|
This endpoint is similar to running the "PRINT_CANCEL" G-Code command.
|
||||||
@@ -401,3 +417,130 @@ might return:
|
|||||||
|
|
||||||
As with the "gcode/script" endpoint, this endpoint only completes
|
As with the "gcode/script" endpoint, this endpoint only completes
|
||||||
after any pending G-Code commands complete.
|
after any pending G-Code commands complete.
|
||||||
|
|
||||||
|
### bed_mesh/dump_mesh
|
||||||
|
|
||||||
|
Dumps the configuration and state for the current mesh and all
|
||||||
|
saved profiles.
|
||||||
|
|
||||||
|
For example:
|
||||||
|
`{"id": 123, "method": "bed_mesh/dump_mesh"}`
|
||||||
|
|
||||||
|
might return:
|
||||||
|
|
||||||
|
```
|
||||||
|
{
|
||||||
|
"current_mesh": {
|
||||||
|
"name": "eddy-scan-test",
|
||||||
|
"probed_matrix": [...],
|
||||||
|
"mesh_matrix": [...],
|
||||||
|
"mesh_params": {
|
||||||
|
"x_count": 9,
|
||||||
|
"y_count": 9,
|
||||||
|
"mesh_x_pps": 2,
|
||||||
|
"mesh_y_pps": 2,
|
||||||
|
"algo": "bicubic",
|
||||||
|
"tension": 0.5,
|
||||||
|
"min_x": 20,
|
||||||
|
"max_x": 330,
|
||||||
|
"min_y": 30,
|
||||||
|
"max_y": 320
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"profiles": {
|
||||||
|
"default": {
|
||||||
|
"points": [...],
|
||||||
|
"mesh_params": {
|
||||||
|
"min_x": 20,
|
||||||
|
"max_x": 330,
|
||||||
|
"min_y": 30,
|
||||||
|
"max_y": 320,
|
||||||
|
"x_count": 9,
|
||||||
|
"y_count": 9,
|
||||||
|
"mesh_x_pps": 2,
|
||||||
|
"mesh_y_pps": 2,
|
||||||
|
"algo": "bicubic",
|
||||||
|
"tension": 0.5
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"eddy-scan-test": {
|
||||||
|
"points": [...],
|
||||||
|
"mesh_params": {
|
||||||
|
"x_count": 9,
|
||||||
|
"y_count": 9,
|
||||||
|
"mesh_x_pps": 2,
|
||||||
|
"mesh_y_pps": 2,
|
||||||
|
"algo": "bicubic",
|
||||||
|
"tension": 0.5,
|
||||||
|
"min_x": 20,
|
||||||
|
"max_x": 330,
|
||||||
|
"min_y": 30,
|
||||||
|
"max_y": 320
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"eddy-rapid-test": {
|
||||||
|
"points": [...],
|
||||||
|
"mesh_params": {
|
||||||
|
"x_count": 9,
|
||||||
|
"y_count": 9,
|
||||||
|
"mesh_x_pps": 2,
|
||||||
|
"mesh_y_pps": 2,
|
||||||
|
"algo": "bicubic",
|
||||||
|
"tension": 0.5,
|
||||||
|
"min_x": 20,
|
||||||
|
"max_x": 330,
|
||||||
|
"min_y": 30,
|
||||||
|
"max_y": 320
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"calibration": {
|
||||||
|
"points": [...],
|
||||||
|
"config": {
|
||||||
|
"x_count": 9,
|
||||||
|
"y_count": 9,
|
||||||
|
"mesh_x_pps": 2,
|
||||||
|
"mesh_y_pps": 2,
|
||||||
|
"algo": "bicubic",
|
||||||
|
"tension": 0.5,
|
||||||
|
"mesh_min": [
|
||||||
|
20,
|
||||||
|
30
|
||||||
|
],
|
||||||
|
"mesh_max": [
|
||||||
|
330,
|
||||||
|
320
|
||||||
|
],
|
||||||
|
"origin": null,
|
||||||
|
"radius": null
|
||||||
|
},
|
||||||
|
"probe_path": [...],
|
||||||
|
"rapid_path": [...]
|
||||||
|
},
|
||||||
|
"probe_offsets": [
|
||||||
|
0,
|
||||||
|
25,
|
||||||
|
0.5
|
||||||
|
],
|
||||||
|
"axis_minimum": [
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
-5,
|
||||||
|
0
|
||||||
|
],
|
||||||
|
"axis_maximum": [
|
||||||
|
351,
|
||||||
|
358,
|
||||||
|
330,
|
||||||
|
0
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
The `dump_mesh` endpoint takes one optional parameter, `mesh_args`.
|
||||||
|
This parameter must be an object, where the keys and values are
|
||||||
|
parameters available to [BED_MESH_CALIBRATE](#bed_mesh_calibrate).
|
||||||
|
This will update the mesh configuration and probe points using the
|
||||||
|
supplied parameters prior to returning the result. It is recommended
|
||||||
|
to omit mesh parameters unless it is desired to visualize the probe points
|
||||||
|
and/or travel path before performing `BED_MESH_CALIBRATE`.
|
||||||
|
|||||||
73
docs/Axis_Twist_Compensation.md
Normal file
73
docs/Axis_Twist_Compensation.md
Normal file
@@ -0,0 +1,73 @@
|
|||||||
|
# Axis Twist Compensation
|
||||||
|
|
||||||
|
This document describes the `[axis_twist_compensation]` module.
|
||||||
|
|
||||||
|
Some printers may have a small twist in their X rail which can skew the results
|
||||||
|
of a probe attached to the X carriage.
|
||||||
|
This is common in printers with designs like the Prusa MK3, Sovol SV06 etc and is
|
||||||
|
further described under [probe location
|
||||||
|
bias](Probe_Calibrate.md#location-bias-check). It may result in
|
||||||
|
probe operations such as [Bed Mesh](Bed_Mesh.md),
|
||||||
|
[Screws Tilt Adjust](G-Codes.md#screws_tilt_adjust),
|
||||||
|
[Z Tilt Adjust](G-Codes.md#z_tilt_adjust) etc returning inaccurate
|
||||||
|
representations of the bed.
|
||||||
|
|
||||||
|
This module uses manual measurements by the user to correct the probe's results.
|
||||||
|
Note that if your axis is significantly twisted it is strongly recommended to
|
||||||
|
first use mechanical means to fix it prior to applying software corrections.
|
||||||
|
|
||||||
|
**Warning**: This module is not compatible with dockable probes yet and will
|
||||||
|
try to probe the bed without attaching the probe if you use it.
|
||||||
|
|
||||||
|
## Overview of compensation usage
|
||||||
|
|
||||||
|
> **Tip:** Make sure the [probe X and Y offsets](Config_Reference.md#probe) are
|
||||||
|
> correctly set as they greatly influence calibration.
|
||||||
|
|
||||||
|
### Basic Usage: X-Axis Calibration
|
||||||
|
1. After setting up the `[axis_twist_compensation]` module, run:
|
||||||
|
```
|
||||||
|
AXIS_TWIST_COMPENSATION_CALIBRATE
|
||||||
|
```
|
||||||
|
This command will calibrate the X-axis by default.
|
||||||
|
- The calibration wizard will prompt you to measure the probe Z offset at
|
||||||
|
several points along the bed.
|
||||||
|
- By default, the calibration uses 3 points, but you can specify a different
|
||||||
|
number with the option:
|
||||||
|
``
|
||||||
|
SAMPLE_COUNT=<value>
|
||||||
|
``
|
||||||
|
|
||||||
|
2. **Adjust Your Z Offset:**
|
||||||
|
After completing the calibration, be sure to
|
||||||
|
[adjust your Z offset](Probe_Calibrate.md#calibrating-probe-z-offset).
|
||||||
|
|
||||||
|
3. **Perform Bed Leveling Operations:**
|
||||||
|
Use probe-based operations as needed, such as:
|
||||||
|
- [Screws Tilt Adjust](G-Codes.md#screws_tilt_adjust)
|
||||||
|
- [Z Tilt Adjust](G-Codes.md#z_tilt_adjust)
|
||||||
|
|
||||||
|
4. **Finalize the Setup:**
|
||||||
|
- Home all axes, and perform a [Bed Mesh](Bed_Mesh.md) if necessary.
|
||||||
|
- Run a test print, followed by any
|
||||||
|
[fine-tuning](Axis_Twist_Compensation.md#fine-tuning)
|
||||||
|
if needed.
|
||||||
|
|
||||||
|
### For Y-Axis Calibration
|
||||||
|
The calibration process for the Y-axis is similar to the X-axis. To calibrate
|
||||||
|
the Y-axis, use:
|
||||||
|
```
|
||||||
|
AXIS_TWIST_COMPENSATION_CALIBRATE AXIS=Y
|
||||||
|
```
|
||||||
|
This will guide you through the same measuring process as for the X-axis.
|
||||||
|
|
||||||
|
> **Tip:** Bed temperature and nozzle temperature and size do not seem to have
|
||||||
|
> an influence to the calibration process.
|
||||||
|
|
||||||
|
## [axis_twist_compensation] setup and commands
|
||||||
|
|
||||||
|
Configuration options for `[axis_twist_compensation]` can be found in the
|
||||||
|
[Configuration Reference](Config_Reference.md#axis_twist_compensation).
|
||||||
|
|
||||||
|
Commands for `[axis_twist_compensation]` can be found in the
|
||||||
|
[G-Codes Reference](G-Codes.md#axis_twist_compensation)
|
||||||
@@ -6,23 +6,64 @@ PRU.
|
|||||||
## Building an OS image
|
## Building an OS image
|
||||||
|
|
||||||
Start by installing the
|
Start by installing the
|
||||||
[Debian 9.9 2019-08-03 4GB SD IoT](https://beagleboard.org/latest-images)
|
[Debian 11.7 2023-09-02 4GB microSD IoT](https://beagleboard.org/latest-images)
|
||||||
image. One may run the image from either a micro-SD card or from
|
image. One may run the image from either a micro-SD card or from
|
||||||
builtin eMMC. If using the eMMC, install it to eMMC now by following
|
builtin eMMC. If using the eMMC, install it to eMMC now by following
|
||||||
the instructions from the above link.
|
the instructions from the above link.
|
||||||
|
|
||||||
Then ssh into the Beaglebone machine (`ssh debian@beaglebone` --
|
Then ssh into the Beaglebone machine (`ssh debian@beaglebone` --
|
||||||
password is `temppwd`) and install Klipper by running the following
|
password is `temppwd`).
|
||||||
|
|
||||||
|
Before start installing Klipper you need to free-up additional space.
|
||||||
|
there are 3 options to do that:
|
||||||
|
1. remove some BeagleBone "Demo" resources
|
||||||
|
2. if you did boot from SD-Card, and it's bigger than 4Gb - you can expand
|
||||||
|
current filesystem to take whole card space
|
||||||
|
3. do option #1 and #2 together.
|
||||||
|
|
||||||
|
To remove some BeagleBone "Demo" resources execute these commands
|
||||||
|
```
|
||||||
|
sudo apt remove bb-node-red-installer
|
||||||
|
sudo apt remove bb-code-server
|
||||||
|
```
|
||||||
|
|
||||||
|
To expand filesystem to full size of your SD-Card execute this command, reboot is not required.
|
||||||
|
```
|
||||||
|
sudo growpart /dev/mmcblk0 1
|
||||||
|
sudo resize2fs /dev/mmcblk0p1
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
Install Klipper by running the following
|
||||||
commands:
|
commands:
|
||||||
|
|
||||||
```
|
```
|
||||||
git clone https://github.com/Klipper3d/klipper
|
git clone https://github.com/Klipper3d/klipper.git
|
||||||
./klipper/scripts/install-beaglebone.sh
|
./klipper/scripts/install-beaglebone.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
## Install Octoprint
|
After installing Klipper you need to decide what kind of deployment do you need,
|
||||||
|
but take a note that BeagleBone is 3.3v based hardware and in most cases you can't
|
||||||
|
directly connect pins to 5v or 12v based hardware without conversion boards.
|
||||||
|
|
||||||
One may then install Octoprint:
|
As Klipper have multimodule architecture on BeagleBone you can achieve many different use cases,
|
||||||
|
but general ones are following:
|
||||||
|
|
||||||
|
Use case 1: Use BeagleBone only as a host system to run Klipper and additional software
|
||||||
|
like OctoPrint/Fluidd + Moonraker/... and this configuration will be driving
|
||||||
|
external micro-controllers via serial/usb/canbus connections.
|
||||||
|
|
||||||
|
Use case 2: Use BeagleBone with extension board (cape) like CRAMPS board.
|
||||||
|
in this configuration BeagleBone will host Klipper + additional software, and
|
||||||
|
it will drive extension board with BeagleBone PRU cores (2 additional cores 200Mh, 32Bit).
|
||||||
|
|
||||||
|
Use case 3: It's same as "Use case 1" but additionally you want to drive
|
||||||
|
BeagleBone GPIOs with high speed by utilizing PRU cores to offload main CPU.
|
||||||
|
|
||||||
|
|
||||||
|
## Installing Octoprint
|
||||||
|
|
||||||
|
One may then install Octoprint or fully skip this section if desired other software:
|
||||||
```
|
```
|
||||||
git clone https://github.com/foosel/OctoPrint.git
|
git clone https://github.com/foosel/OctoPrint.git
|
||||||
cd OctoPrint/
|
cd OctoPrint/
|
||||||
@@ -51,25 +92,89 @@ Then start the Octoprint service:
|
|||||||
```
|
```
|
||||||
sudo systemctl start octoprint
|
sudo systemctl start octoprint
|
||||||
```
|
```
|
||||||
|
Wait 1-2 minutes and make sure the OctoPrint web server is accessible - it should be at:
|
||||||
Make sure the OctoPrint web server is accessible - it should be at:
|
|
||||||
[http://beaglebone:5000/](http://beaglebone:5000/)
|
[http://beaglebone:5000/](http://beaglebone:5000/)
|
||||||
|
|
||||||
## Building the micro-controller code
|
|
||||||
|
|
||||||
To compile the Klipper micro-controller code, start by configuring it
|
## Building the BeagleBone PRU micro-controller code (PRU firmware)
|
||||||
for the "Beaglebone PRU":
|
This section is required for "Use case 2" and "Use case 3" mentioned above,
|
||||||
|
you should skip it for "Use case 1".
|
||||||
|
|
||||||
|
Check that required devices are present
|
||||||
|
|
||||||
|
```
|
||||||
|
sudo beagle-version
|
||||||
|
```
|
||||||
|
You should check that output contains successful "remoteproc" drivers loading and presence of PRU cores,
|
||||||
|
in Kernel 5.10 they should be "remoteproc1" and "remoteproc2" (4a334000.pru, 4a338000.pru)
|
||||||
|
Also check that many GPIOs are loaded they will look like "Allocated GPIO id=0 name='P8_03'"
|
||||||
|
Usually everything is fine and no hardware configuration is required.
|
||||||
|
If something is missing - try to play with "uboot overlays" options or with cape-overlays
|
||||||
|
Just for reference some output of working BeagleBone Black configuration with CRAMPS board:
|
||||||
|
```
|
||||||
|
model:[TI_AM335x_BeagleBone_Black]
|
||||||
|
UBOOT: Booted Device-Tree:[am335x-boneblack-uboot-univ.dts]
|
||||||
|
UBOOT: Loaded Overlay:[BB-ADC-00A0.bb.org-overlays]
|
||||||
|
UBOOT: Loaded Overlay:[BB-BONE-eMMC1-01-00A0.bb.org-overlays]
|
||||||
|
kernel:[5.10.168-ti-r71]
|
||||||
|
/boot/uEnv.txt Settings:
|
||||||
|
uboot_overlay_options:[enable_uboot_overlays=1]
|
||||||
|
uboot_overlay_options:[disable_uboot_overlay_video=0]
|
||||||
|
uboot_overlay_options:[disable_uboot_overlay_audio=1]
|
||||||
|
uboot_overlay_options:[disable_uboot_overlay_wireless=1]
|
||||||
|
uboot_overlay_options:[enable_uboot_cape_universal=1]
|
||||||
|
pkg:[bb-cape-overlays]:[4.14.20210821.0-0~bullseye+20210821]
|
||||||
|
pkg:[bb-customizations]:[1.20230720.1-0~bullseye+20230720]
|
||||||
|
pkg:[bb-usb-gadgets]:[1.20230414.0-0~bullseye+20230414]
|
||||||
|
pkg:[bb-wl18xx-firmware]:[1.20230414.0-0~bullseye+20230414]
|
||||||
|
.............
|
||||||
|
.............
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
To compile the Klipper micro-controller code, start by configuring it for the "Beaglebone PRU",
|
||||||
|
for "BeagleBone Black" additionally disable options "Support GPIO Bit-banging devices" and disable "Support LCD devices"
|
||||||
|
inside the "Optional features" because they will not fit in 8Kb PRU firmware memory,
|
||||||
|
then exit and save config:
|
||||||
```
|
```
|
||||||
cd ~/klipper/
|
cd ~/klipper/
|
||||||
make menuconfig
|
make menuconfig
|
||||||
```
|
```
|
||||||
|
|
||||||
To build and install the new micro-controller code, run:
|
To build and install the new PRU micro-controller code, run:
|
||||||
```
|
```
|
||||||
sudo service klipper stop
|
sudo service klipper stop
|
||||||
make flash
|
make flash
|
||||||
sudo service klipper start
|
sudo service klipper start
|
||||||
```
|
```
|
||||||
|
After previous commands was executed your PRU firmware should be ready and started
|
||||||
|
to check if everything was fine you can execute following command
|
||||||
|
```
|
||||||
|
dmesg
|
||||||
|
```
|
||||||
|
and compare last messages with sample one which indicate that everything started properly:
|
||||||
|
```
|
||||||
|
[ 71.105499] remoteproc remoteproc1: 4a334000.pru is available
|
||||||
|
[ 71.157155] remoteproc remoteproc2: 4a338000.pru is available
|
||||||
|
[ 73.256287] remoteproc remoteproc1: powering up 4a334000.pru
|
||||||
|
[ 73.279246] remoteproc remoteproc1: Booting fw image am335x-pru0-fw, size 97112
|
||||||
|
[ 73.285807] remoteproc1#vdev0buffer: registered virtio0 (type 7)
|
||||||
|
[ 73.285836] remoteproc remoteproc1: remote processor 4a334000.pru is now up
|
||||||
|
[ 73.286322] remoteproc remoteproc2: powering up 4a338000.pru
|
||||||
|
[ 73.313717] remoteproc remoteproc2: Booting fw image am335x-pru1-fw, size 188560
|
||||||
|
[ 73.313753] remoteproc remoteproc2: header-less resource table
|
||||||
|
[ 73.329964] remoteproc remoteproc2: header-less resource table
|
||||||
|
[ 73.348321] remoteproc remoteproc2: remote processor 4a338000.pru is now up
|
||||||
|
[ 73.443355] virtio_rpmsg_bus virtio0: creating channel rpmsg-pru addr 0x1e
|
||||||
|
[ 73.443727] virtio_rpmsg_bus virtio0: msg received with no recipient
|
||||||
|
[ 73.444352] virtio_rpmsg_bus virtio0: rpmsg host is online
|
||||||
|
[ 73.540993] rpmsg_pru virtio0.rpmsg-pru.-1.30: new rpmsg_pru device: /dev/rpmsg_pru30
|
||||||
|
```
|
||||||
|
take a note about "/dev/rpmsg_pru30" - it's your future serial device for main mcu configuration
|
||||||
|
this device is required to be present, if it's absent - your PRU cores did not start properly.
|
||||||
|
|
||||||
|
## Building and installing Linux host micro-controller code
|
||||||
|
This section is required for "Use case 2" and optional for "Use case 3" mentioned above
|
||||||
|
|
||||||
It is also necessary to compile and install the micro-controller code
|
It is also necessary to compile and install the micro-controller code
|
||||||
for a Linux host process. Configure it a second time for a "Linux process":
|
for a Linux host process. Configure it a second time for a "Linux process":
|
||||||
@@ -83,12 +188,24 @@ sudo service klipper stop
|
|||||||
make flash
|
make flash
|
||||||
sudo service klipper start
|
sudo service klipper start
|
||||||
```
|
```
|
||||||
|
take a note about "/tmp/klipper_host_mcu" - it will be your future serial device for "mcu host"
|
||||||
|
if that file don't exist - refer to "scripts/klipper-mcu.service" file, it was installed by
|
||||||
|
previous commands, and it's responsible for it.
|
||||||
|
|
||||||
|
|
||||||
|
Take a note for "Use case 2" about following: when you will define printer configuration you should always
|
||||||
|
use temperature sensors from "mcu host" because ADCs not present in default "mcu" (PRU cores).
|
||||||
|
Sample configuration of "sensor_pin" for extruder and heated bed are available in "generic-cramps.cfg"
|
||||||
|
You can use any other GPIO directly from "mcu host" by referencing them this way "host:gpiochip1/gpio17"
|
||||||
|
but that should be avoided because it will be creating additional load on main CPU and most probably
|
||||||
|
you can't use them for stepper control.
|
||||||
|
|
||||||
|
|
||||||
## Remaining configuration
|
## Remaining configuration
|
||||||
|
|
||||||
Complete the installation by configuring Klipper and Octoprint
|
Complete the installation by configuring Klipper
|
||||||
following the instructions in
|
following the instructions in
|
||||||
the main [Installation](Installation.md#configuring-klipper) document.
|
the main [Installation](Installation.md#configuring-octoprint-to-use-klipper) document.
|
||||||
|
|
||||||
## Printing on the Beaglebone
|
## Printing on the Beaglebone
|
||||||
|
|
||||||
@@ -97,4 +214,111 @@ OctoPrint well. Print stalls have been known to occur on complex
|
|||||||
prints (the printer may move faster than OctoPrint can send movement
|
prints (the printer may move faster than OctoPrint can send movement
|
||||||
commands). If this occurs, consider using the "virtual_sdcard" feature
|
commands). If this occurs, consider using the "virtual_sdcard" feature
|
||||||
(see [Config Reference](Config_Reference.md#virtual_sdcard) for
|
(see [Config Reference](Config_Reference.md#virtual_sdcard) for
|
||||||
details) to print directly from Klipper.
|
details) to print directly from Klipper
|
||||||
|
and disable any DEBUG or VERBOSE logging options if you did enable them.
|
||||||
|
|
||||||
|
|
||||||
|
## AVR micro-controller code build
|
||||||
|
This environment have everything to build necessary micro-controller code except AVR,
|
||||||
|
AVR packages was removed because of conflict with PRU packages.
|
||||||
|
if you still want to build AVR micro-controller code in this environment you need to remove
|
||||||
|
PRU packages and install AVR packages by executing following commands
|
||||||
|
|
||||||
|
```
|
||||||
|
sudo apt-get remove gcc-pru
|
||||||
|
sudo apt-get install avrdude gcc-avr binutils-avr avr-libc
|
||||||
|
```
|
||||||
|
if you need to restore PRU packages - then remove ARV packages before that
|
||||||
|
```
|
||||||
|
sudo apt-get remove avrdude gcc-avr binutils-avr avr-libc
|
||||||
|
sudo apt-get install gcc-pru
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## Hardware Pin designation
|
||||||
|
BeagleBone is very flexible in terms of pin designation, same pin can be configured for different function
|
||||||
|
but always single function for single pin, same function can be present on different pins.
|
||||||
|
So you can't have multiple functions on single pin or have same function on multiple pins.
|
||||||
|
Example:
|
||||||
|
P9_20 - i2c2_sda/can0_tx/spi1_cs0/gpio0_12/uart1_ctsn
|
||||||
|
P9_19 - i2c2_scl/can0_rx/spi1_cs1/gpio0_13/uart1_rtsn
|
||||||
|
P9_24 - i2c1_scl/can1_rx/gpio0_15/uart1_tx
|
||||||
|
P9_26 - i2c1_sda/can1_tx/gpio0_14/uart1_rx
|
||||||
|
|
||||||
|
Pin designation is defined by using special "overlays" which will be loaded during linux boot
|
||||||
|
they are configured by editing file /boot/uEnv.txt with elevated permissions
|
||||||
|
```
|
||||||
|
sudo editor /boot/uEnv.txt
|
||||||
|
```
|
||||||
|
and defining which functionality to load, for example to enable CAN1 you need to define overlay for it
|
||||||
|
```
|
||||||
|
uboot_overlay_addr4=/lib/firmware/BB-CAN1-00A0.dtbo
|
||||||
|
```
|
||||||
|
This overlay BB-CAN1-00A0.dtbo will reconfigure all required pins for CAN1 and create CAN device in Linux.
|
||||||
|
Any change in overlays will require system reboot to be applied.
|
||||||
|
If you need to understand which pins are involved in some overlay - you can analyze source files in
|
||||||
|
this location: /opt/sources/bb.org-overlays/src/arm/
|
||||||
|
or search info in BeagleBone forums.
|
||||||
|
|
||||||
|
|
||||||
|
## Enabling hardware SPI
|
||||||
|
BeagleBone usually have multiple hardware SPI buses, for example BeagleBone Black can have 2 of them,
|
||||||
|
they can work up to 48Mhz, but usually they are limited to 16Mhz by Kernel Device-tree.
|
||||||
|
By default, in BeagleBone Black some of SPI1 pins are configured for HDMI-Audio output,
|
||||||
|
to fully enable 4-wire SPI1 you need to disable HDMI Audio and enable SPI1
|
||||||
|
To do that edit file /boot/uEnv.txt with elevated permissions
|
||||||
|
```
|
||||||
|
sudo editor /boot/uEnv.txt
|
||||||
|
```
|
||||||
|
uncomment variable
|
||||||
|
```
|
||||||
|
disable_uboot_overlay_audio=1
|
||||||
|
```
|
||||||
|
|
||||||
|
next uncomment variable and define it this way
|
||||||
|
```
|
||||||
|
uboot_overlay_addr4=/lib/firmware/BB-SPIDEV1-00A0.dtbo
|
||||||
|
```
|
||||||
|
Save changes in /boot/uEnv.txt and reboot the board.
|
||||||
|
Now you have SPI1 Enabled, to verify its presence execute command
|
||||||
|
```
|
||||||
|
ls /dev/spidev1.*
|
||||||
|
```
|
||||||
|
Take a note that BeagleBone usually is 3.3v based hardware and to use 5V SPI devices
|
||||||
|
you need to add Level-Shifting chip, for example SN74CBTD3861, SN74LVC1G34 or similar.
|
||||||
|
If you are using CRAMPS board - it already contains Level-Shifting chip and SPI1 pins
|
||||||
|
will become available on P503 port, and they can accept 5v hardware,
|
||||||
|
check CRAMPS board Schematics for pin references.
|
||||||
|
|
||||||
|
## Enabling hardware I2C
|
||||||
|
BeagleBone usually have multiple hardware I2C buses, for example BeagleBone Black can have 3 of them,
|
||||||
|
they support speed up-to 400Kbit Fast mode.
|
||||||
|
By default, in BeagleBone Black there are two of them (i2c-1 and i2c-2) usually both are already configured and
|
||||||
|
present on P9, third ic2-0 usually reserved for internal use.
|
||||||
|
If you are using CRAMPS board then i2c-2 is present on P303 port with 3.3v level,
|
||||||
|
If you want to obtain I2c-1 in CRAMPS board - you can get them on Extruder1.Step, Extruder1.Dir pins,
|
||||||
|
they also are 3.3v based, check CRAMPS board Schematics for pin references.
|
||||||
|
Related overlays, for [Hardware Pin designation](#hardware-pin-designation):
|
||||||
|
I2C1(100Kbit): BB-I2C1-00A0.dtbo
|
||||||
|
I2C1(400Kbit): BB-I2C1-FAST-00A0.dtbo
|
||||||
|
I2C2(100Kbit): BB-I2C2-00A0.dtbo
|
||||||
|
I2C2(400Kbit): BB-I2C2-FAST-00A0.dtbo
|
||||||
|
|
||||||
|
## Enabling hardware UART(Serial)/CAN
|
||||||
|
BeagleBone have up to 6 hardware UART(Serial) buses (up to 3Mbit)
|
||||||
|
and up to 2 hardware CAN(1Mbit) buses.
|
||||||
|
UART1(RX,TX) and CAN1(TX,RX) and I2C2(SDA,SCL) are using same pins - so you need to chose what to use
|
||||||
|
UART1(CTSN,RTSN) and CAN0(TX,RX) and I2C1(SDA,SCL) are using same pins - so you need to chose what to use
|
||||||
|
All UART/CAN related pins are 3.3v based, so you will need to use Transceiver chips/boards like SN74LVC2G241DCUR (for UART),
|
||||||
|
SN65HVD230 (for CAN), TTL-RS485 (for RS-485) or something similar which can convert 3.3v signals to appropriate levels.
|
||||||
|
|
||||||
|
Related overlays, for [Hardware Pin designation](#hardware-pin-designation)
|
||||||
|
CAN0: BB-CAN0-00A0.dtbo
|
||||||
|
CAN1: BB-CAN1-00A0.dtbo
|
||||||
|
UART0: - used for Console
|
||||||
|
UART1(RX,TX): BB-UART1-00A0.dtbo
|
||||||
|
UART1(RTS,CTS): BB-UART1-RTSCTS-00A0.dtbo
|
||||||
|
UART2(RX,TX): BB-UART2-00A0.dtbo
|
||||||
|
UART3(RX,TX): BB-UART3-00A0.dtbo
|
||||||
|
UART4(RS-485): BB-UART4-RS485-00A0.dtbo
|
||||||
|
UART5(RX,TX): BB-UART5-00A0.dtbo
|
||||||
|
|||||||
458
docs/Bed_Mesh.md
458
docs/Bed_Mesh.md
@@ -1,8 +1,8 @@
|
|||||||
# Bed Mesh
|
# Bed Mesh
|
||||||
|
|
||||||
The Bed Mesh module may be used to compensate for bed surface irregularties to
|
The Bed Mesh module may be used to compensate for bed surface irregularities
|
||||||
achieve a better first layer across the entire bed. It should be noted that
|
to achieve a better first layer across the entire bed. It should be noted
|
||||||
software based correction will not achieve perfect results, it can only
|
that software based correction will not achieve perfect results, it can only
|
||||||
approximate the shape of the bed. Bed Mesh also cannot compensate for
|
approximate the shape of the bed. Bed Mesh also cannot compensate for
|
||||||
mechanical and electrical issues. If an axis is skewed or a probe is not
|
mechanical and electrical issues. If an axis is skewed or a probe is not
|
||||||
accurate then the bed_mesh module will not receive accurate results from
|
accurate then the bed_mesh module will not receive accurate results from
|
||||||
@@ -44,10 +44,9 @@ probe_count: 5, 3
|
|||||||
|
|
||||||
- `mesh_max: 240, 198`\
|
- `mesh_max: 240, 198`\
|
||||||
_Required_\
|
_Required_\
|
||||||
The probed coordinate farthest farthest from the origin. This is not
|
The probed coordinate farthest from the origin. This is not necessarily
|
||||||
necessarily the last point probed, as the probing process occurs in a
|
the last point probed, as the probing process occurs in a zig-zag fashion.
|
||||||
zig-zag fashion. As with `mesh_min`, this coordiante is relative to
|
As with `mesh_min`, this coordinate is relative to the probe's location.
|
||||||
the probe's location.
|
|
||||||
|
|
||||||
- `probe_count: 5, 3`\
|
- `probe_count: 5, 3`\
|
||||||
_Default Value: 3, 3_\
|
_Default Value: 3, 3_\
|
||||||
@@ -101,7 +100,7 @@ round_probe_count: 5
|
|||||||
that the center of the mesh is probed.
|
that the center of the mesh is probed.
|
||||||
|
|
||||||
The illustration below shows how the probed points are generated. As you can see,
|
The illustration below shows how the probed points are generated. As you can see,
|
||||||
setting the `mesh_origin` to (-10, 0) allows us to specifiy a larger mesh radius
|
setting the `mesh_origin` to (-10, 0) allows us to specify a larger mesh radius
|
||||||
of 85.
|
of 85.
|
||||||
|
|
||||||

|

|
||||||
@@ -114,7 +113,7 @@ Each of the advanced options apply to round beds in the same manner.
|
|||||||
|
|
||||||
### Mesh Interpolation
|
### Mesh Interpolation
|
||||||
|
|
||||||
While its possible to sample the probed matrix directly using simple bilinear
|
While its possible to sample the probed matrix directly using simple bi-linear
|
||||||
interpolation to determine the Z-Values between probed points, it is often
|
interpolation to determine the Z-Values between probed points, it is often
|
||||||
useful to interpolate extra points using more advanced interpolation algorithms
|
useful to interpolate extra points using more advanced interpolation algorithms
|
||||||
to increase mesh density. These algorithms add curvature to the mesh,
|
to increase mesh density. These algorithms add curvature to the mesh,
|
||||||
@@ -142,7 +141,7 @@ bicubic_tension: 0.2
|
|||||||
integer pair, and also may be specified a single integer that is applied
|
integer pair, and also may be specified a single integer that is applied
|
||||||
to both axes. In this example there are 4 segments along the X axis
|
to both axes. In this example there are 4 segments along the X axis
|
||||||
and 2 segments along the Y axis. This evaluates to 8 interpolated
|
and 2 segments along the Y axis. This evaluates to 8 interpolated
|
||||||
points along X, 6 interpolated points along Y, which results in a 13x8
|
points along X, 6 interpolated points along Y, which results in a 13x9
|
||||||
mesh. Note that if mesh_pps is set to 0 then mesh interpolation is
|
mesh. Note that if mesh_pps is set to 0 then mesh interpolation is
|
||||||
disabled and the probed matrix will be sampled directly.
|
disabled and the probed matrix will be sampled directly.
|
||||||
|
|
||||||
@@ -207,7 +206,7 @@ split_delta_z: .025
|
|||||||
Generally the default values for these options are sufficient, in fact the
|
Generally the default values for these options are sufficient, in fact the
|
||||||
default value of 5mm for the `move_check_distance` may be overkill. However an
|
default value of 5mm for the `move_check_distance` may be overkill. However an
|
||||||
advanced user may wish to experiment with these options in an effort to squeeze
|
advanced user may wish to experiment with these options in an effort to squeeze
|
||||||
out the optimial first layer.
|
out the optimal first layer.
|
||||||
|
|
||||||
### Mesh Fade
|
### Mesh Fade
|
||||||
|
|
||||||
@@ -255,19 +254,24 @@ fade_target: 0
|
|||||||
example, lets assume your homing position on the bed is an outlier, its
|
example, lets assume your homing position on the bed is an outlier, its
|
||||||
.2 mm lower than the average probed height of the bed. If the `fade_target`
|
.2 mm lower than the average probed height of the bed. If the `fade_target`
|
||||||
is 0, fade will shrink the print by an average of .2 mm across the bed. By
|
is 0, fade will shrink the print by an average of .2 mm across the bed. By
|
||||||
setting the `fade_target` to .2, the homed area will expand by .2 mm, however
|
setting the `fade_target` to .2, the homed area will expand by .2 mm, however,
|
||||||
the rest of the bed will have an accurately sized. Generally its a good idea
|
the rest of the bed will be accurately sized. Generally its a good idea
|
||||||
to leave `fade_target` out of the configuration so the average height of the
|
to leave `fade_target` out of the configuration so the average height of the
|
||||||
mesh is used, however it may be desirable to manually adjust the fade target
|
mesh is used, however it may be desirable to manually adjust the fade target
|
||||||
if one wants to print on a specific portion of the bed.
|
if one wants to print on a specific portion of the bed.
|
||||||
|
|
||||||
### The Relative Reference Index
|
### Configuring the zero reference position
|
||||||
|
|
||||||
Most probes are suceptible to drift, ie: inaccuracies in probing introduced by
|
Many probes are susceptible to "drift", ie: inaccuracies in probing introduced
|
||||||
heat or interference. This can make calculating the probe's z-offset
|
by heat or interference. This can make calculating the probe's z-offset
|
||||||
challenging, particuarly at different bed temperatures. As such, some printers
|
challenging, particularly at different bed temperatures. As such, some
|
||||||
use an endstop for homing the Z axis, and a probe for calibrating the mesh.
|
printers use an endstop for homing the Z axis and a probe for calibrating the
|
||||||
These printers can benefit from configuring the relative reference index.
|
mesh. In this configuration it is possible offset the mesh so that the (X, Y)
|
||||||
|
`reference position` applies zero adjustment. The `reference postion` should
|
||||||
|
be the location on the bed where a
|
||||||
|
[Z_ENDSTOP_CALIBRATE](./Manual_Level.md#calibrating-a-z-endstop)
|
||||||
|
paper test is performed. The bed_mesh module provides the
|
||||||
|
`zero_reference_position` option for specifying this coordinate:
|
||||||
|
|
||||||
```
|
```
|
||||||
[bed_mesh]
|
[bed_mesh]
|
||||||
@@ -275,23 +279,45 @@ speed: 120
|
|||||||
horizontal_move_z: 5
|
horizontal_move_z: 5
|
||||||
mesh_min: 35, 6
|
mesh_min: 35, 6
|
||||||
mesh_max: 240, 198
|
mesh_max: 240, 198
|
||||||
|
zero_reference_position: 125, 110
|
||||||
probe_count: 5, 3
|
probe_count: 5, 3
|
||||||
relative_reference_index: 7
|
```
|
||||||
|
- `zero_reference_position: `\
|
||||||
|
_Default Value: None (disabled)_\
|
||||||
|
The `zero_reference_position` expects an (X, Y) coordinate matching that
|
||||||
|
of the `reference position` described above. If the coordinate lies within
|
||||||
|
the mesh then the mesh will be offset so the reference position applies zero
|
||||||
|
adjustment. If the coordinate lies outside of the mesh then the coordinate
|
||||||
|
will be probed after calibration, with the resulting z-value used as the
|
||||||
|
z-offset. Note that this coordinate must NOT be in a location specified as
|
||||||
|
a `faulty_region` if a probe is necessary.
|
||||||
|
|
||||||
|
#### The deprecated relative_reference_index
|
||||||
|
|
||||||
|
Existing configurations using the `relative_reference_index` option must be
|
||||||
|
updated to use the `zero_reference_position`. The response to the
|
||||||
|
[BED_MESH_OUTPUT PGP=1](#output) gcode command will include the (X, Y)
|
||||||
|
coordinate associated with the index; this position may be used as the value for
|
||||||
|
the `zero_reference_position`. The output will look similar to the following:
|
||||||
|
|
||||||
|
```
|
||||||
|
// bed_mesh: generated points
|
||||||
|
// Index | Tool Adjusted | Probe
|
||||||
|
// 0 | (1.0, 1.0) | (24.0, 6.0)
|
||||||
|
// 1 | (36.7, 1.0) | (59.7, 6.0)
|
||||||
|
// 2 | (72.3, 1.0) | (95.3, 6.0)
|
||||||
|
// 3 | (108.0, 1.0) | (131.0, 6.0)
|
||||||
|
... (additional generated points)
|
||||||
|
// bed_mesh: relative_reference_index 24 is (131.5, 108.0)
|
||||||
```
|
```
|
||||||
|
|
||||||
- `relative_reference_index: 7`\
|
_Note: The above output is also printed in `klippy.log` during initialization._
|
||||||
_Default Value: None (disabled)_\
|
|
||||||
When the probed points are generated they are each assigned an index. You
|
Using the example above we see that the `relative_reference_index` is
|
||||||
can look up this index in klippy.log or by using BED_MESH_OUTPUT (see the
|
printed along with its coordinate. Thus the `zero_reference_position`
|
||||||
section on Bed Mesh GCodes below for more information). If you assign an
|
is `131.5, 108`.
|
||||||
index to the `relative_reference_index` option, the value probed at this
|
|
||||||
coordinate will replace the probe's z_offset. This effectively makes
|
|
||||||
this coordinate the "zero" reference for the mesh.
|
|
||||||
|
|
||||||
When using the relative reference index, you should choose the index nearest
|
|
||||||
to the spot on the bed where Z endstop calibration was done. Note that
|
|
||||||
when looking up the index using the log or BED_MESH_OUTPUT, you should use
|
|
||||||
the coordinates listed under the "Probe" header to find the correct index.
|
|
||||||
|
|
||||||
### Faulty Regions
|
### Faulty Regions
|
||||||
|
|
||||||
@@ -343,21 +369,146 @@ are identified in green.
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
### Adaptive Meshes
|
||||||
|
|
||||||
|
Adaptive bed meshing is a way to speed up the bed mesh generation by only probing
|
||||||
|
the area of the bed used by the objects being printed. When used, the method will
|
||||||
|
automatically adjust the mesh parameters based on the area occupied by the defined
|
||||||
|
print objects.
|
||||||
|
|
||||||
|
The adapted mesh area will be computed from the area defined by the boundaries of all
|
||||||
|
the defined print objects so it covers every object, including any margins defined in
|
||||||
|
the configuration. After the area is computed, the number of probe points will be
|
||||||
|
scaled down based on the ratio of the default mesh area and the adapted mesh area. To
|
||||||
|
illustrate this consider the following example:
|
||||||
|
|
||||||
|
For a 150mmx150mm bed with `mesh_min` set to `25,25` and `mesh_max` set to `125,125`,
|
||||||
|
the default mesh area is a 100mmx100mm square. An adapted mesh area of `50,50`
|
||||||
|
means a ratio of `0.5x0.5` between the adapted area and default mesh area.
|
||||||
|
|
||||||
|
If the `bed_mesh` configuration specified `probe_count` as `7x7`, the adapted bed
|
||||||
|
mesh will use 4x4 probe points (7 * 0.5 rounded up).
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
```
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 120
|
||||||
|
horizontal_move_z: 5
|
||||||
|
mesh_min: 35, 6
|
||||||
|
mesh_max: 240, 198
|
||||||
|
probe_count: 5, 3
|
||||||
|
adaptive_margin: 5
|
||||||
|
```
|
||||||
|
|
||||||
|
- `adaptive_margin` \
|
||||||
|
_Default Value: 0_ \
|
||||||
|
Margin (in mm) to add around the area of the bed used by the defined objects. The diagram
|
||||||
|
below shows the adapted bed mesh area with an `adaptive_margin` of 5mm. The adapted mesh
|
||||||
|
area (area in green) is computed as the used bed area (area in blue) plus the defined margin.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
By nature, adaptive bed meshes use the objects defined by the Gcode file being printed.
|
||||||
|
Therefore, it is expected that each Gcode file will generate a mesh that probes a different
|
||||||
|
area of the print bed. Therefore, adapted bed meshes should not be re-used. The expectation
|
||||||
|
is that a new mesh will be generated for each print if adaptive meshing is used.
|
||||||
|
|
||||||
|
It is also important to consider that adaptive bed meshing is best used on machines that can
|
||||||
|
normally probe the entire bed and achieve a maximum variance less than or equal to 1 layer
|
||||||
|
height. Machines with mechanical issues that a full bed mesh normally compensates for may
|
||||||
|
have undesirable results when attempting print moves **outside** of the probed area. If a
|
||||||
|
full bed mesh has a variance greater than 1 layer height, caution must be taken when using
|
||||||
|
adaptive bed meshes and attempting print moves outside of the meshed area.
|
||||||
|
|
||||||
|
## Surface Scans
|
||||||
|
|
||||||
|
Some probes, such as the [Eddy Current Probe](./Eddy_Probe.md), are capable of
|
||||||
|
"scanning" the surface of the bed. That is, these probes can sample a mesh
|
||||||
|
without lifting the tool between samples. To activate scanning mode, the
|
||||||
|
`METHOD=scan` or `METHOD=rapid_scan` probe parameter should be passed in the
|
||||||
|
`BED_MESH_CALIBRATE` gcode command.
|
||||||
|
|
||||||
|
### Scan Height
|
||||||
|
|
||||||
|
The scan height is set by the `horizontal_move_z` option in `[bed_mesh]`. In
|
||||||
|
addition it can be supplied with the `BED_MESH_CALIBRATE` gcode command via the
|
||||||
|
`HORIZONTAL_MOVE_Z` parameter.
|
||||||
|
|
||||||
|
The scan height must be sufficiently low to avoid scanning errors. Typically
|
||||||
|
a height of 2mm (ie: `HORIZONTAL_MOVE_Z=2`) should work well, presuming that the
|
||||||
|
probe is mounted correctly.
|
||||||
|
|
||||||
|
It should be noted that if the probe is more than 4mm above the surface then the
|
||||||
|
results will be invalid. Thus, scanning is not possible on beds with severe
|
||||||
|
surface deviation or beds with extreme tilt that hasn't been corrected.
|
||||||
|
|
||||||
|
### Rapid (Continuous) Scanning
|
||||||
|
|
||||||
|
When performing a `rapid_scan` one should keep in mind that the results will
|
||||||
|
have some amount of error. This error should be low enough to be useful on
|
||||||
|
large print areas with reasonably thick layer heights. Some probes may be
|
||||||
|
more prone to error than others.
|
||||||
|
|
||||||
|
It is not recommended that rapid mode be used to scan a "dense" mesh. Some of
|
||||||
|
the error introduced during a rapid scan may be gaussian noise from the sensor,
|
||||||
|
and a dense mesh will reflect this noise (ie: there will be peaks and valleys).
|
||||||
|
|
||||||
|
Bed Mesh will attempt to optimize the travel path to provide the best possible
|
||||||
|
result based on the configuration. This includes avoiding faulty regions
|
||||||
|
when collecting samples and "overshooting" the mesh when changing direction.
|
||||||
|
This overshoot improves sampling at the edges of a mesh, however it requires
|
||||||
|
that the mesh be configured in a way that allows the tool to travel outside
|
||||||
|
of the mesh.
|
||||||
|
|
||||||
|
```
|
||||||
|
[bed_mesh]
|
||||||
|
speed: 120
|
||||||
|
horizontal_move_z: 5
|
||||||
|
mesh_min: 35, 6
|
||||||
|
mesh_max: 240, 198
|
||||||
|
probe_count: 5
|
||||||
|
scan_overshoot: 8
|
||||||
|
```
|
||||||
|
|
||||||
|
- `scan_overshoot`
|
||||||
|
_Default Value: 0 (disabled)_\
|
||||||
|
The maximum amount of travel (in mm) available outside of the mesh.
|
||||||
|
For rectangular beds this applies to travel on the X axis, and for round beds
|
||||||
|
it applies to the entire radius. The tool must be able to travel the amount
|
||||||
|
specified outside of the mesh. This value is used to optimize the travel
|
||||||
|
path when performing a "rapid scan". The minimum value that may be specified
|
||||||
|
is 1. The default is no overshoot.
|
||||||
|
|
||||||
|
If no scan overshoot is configured then travel path optimization will not
|
||||||
|
be applied to changes in direction.
|
||||||
|
|
||||||
## Bed Mesh Gcodes
|
## Bed Mesh Gcodes
|
||||||
|
|
||||||
### Calibration
|
### Calibration
|
||||||
|
|
||||||
`BED_MESH_CALIBRATE PROFILE=<name> METHOD=[manual | automatic] [<probe_parameter>=<value>]
|
`BED_MESH_CALIBRATE PROFILE=<name> METHOD=[manual | automatic | scan | rapid_scan] \
|
||||||
[<mesh_parameter>=<value>]`\
|
[<probe_parameter>=<value>] [<mesh_parameter>=<value>] [ADAPTIVE=[0|1] \
|
||||||
|
[ADAPTIVE_MARGIN=<value>]`\
|
||||||
_Default Profile: default_\
|
_Default Profile: default_\
|
||||||
_Default Method: automatic if a probe is detected, otherwise manual_
|
_Default Method: automatic if a probe is detected, otherwise manual_ \
|
||||||
|
_Default Adaptive: 0_ \
|
||||||
|
_Default Adaptive Margin: 0_
|
||||||
|
|
||||||
Initiates the probing procedure for Bed Mesh Calibration.
|
Initiates the probing procedure for Bed Mesh Calibration.
|
||||||
|
|
||||||
The mesh will be saved into a profile specified by the `PROFILE` parameter,
|
The mesh will be saved into a profile specified by the `PROFILE` parameter,
|
||||||
or `default` if unspecified. If `METHOD=manual` is selected then manual probing
|
or `default` if unspecified. The `METHOD` parameter takes one of the following
|
||||||
will occur. When switching between automatic and manual probing the generated
|
values:
|
||||||
mesh points will automatically be adjusted.
|
|
||||||
|
- `METHOD=manual`: enables manual probing using the nozzle and the paper test
|
||||||
|
- `METHOD=automatic`: Automatic (standard) probing. This is the default.
|
||||||
|
- `METHOD=scan`: Enables surface scanning. The tool will pause over each position
|
||||||
|
to collect a sample.
|
||||||
|
- `METHOD=rapid_scan`: Enables continuous surface scanning.
|
||||||
|
|
||||||
|
XY positions are automatically adjusted to include the X and/or Y offsets
|
||||||
|
when a probing method other than `manual` is selected.
|
||||||
|
|
||||||
It is possible to specify mesh parameters to modify the probed area. The
|
It is possible to specify mesh parameters to modify the probed area. The
|
||||||
following parameters are available:
|
following parameters are available:
|
||||||
@@ -371,12 +522,15 @@ following parameters are available:
|
|||||||
- `MESH_ORIGIN`
|
- `MESH_ORIGIN`
|
||||||
- `ROUND_PROBE_COUNT`
|
- `ROUND_PROBE_COUNT`
|
||||||
- All beds:
|
- All beds:
|
||||||
- `RELATIVE_REFERNCE_INDEX`
|
- `MESH_PPS`
|
||||||
- `ALGORITHM`
|
- `ALGORITHM`
|
||||||
|
- `ADAPTIVE`
|
||||||
|
- `ADAPTIVE_MARGIN`
|
||||||
|
|
||||||
See the configuration documentation above for details on how each parameter
|
See the configuration documentation above for details on how each parameter
|
||||||
applies to the mesh.
|
applies to the mesh.
|
||||||
|
|
||||||
|
|
||||||
### Profiles
|
### Profiles
|
||||||
|
|
||||||
`BED_MESH_PROFILE SAVE=<name> LOAD=<name> REMOVE=<name>`
|
`BED_MESH_PROFILE SAVE=<name> LOAD=<name> REMOVE=<name>`
|
||||||
@@ -390,15 +544,33 @@ to write the profile to printer.cfg.
|
|||||||
Profiles can be loaded by executing `BED_MESH_PROFILE LOAD=<name>`.
|
Profiles can be loaded by executing `BED_MESH_PROFILE LOAD=<name>`.
|
||||||
|
|
||||||
It should be noted that each time a BED_MESH_CALIBRATE occurs, the current
|
It should be noted that each time a BED_MESH_CALIBRATE occurs, the current
|
||||||
state is automatically saved to the _default_ profile. If this profile
|
state is automatically saved to the _default_ profile. The _default_ profile can be removed as follows:
|
||||||
exists it is automatically loaded when Klipper starts. If this behavior
|
|
||||||
is not desirable the _default_ profile can be removed as follows:
|
|
||||||
|
|
||||||
`BED_MESH_PROFILE REMOVE=default`
|
`BED_MESH_PROFILE REMOVE=default`
|
||||||
|
|
||||||
Any other saved profile can be removed in the same fashion, replacing
|
Any other saved profile can be removed in the same fashion, replacing
|
||||||
_default_ with the named profile you wish to remove.
|
_default_ with the named profile you wish to remove.
|
||||||
|
|
||||||
|
|
||||||
|
#### Loading the default profile
|
||||||
|
|
||||||
|
Previous versions of `bed_mesh` always loaded the profile named _default_
|
||||||
|
on startup if it was present. This behavior has been removed in favor of
|
||||||
|
allowing the user to determine when a profile is loaded. If a user wishes to
|
||||||
|
load the `default` profile it is recommended to add
|
||||||
|
`BED_MESH_PROFILE LOAD=default` to either their `START_PRINT` macro or their
|
||||||
|
slicer's "Start G-Code" configuration, whichever is applicable.
|
||||||
|
|
||||||
|
Alternatively the old behavior of loading a profile at startup can be
|
||||||
|
restored with a `[delayed_gcode]`:
|
||||||
|
|
||||||
|
```ini
|
||||||
|
[delayed_gcode bed_mesh_init]
|
||||||
|
initial_duration: .01
|
||||||
|
gcode:
|
||||||
|
BED_MESH_PROFILE LOAD=default
|
||||||
|
```
|
||||||
|
|
||||||
### Output
|
### Output
|
||||||
|
|
||||||
`BED_MESH_OUTPUT PGP=[0 | 1]`
|
`BED_MESH_OUTPUT PGP=[0 | 1]`
|
||||||
@@ -441,11 +613,207 @@ This gcode may be used to clear the internal mesh state.
|
|||||||
|
|
||||||
### Apply X/Y offsets
|
### Apply X/Y offsets
|
||||||
|
|
||||||
`BED_MESH_OFFSET [X=<value>] [Y=<value>]`
|
`BED_MESH_OFFSET [X=<value>] [Y=<value>] [ZFADE=<value>]`
|
||||||
|
|
||||||
This is useful for printers with multiple independent extruders, as an offset
|
This is useful for printers with multiple independent extruders, as an offset
|
||||||
is necessary to produce correct Z adjustment after a tool change. Offsets
|
is necessary to produce correct Z adjustment after a tool change. Offsets
|
||||||
should be specified relative to the primary extruder. That is, a positive
|
should be specified relative to the primary extruder. That is, a positive
|
||||||
X offset should be specified if the secondary extruder is mounted to the
|
X offset should be specified if the secondary extruder is mounted to the
|
||||||
right of the primary extruder, and a positive Y offset should be specified
|
right of the primary extruder, a positive Y offset should be specified
|
||||||
if the secondary extruder is mounted "behind" the primary extruder.
|
if the secondary extruder is mounted "behind" the primary extruder, and
|
||||||
|
a positive ZFADE offset should be specified if the secondary extruder's
|
||||||
|
nozzle is above the primary extruder's.
|
||||||
|
|
||||||
|
Note that a ZFADE offset does *NOT* directly apply additional adjustment. It
|
||||||
|
is intended to compensate for a `gcode offset` when [mesh fade](#mesh-fade)
|
||||||
|
is enabled. For example, if a secondary extruder is higher than the primary
|
||||||
|
and needs a negative gcode offset, ie: `SET_GCODE_OFFSET Z=-.2`, it can be
|
||||||
|
accounted for in `bed_mesh` with `BED_MESH_OFFSET ZFADE=.2`.
|
||||||
|
|
||||||
|
## Bed Mesh Webhooks APIs
|
||||||
|
|
||||||
|
### Dumping mesh data
|
||||||
|
|
||||||
|
`{"id": 123, "method": "bed_mesh/dump_mesh"}`
|
||||||
|
|
||||||
|
Dumps the configuration and state for the current mesh and all
|
||||||
|
saved profiles.
|
||||||
|
|
||||||
|
The `dump_mesh` endpoint takes one optional parameter, `mesh_args`.
|
||||||
|
This parameter must be an object, where the keys and values are
|
||||||
|
parameters available to [BED_MESH_CALIBRATE](#bed_mesh_calibrate).
|
||||||
|
This will update the mesh configuration and probe points using the
|
||||||
|
supplied parameters prior to returning the result. It is recommended
|
||||||
|
to omit mesh parameters unless it is desired to visualize the probe points
|
||||||
|
and/or travel path before performing `BED_MESH_CALIBRATE`.
|
||||||
|
|
||||||
|
## Visualization and analysis
|
||||||
|
|
||||||
|
Most users will likely find that the visualizers included with
|
||||||
|
applications such as Mainsail, Fluidd, and Octoprint are sufficient
|
||||||
|
for basic analysis. However, Klipper's `scripts` folder contains the
|
||||||
|
`graph_mesh.py` script that may be used to perform additional
|
||||||
|
visualizations and more detailed analysis, particularly useful
|
||||||
|
for debugging hardware or the results produced by `bed_mesh`:
|
||||||
|
|
||||||
|
```
|
||||||
|
usage: graph_mesh.py [-h] {list,plot,analyze,dump} ...
|
||||||
|
|
||||||
|
Graph Bed Mesh Data
|
||||||
|
|
||||||
|
positional arguments:
|
||||||
|
{list,plot,analyze,dump}
|
||||||
|
list List available plot types
|
||||||
|
plot Plot a specified type
|
||||||
|
analyze Perform analysis on mesh data
|
||||||
|
dump Dump API response to json file
|
||||||
|
|
||||||
|
options:
|
||||||
|
-h, --help show this help message and exit
|
||||||
|
```
|
||||||
|
|
||||||
|
### Pre-requisites
|
||||||
|
|
||||||
|
Like most graphing tools provided by Klipper, `graph_mesh.py` requires
|
||||||
|
the `matplotlib` and `numpy` python dependencies. In addition, connecting
|
||||||
|
to Klipper via Moonraker's websocket requires the `websockets` python
|
||||||
|
dependency. While all visualizations can be output to an `svg` file, most of
|
||||||
|
the visualizations offered by `graph_mesh.py` are better viewed in live
|
||||||
|
preview mode on a desktop class PC. For example, the 3D visualizations may be
|
||||||
|
rotated and zoomed in preview mode, and the path visualizations can optionally
|
||||||
|
be animated in preview mode.
|
||||||
|
|
||||||
|
### Plotting Mesh data
|
||||||
|
|
||||||
|
The `graph_mesh.py` tool can plot several types of visualizations.
|
||||||
|
Available types can be shown by running `graph_mesh.py list`:
|
||||||
|
|
||||||
|
```
|
||||||
|
graph_mesh.py list
|
||||||
|
points Plot original generated points
|
||||||
|
path Plot probe travel path
|
||||||
|
rapid Plot rapid scan travel path
|
||||||
|
probedz Plot probed Z values
|
||||||
|
meshz Plot mesh Z values
|
||||||
|
overlay Plots the current probed mesh overlaid with a profile
|
||||||
|
delta Plots the delta between current probed mesh and a profile
|
||||||
|
```
|
||||||
|
|
||||||
|
Several options are available when plotting visualizations:
|
||||||
|
|
||||||
|
```
|
||||||
|
usage: graph_mesh.py plot [-h] [-a] [-s] [-p PROFILE_NAME] [-o OUTPUT] <plot type> <input>
|
||||||
|
|
||||||
|
positional arguments:
|
||||||
|
<plot type> Type of data to graph
|
||||||
|
<input> Path/url to Klipper Socket or path to json file
|
||||||
|
|
||||||
|
options:
|
||||||
|
-h, --help show this help message and exit
|
||||||
|
-a, --animate Animate paths in live preview
|
||||||
|
-s, --scale-plot Use axis limits reported by Klipper to scale plot X/Y
|
||||||
|
-p PROFILE_NAME, --profile-name PROFILE_NAME
|
||||||
|
Optional name of a profile to plot for 'probedz'
|
||||||
|
-o OUTPUT, --output OUTPUT
|
||||||
|
Output file path
|
||||||
|
```
|
||||||
|
|
||||||
|
Below is a description of each argument:
|
||||||
|
|
||||||
|
- `plot type`: A required positional argument designating the type of
|
||||||
|
visualization to generate. Must be one of the types output by the
|
||||||
|
`graph_mesh.py list` command.
|
||||||
|
- `input`: A required positional argument containing a path or url
|
||||||
|
to the input source. This must be one of the following:
|
||||||
|
- A path to Klipper's Unix Domain Socket
|
||||||
|
- A url to an instance of Moonraker
|
||||||
|
- A path to a json file produced by `graph_mesh.py dump <input>`
|
||||||
|
- `-a`: Optional animation for the `path` and `rapid` visualization types.
|
||||||
|
Animations only apply to a live preview.
|
||||||
|
- `-s`: Optionally scales a plot using the `axis_minimum` and `axis_maximum`
|
||||||
|
values reported by Klipper's `toolhead` object when the dump file was
|
||||||
|
generated.
|
||||||
|
- `-p`: A profile name that may be specified when generating the
|
||||||
|
`probedz` 3D mesh visualization. When generating an `overlay` or
|
||||||
|
`delta` visualization this argument must be provided.
|
||||||
|
- `-o`: An optional file path indicating that the script should save the
|
||||||
|
visualization to this location rather than run in preview mode. Images
|
||||||
|
are saved in `svg` format.
|
||||||
|
|
||||||
|
For example, to plot an animated rapid path, connecting via Klipper's unix
|
||||||
|
socket:
|
||||||
|
|
||||||
|
```
|
||||||
|
graph_mesh.py plot -a rapid ~/printer_data/comms/klippy.sock
|
||||||
|
```
|
||||||
|
|
||||||
|
Or to plot a 3d visualization of the mesh, connecting via Moonraker:
|
||||||
|
|
||||||
|
```
|
||||||
|
graph_mesh.py plot meshz http://my-printer.local
|
||||||
|
```
|
||||||
|
|
||||||
|
### Bed Mesh Analysis
|
||||||
|
|
||||||
|
The `graph_mesh.py` tool may also be used to perform an analysis on the
|
||||||
|
data provided by the [bed_mesh/dump_mesh](#dumping-mesh-data) API:
|
||||||
|
|
||||||
|
```
|
||||||
|
graph_mesh.py analyze <input>
|
||||||
|
```
|
||||||
|
|
||||||
|
As with the `plot` command, the `<input>` must be a path to Klipper's
|
||||||
|
unix socket, a URL to an instance of Moonraker, or a path to a json file
|
||||||
|
generated by the dump command.
|
||||||
|
|
||||||
|
To begin, the analysis will perform various checks on the points and
|
||||||
|
probe paths generated by `bed_mesh` at the time of the dump. This
|
||||||
|
includes the following:
|
||||||
|
|
||||||
|
- The number of probe points generated, without any additions
|
||||||
|
- The number of probe points generated including any points generated
|
||||||
|
as the result faulty regions and/or a configured zero reference position.
|
||||||
|
- The number of probe points generated when performing a rapid scan.
|
||||||
|
- The total number of moves generated for a rapid scan.
|
||||||
|
- A validation that the probe points generated for a rapid scan are
|
||||||
|
identical to the probe points generated for a standard probing procedure.
|
||||||
|
- A "backtracking" check for both the standard probe path and a rapid scan
|
||||||
|
path. Backtracking can be defined as moving to the same position more than
|
||||||
|
once during the probing procedure. Backtracking should never occur during a
|
||||||
|
standard probe. Faulty regions *can* result in backtracking during a rapid
|
||||||
|
scan in an attempt to avoid entering a faulty region when approaching or
|
||||||
|
leaving a probe location, however should never occur otherwise.
|
||||||
|
|
||||||
|
Next each probed mesh present in the dump will by analyzed, beginning with
|
||||||
|
the mesh loaded at the time of the dump (if present) and followed by any
|
||||||
|
saved profiles. The following data is extracted:
|
||||||
|
|
||||||
|
- Mesh shape (Min X,Y, Max X,Y Probe Count)
|
||||||
|
- Mesh Z range, (Minimum Z, Maximum Z)
|
||||||
|
- Mean Z value in the mesh
|
||||||
|
- Standard Deviation of the Z values in the Mesh
|
||||||
|
|
||||||
|
In addition to the above, a delta analysis is performed between meshes
|
||||||
|
with the same shape, reporting the following:
|
||||||
|
- The range of the delta between to meshes (Minimum and Maximum)
|
||||||
|
- The mean delta
|
||||||
|
- Standard Deviation of the delta
|
||||||
|
- The absolute maximum difference
|
||||||
|
- The absolute mean
|
||||||
|
|
||||||
|
### Save mesh data to a file
|
||||||
|
|
||||||
|
The `dump` command may be used to save the response to a file which
|
||||||
|
can be shared for analysis when troubleshooting:
|
||||||
|
|
||||||
|
```
|
||||||
|
graph_mesh.py dump -o <output file name> <input>
|
||||||
|
```
|
||||||
|
|
||||||
|
The `<input>` should be a path to Klipper's unix socket or
|
||||||
|
a URL to an instance of Moonraker. The `-o` option may be used to
|
||||||
|
specify the path to the output file. If omitted, the file will be
|
||||||
|
saved in the working directory, with a file name in the following
|
||||||
|
format:
|
||||||
|
|
||||||
|
`klipper-bedmesh-{year}{month}{day}{hour}{minute}{second}.json`
|
||||||
|
|||||||
@@ -354,9 +354,50 @@ micro-controller.
|
|||||||
| 1 stepper (200Mhz) | 39 |
|
| 1 stepper (200Mhz) | 39 |
|
||||||
| 3 stepper (200Mhz) | 181 |
|
| 3 stepper (200Mhz) | 181 |
|
||||||
|
|
||||||
### RP2040 step rate benchmark
|
### SAME70 step rate benchmark
|
||||||
|
|
||||||
The following configuration sequence is used on the RP2040:
|
The following configuration sequence is used on the SAME70:
|
||||||
|
```
|
||||||
|
allocate_oids count=3
|
||||||
|
config_stepper oid=0 step_pin=PC18 dir_pin=PB5 invert_step=-1 step_pulse_ticks=0
|
||||||
|
config_stepper oid=1 step_pin=PC16 dir_pin=PD10 invert_step=-1 step_pulse_ticks=0
|
||||||
|
config_stepper oid=2 step_pin=PC28 dir_pin=PA4 invert_step=-1 step_pulse_ticks=0
|
||||||
|
finalize_config crc=0
|
||||||
|
```
|
||||||
|
|
||||||
|
The test was last run on commit `34e9ea55` with gcc version
|
||||||
|
`arm-none-eabi-gcc (NixOS 10.3-2021.10) 10.3.1` on a SAME70Q20B
|
||||||
|
micro-controller.
|
||||||
|
|
||||||
|
| same70 | ticks |
|
||||||
|
| -------------------- | ----- |
|
||||||
|
| 1 stepper | 45 |
|
||||||
|
| 3 stepper | 190 |
|
||||||
|
|
||||||
|
### AR100 step rate benchmark ###
|
||||||
|
|
||||||
|
The following configuration sequence is used on AR100 CPU (Allwinner A64):
|
||||||
|
```
|
||||||
|
allocate_oids count=3
|
||||||
|
config_stepper oid=0 step_pin=PL10 dir_pin=PE14 invert_step=-1 step_pulse_ticks=0
|
||||||
|
config_stepper oid=1 step_pin=PL11 dir_pin=PE15 invert_step=-1 step_pulse_ticks=0
|
||||||
|
config_stepper oid=2 step_pin=PL12 dir_pin=PE16 invert_step=-1 step_pulse_ticks=0
|
||||||
|
finalize_config crc=0
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
The test was last run on commit `b7978d37` with gcc version
|
||||||
|
`or1k-linux-musl-gcc (GCC) 9.2.0` on an Allwinner A64-H
|
||||||
|
micro-controller.
|
||||||
|
|
||||||
|
| AR100 R_PIO | ticks |
|
||||||
|
| -------------------- | ----- |
|
||||||
|
| 1 stepper | 85 |
|
||||||
|
| 3 stepper | 359 |
|
||||||
|
|
||||||
|
### RPxxxx step rate benchmark
|
||||||
|
|
||||||
|
The following configuration sequence is used on the RP2040 and RP2350:
|
||||||
|
|
||||||
```
|
```
|
||||||
allocate_oids count=3
|
allocate_oids count=3
|
||||||
@@ -366,14 +407,25 @@ config_stepper oid=2 step_pin=gpio27 dir_pin=gpio5 invert_step=-1 step_pulse_tic
|
|||||||
finalize_config crc=0
|
finalize_config crc=0
|
||||||
```
|
```
|
||||||
|
|
||||||
The test was last run on commit `59314d99` with gcc version
|
The test was last run on commit `14c105b8` with gcc version
|
||||||
`arm-none-eabi-gcc (Fedora 10.2.0-4.fc34) 10.2.0` on a Raspberry Pi
|
`arm-none-eabi-gcc (Fedora 14.1.0-1.fc40) 14.1.0` on Raspberry Pi
|
||||||
Pico board.
|
Pico and Pico 2 boards.
|
||||||
|
|
||||||
| rp2040 | ticks |
|
| rp2040 (*) | ticks |
|
||||||
| -------------------- | ----- |
|
| -------------------- | ----- |
|
||||||
| 1 stepper | 5 |
|
| 1 stepper | 3 |
|
||||||
| 3 stepper | 22 |
|
| 3 stepper | 14 |
|
||||||
|
|
||||||
|
| rp2350 | ticks |
|
||||||
|
| -------------------- | ----- |
|
||||||
|
| 1 stepper | 36 |
|
||||||
|
| 3 stepper | 169 |
|
||||||
|
|
||||||
|
(*) Note that the reported rp2040 ticks are relative to a 12Mhz
|
||||||
|
scheduling timer and do not correspond to its 200Mhz internal ARM
|
||||||
|
processing rate. It is expected that 5 scheduling ticks corresponds to
|
||||||
|
~42 ARM core cycles and 14 scheduling ticks corresponds to ~225 ARM
|
||||||
|
core cycles.
|
||||||
|
|
||||||
### Linux MCU step rate benchmark
|
### Linux MCU step rate benchmark
|
||||||
|
|
||||||
@@ -425,6 +477,7 @@ hub.
|
|||||||
| atmega2560 (serial) | 23K | b161a69e | avr-gcc (GCC) 4.8.1 |
|
| atmega2560 (serial) | 23K | b161a69e | avr-gcc (GCC) 4.8.1 |
|
||||||
| sam3x8e (serial) | 23K | b161a69e | arm-none-eabi-gcc (Fedora 7.1.0-5.fc27) 7.1.0 |
|
| sam3x8e (serial) | 23K | b161a69e | arm-none-eabi-gcc (Fedora 7.1.0-5.fc27) 7.1.0 |
|
||||||
| at90usb1286 (USB) | 75K | 01d2183f | avr-gcc (GCC) 5.4.0 |
|
| at90usb1286 (USB) | 75K | 01d2183f | avr-gcc (GCC) 5.4.0 |
|
||||||
|
| ar100 (serial) | 138K | 08d037c6 | or1k-linux-musl-gcc 9.3.0 |
|
||||||
| samd21 (USB) | 223K | 01d2183f | arm-none-eabi-gcc (Fedora 7.4.0-1.fc30) 7.4.0 |
|
| samd21 (USB) | 223K | 01d2183f | arm-none-eabi-gcc (Fedora 7.4.0-1.fc30) 7.4.0 |
|
||||||
| pru (shared memory) | 260K | c5968a08 | pru-gcc (GCC) 8.0.0 20170530 (experimental) |
|
| pru (shared memory) | 260K | c5968a08 | pru-gcc (GCC) 8.0.0 20170530 (experimental) |
|
||||||
| stm32f103 (USB) | 355K | 01d2183f | arm-none-eabi-gcc (Fedora 7.4.0-1.fc30) 7.4.0 |
|
| stm32f103 (USB) | 355K | 01d2183f | arm-none-eabi-gcc (Fedora 7.4.0-1.fc30) 7.4.0 |
|
||||||
@@ -434,7 +487,8 @@ hub.
|
|||||||
| sam4s8c (USB) | 650K | 8d4a5c16 | arm-none-eabi-gcc (Fedora 7.4.0-1.fc30) 7.4.0 |
|
| sam4s8c (USB) | 650K | 8d4a5c16 | arm-none-eabi-gcc (Fedora 7.4.0-1.fc30) 7.4.0 |
|
||||||
| samd51 (USB) | 864K | 01d2183f | arm-none-eabi-gcc (Fedora 7.4.0-1.fc30) 7.4.0 |
|
| samd51 (USB) | 864K | 01d2183f | arm-none-eabi-gcc (Fedora 7.4.0-1.fc30) 7.4.0 |
|
||||||
| stm32f446 (USB) | 870K | 01d2183f | arm-none-eabi-gcc (Fedora 7.4.0-1.fc30) 7.4.0 |
|
| stm32f446 (USB) | 870K | 01d2183f | arm-none-eabi-gcc (Fedora 7.4.0-1.fc30) 7.4.0 |
|
||||||
| rp2040 (USB) | 873K | c5667193 | arm-none-eabi-gcc (Fedora 10.2.0-4.fc34) 10.2.0 |
|
| rp2040 (USB) | 885K | f6718291 | arm-none-eabi-gcc (Fedora 14.1.0-1.fc40) 14.1.0 |
|
||||||
|
| rp2350 (USB) | 885K | f6718291 | arm-none-eabi-gcc (Fedora 14.1.0-1.fc40) 14.1.0 |
|
||||||
|
|
||||||
## Host Benchmarks
|
## Host Benchmarks
|
||||||
|
|
||||||
|
|||||||
125
docs/Bootloader_Entry.md
Normal file
125
docs/Bootloader_Entry.md
Normal file
@@ -0,0 +1,125 @@
|
|||||||
|
# Bootloader Entry
|
||||||
|
|
||||||
|
Klipper can be instructed to reboot into a [Bootloader](Bootloaders.md) in one
|
||||||
|
of the following ways:
|
||||||
|
|
||||||
|
## Requesting the bootloader
|
||||||
|
|
||||||
|
### Virtual Serial
|
||||||
|
|
||||||
|
If a virtual (USB-ACM) serial port is in use, pulsing DTR while at 1200 baud
|
||||||
|
will request the bootloader.
|
||||||
|
|
||||||
|
#### Python (with `flash_usb`)
|
||||||
|
|
||||||
|
To enter the bootloader using python (using `flash_usb`):
|
||||||
|
|
||||||
|
```shell
|
||||||
|
> cd klipper/scripts
|
||||||
|
> python3 -c 'import flash_usb as u; u.enter_bootloader("<DEVICE>")'
|
||||||
|
Entering bootloader on <DEVICE>
|
||||||
|
```
|
||||||
|
|
||||||
|
Where `<DEVICE>` is your serial device, such as
|
||||||
|
`/dev/serial.by-id/usb-Klipper[...]` or `/dev/ttyACM0`
|
||||||
|
|
||||||
|
Note that if this fails, no output will be printed, success is indicated by
|
||||||
|
printing `Entering bootloader on <DEVICE>`.
|
||||||
|
|
||||||
|
#### Picocom
|
||||||
|
|
||||||
|
```shell
|
||||||
|
picocom -b 1200 <DEVICE>
|
||||||
|
<Ctrl-A><Ctrl-P>
|
||||||
|
```
|
||||||
|
|
||||||
|
Where `<DEVICE>` is your serial device, such as
|
||||||
|
`/dev/serial.by-id/usb-Klipper[...]` or `/dev/ttyACM0`
|
||||||
|
|
||||||
|
`<Ctrl-A><Ctrl-P>` means
|
||||||
|
holding `Ctrl`, pressing and releasing `a`, pressing and releasing `p`, then
|
||||||
|
releasing `Ctrl`
|
||||||
|
|
||||||
|
### Physical serial
|
||||||
|
|
||||||
|
If a physical serial port is being used on the MCU (even if a USB serial adapter
|
||||||
|
is being used to connect to it), sending the string
|
||||||
|
`<SPACE><FS><SPACE>Request Serial Bootloader!!<SPACE>~` requests the bootloader.
|
||||||
|
|
||||||
|
`<SPACE>` is an ASCII literal space, 0x20.
|
||||||
|
|
||||||
|
`<FS>` is the ASCII File Separator,
|
||||||
|
0x1c.
|
||||||
|
|
||||||
|
Note that this is not a valid message as per the
|
||||||
|
[MCU Protocol](Protocol.md#micro-controller-interface), but sync characters(`~`)
|
||||||
|
are still respected.
|
||||||
|
|
||||||
|
Because this message must be the only thing in the "block"
|
||||||
|
it is received in, prefixing an extra sync character can increase reliability if
|
||||||
|
other tools were previously accessing the serial port.
|
||||||
|
|
||||||
|
#### Shell
|
||||||
|
|
||||||
|
```shell
|
||||||
|
stty <BAUD> < /dev/<DEVICE>
|
||||||
|
echo $'~ \x1c Request Serial Bootloader!! ~' >> /dev/<DEVICE>
|
||||||
|
```
|
||||||
|
|
||||||
|
Where `<DEVICE>` is your serial port, such as `/dev/ttyS0`, or
|
||||||
|
`/dev/serial/by-id/gpio-serial2`, and
|
||||||
|
|
||||||
|
`<BAUD>` is the baud rate of the serial
|
||||||
|
port, such as `115200`.
|
||||||
|
|
||||||
|
### CANBUS
|
||||||
|
|
||||||
|
If CANBUS is in use, a special
|
||||||
|
[admin message](CANBUS_protocol.md#admin-messages) will request the bootloader.
|
||||||
|
This message will be respected even if the device already has a nodeid, and will
|
||||||
|
also be processed if the mcu is shutdown.
|
||||||
|
|
||||||
|
This method also applies to devices operating in
|
||||||
|
[CANBridge](CANBUS.md#usb-to-can-bus-bridge-mode) mode.
|
||||||
|
|
||||||
|
#### Katapult's flashtool.py
|
||||||
|
|
||||||
|
```shell
|
||||||
|
python3 ./katapult/scripts/flashtool.py -i <CAN_IFACE> -u <UUID> -r
|
||||||
|
```
|
||||||
|
|
||||||
|
Where `<CAN_IFACE>` is the can interface to use. If using `can0`, both the `-i`
|
||||||
|
and `<CAN_IFACE>` may be omitted.
|
||||||
|
|
||||||
|
`<UUID>` is the UUID of your CAN device.
|
||||||
|
|
||||||
|
See the
|
||||||
|
[CANBUS Documentation](CANBUS.md#finding-the-canbus_uuid-for-new-micro-controllers)
|
||||||
|
for information on finding the CAN UUID of your devices.
|
||||||
|
|
||||||
|
## Entering the bootloader
|
||||||
|
|
||||||
|
When klipper receives one of the above bootloader requests:
|
||||||
|
|
||||||
|
If Katapult (formerly known as CANBoot) is available, klipper will request that
|
||||||
|
Katapult stay active on the next boot, then reset the MCU (therefore entering
|
||||||
|
Katapult).
|
||||||
|
|
||||||
|
If Katapult is not available, klipper will then try to enter a
|
||||||
|
platform-specific bootloader, such as STM32's DFU
|
||||||
|
mode([see note](#stm32-dfu-warning)).
|
||||||
|
|
||||||
|
In short, Klipper will reboot to Katapult if installed, then a hardware specific
|
||||||
|
bootloader if available.
|
||||||
|
|
||||||
|
For details about the specific bootloaders on various platforms see
|
||||||
|
[Bootloaders](Bootloaders.md)
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
|
### STM32 DFU Warning
|
||||||
|
|
||||||
|
Note that on some boards, like the Octopus Pro v1, entering DFU mode can cause
|
||||||
|
undesired actions (such as powering the heater while in DFU mode). It is
|
||||||
|
recommended to disconnect heaters, and otherwise prevent undesired operations
|
||||||
|
when using DFU mode. Consult the documentation for your board for more details.
|
||||||
@@ -185,6 +185,50 @@ To flash an application use something like:
|
|||||||
bossac --port=/dev/ttyACM0 -b -U -e -w -v -R out/klipper.bin
|
bossac --port=/dev/ttyACM0 -b -U -e -w -v -R out/klipper.bin
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## SAMDC21 micro-controllers (Duet3D Toolboard 1LC)
|
||||||
|
|
||||||
|
The SAMC21 is flashed via the ARM Serial Wire Debug (SWD) interface.
|
||||||
|
This is commonly done with a dedicated SWD hardware dongle.
|
||||||
|
Alternatively, one can use a
|
||||||
|
[Raspberry Pi with OpenOCD](#running-openocd-on-the-raspberry-pi).
|
||||||
|
|
||||||
|
When using OpenOCD with the SAMC21, extra steps must be taken to first
|
||||||
|
put the chip into Cold Plugging mode if the board makes use of the
|
||||||
|
SWD pins for other purposes. If using OpenOCD on a Rasberry Pi, this
|
||||||
|
can be done by running the following commands before invoking OpenOCD.
|
||||||
|
```
|
||||||
|
SWCLK=25
|
||||||
|
SWDIO=24
|
||||||
|
SRST=18
|
||||||
|
|
||||||
|
echo "Exporting SWCLK and SRST pins."
|
||||||
|
echo $SWCLK > /sys/class/gpio/export
|
||||||
|
echo $SRST > /sys/class/gpio/export
|
||||||
|
echo "out" > /sys/class/gpio/gpio$SWCLK/direction
|
||||||
|
echo "out" > /sys/class/gpio/gpio$SRST/direction
|
||||||
|
|
||||||
|
echo "Setting SWCLK low and pulsing SRST."
|
||||||
|
echo "0" > /sys/class/gpio/gpio$SWCLK/value
|
||||||
|
echo "0" > /sys/class/gpio/gpio$SRST/value
|
||||||
|
echo "1" > /sys/class/gpio/gpio$SRST/value
|
||||||
|
|
||||||
|
echo "Unexporting SWCLK and SRST pins."
|
||||||
|
echo $SWCLK > /sys/class/gpio/unexport
|
||||||
|
echo $SRST > /sys/class/gpio/unexport
|
||||||
|
```
|
||||||
|
|
||||||
|
To flash a program with OpenOCD use the following chip config:
|
||||||
|
```
|
||||||
|
source [find target/at91samdXX.cfg]
|
||||||
|
```
|
||||||
|
Obtain a program; for instance, klipper can be built for this chip.
|
||||||
|
Flash with OpenOCD commands similar to:
|
||||||
|
```
|
||||||
|
at91samd chip-erase
|
||||||
|
at91samd bootloader 0
|
||||||
|
program out/klipper.elf verify
|
||||||
|
```
|
||||||
|
|
||||||
## SAMD21 micro-controllers (Arduino Zero)
|
## SAMD21 micro-controllers (Arduino Zero)
|
||||||
|
|
||||||
The SAMD21 bootloader is flashed via the ARM Serial Wire Debug (SWD)
|
The SAMD21 bootloader is flashed via the ARM Serial Wire Debug (SWD)
|
||||||
@@ -305,7 +349,7 @@ is a [fork with builds specific to the SKR Mini E3 1.2](
|
|||||||
https://github.com/Arksine/STM32_HID_Bootloader/releases/latest).
|
https://github.com/Arksine/STM32_HID_Bootloader/releases/latest).
|
||||||
|
|
||||||
For generic STM32F103 boards such as the blue pill it is possible to flash
|
For generic STM32F103 boards such as the blue pill it is possible to flash
|
||||||
the bootloader via 3.3v serial using stm32flash as noted in the stm32duino
|
the bootloader via 3.3V serial using stm32flash as noted in the stm32duino
|
||||||
section above, substituting the file name for the desired hid bootloader binary
|
section above, substituting the file name for the desired hid bootloader binary
|
||||||
(ie: hid_generic_pc13.bin for the blue pill).
|
(ie: hid_generic_pc13.bin for the blue pill).
|
||||||
|
|
||||||
@@ -382,7 +426,7 @@ make flash FLASH_DEVICE=/dev/ttyACM0
|
|||||||
It may be necessary to manually enter the bootloader, this can be done by
|
It may be necessary to manually enter the bootloader, this can be done by
|
||||||
setting "boot 0" low and "boot 1" high. On the SKR Mini E3 "Boot 1" is
|
setting "boot 0" low and "boot 1" high. On the SKR Mini E3 "Boot 1" is
|
||||||
not available, so it may be done by setting pin PA2 low if you flashed
|
not available, so it may be done by setting pin PA2 low if you flashed
|
||||||
"hid_btt_skr_mini_e3.bin". This pin is labeld "TX0" on the TFT header in
|
"hid_btt_skr_mini_e3.bin". This pin is labeled "TX0" on the TFT header in
|
||||||
the SKR Mini E3's "PIN" document. There is a ground pin next to PA2
|
the SKR Mini E3's "PIN" document. There is a ground pin next to PA2
|
||||||
which you can use to pull PA2 low.
|
which you can use to pull PA2 low.
|
||||||
|
|
||||||
@@ -390,7 +434,7 @@ which you can use to pull PA2 low.
|
|||||||
|
|
||||||
The [MSC bootloader](https://github.com/Telekatz/MSC-stm32f103-bootloader) is a driverless bootloader capable of flashing over USB.
|
The [MSC bootloader](https://github.com/Telekatz/MSC-stm32f103-bootloader) is a driverless bootloader capable of flashing over USB.
|
||||||
|
|
||||||
It is possible to flash the bootloader via 3.3v serial using stm32flash as noted
|
It is possible to flash the bootloader via 3.3V serial using stm32flash as noted
|
||||||
in the stm32duino section above, substituting the file name for the desired
|
in the stm32duino section above, substituting the file name for the desired
|
||||||
MSC bootloader binary (ie: MSCboot-Bluepill.bin for the blue pill).
|
MSC bootloader binary (ie: MSCboot-Bluepill.bin for the blue pill).
|
||||||
|
|
||||||
@@ -419,7 +463,7 @@ It is recommended to use a ST-Link Programmer to flash CanBoot, however it
|
|||||||
should be possible to flash using `stm32flash` on STM32F103 devices, and
|
should be possible to flash using `stm32flash` on STM32F103 devices, and
|
||||||
`dfu-util` on STM32F042/STM32F072 devices. See the previous sections in this
|
`dfu-util` on STM32F042/STM32F072 devices. See the previous sections in this
|
||||||
document for instructions on these flashing methods, substituting `canboot.bin`
|
document for instructions on these flashing methods, substituting `canboot.bin`
|
||||||
for the file name where appropriate. The CanBoot repo linked above provides
|
for the file name where appropriate. The CanBoot repository linked above provides
|
||||||
instructions for building the bootloader.
|
instructions for building the bootloader.
|
||||||
|
|
||||||
The first time CanBoot has been flashed it should detect that no application
|
The first time CanBoot has been flashed it should detect that no application
|
||||||
@@ -448,8 +492,8 @@ When building Klipper for use with CanBoot, select the 8 KiB Bootloader option.
|
|||||||
|
|
||||||
## STM32F4 micro-controllers (SKR Pro 1.1)
|
## STM32F4 micro-controllers (SKR Pro 1.1)
|
||||||
|
|
||||||
STM32F4 microcontrollers come equipped with a built-in system bootloader
|
STM32F4 micro-controllers come equipped with a built-in system bootloader
|
||||||
capable of flashing over USB (via DFU), 3.3v Serial, and various other
|
capable of flashing over USB (via DFU), 3.3V Serial, and various other
|
||||||
methods (see STM Document AN2606 for more information). Some
|
methods (see STM Document AN2606 for more information). Some
|
||||||
STM32F4 boards, such as the SKR Pro 1.1, are not able to enter the DFU
|
STM32F4 boards, such as the SKR Pro 1.1, are not able to enter the DFU
|
||||||
bootloader. The HID bootloader is available for STM32F405/407
|
bootloader. The HID bootloader is available for STM32F405/407
|
||||||
@@ -458,8 +502,8 @@ Note that you may need to configure and build a version specific to your
|
|||||||
board, a [build for the SKR Pro 1.1 is available here](
|
board, a [build for the SKR Pro 1.1 is available here](
|
||||||
https://github.com/Arksine/STM32_HID_Bootloader/releases/latest).
|
https://github.com/Arksine/STM32_HID_Bootloader/releases/latest).
|
||||||
|
|
||||||
Unless your board is DFU capable the most accessable flashing method
|
Unless your board is DFU capable the most accessible flashing method
|
||||||
is likely via 3.3v serial, which follows the same procedure as
|
is likely via 3.3V serial, which follows the same procedure as
|
||||||
[flashing the STM32F103 using stm32flash](#stm32f103-micro-controllers-blue-pill-devices).
|
[flashing the STM32F103 using stm32flash](#stm32f103-micro-controllers-blue-pill-devices).
|
||||||
For example:
|
For example:
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ This document describes Klipper's CAN bus support.
|
|||||||
|
|
||||||
## Device Hardware
|
## Device Hardware
|
||||||
|
|
||||||
Klipper currently supports CAN on stm32, same5x, and rp2040 chips. In
|
Klipper currently supports CAN on stm32, SAME5x, and rp2040 chips. In
|
||||||
addition, the micro-controller chip must be on a board that has a CAN
|
addition, the micro-controller chip must be on a board that has a CAN
|
||||||
transceiver.
|
transceiver.
|
||||||
|
|
||||||
@@ -14,44 +14,35 @@ and flash it to the target board.
|
|||||||
|
|
||||||
## Host Hardware
|
## Host Hardware
|
||||||
|
|
||||||
In order to use a CAN bus, it is necessary to have a host adapter.
|
In order to use a CAN bus, it is necessary to have a host adapter. It
|
||||||
There are currently two common options:
|
is recommended to use a "USB to CAN adapter". There are many different
|
||||||
|
USB to CAN adapters available from different manufacturers. When
|
||||||
1. Use a
|
choosing one, we recommend verifying that the firmware can be updated
|
||||||
[Waveshare Raspberry Pi CAN hat](https://www.waveshare.com/rs485-can-hat.htm)
|
on it. (Unfortunately, we've found some USB adapters run defective
|
||||||
or one of its many clones.
|
firmware and are locked down, so verify before purchasing.) Look for
|
||||||
|
adapters that can run Klipper directly (in its "USB to CAN bridge
|
||||||
2. Use a USB CAN adapter (for example
|
mode") or that run the
|
||||||
[https://hacker-gadgets.com/product/cantact-usb-can-adapter/](https://hacker-gadgets.com/product/cantact-usb-can-adapter/)). There
|
[candlelight firmware](https://github.com/candle-usb/candleLight_fw).
|
||||||
are many different USB to CAN adapters available - when choosing
|
|
||||||
one, we recommend verifying it can run the
|
|
||||||
[candlelight firmware](https://github.com/candle-usb/candleLight_fw).
|
|
||||||
(Unfortunately, we've found some USB adapters run defective
|
|
||||||
firmware and are locked down, so verify before purchasing.)
|
|
||||||
|
|
||||||
It is also necessary to configure the host operating system to use the
|
It is also necessary to configure the host operating system to use the
|
||||||
adapter. This is typically done by creating a new file named
|
adapter. This is typically done by creating a new file named
|
||||||
`/etc/network/interfaces.d/can0` with the following contents:
|
`/etc/network/interfaces.d/can0` with the following contents:
|
||||||
```
|
```
|
||||||
auto can0
|
allow-hotplug can0
|
||||||
iface can0 can static
|
iface can0 can static
|
||||||
bitrate 500000
|
bitrate 1000000
|
||||||
up ifconfig $IFACE txqueuelen 128
|
up ip link set $IFACE txqueuelen 128
|
||||||
```
|
```
|
||||||
|
|
||||||
Note that the "Raspberry Pi CAN hat" also requires
|
|
||||||
[changes to config.txt](https://www.waveshare.com/wiki/RS485_CAN_HAT).
|
|
||||||
|
|
||||||
## Terminating Resistors
|
## Terminating Resistors
|
||||||
|
|
||||||
A CAN bus should have two 120 ohm resistors between the CANH and CANL
|
A CAN bus should have two 120 ohm resistors between the CANH and CANL
|
||||||
wires. Ideally, one resistor located at each the end of the bus.
|
wires. Ideally, one resistor located at each the end of the bus.
|
||||||
|
|
||||||
Note that some devices have a builtin 120 ohm resistor (for example,
|
Note that some devices have a builtin 120 ohm resistor that can not be
|
||||||
the "Waveshare Raspberry Pi CAN hat" has a soldered on resistor that
|
easily removed. Some devices do not include a resistor at all. Other
|
||||||
can not be easily removed). Some devices do not include a resistor at
|
devices have a mechanism to select the resistor (typically by
|
||||||
all. Other devices have a mechanism to select the resistor (typically
|
connecting a "pin jumper"). Be sure to check the schematics of all
|
||||||
by connecting a "pin jumper"). Be sure to check the schematics of all
|
|
||||||
devices on the CAN bus to verify that there are two and only two 120
|
devices on the CAN bus to verify that there are two and only two 120
|
||||||
Ohm resistors on the bus.
|
Ohm resistors on the bus.
|
||||||
|
|
||||||
@@ -95,22 +86,18 @@ canbus_uuid: 11aa22bb33cc
|
|||||||
## USB to CAN bus bridge mode
|
## USB to CAN bus bridge mode
|
||||||
|
|
||||||
Some micro-controllers support selecting "USB to CAN bus bridge" mode
|
Some micro-controllers support selecting "USB to CAN bus bridge" mode
|
||||||
during "make menuconfig". This mode may allow one to use a
|
during Klipper's "make menuconfig". This mode may allow one to use a
|
||||||
micro-controller as both a "USB to CAN bus adapter" and as a Klipper
|
micro-controller as both a "USB to CAN bus adapter" and as a Klipper
|
||||||
node.
|
node.
|
||||||
|
|
||||||
When Klipper uses this mode the micro-controller appears as a "USB CAN
|
When Klipper uses this mode the micro-controller appears as a "USB CAN
|
||||||
bus adapter" under Linux. The "Klipper bridge mcu" itself will appear
|
bus adapter" under Linux. The "Klipper bridge mcu" itself will appear
|
||||||
as if was on this CAN bus - it can be identified via `canbus_query.py`
|
as if it was on this CAN bus - it can be identified via
|
||||||
and configured like other CAN bus Klipper nodes. It will appear
|
`canbus_query.py` and it must be configured like other CAN bus Klipper
|
||||||
alongside other devices that are actually on the CAN bus.
|
nodes.
|
||||||
|
|
||||||
Some important notes when using this mode:
|
Some important notes when using this mode:
|
||||||
|
|
||||||
* The "bridge mcu" is not actually on the CAN bus. Messages to and
|
|
||||||
from it do not consume bandwidth on the CAN bus. The mcu can not be
|
|
||||||
seen by other adapters that may be on the CAN bus.
|
|
||||||
|
|
||||||
* It is necessary to configure the `can0` (or similar) interface in
|
* It is necessary to configure the `can0` (or similar) interface in
|
||||||
Linux in order to communicate with the bus. However, Linux CAN bus
|
Linux in order to communicate with the bus. However, Linux CAN bus
|
||||||
speed and CAN bus bit-timing options are ignored by Klipper.
|
speed and CAN bus bit-timing options are ignored by Klipper.
|
||||||
@@ -119,12 +106,36 @@ Some important notes when using this mode:
|
|||||||
|
|
||||||
* Whenever the "bridge mcu" is reset, Linux will disable the
|
* Whenever the "bridge mcu" is reset, Linux will disable the
|
||||||
corresponding `can0` interface. To ensure proper handling of
|
corresponding `can0` interface. To ensure proper handling of
|
||||||
FIRMWARE_RESTART and RESTART commands, it is recommended to replace
|
FIRMWARE_RESTART and RESTART commands, it is recommended to use
|
||||||
`auto` with `allow-hotplug` in the `/etc/network/interfaces.d/can0`
|
`allow-hotplug` in the `/etc/network/interfaces.d/can0` file. For
|
||||||
file. For example:
|
example:
|
||||||
```
|
```
|
||||||
allow-hotplug can0
|
allow-hotplug can0
|
||||||
iface can0 can static
|
iface can0 can static
|
||||||
bitrate 500000
|
bitrate 1000000
|
||||||
up ifconfig $IFACE txqueuelen 128
|
up ip link set $IFACE txqueuelen 128
|
||||||
```
|
```
|
||||||
|
|
||||||
|
* The "bridge mcu" is not actually on the CAN bus. Messages to and
|
||||||
|
from the bridge mcu will not be seen by other adapters that may be
|
||||||
|
on the CAN bus.
|
||||||
|
|
||||||
|
* The available bandwidth to both the "bridge mcu" itself and all
|
||||||
|
devices on the CAN bus is effectively limited by the CAN bus
|
||||||
|
frequency. As a result, it is recommended to use a CAN bus frequency
|
||||||
|
of 1000000 when using "USB to CAN bus bridge mode".
|
||||||
|
|
||||||
|
Even at a CAN bus frequency of 1000000, there may not be sufficient
|
||||||
|
bandwidth to run a `SHAPER_CALIBRATE` test if both the XY steppers
|
||||||
|
and the accelerometer all communicate via a single "USB to CAN bus"
|
||||||
|
interface.
|
||||||
|
|
||||||
|
* A USB to CAN bridge board will not appear as a USB serial device, it
|
||||||
|
will not show up when running `ls /dev/serial/by-id`, and it can not
|
||||||
|
be configured in Klipper's printer.cfg file with a `serial:`
|
||||||
|
parameter. The bridge board appears as a "USB CAN adapter" and it is
|
||||||
|
configured in the printer.cfg as a [CAN node](#configuring-klipper).
|
||||||
|
|
||||||
|
## Tips for troubleshooting
|
||||||
|
|
||||||
|
See the [CAN bus troubleshooting](CANBUS_Troubleshooting.md) document.
|
||||||
|
|||||||
206
docs/CANBUS_Troubleshooting.md
Normal file
206
docs/CANBUS_Troubleshooting.md
Normal file
@@ -0,0 +1,206 @@
|
|||||||
|
# CANBUS Troubleshooting
|
||||||
|
|
||||||
|
This document provides information on troubleshooting communication
|
||||||
|
issues when using [Klipper with CAN bus](CANBUS.md).
|
||||||
|
|
||||||
|
## Verify CAN bus wiring
|
||||||
|
|
||||||
|
The first step in troubleshooting communication issues is to verify
|
||||||
|
the CAN bus wiring.
|
||||||
|
|
||||||
|
Be sure there are exactly two 120 Ohm [terminating
|
||||||
|
resistors](CANBUS.md#terminating-resistors) on the CAN bus. If the
|
||||||
|
resistors are not properly installed then messages may not be able to
|
||||||
|
be sent at all or the connection may have sporadic instability.
|
||||||
|
|
||||||
|
The CANH and CANL bus wiring should be twisted around each other. At a
|
||||||
|
minimum, the wiring should have a twist every few centimeters. Avoid
|
||||||
|
twisting the CANH and CANL wiring around power wires and ensure that
|
||||||
|
power wires that travel parallel to the CANH and CANL wires do not
|
||||||
|
have the same amount of twists.
|
||||||
|
|
||||||
|
Verify that all plugs and wire crimps on the CAN bus wiring are fully
|
||||||
|
secured. Movement of the printer toolhead may jostle the CAN bus
|
||||||
|
wiring causing a bad wire crimp or unsecured plug to result in
|
||||||
|
intermittent communication errors.
|
||||||
|
|
||||||
|
## Check for incrementing bytes_invalid counter
|
||||||
|
|
||||||
|
The Klipper log file will report a `Stats` line once a second when the
|
||||||
|
printer is active. These "Stats" lines will have a `bytes_invalid`
|
||||||
|
counter for each micro-controller. This counter should not increment
|
||||||
|
during normal printer operation (it is normal for the counter to be
|
||||||
|
non-zero after a RESTART and it is not a concern if the counter
|
||||||
|
increments once a month or so). If this counter increments on a CAN
|
||||||
|
bus micro-controller during normal printing (it increments every few
|
||||||
|
hours or more frequently) then it is an indication of a severe
|
||||||
|
problem.
|
||||||
|
|
||||||
|
Incrementing `bytes_invalid` on a CAN bus connection is a symptom of
|
||||||
|
reordered messages on the CAN bus. If seen, make sure to:
|
||||||
|
* Use a Linux kernel version 6.6.0 or later.
|
||||||
|
* If using a USB-to-CANBUS adapter running candlelight firmware, use
|
||||||
|
v2.0 or later of candleLight_fw.
|
||||||
|
* If using Klipper's USB-to-CANBUS bridge mode, make sure the bridge
|
||||||
|
node is flashed with Klipper v0.12.0 or later.
|
||||||
|
|
||||||
|
Reordered messages is a severe problem that must be fixed. It will
|
||||||
|
result in unstable behavior and can lead to confusing errors at any
|
||||||
|
part of a print. An incrementing `bytes_invalid` is not caused by
|
||||||
|
wiring or similar hardware issues and can only be fixed by identifying
|
||||||
|
and updating the faulty software.
|
||||||
|
|
||||||
|
Older versions of the Linux kernel had a bug in the gs_usb canbus
|
||||||
|
driver code that could cause reordered canbus packets. The issue is
|
||||||
|
thought to be fixed in
|
||||||
|
[Linux commit 24bc41b4](https://github.com/torvalds/linux/commit/24bc41b4558347672a3db61009c339b1f5692169)
|
||||||
|
which was released in v6.6.0. In some cases, older Linux versions may
|
||||||
|
not show the problem (due to how hardware interrupts are configured),
|
||||||
|
however if problems are seen the recommended solution is to upgrade to
|
||||||
|
a newer kernel.
|
||||||
|
|
||||||
|
Older versions of candlelight firmware could reorder canbus packets,
|
||||||
|
and the issue is thought to be fixed in
|
||||||
|
[candlelight_fw commit 8b3a7b45](https://github.com/candle-usb/candleLight_fw/commit/8b3a7b4565a3c9521b762b154c94c72c5acb2bcf).
|
||||||
|
|
||||||
|
Older versions of Klipper's USB-to-CANBUS bridge code could
|
||||||
|
incorrectly drop canbus messages. This is not as severe as reordering
|
||||||
|
messages, but it should still be fixed. It is thought to be fixed with
|
||||||
|
[Klipper PR #6175](https://github.com/Klipper3d/klipper/pull/6175).
|
||||||
|
|
||||||
|
## Use an appropriate txqueuelen setting
|
||||||
|
|
||||||
|
The Klipper code uses the Linux kernel to manage CAN bus traffic. By
|
||||||
|
default, the kernel will only queue 10 CAN transmit packets. It is
|
||||||
|
recommended to [configure the can0 device](CANBUS.md#host-hardware)
|
||||||
|
with a `txqueuelen 128` to increase that size.
|
||||||
|
|
||||||
|
If Klipper transmits a packet and Linux has filled all of its transmit
|
||||||
|
queue space then Linux will drop that packet and messages like the
|
||||||
|
following will appear in the Klipper log:
|
||||||
|
```
|
||||||
|
Got error -1 in can write: (105)No buffer space available
|
||||||
|
```
|
||||||
|
Klipper will automatically retransmit the lost messages as part of its
|
||||||
|
normal application level message retransmit system. Thus, this log
|
||||||
|
message is a warning and it does not indicate an unrecoverable error.
|
||||||
|
|
||||||
|
If a complete CAN bus failure occurs (such as a CAN wire break) then
|
||||||
|
Linux will not be able to transmit any messages on the CAN bus and it
|
||||||
|
is common to find the above message in the Klipper log. In this case,
|
||||||
|
the log message is a symptom of a larger problem (the inability to
|
||||||
|
transmit any messages) and is not directly related to Linux
|
||||||
|
`txqueuelen`.
|
||||||
|
|
||||||
|
One may check the current queue size by running the Linux command `ip
|
||||||
|
link show can0`. It should report a bunch of text including the
|
||||||
|
snippet `qlen 128`. If one sees something like `qlen 10` then it
|
||||||
|
indicates the CAN device has not been properly configured.
|
||||||
|
|
||||||
|
It is not recommended to use a `txqueuelen` significantly larger
|
||||||
|
than 128. A CAN bus running at a frequency of 1000000 will typically
|
||||||
|
take around 120us to transmit a CAN packet. Thus a queue of 128
|
||||||
|
packets is likely to take around 15-20ms to drain. A substantially
|
||||||
|
larger queue could cause excessive spikes in message round-trip-time
|
||||||
|
which could lead to unrecoverable errors. Said another way, Klipper's
|
||||||
|
application retransmit system is more robust if it does not have to
|
||||||
|
wait for Linux to drain an excessively large queue of possibly stale
|
||||||
|
data. This is analogous to the problem of
|
||||||
|
[bufferbloat](https://en.wikipedia.org/wiki/Bufferbloat) on internet
|
||||||
|
routers.
|
||||||
|
|
||||||
|
Under normal circumstances Klipper may utilize ~25 queue slots per
|
||||||
|
MCU - typically only utilizing more slots during retransmits.
|
||||||
|
(Specifically, the Klipper host may transmit up to 192 bytes to each
|
||||||
|
Klipper MCU before receiving an acknowledgment from that MCU.) If a
|
||||||
|
single CAN bus has 5 or more Klipper MCUs on it, then it might be
|
||||||
|
necessary to increase the `txqueuelen` above the recommended value
|
||||||
|
of 128. However, as above, care should be taken when selecting a new
|
||||||
|
value to avoid excessive round-trip-time latency.
|
||||||
|
|
||||||
|
## Obtaining candump logs
|
||||||
|
|
||||||
|
The CAN bus messages sent to and from the micro-controller are handled
|
||||||
|
by the Linux kernel. It is possible to capture these messages from the
|
||||||
|
kernel for debugging purposes. A log of these messages may be of use
|
||||||
|
in diagnostics.
|
||||||
|
|
||||||
|
The Linux [can-utils](https://github.com/linux-can/can-utils) tool
|
||||||
|
provides the capture software. It is typically installed on a machine
|
||||||
|
by running:
|
||||||
|
```
|
||||||
|
sudo apt-get update && sudo apt-get install can-utils
|
||||||
|
```
|
||||||
|
|
||||||
|
Once installed, one may obtain a capture of all CAN bus messages on an
|
||||||
|
interface with the following command:
|
||||||
|
```
|
||||||
|
candump -tz -Ddex can0,#FFFFFFFF > mycanlog
|
||||||
|
```
|
||||||
|
|
||||||
|
One can view the resulting log file (`mycanlog` in the example above)
|
||||||
|
to see each raw CAN bus message that was sent and received by Klipper.
|
||||||
|
Understanding the content of these messages will likely require
|
||||||
|
low-level knowledge of Klipper's [CANBUS protocol](CANBUS_protocol.md)
|
||||||
|
and Klipper's [MCU commands](MCU_Commands.md).
|
||||||
|
|
||||||
|
### Parsing Klipper messages in a candump log
|
||||||
|
|
||||||
|
One may use the `parsecandump.py` tool to parse the low-level Klipper
|
||||||
|
micro-controller messages contained in a candump log. Using this tool
|
||||||
|
is an advanced topic that requires knowledge of Klipper
|
||||||
|
[MCU commands](MCU_Commands.md). For example:
|
||||||
|
```
|
||||||
|
./scripts/parsecandump.py mycanlog 108 ./out/klipper.dict
|
||||||
|
```
|
||||||
|
|
||||||
|
This tool produces output similar to the [parsedump
|
||||||
|
tool](Debugging.md#translating-gcode-files-to-micro-controller-commands). See
|
||||||
|
the documentation for that tool for information on generating the
|
||||||
|
Klipper micro-controller data dictionary.
|
||||||
|
|
||||||
|
In the above example, `108` is the [CAN bus
|
||||||
|
id](CANBUS_protocol.md#micro-controller-id-assignment). It is a
|
||||||
|
hexadecimal number. The id `108` is assigned by Klipper to the first
|
||||||
|
micro-controller. If the CAN bus has multiple micro-controllers on it,
|
||||||
|
then the second micro-controller would be `10a`, the third would be
|
||||||
|
`10c`, and so on.
|
||||||
|
|
||||||
|
The candump log must be produced using the `-tz -Ddex` command-line
|
||||||
|
arguments (for example: `candump -tz -Ddex can0,#FFFFFFFF`) in order
|
||||||
|
to use the `parsecandump.py` tool.
|
||||||
|
|
||||||
|
## Using a logic analyzer on the canbus wiring
|
||||||
|
|
||||||
|
The [Sigrok Pulseview](https://sigrok.org/wiki/PulseView) software
|
||||||
|
along with a low-cost
|
||||||
|
[logic analyzer](https://en.wikipedia.org/wiki/Logic_analyzer) can be
|
||||||
|
useful for diagnosing CAN bus signaling. This is an advanced topic
|
||||||
|
likely only of interest to experts.
|
||||||
|
|
||||||
|
One can often find "USB logic analyzers" for under $15 (US pricing as
|
||||||
|
of 2023). These devices are often listed as "Saleae logic clones" or
|
||||||
|
as "24MHz 8 channel USB logic analyzers".
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
The above picture was taken while using Pulseview with a "Saleae
|
||||||
|
clone" logic analyzer. The Sigrok and Pulseview software was installed
|
||||||
|
on a desktop machine (also install the "fx2lafw" firmware if that is
|
||||||
|
packaged separately). The CH0 pin on the logic analyzer was routed to
|
||||||
|
the CAN Rx line, the CH1 pin was wired to the CAN Tx pin, and GND was
|
||||||
|
wired to GND. Pulseview was configured to only display the D0 and D1
|
||||||
|
lines (red "probe" icon center top toolbar). The number of samples was
|
||||||
|
set to 5 million (top toolbar) and the sample rate was set to 24Mhz
|
||||||
|
(top toolbar). The CAN decoder was added (yellow and green "bubble
|
||||||
|
icon" right top toolbar). The D0 channel was labeled as RX and set to
|
||||||
|
trigger on a falling edge (click on black D0 label at left). The D1
|
||||||
|
channel was labeled as TX (click on brown D1 label at left). The CAN
|
||||||
|
decoder was configured for 1Mbit rate (click on green CAN label at
|
||||||
|
left). The CAN decoder was moved to the top of the display (click and
|
||||||
|
drag green CAN label). Finally, the capture was started (click "Run"
|
||||||
|
at top left) and a packet was transmitted on the CAN bus (`cansend
|
||||||
|
can0 123#121212121212`).
|
||||||
|
|
||||||
|
The logic analyzer provides an independent tool for capturing packets
|
||||||
|
and verifying bit timing.
|
||||||
@@ -253,8 +253,8 @@ The Klipper "reviewers" are:
|
|||||||
| ---------------------- | ----------------- | ----------------- |
|
| ---------------------- | ----------------- | ----------------- |
|
||||||
| Dmitry Butyugin | @dmbutyugin | Input shaping, resonance testing, kinematics |
|
| Dmitry Butyugin | @dmbutyugin | Input shaping, resonance testing, kinematics |
|
||||||
| Eric Callahan | @Arksine | Bed leveling, MCU flashing |
|
| Eric Callahan | @Arksine | Bed leveling, MCU flashing |
|
||||||
|
| James Hartley | @JamesH1978 | Configuration files |
|
||||||
| Kevin O'Connor | @KevinOConnor | Core motion system, Micro-controller code |
|
| Kevin O'Connor | @KevinOConnor | Core motion system, Micro-controller code |
|
||||||
| Paul McGowan | @mental405 | Configuration files, documentation |
|
|
||||||
|
|
||||||
Please do not "ping" any of the reviewers and please do not direct
|
Please do not "ping" any of the reviewers and please do not direct
|
||||||
submissions at them. All of the reviewers monitor the forums and PRs,
|
submissions at them. All of the reviewers monitor the forums and PRs,
|
||||||
|
|||||||
@@ -136,8 +136,9 @@ provides further information on the mechanics of moves.
|
|||||||
|
|
||||||
* The ToolHead class (in toolhead.py) handles "look-ahead" and tracks
|
* The ToolHead class (in toolhead.py) handles "look-ahead" and tracks
|
||||||
the timing of printing actions. The main codepath for a move is:
|
the timing of printing actions. The main codepath for a move is:
|
||||||
`ToolHead.move() -> MoveQueue.add_move() -> MoveQueue.flush() ->
|
`ToolHead.move() -> LookAheadQueue.add_move() ->
|
||||||
Move.set_junction() -> ToolHead._process_moves()`.
|
LookAheadQueue.flush() -> Move.set_junction() ->
|
||||||
|
ToolHead._process_moves()`.
|
||||||
* ToolHead.move() creates a Move() object with the parameters of the
|
* ToolHead.move() creates a Move() object with the parameters of the
|
||||||
move (in cartesian space and in units of seconds and millimeters).
|
move (in cartesian space and in units of seconds and millimeters).
|
||||||
* The kinematics class is given the opportunity to audit each move
|
* The kinematics class is given the opportunity to audit each move
|
||||||
@@ -146,10 +147,10 @@ provides further information on the mechanics of moves.
|
|||||||
may raise an error if the move is not valid. If check_move()
|
may raise an error if the move is not valid. If check_move()
|
||||||
completes successfully then the underlying kinematics must be able
|
completes successfully then the underlying kinematics must be able
|
||||||
to handle the move.
|
to handle the move.
|
||||||
* MoveQueue.add_move() places the move object on the "look-ahead"
|
* LookAheadQueue.add_move() places the move object on the
|
||||||
queue.
|
"look-ahead" queue.
|
||||||
* MoveQueue.flush() determines the start and end velocities of each
|
* LookAheadQueue.flush() determines the start and end velocities of
|
||||||
move.
|
each move.
|
||||||
* Move.set_junction() implements the "trapezoid generator" on a
|
* Move.set_junction() implements the "trapezoid generator" on a
|
||||||
move. The "trapezoid generator" breaks every move into three parts:
|
move. The "trapezoid generator" breaks every move into three parts:
|
||||||
a constant acceleration phase, followed by a constant velocity
|
a constant acceleration phase, followed by a constant velocity
|
||||||
@@ -170,17 +171,18 @@ provides further information on the mechanics of moves.
|
|||||||
placed on a "trapezoid motion queue": `ToolHead._process_moves() ->
|
placed on a "trapezoid motion queue": `ToolHead._process_moves() ->
|
||||||
trapq_append()` (in klippy/chelper/trapq.c). The step times are then
|
trapq_append()` (in klippy/chelper/trapq.c). The step times are then
|
||||||
generated: `ToolHead._process_moves() ->
|
generated: `ToolHead._process_moves() ->
|
||||||
ToolHead._update_move_time() -> MCU_Stepper.generate_steps() ->
|
ToolHead._advance_move_time() -> ToolHead._advance_flush_time() ->
|
||||||
itersolve_generate_steps() -> itersolve_gen_steps_range()` (in
|
MCU_Stepper.generate_steps() -> itersolve_generate_steps() ->
|
||||||
klippy/chelper/itersolve.c). The goal of the iterative solver is to
|
itersolve_gen_steps_range()` (in klippy/chelper/itersolve.c). The
|
||||||
find step times given a function that calculates a stepper position
|
goal of the iterative solver is to find step times given a function
|
||||||
from a time. This is done by repeatedly "guessing" various times
|
that calculates a stepper position from a time. This is done by
|
||||||
until the stepper position formula returns the desired position of
|
repeatedly "guessing" various times until the stepper position
|
||||||
the next step on the stepper. The feedback produced from each guess
|
formula returns the desired position of the next step on the
|
||||||
is used to improve future guesses so that the process rapidly
|
stepper. The feedback produced from each guess is used to improve
|
||||||
converges to the desired time. The kinematic stepper position
|
future guesses so that the process rapidly converges to the desired
|
||||||
formulas are located in the klippy/chelper/ directory (eg,
|
time. The kinematic stepper position formulas are located in the
|
||||||
kin_cart.c, kin_corexy.c, kin_delta.c, kin_extruder.c).
|
klippy/chelper/ directory (eg, kin_cart.c, kin_corexy.c,
|
||||||
|
kin_delta.c, kin_extruder.c).
|
||||||
|
|
||||||
* Note that the extruder is handled in its own kinematic class:
|
* Note that the extruder is handled in its own kinematic class:
|
||||||
`ToolHead._process_moves() -> PrinterExtruder.move()`. Since
|
`ToolHead._process_moves() -> PrinterExtruder.move()`. Since
|
||||||
@@ -357,10 +359,10 @@ Useful steps:
|
|||||||
be efficient as it is typically only called during homing and
|
be efficient as it is typically only called during homing and
|
||||||
probing operations.
|
probing operations.
|
||||||
5. Other methods. Implement the `check_move()`, `get_status()`,
|
5. Other methods. Implement the `check_move()`, `get_status()`,
|
||||||
`get_steppers()`, `home()`, and `set_position()` methods. These
|
`get_steppers()`, `home()`, `clear_homing_state()`, and `set_position()`
|
||||||
functions are typically used to provide kinematic specific checks.
|
methods. These functions are typically used to provide kinematic
|
||||||
However, at the start of development one can use boiler-plate code
|
specific checks. However, at the start of development one can use
|
||||||
here.
|
boiler-plate code here.
|
||||||
6. Implement test cases. Create a g-code file with a series of moves
|
6. Implement test cases. Create a g-code file with a series of moves
|
||||||
that can test important cases for the given kinematics. Follow the
|
that can test important cases for the given kinematics. Follow the
|
||||||
[debugging documentation](Debugging.md) to convert this g-code file
|
[debugging documentation](Debugging.md) to convert this g-code file
|
||||||
|
|||||||
@@ -8,6 +8,156 @@ All dates in this document are approximate.
|
|||||||
|
|
||||||
## Changes
|
## Changes
|
||||||
|
|
||||||
|
20250308: The `AUTO` parameter of the
|
||||||
|
`AXIS_TWIST_COMPENSATION_CALIBRATE` command has been removed.
|
||||||
|
|
||||||
|
20250131: Option `VARIABLE=<name>` in `SAVE_VARIABLE` requires lowercase
|
||||||
|
value. For example, `extruder` instead of mixedcase `Extruder` or
|
||||||
|
uppercase `EXTRUDER`. Using any uppercase letter will raise an error.
|
||||||
|
|
||||||
|
20241203: The resonance test has been changed to include slow sweeping
|
||||||
|
moves. This change requires that testing point(s) have some clearance
|
||||||
|
in X/Y plane (+/- 30 mm from the test point should suffice when using
|
||||||
|
the default settings). The new test should generally produce more
|
||||||
|
accurate and reliable test results. However, if required, the previous
|
||||||
|
test behavior can be restored by adding options `sweeping_period: 0` and
|
||||||
|
`accel_per_hz: 75` to the `[resonance_tester]` config section.
|
||||||
|
|
||||||
|
20241201: In some cases Klipper may have ignored leading characters or
|
||||||
|
spaces in a traditional G-Code command. For example, "99M123" may have
|
||||||
|
been interpreted as "M123" and "M 321" may have been interpreted as
|
||||||
|
"M321". Klipper will now report these cases with an "Unknown command"
|
||||||
|
warning.
|
||||||
|
|
||||||
|
20241112: Option `CHIPS=<chip_name>` in `TEST_RESONANCES` and
|
||||||
|
`SHAPER_CALIBRATE` requires specifying the full name(s) of the accel
|
||||||
|
chip(s). For example, `adxl345 rpi` instead of short name - `rpi`.
|
||||||
|
|
||||||
|
20240912: `SET_PIN`, `SET_SERVO`, `SET_FAN_SPEED`, `M106`, and `M107`
|
||||||
|
commands are now collated. Previously, if many updates to the same
|
||||||
|
object were issued faster than the minimum scheduling time (typically
|
||||||
|
100ms) then actual updates could be queued far into the future. Now if
|
||||||
|
many updates are issued in rapid succession then it is possible that
|
||||||
|
only the latest request will be applied. If the previous behavior is
|
||||||
|
requried then consider adding explicit `G4` delay commands between
|
||||||
|
updates.
|
||||||
|
|
||||||
|
20240912: Support for `maximum_mcu_duration` and `static_value`
|
||||||
|
parameters in `[output_pin]` config sections have been removed. These
|
||||||
|
options have been deprecated since 20240123.
|
||||||
|
|
||||||
|
20240415: The `on_error_gcode` parameter in the `[virtual_sdcard]`
|
||||||
|
config section now has a default. If this parameter is not specified
|
||||||
|
it now defaults to `TURN_OFF_HEATERS`. If the previous behavior is
|
||||||
|
desired (take no default action on an error during a virtual_sdcard
|
||||||
|
print) then define `on_error_gcode` with an empty value.
|
||||||
|
|
||||||
|
20240313: The `max_accel_to_decel` parameter in the `[printer]` config
|
||||||
|
section has been deprecated. The `ACCEL_TO_DECEL` parameter of the
|
||||||
|
`SET_VELOCITY_LIMIT` command has been deprecated. The
|
||||||
|
`printer.toolhead.max_accel_to_decel` status has been removed. Use the
|
||||||
|
[minimum_cruise_ratio parameter](./Config_Reference.md#printer)
|
||||||
|
instead. The deprecated features will be removed in the near future,
|
||||||
|
and using them in the interim may result in subtly different behavior.
|
||||||
|
|
||||||
|
20240215: Several deprecated features have been removed. Using "NTC
|
||||||
|
100K beta 3950" as a thermistor name has been removed (deprecated on
|
||||||
|
20211110). The `SYNC_STEPPER_TO_EXTRUDER` and
|
||||||
|
`SET_EXTRUDER_STEP_DISTANCE` commands have been removed, and the
|
||||||
|
extruder `shared_heater` config option has been removed (deprecated on
|
||||||
|
20220210). The bed_mesh `relative_reference_index` option has been
|
||||||
|
removed (deprecated on 20230619).
|
||||||
|
|
||||||
|
20240123: The output_pin SET_PIN CYCLE_TIME parameter has been
|
||||||
|
removed. Use the new
|
||||||
|
[pwm_cycle_time](Config_Reference.md#pwm_cycle_time) module if it is
|
||||||
|
necessary to dynamically change a pwm pin's cycle time.
|
||||||
|
|
||||||
|
20240123: The output_pin `maximum_mcu_duration` parameter is
|
||||||
|
deprecated. Use a [pwm_tool config section](Config_Reference.md#pwm_tool)
|
||||||
|
instead. The option will be removed in the near future.
|
||||||
|
|
||||||
|
20240123: The output_pin `static_value` parameter is deprecated.
|
||||||
|
Replace with `value` and `shutdown_value` parameters. The option will
|
||||||
|
be removed in the near future.
|
||||||
|
|
||||||
|
20231216: The `[hall_filament_width_sensor]` is changed to trigger filament runout
|
||||||
|
when the thickness of the filament exceeds `max_diameter`. The maximum diameter
|
||||||
|
defaults to `default_nominal_filament_diameter + max_difference`. See
|
||||||
|
[[hall_filament_width_sensor] configuration
|
||||||
|
reference](./Config_Reference.md#hall_filament_width_sensor) for more details.
|
||||||
|
|
||||||
|
20231207: Several undocumented config parameters in the `[printer]`
|
||||||
|
config section have been removed (the buffer_time_low,
|
||||||
|
buffer_time_high, buffer_time_start, and move_flush_time parameters).
|
||||||
|
|
||||||
|
20231110: Klipper v0.12.0 released.
|
||||||
|
|
||||||
|
20230826: If `safe_distance` is set or calculated to be 0 in `[dual_carriage]`,
|
||||||
|
the carriages proximity checks will be disabled as per documentation. A user
|
||||||
|
may wish to configure `safe_distance` explicitly to prevent accidental crashes
|
||||||
|
of the carriages with each other. Additionally, the homing order of the primary
|
||||||
|
and the dual carriage is changed in some configurations (certain configurations
|
||||||
|
when both carriages home in the same direction, see
|
||||||
|
[[dual_carriage] configuration reference](./Config_Reference.md#dual_carriage)
|
||||||
|
for more details).
|
||||||
|
|
||||||
|
20230810: The flash-sdcard.sh script now supports both variants of the
|
||||||
|
Bigtreetech SKR-3, STM32H743 and STM32H723. For this, the original tag
|
||||||
|
of btt-skr-3 now has changed to be either btt-skr-3-h743 or btt-skr-3-h723.
|
||||||
|
|
||||||
|
20230729: The exported status for `dual_carriage` is changed. Instead of
|
||||||
|
exporting `mode` and `active_carriage`, the individual modes for each
|
||||||
|
carriage are exported as `printer.dual_carriage.carriage_0` and
|
||||||
|
`printer.dual_carriage.carriage_1`.
|
||||||
|
|
||||||
|
20230619: The `relative_reference_index` option has been deprecated
|
||||||
|
and superceded by the `zero_reference_position` option. Refer to the
|
||||||
|
[Bed Mesh Documentation](./Bed_Mesh.md#the-deprecated-relative_reference_index)
|
||||||
|
for details on how to update the configuration. With this deprecation
|
||||||
|
the `RELATIVE_REFERENCE_INDEX` is no longer available as a parameter
|
||||||
|
for the `BED_MESH_CALIBRATE` gcode command.
|
||||||
|
|
||||||
|
20230530: The default canbus frequency in "make menuconfig" is
|
||||||
|
now 1000000. If using canbus and using canbus with some other
|
||||||
|
frequency is required, then be sure to select "Enable extra low-level
|
||||||
|
configuration options" and specify the desired "CAN bus speed" in
|
||||||
|
"make menuconfig" when compiling and flashing the micro-controller.
|
||||||
|
|
||||||
|
20230525: `SHAPER_CALIBRATE` command immediately applies input shaper
|
||||||
|
parameters if `[input_shaper]` was enabled already.
|
||||||
|
|
||||||
|
20230407: The `stalled_bytes` counter in the log and in the
|
||||||
|
`printer.mcu.last_stats` field has been renamed to `upcoming_bytes`.
|
||||||
|
|
||||||
|
20230323: On tmc5160 drivers `multistep_filt` is now enabled by default. Set
|
||||||
|
`driver_MULTISTEP_FILT: False` in the tmc5160 config for the previous behavior.
|
||||||
|
|
||||||
|
20230304: The `SET_TMC_CURRENT` command now properly adjusts the globalscaler
|
||||||
|
register for drivers that have it. This removes a limitation where on tmc5160,
|
||||||
|
the currents could not be raised higher with `SET_TMC_CURRENT` than the
|
||||||
|
`run_current` value set in the config file.
|
||||||
|
However, this has a side effect: After running `SET_TMC_CURRENT`, the stepper
|
||||||
|
must be held at standstill for >130ms in case StealthChop2 is used so that the
|
||||||
|
AT#1 calibration gets executed by the driver.
|
||||||
|
|
||||||
|
20230202: The format of the `printer.screws_tilt_adjust` status
|
||||||
|
information has changed. The information is now stored as a dictionary of
|
||||||
|
screws with the resulting measurements. See the
|
||||||
|
[status reference](Status_Reference.md#screws_tilt_adjust) for details.
|
||||||
|
|
||||||
|
20230201: The `[bed_mesh]` module no longer loads the `default` profile
|
||||||
|
on startup. It is recommended that users who use the `default` profile
|
||||||
|
add `BED_MESH_PROFILE LOAD=default` to their `START_PRINT` macro (or
|
||||||
|
to their slicer's "Start G-Code" configuration when applicable).
|
||||||
|
|
||||||
|
20230103: It is now possible with the flash-sdcard.sh script to flash
|
||||||
|
both variants of the Bigtreetech SKR-2, STM32F407 and STM32F429.
|
||||||
|
This means that the original tag of btt-skr2 now has changed to either
|
||||||
|
btt-skr-2-f407 or btt-skr-2-f429.
|
||||||
|
|
||||||
|
20221128: Klipper v0.11.0 released.
|
||||||
|
|
||||||
20221122: Previously, with safe_z_home, it was possible that the
|
20221122: Previously, with safe_z_home, it was possible that the
|
||||||
z_hop after the g28 homing would go in the negative z direction.
|
z_hop after the g28 homing would go in the negative z direction.
|
||||||
Now, a z_hop is performed after g28 only if it results in a positive
|
Now, a z_hop is performed after g28 only if it results in a positive
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -15,10 +15,7 @@ config file is successfully loaded.
|
|||||||
## Verify temperature
|
## Verify temperature
|
||||||
|
|
||||||
Start by verifying that temperatures are being properly reported.
|
Start by verifying that temperatures are being properly reported.
|
||||||
Navigate to the Octoprint temperature tab.
|
Navigate to the temperature graph section in the user interface.
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
Verify that the temperature of the nozzle and bed (if applicable) are
|
Verify that the temperature of the nozzle and bed (if applicable) are
|
||||||
present and not increasing. If it is increasing, remove power from the
|
present and not increasing. If it is increasing, remove power from the
|
||||||
printer. If the temperatures are not accurate, review the
|
printer. If the temperatures are not accurate, review the
|
||||||
@@ -26,28 +23,25 @@ printer. If the temperatures are not accurate, review the
|
|||||||
|
|
||||||
## Verify M112
|
## Verify M112
|
||||||
|
|
||||||
Navigate to the Octoprint terminal tab and issue an M112 command in
|
Navigate to the command console and issue an M112
|
||||||
the terminal box. This command requests Klipper to go into a
|
command in the terminal box. This command requests Klipper to go into a
|
||||||
"shutdown" state. It will cause Octoprint to disconnect from Klipper -
|
"shutdown" state. It will cause an error to show,
|
||||||
navigate to the Connection area and click on "Connect" to cause
|
which can be cleared with a FIRMWARE_RESTART command in the
|
||||||
Octoprint to reconnect. Then navigate to the Octoprint temperature tab
|
command console. Octoprint will also require a reconnect. Then navigate
|
||||||
and verify that temperatures continue to update and the temperatures
|
to the temperature graph section and verify that temperatures continue
|
||||||
are not increasing. If temperatures are increasing, remove power from
|
to update and the temperatures are not increasing.
|
||||||
the printer.
|
If temperatures are increasing, remove power from the printer.
|
||||||
|
|
||||||
The M112 command causes Klipper to go into a "shutdown" state. To
|
|
||||||
clear this state, issue a FIRMWARE_RESTART command in the Octoprint
|
|
||||||
terminal tab.
|
|
||||||
|
|
||||||
## Verify heaters
|
## Verify heaters
|
||||||
|
|
||||||
Navigate to the Octoprint temperature tab and type in 50 followed by
|
Navigate to the temperature graph section and type in 50 followed by
|
||||||
enter in the "Tool" temperature box. The extruder temperature in the
|
enter in the extruder/tool temperature box.
|
||||||
graph should start to increase (within about 30 seconds or so). Then
|
The extruder temperature in the graph should start to increase
|
||||||
go to the "Tool" temperature drop-down box and select "Off". After
|
(within about 30 seconds or so). Then go to the extruder temperature
|
||||||
several minutes the temperature should start to return to its initial
|
drop-down box and select "Off". After several minutes the temperature
|
||||||
room temperature value. If the temperature does not increase then
|
should start to return to its initial room temperature value. If the
|
||||||
verify the "heater_pin" setting in the config.
|
temperature does not increase then verify the "heater_pin" setting
|
||||||
|
in the config.
|
||||||
|
|
||||||
If the printer has a heated bed then perform the above test again with
|
If the printer has a heated bed then perform the above test again with
|
||||||
the bed.
|
the bed.
|
||||||
@@ -60,21 +54,20 @@ the motors. If any of the axes still can not move freely, then verify
|
|||||||
the stepper "enable_pin" configuration for the given axis. On most
|
the stepper "enable_pin" configuration for the given axis. On most
|
||||||
commodity stepper motor drivers, the motor enable pin is "active low"
|
commodity stepper motor drivers, the motor enable pin is "active low"
|
||||||
and therefore the enable pin should have a "!" before the pin (for
|
and therefore the enable pin should have a "!" before the pin (for
|
||||||
example, "enable_pin: !ar38").
|
example, "enable_pin: !PA1").
|
||||||
|
|
||||||
## Verify endstops
|
## Verify endstops
|
||||||
|
|
||||||
Manually move all the printer axes so that none of them are in contact
|
Manually move all the printer axes so that none of them are in contact
|
||||||
with an endstop. Send a QUERY_ENDSTOPS command via the Octoprint
|
with an endstop. Send a QUERY_ENDSTOPS command via the command console.
|
||||||
terminal tab. It should respond with the current state of all of the
|
It should respond with the current state of all of the configured endstops
|
||||||
configured endstops and they should all report a state of "open". For
|
and they should all report a state of "open". For each of the endstops,
|
||||||
each of the endstops, rerun the QUERY_ENDSTOPS command while manually
|
rerun the QUERY_ENDSTOPS command while manually triggering the endstop.
|
||||||
triggering the endstop. The QUERY_ENDSTOPS command should report the
|
The QUERY_ENDSTOPS command should report the endstop as "TRIGGERED".
|
||||||
endstop as "TRIGGERED".
|
|
||||||
|
|
||||||
If the endstop appears inverted (it reports "open" when triggered and
|
If the endstop appears inverted (it reports "open" when triggered and
|
||||||
vice-versa) then add a "!" to the pin definition (for example,
|
vice-versa) then add a "!" to the pin definition (for example,
|
||||||
"endstop_pin: ^!ar3"), or remove the "!" if there is already one
|
"endstop_pin: ^!PA2"), or remove the "!" if there is already one
|
||||||
present.
|
present.
|
||||||
|
|
||||||
If the endstop does not change at all then it generally indicates that
|
If the endstop does not change at all then it generally indicates that
|
||||||
@@ -87,12 +80,13 @@ resistor and the '^' should be present).
|
|||||||
|
|
||||||
Use the STEPPER_BUZZ command to verify the connectivity of each
|
Use the STEPPER_BUZZ command to verify the connectivity of each
|
||||||
stepper motor. Start by manually positioning the given axis to a
|
stepper motor. Start by manually positioning the given axis to a
|
||||||
midway point and then run `STEPPER_BUZZ STEPPER=stepper_x`. The
|
midway point and then run `STEPPER_BUZZ STEPPER=stepper_x` in the
|
||||||
STEPPER_BUZZ command will cause the given stepper to move one
|
command console. The STEPPER_BUZZ command will cause the given
|
||||||
millimeter in a positive direction and then it will return to its
|
stepper to move one millimeter in a positive direction and then it
|
||||||
starting position. (If the endstop is defined at position_endstop=0
|
will return to its starting position. (If the endstop is defined at
|
||||||
then at the start of each movement the stepper will move away from the
|
position_endstop=0 then at the start of each movement the stepper
|
||||||
endstop.) It will perform this oscillation ten times.
|
will move away from the endstop.) It will perform this oscillation
|
||||||
|
ten times.
|
||||||
|
|
||||||
If the stepper does not move at all, then verify the "enable_pin" and
|
If the stepper does not move at all, then verify the "enable_pin" and
|
||||||
"step_pin" settings for the stepper. If the stepper motor moves but
|
"step_pin" settings for the stepper. If the stepper motor moves but
|
||||||
@@ -119,11 +113,11 @@ Rerun the endstop and stepper motor verification steps if necessary.
|
|||||||
## Verify extruder motor
|
## Verify extruder motor
|
||||||
|
|
||||||
To test the extruder motor it will be necessary to heat the extruder
|
To test the extruder motor it will be necessary to heat the extruder
|
||||||
to a printing temperature. Navigate to the Octoprint temperature tab
|
to a printing temperature. Navigate to the temperature graph section
|
||||||
and select a target temperature from the temperature drop-down box (or
|
and select a target temperature from the temperature drop-down box (or
|
||||||
manually enter an appropriate temperature). Wait for the printer to
|
manually enter an appropriate temperature). Wait for the printer to
|
||||||
reach the desired temperature. Then navigate to the Octoprint control
|
reach the desired temperature. Then navigate to the command console and
|
||||||
tab and click the "Extrude" button. Verify that the extruder motor
|
click the "Extrude" button. Verify that the extruder motor
|
||||||
turns in the correct direction. If it does not, see the
|
turns in the correct direction. If it does not, see the
|
||||||
troubleshooting tips in the previous section to confirm the
|
troubleshooting tips in the previous section to confirm the
|
||||||
"enable_pin", "step_pin", and "dir_pin" settings for the extruder.
|
"enable_pin", "step_pin", and "dir_pin" settings for the extruder.
|
||||||
@@ -137,8 +131,8 @@ necessary to calibrate the PID settings on each printer (PID settings
|
|||||||
found in other firmwares or in the example configuration files often
|
found in other firmwares or in the example configuration files often
|
||||||
work poorly).
|
work poorly).
|
||||||
|
|
||||||
To calibrate the extruder, navigate to the OctoPrint terminal tab and
|
To calibrate the extruder, navigate to the command console
|
||||||
run the PID_CALIBRATE command. For example: `PID_CALIBRATE
|
and run the PID_CALIBRATE command. For example: `PID_CALIBRATE
|
||||||
HEATER=extruder TARGET=170`
|
HEATER=extruder TARGET=170`
|
||||||
|
|
||||||
At the completion of the tuning test run `SAVE_CONFIG` to update the
|
At the completion of the tuning test run `SAVE_CONFIG` to update the
|
||||||
|
|||||||
102
docs/Contact.md
102
docs/Contact.md
@@ -2,25 +2,18 @@
|
|||||||
|
|
||||||
This document provides contact information for Klipper.
|
This document provides contact information for Klipper.
|
||||||
|
|
||||||
1. [Community Forum](#community-forum)
|
## Discourse Forum
|
||||||
2. [Discord Chat](#discord-chat)
|
|
||||||
3. [I have a question about Klipper](#i-have-a-question-about-klipper)
|
|
||||||
4. [I have a feature request](#i-have-a-feature-request)
|
|
||||||
5. [Help! It doesn't work!](#help-it-doesnt-work)
|
|
||||||
6. [I found a bug in the Klipper software](#i-found-a-bug-in-the-klipper-software)
|
|
||||||
7. [I am making changes that I'd like to include in Klipper](#i-am-making-changes-that-id-like-to-include-in-klipper)
|
|
||||||
8. [Klipper github](#klipper-github)
|
|
||||||
|
|
||||||
## Community Forum
|
|
||||||
|
|
||||||
There is a
|
There is a
|
||||||
[Klipper Community Discourse server](https://community.klipper3d.org)
|
[Klipper Community Discourse server](https://community.klipper3d.org)
|
||||||
for discussions on Klipper.
|
for "forum" style discussions on Klipper. Note that Discourse is not
|
||||||
|
Discord.
|
||||||
|
|
||||||
## Discord Chat
|
## Discord Chat
|
||||||
|
|
||||||
There is a Discord server dedicated to Klipper at:
|
There is a Discord server dedicated to Klipper at:
|
||||||
[https://discord.klipper3d.org](https://discord.klipper3d.org).
|
[https://discord.klipper3d.org](https://discord.klipper3d.org). Note
|
||||||
|
that Discord is not Discourse.
|
||||||
|
|
||||||
This server is run by a community of Klipper enthusiasts dedicated to
|
This server is run by a community of Klipper enthusiasts dedicated to
|
||||||
discussions on Klipper. It allows users to chat with other users in
|
discussions on Klipper. It allows users to chat with other users in
|
||||||
@@ -33,37 +26,29 @@ Many questions we receive are already answered in the
|
|||||||
documentation and follow the directions provided there.
|
documentation and follow the directions provided there.
|
||||||
|
|
||||||
It is also possible to search for similar questions in the
|
It is also possible to search for similar questions in the
|
||||||
[Klipper Community Forum](#community-forum).
|
[Klipper Discourse Forum](#discourse-forum).
|
||||||
|
|
||||||
If you are interested in sharing your knowledge and experience with
|
If you are interested in sharing your knowledge and experience with
|
||||||
other Klipper users then you can join the
|
other Klipper users then you can join the
|
||||||
[Klipper Community Forum](#community-forum) or
|
[Klipper Discourse Forum](#discourse-forum) or
|
||||||
[Klipper Discord Chat](#discord-chat). Both are communities where
|
[Klipper Discord Chat](#discord-chat). Both are communities where
|
||||||
Klipper users can discuss Klipper with other users.
|
Klipper users can discuss Klipper with other users.
|
||||||
|
|
||||||
Many questions we receive are general 3d-printing questions that are
|
If you have a general question or are experiencing general printing
|
||||||
not specific to Klipper. If you have a general question or are
|
problems, then also consider a general 3d-printing forum or a forum
|
||||||
experiencing general printing problems, then you will likely get a
|
dedicated to the printer hardware.
|
||||||
better response by asking in a general 3d-printing forum or a forum
|
|
||||||
dedicated to your printer hardware.
|
|
||||||
|
|
||||||
## I have a feature request
|
## I have a feature request
|
||||||
|
|
||||||
All new features require someone interested and able to implement that
|
All new features require someone interested and able to implement that
|
||||||
feature. If you are interested in helping to implement or test a new
|
feature. If you are interested in helping to implement or test a new
|
||||||
feature, you can search for ongoing developments in the
|
feature, you can search for ongoing developments in the
|
||||||
[Klipper Community Forum](#community-forum). There is also
|
[Klipper Discourse Forum](#discourse-forum). There is also
|
||||||
[Klipper Discord Chat](#discord-chat) for discussions between
|
[Klipper Discord Chat](#discord-chat) for discussions between
|
||||||
collaborators.
|
collaborators.
|
||||||
|
|
||||||
## Help! It doesn't work!
|
## Help! It doesn't work!
|
||||||
|
|
||||||
Unfortunately, we receive many more requests for help than we could
|
|
||||||
possibly answer. Most problem reports we see are eventually tracked
|
|
||||||
down to:
|
|
||||||
1. Subtle errors in the hardware, or
|
|
||||||
2. Not following all the steps described in the Klipper documentation.
|
|
||||||
|
|
||||||
If you are experiencing problems we recommend you carefully read the
|
If you are experiencing problems we recommend you carefully read the
|
||||||
[Klipper documentation](Overview.md) and double check that all steps
|
[Klipper documentation](Overview.md) and double check that all steps
|
||||||
were followed.
|
were followed.
|
||||||
@@ -72,16 +57,15 @@ If you are experiencing a printing problem, then we recommend
|
|||||||
carefully inspecting the printer hardware (all joints, wires, screws,
|
carefully inspecting the printer hardware (all joints, wires, screws,
|
||||||
etc.) and verify nothing is abnormal. We find most printing problems
|
etc.) and verify nothing is abnormal. We find most printing problems
|
||||||
are not related to the Klipper software. If you do find a problem with
|
are not related to the Klipper software. If you do find a problem with
|
||||||
the printer hardware then you will likely get a better response by
|
the printer hardware then consider searching general 3d-printing
|
||||||
searching in a general 3d-printing forum or in a forum dedicated to
|
forums or forums dedicated to the printer hardware.
|
||||||
your printer hardware.
|
|
||||||
|
|
||||||
It is also possible to search for similar issues in the
|
It is also possible to search for similar issues in the
|
||||||
[Klipper Community Forum](#community-forum).
|
[Klipper Discourse Forum](#discourse-forum).
|
||||||
|
|
||||||
If you are interested in sharing your knowledge and experience with
|
If you are interested in sharing your knowledge and experience with
|
||||||
other Klipper users then you can join the
|
other Klipper users then you can join the
|
||||||
[Klipper Community Forum](#community-forum) or
|
[Klipper Discourse Forum](#discourse-forum) or
|
||||||
[Klipper Discord Chat](#discord-chat). Both are communities where
|
[Klipper Discord Chat](#discord-chat). Both are communities where
|
||||||
Klipper users can discuss Klipper with other users.
|
Klipper users can discuss Klipper with other users.
|
||||||
|
|
||||||
@@ -91,7 +75,7 @@ Klipper is an open-source project and we appreciate when collaborators
|
|||||||
diagnose errors in the software.
|
diagnose errors in the software.
|
||||||
|
|
||||||
Problems should be reported in the
|
Problems should be reported in the
|
||||||
[Klipper Community Forum](#community-forum).
|
[Klipper Discourse Forum](#discourse-forum).
|
||||||
|
|
||||||
There is important information that will be needed in order to fix a
|
There is important information that will be needed in order to fix a
|
||||||
bug. Please follow these steps:
|
bug. Please follow these steps:
|
||||||
@@ -110,23 +94,28 @@ bug. Please follow these steps:
|
|||||||
about the software and its environment (software version, hardware
|
about the software and its environment (software version, hardware
|
||||||
type, configuration, event timing, and hundreds of other
|
type, configuration, event timing, and hundreds of other
|
||||||
questions).
|
questions).
|
||||||
1. The Klipper log file is located in `/tmp/klippy.log` on the
|
1. Dedicated Klipper web interfaces have the ability to directly
|
||||||
Klipper "host" computer (the Raspberry Pi).
|
obtain the Klipper log file. It's the easiest way to obtain the
|
||||||
2. An "scp" or "sftp" utility is needed to copy this log file to
|
log when using one of these interfaces. Otherwise, an "scp" or
|
||||||
your desktop computer. The "scp" utility comes standard with
|
"sftp" utility is needed to copy the log file to your desktop
|
||||||
Linux and MacOS desktops. There are freely available scp
|
computer. The "scp" utility comes standard with Linux and MacOS
|
||||||
utilities for other desktops (eg, WinSCP). If using a graphical
|
desktops. There are freely available scp utilities for other
|
||||||
scp utility that can not directly copy `/tmp/klippy.log` then
|
desktops (eg, WinSCP). The log file may be located in the
|
||||||
repeatedly click on `..` or `parent folder` until you get to the
|
`~/printer_data/logs/klippy.log` file (if using a graphical scp
|
||||||
root directory, click on the `tmp` folder, and then select the
|
utility, look for the "printer_data" folder, then the "logs"
|
||||||
`klippy.log` file.
|
folder under that, then the `klippy.log` file). The log file may
|
||||||
3. Copy the log file to your desktop so that it can be attached to
|
alternatively be located in the `/tmp/klippy.log` file (if using
|
||||||
|
a graphical scp utility that can not directly copy
|
||||||
|
`/tmp/klippy.log` then repeatedly click on `..` or
|
||||||
|
"parent folder" until reaching the root directory, click on
|
||||||
|
the `tmp` folder, and then select the `klippy.log` file).
|
||||||
|
2. Copy the log file to your desktop so that it can be attached to
|
||||||
an issue report.
|
an issue report.
|
||||||
4. Do not modify the log file in any way; do not provide a snippet
|
3. Do not modify the log file in any way; do not provide a snippet
|
||||||
of the log. Only the full unmodified log file provides the
|
of the log. Only the full unmodified log file provides the
|
||||||
necessary information.
|
necessary information.
|
||||||
5. It is a good idea to compress the log file with zip or gzip.
|
4. It is a good idea to compress the log file with zip or gzip.
|
||||||
5. Open a new topic on the [Klipper Community Forum](#community-forum)
|
5. Open a new topic on the [Klipper Discourse Forum](#discourse-forum)
|
||||||
and provide a clear description of the problem. Other Klipper
|
and provide a clear description of the problem. Other Klipper
|
||||||
contributors will need to understand what steps were taken, what
|
contributors will need to understand what steps were taken, what
|
||||||
the desired outcome was, and what outcome actually occurred. The
|
the desired outcome was, and what outcome actually occurred. The
|
||||||
@@ -136,22 +125,17 @@ bug. Please follow these steps:
|
|||||||
|
|
||||||
Klipper is open-source software and we appreciate new contributions.
|
Klipper is open-source software and we appreciate new contributions.
|
||||||
|
|
||||||
New contributions (for both code and documentation) are submitted via
|
See the [CONTRIBUTING document](CONTRIBUTING.md) for information.
|
||||||
Github Pull Requests. See the [CONTRIBUTING document](CONTRIBUTING.md)
|
|
||||||
for important information.
|
|
||||||
|
|
||||||
There are several
|
There are several
|
||||||
[documents for developers](Overview.md#developer-documentation). If
|
[documents for developers](Overview.md#developer-documentation). If
|
||||||
you have questions on the code then you can also ask in the
|
you have questions on the code then you can also ask in the
|
||||||
[Klipper Community Forum](#community-forum) or on the
|
[Klipper Discourse Forum](#discourse-forum) or on the
|
||||||
[Klipper Community Discord](#discord-chat).
|
[Klipper Discord Chat](#discord-chat).
|
||||||
|
|
||||||
## Klipper github
|
## Professional Services
|
||||||
|
|
||||||
Klipper github may be used by contributors to share the status of
|

|
||||||
their work to improve Klipper. It is expected that the person opening
|
|
||||||
a github ticket is actively working on the given task and will be the
|
Custom software development, software support, and solutions:
|
||||||
one performing all the work necessary to accomplish it. The Klipper
|
[https://ko-fi.com/koconnor](https://ko-fi.com/koconnor)
|
||||||
github is not used for requests, nor to report bugs, nor to ask
|
|
||||||
questions. Use the [Klipper Community Forum](#community-forum) or the
|
|
||||||
[Klipper Community Discord](#discord-chat) instead.
|
|
||||||
|
|||||||
@@ -216,7 +216,7 @@ after the above compilation:
|
|||||||
```
|
```
|
||||||
ls ./build/pysimulavr/_pysimulavr.*.so
|
ls ./build/pysimulavr/_pysimulavr.*.so
|
||||||
```
|
```
|
||||||
This commmand should report a specific file (e.g.
|
This command should report a specific file (e.g.
|
||||||
**./build/pysimulavr/_pysimulavr.cpython-39-x86_64-linux-gnu.so**) and
|
**./build/pysimulavr/_pysimulavr.cpython-39-x86_64-linux-gnu.so**) and
|
||||||
not an error.
|
not an error.
|
||||||
|
|
||||||
|
|||||||
146
docs/Eddy_Probe.md
Normal file
146
docs/Eddy_Probe.md
Normal file
@@ -0,0 +1,146 @@
|
|||||||
|
# Eddy Current Inductive probe
|
||||||
|
|
||||||
|
This document describes how to use an
|
||||||
|
[eddy current](https://en.wikipedia.org/wiki/Eddy_current) inductive
|
||||||
|
probe in Klipper.
|
||||||
|
|
||||||
|
Currently, an eddy current probe can not be used for Z homing. The
|
||||||
|
sensor can only be used for Z probing.
|
||||||
|
|
||||||
|
Start by declaring a
|
||||||
|
[probe_eddy_current config section](Config_Reference.md#probe_eddy_current)
|
||||||
|
in the printer.cfg file. It is recommended to set the `z_offset` to
|
||||||
|
0.5mm. It is typical for the sensor to require an `x_offset` and
|
||||||
|
`y_offset`. If these values are not known, one should estimate the
|
||||||
|
values during initial calibration.
|
||||||
|
|
||||||
|
The first step in calibration is to determine the appropriate
|
||||||
|
DRIVE_CURRENT for the sensor. Home the printer and navigate the
|
||||||
|
toolhead so that the sensor is near the center of the bed and is about
|
||||||
|
20mm above the bed. Then issue an `LDC_CALIBRATE_DRIVE_CURRENT
|
||||||
|
CHIP=<config_name>` command. For example, if the config section was
|
||||||
|
named `[probe_eddy_current my_eddy_probe]` then one would run
|
||||||
|
`LDC_CALIBRATE_DRIVE_CURRENT CHIP=my_eddy_probe`. This command should
|
||||||
|
complete in a few seconds. After it completes, issue a `SAVE_CONFIG`
|
||||||
|
command to save the results to the printer.cfg and restart.
|
||||||
|
|
||||||
|
The second step in calibration is to correlate the sensor readings to
|
||||||
|
the corresponding Z heights. Home the printer and navigate the
|
||||||
|
toolhead so that the nozzle is near the center of the bed. Then run an
|
||||||
|
`PROBE_EDDY_CURRENT_CALIBRATE CHIP=my_eddy_probe` command. Once the
|
||||||
|
tool starts, follow the steps described at
|
||||||
|
["the paper test"](Bed_Level.md#the-paper-test) to determine the
|
||||||
|
actual distance between the nozzle and bed at the given location. Once
|
||||||
|
those steps are complete one can `ACCEPT` the position. The tool will
|
||||||
|
then move the the toolhead so that the sensor is above the point where
|
||||||
|
the nozzle used to be and run a series of movements to correlate the
|
||||||
|
sensor to Z positions. This will take a couple of minutes. After the
|
||||||
|
tool completes, issue a `SAVE_CONFIG` command to save the results to
|
||||||
|
the printer.cfg and restart.
|
||||||
|
|
||||||
|
After initial calibration it is a good idea to verify that the
|
||||||
|
`x_offset` and `y_offset` are accurate. Follow the steps to
|
||||||
|
[calibrate probe x and y offsets](Probe_Calibrate.md#calibrating-probe-x-and-y-offsets).
|
||||||
|
If either the `x_offset` or `y_offset` is modified then be sure to run
|
||||||
|
the `PROBE_EDDY_CURRENT_CALIBRATE` command (as described above) after
|
||||||
|
making the change.
|
||||||
|
|
||||||
|
Once calibration is complete, one may use all the standard Klipper
|
||||||
|
tools that use a Z probe.
|
||||||
|
|
||||||
|
Note that eddy current sensors (and inductive probes in general) are
|
||||||
|
susceptible to "thermal drift". That is, changes in temperature can
|
||||||
|
result in changes in reported Z height. Changes in either the bed
|
||||||
|
surface temperature or sensor hardware temperature can skew the
|
||||||
|
results. It is important that calibration and probing is only done
|
||||||
|
when the printer is at a stable temperature.
|
||||||
|
|
||||||
|
## Thermal Drift Calibration
|
||||||
|
|
||||||
|
As with all inductive probes, eddy current probes are subject to
|
||||||
|
significant thermal drift. If the eddy probe has a temperature
|
||||||
|
sensor on the coil it is possible to configure a `[temperature_probe]`
|
||||||
|
to report coil temperature and enable software drift compensation. To
|
||||||
|
link a temperature probe to an eddy current probe the
|
||||||
|
`[temperature_probe]` section must share a name with the
|
||||||
|
`[probe_eddy_current]` section. For example:
|
||||||
|
|
||||||
|
```
|
||||||
|
[probe_eddy_current my_probe]
|
||||||
|
# eddy probe configuration...
|
||||||
|
|
||||||
|
[temperature_probe my_probe]
|
||||||
|
# temperature probe configuration...
|
||||||
|
```
|
||||||
|
|
||||||
|
See the [configuration reference](Config_Reference.md#temperature_probe)
|
||||||
|
for further details on how to configure a `temperature_probe`. It is
|
||||||
|
advised to configure the `calibration_position`,
|
||||||
|
`calibration_extruder_temp`, `extruder_heating_z`, and
|
||||||
|
`calibration_bed_temp` options, as doing so will automate some of the
|
||||||
|
steps outlined below. If the printer to be calibrated is enclosed, it
|
||||||
|
is strongly recommended to set the `max_validation_temp` option to a value
|
||||||
|
between 100 and 120.
|
||||||
|
|
||||||
|
Eddy probe manufacturers may offer a stock drift calibration that can be
|
||||||
|
manually added to `drift_calibration` option of the `[probe_eddy_current]`
|
||||||
|
section. If they do not, or if the stock calibration does not perform well on
|
||||||
|
your system, the `temperature_probe` module offers a manual calibration
|
||||||
|
procedure via the `TEMPERATURE_PROBE_CALIBRATE` gcode command.
|
||||||
|
|
||||||
|
Prior to performing calibration the user should have an idea of what the
|
||||||
|
maximum attainable temperature probe coil temperature is. This temperature
|
||||||
|
should be used to set the `TARGET` parameter of the
|
||||||
|
`TEMPERATURE_PROBE_CALIBRATE` command. The goal is to calibrate across the
|
||||||
|
widest temperature range possible, thus its desirable to start with the printer
|
||||||
|
cold and finish with the coil at the maximum temperature it can reach.
|
||||||
|
|
||||||
|
Once a `[temperature_probe]` is configured, the following steps may be taken
|
||||||
|
to perform thermal drift calibration:
|
||||||
|
|
||||||
|
- The probe must be calibrated using `PROBE_EDDY_CURRENT_CALIBRATE`
|
||||||
|
when a `[temperature_probe]` is configured and linked. This captures
|
||||||
|
the temperature during calibration which is necessary to perform
|
||||||
|
thermal drift compensation.
|
||||||
|
- Make sure the nozzle is free of debris and filament.
|
||||||
|
- The bed, nozzle, and probe coil should be cold prior to calibration.
|
||||||
|
- The following steps are required if the `calibration_position`,
|
||||||
|
`calibration_extruder_temp`, and `extruder_heating_z` options in
|
||||||
|
`[temperature_probe]` are **NOT** configured:
|
||||||
|
- Move the tool to the center of the bed. Z should be 30mm+ above the bed.
|
||||||
|
- Heat the extruder to a temperature above the maximum safe bed temperature.
|
||||||
|
150-170C should be sufficient for most configurations. The purpose of
|
||||||
|
heating the extruder is to avoid nozzle expansion during calibration.
|
||||||
|
- When the extruder temperature has settled, move the Z axis down to about 1mm
|
||||||
|
above the bed.
|
||||||
|
- Start drift calibration. If the probe's name is `my_probe` and the maximum
|
||||||
|
probe temperature we can achieve is 80C, the appropriate gcode command is
|
||||||
|
`TEMPERATURE_PROBE_CALIBRATE PROBE=my_probe TARGET=80`. If configured, the
|
||||||
|
tool will move to the X,Y coordinate specified by the `calibration_position`
|
||||||
|
and the Z value specified by `extruder_heating_z`. After heating the extruder
|
||||||
|
to the specified temperature the tool will move to the Z value specified
|
||||||
|
by the`calibration_position`.
|
||||||
|
- The procedure will request a manual probe. Perform the manual probe with
|
||||||
|
the paper test and `ACCEPT`. The calibration procedure will take the first
|
||||||
|
set of samples with the probe then park the probe in the heating position.
|
||||||
|
- If the `calibration_bed_temp` is **NOT** configured turn on the bed heat
|
||||||
|
to the maximum safe temperature. Otherwise this step will be performed
|
||||||
|
automatically.
|
||||||
|
- By default the calibration procedure will request a manual probe every
|
||||||
|
2C between samples until the `TARGET` is reached. The temperature delta
|
||||||
|
between samples can be customized by setting the `STEP` parameter in
|
||||||
|
`TEMPERATURE_PROBE_CALIBRATE`. Care should be taken when setting a custom
|
||||||
|
`STEP` value, a value too high may request too few samples resulting in
|
||||||
|
a poor calibration.
|
||||||
|
- The following additional gcode commands are available during drift
|
||||||
|
calibration:
|
||||||
|
- `TEMPERATURE_PROBE_NEXT` may be used to force a new sample before the step
|
||||||
|
delta has been reached.
|
||||||
|
- `TEMPERATURE_PROBE_COMPLETE` may be used to complete calibration before the
|
||||||
|
`TARGET` has been reached.
|
||||||
|
- `ABORT` may be used to end calibration and discard results.
|
||||||
|
- When calibration is finished use `SAVE_CONFIG` to store the drift
|
||||||
|
calibration.
|
||||||
|
|
||||||
|
As one may conclude, the calibration process outlined above is more challenging
|
||||||
|
and time consuming than most other procedures. It may require practice and several attempts to achieve an optimal calibration.
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user