Compare commits
194 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
206ea2545c | ||
|
5770b99ff5 | ||
|
46f5a660c7 | ||
|
0581a57b79 | ||
|
ce1d1aa1b6 | ||
|
eb9e65ea99 | ||
|
0ff109178a | ||
|
d3407a8aee | ||
|
9a241ad557 | ||
|
b58056659b | ||
|
dda41db5d2 | ||
|
da995a3891 | ||
|
41294bb170 | ||
|
4e393a13f0 | ||
|
e71dae155b | ||
|
1bf184802b | ||
|
e038b72f24 | ||
|
66dd448953 | ||
|
a37c010f84 | ||
|
92520b3131 | ||
|
583d24963a | ||
|
28528ca920 | ||
|
392708963f | ||
|
e2575bdfbe | ||
|
632d0a2298 | ||
|
da2b3d1a6a | ||
|
fe25adc816 | ||
|
30ee66db9f | ||
|
1362fe027a | ||
|
fed42db5bd | ||
|
ef7ff09648 | ||
|
efc3b2fc1e | ||
|
a7f0c0154b | ||
|
04a14af7bf | ||
|
34b8b12812 | ||
|
5989b7de4c | ||
|
c65901e236 | ||
|
5f014adf66 | ||
|
cef153feb7 | ||
|
52e861eba0 | ||
|
15dcb2b0d1 | ||
|
0b6beb8c77 | ||
|
54c77c5669 | ||
|
ee0af7ef3a | ||
|
d6c596f67f | ||
|
a900c85945 | ||
|
79a5fd53c6 | ||
|
838dec5606 | ||
|
100d0a42c4 | ||
|
b0d76ec128 | ||
|
5e72896875 | ||
|
f490bb5483 | ||
|
9c7e052d82 | ||
|
6bda6ccde6 | ||
|
6c0815a755 | ||
|
e9d3a6fc01 | ||
|
a2fe110777 | ||
|
11bc8897d5 | ||
|
ebd173824b | ||
|
16a1a94ce9 | ||
|
c62bb2a7e5 | ||
|
234be5373f | ||
|
d93d3eb867 | ||
|
d104b0e5d3 | ||
|
a971b34b48 | ||
|
31ad28a32f | ||
|
1b146d8b80 | ||
|
d7512c18c1 | ||
|
8efb84762d | ||
|
5c10986c6b | ||
|
db0c96be7a | ||
|
f4ea913c7e | ||
|
9b7d7fd316 | ||
|
e482a52f69 | ||
|
650f94b7f5 | ||
|
af1153f5d3 | ||
|
784a865cde | ||
|
e6351e554d | ||
|
1e4fb8e9ba | ||
|
82e93fc7de | ||
|
3ff9dc0fa9 | ||
|
1d475eff4a | ||
|
272f36672d | ||
|
4c0079087a | ||
|
fc29d72b29 | ||
|
b8dc4c018c | ||
|
8316e3692f | ||
|
71a4d3144b | ||
|
04ad1dd641 | ||
|
c46ce1f7c5 | ||
|
32cb9116e4 | ||
|
bf33eb7a6d | ||
|
81129c7365 | ||
|
d7ae56c292 | ||
|
1577fff13c | ||
|
5ee1bbfd2a | ||
|
91a97aab4d | ||
|
4c5790360a | ||
|
c864789c22 | ||
|
d4b4d04aa8 | ||
|
c67951e199 | ||
|
b14cb46129 | ||
|
10d3b4cb7d | ||
|
b8e821a891 | ||
|
a0ea1d3e05 | ||
|
c4e0cfa2f4 | ||
|
08f19c0227 | ||
|
bc4bef1e2c | ||
|
812bbb14f2 | ||
|
a52840e4b6 | ||
|
7ccaa6fa53 | ||
|
0164a4942d | ||
|
8ad0363eff | ||
|
cc5d69800e | ||
|
b74d4601cc | ||
|
f467eab757 | ||
|
4a47954ca8 | ||
|
07f8381e57 | ||
|
05d2819a00 | ||
|
9ca6881daa | ||
|
34f90156fb | ||
|
51a8226932 | ||
|
2a0542ce83 | ||
|
353eee059f | ||
|
09a3de4acc | ||
|
d5a53e2d8d | ||
|
777f9fd9a7 | ||
|
d969459aa0 | ||
|
53b286c98d | ||
|
b04997f045 | ||
|
5122715138 | ||
|
d8aa88d274 | ||
|
b2d8a9d260 | ||
|
40ab3aad74 | ||
|
b3edf03e71 | ||
|
3c54fd8469 | ||
|
6a7ec5fc06 | ||
|
5ee4642956 | ||
|
927cd10e85 | ||
|
8f1bc49ed6 | ||
|
40d3d09d5b | ||
|
3a9fa4f8ef | ||
|
d7ab58ea88 | ||
|
552aa7767d | ||
|
636d465c3d | ||
|
116f623604 | ||
|
5a8b8ad60b | ||
|
83a8113fd8 | ||
|
5911e835b6 | ||
|
ada7a7d31a | ||
|
f5cb187d4a | ||
|
1855bb9925 | ||
|
39bd14f340 | ||
|
5ab14ccccd | ||
|
b06d97d294 | ||
|
ad9942763b | ||
|
05ae92def7 | ||
|
e9987ba2f2 | ||
|
9e464716a5 | ||
|
9ce186a3e5 | ||
|
5deefc6d10 | ||
|
2c753fcdfd | ||
|
9f078259b0 | ||
|
819e713412 | ||
|
7c54c7d282 | ||
|
a261a3ab55 | ||
|
b175d67e57 | ||
|
131d09ac56 | ||
|
fa712c5e02 | ||
|
ae0af415c4 | ||
|
e61cec29da | ||
|
b6bdcd393b | ||
|
982de8ddff | ||
|
fc5a29b43a | ||
|
0757a57122 | ||
|
dab8b979bf | ||
|
e7239ba96f | ||
|
9140808f2d | ||
|
0f53591818 | ||
|
f363260a49 | ||
|
bd2cb8080a | ||
|
697bc6f45c | ||
|
55521d3ab1 | ||
|
4801858c19 | ||
|
613d352308 | ||
|
c7373ccc8e | ||
|
e12fb83b78 | ||
|
5600a71514 | ||
|
52126609af | ||
|
aa57f4be9d | ||
|
f27545aee4 | ||
|
e4a828f32a | ||
|
5c0841a139 | ||
|
c65ec66cb1 |
1
.github/FUNDING.yml
vendored
Executable file
1
.github/FUNDING.yml
vendored
Executable file
@@ -0,0 +1 @@
|
||||
custom: ["https://paypal.me/oliverkoester"]
|
43
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Executable file
43
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Executable file
@@ -0,0 +1,43 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Report a bug in Marlin
|
||||
title: "[BUG] (short description)"
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
|
||||
Have you read Marlin's Code of Conduct? By filing an Issue, you are expected to comply with it, including treating everyone with respect: https://github.com/MarlinFirmware/Marlin/blob/master/.github/code_of_conduct.md
|
||||
|
||||
Do you want to ask a question? Are you looking for support? Please don't post here. Instead please use one of the support links at https://github.com/MarlinFirmware/Marlin/issues/new/choose
|
||||
|
||||
Before filing an issue be sure to test the "bugfix" branches to see whether the issue has been resolved.
|
||||
|
||||
-->
|
||||
|
||||
### Bug Description
|
||||
|
||||
<!-- Description of the bug -->
|
||||
|
||||
### My Configurations
|
||||
|
||||
**Required:** Please include a ZIP file containing your `Configuration.h` and `Configuration_adv.h` files.
|
||||
|
||||
### Steps to Reproduce
|
||||
|
||||
<!-- Please describe the steps needed to reproduce the issue -->
|
||||
|
||||
1. [First Step]
|
||||
2. [Second Step]
|
||||
3. [and so on...]
|
||||
|
||||
**Expected behavior:** [What you expect to happen]
|
||||
|
||||
**Actual behavior:** [What actually happens]
|
||||
|
||||
#### Additional Information
|
||||
|
||||
* Provide pictures or links to videos that clearly demonstrate the issue.
|
||||
* See [How Can I Contribute](#how-can-i-contribute) for additional guidelines.
|
17
.github/ISSUE_TEMPLATE/config.yml
vendored
Executable file
17
.github/ISSUE_TEMPLATE/config.yml
vendored
Executable file
@@ -0,0 +1,17 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Marlin Documentation
|
||||
url: http://marlinfw.org/
|
||||
about: Lots of documentation on installing and using Marlin.
|
||||
- name: MarlinFirmware Facebook group
|
||||
url: https://www.facebook.com/groups/1049718498464482
|
||||
about: Please ask and answer questions here.
|
||||
- name: Marlin on Discord
|
||||
url: https://discord.gg/n5NJ59y
|
||||
about: Join the Discord server for support and discussion.
|
||||
- name: Marlin Discussion Forum
|
||||
url: http://forums.reprap.org/list.php?415
|
||||
about: A searchable web forum hosted by RepRap dot org.
|
||||
- name: Marlin Videos on YouTube
|
||||
url: https://www.youtube.com/results?search_query=marlin+firmware
|
||||
about: Tutorials and more from Marlin users all around the world. Great for new users!
|
35
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Executable file
35
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Executable file
@@ -0,0 +1,35 @@
|
||||
---
|
||||
name: Feature request
|
||||
about: Request a Feature
|
||||
title: "[FR] (feature request title)"
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
|
||||
Have you read Marlin's Code of Conduct? By filing an Issue, you are expected to comply with it, including treating everyone with respect: https://github.com/MarlinFirmware/Marlin/blob/master/.github/code_of_conduct.md
|
||||
|
||||
Do you want to ask a question? Are you looking for support? Please don't post here. Instead please use one of the support links at https://github.com/MarlinFirmware/Marlin/issues/new/choose
|
||||
|
||||
Before filing an issue be sure to test the "bugfix" branches to see whether the issue has been resolved.
|
||||
|
||||
-->
|
||||
|
||||
### Description
|
||||
|
||||
<!-- Description of the requested feature -->
|
||||
|
||||
### Feature Workflow
|
||||
|
||||
<!-- Please describe the feature's behavior, user interaction, etc. -->
|
||||
|
||||
1. [First Action]
|
||||
2. [Second Action]
|
||||
3. [and so on...]
|
||||
|
||||
#### Additional Information
|
||||
|
||||
* Provide pictures or links that demonstrate a similar feature or concept.
|
||||
* See [How Can I Contribute](#how-can-i-contribute) for additional guidelines.
|
11
.github/issue_template.md
vendored
Executable file
11
.github/issue_template.md
vendored
Executable file
@@ -0,0 +1,11 @@
|
||||
# NO SUPPORT REQUESTS PLEASE
|
||||
|
||||
Do you want to ask a question? Are you looking for support? Please don't post here. Support Requests posted here will be automatically closed!
|
||||
|
||||
Instead use one of the following options:
|
||||
|
||||
- The Marlin Firmware forum at https://reprap.org/forum/list.php?415
|
||||
- The MarlinFirmware Facebook Group at https://www.facebook.com/groups/1049718498464482/
|
||||
- The MarlinFirmware Discord Server at https://discord.gg/n5NJ59y.
|
||||
|
||||
Before filing an issue be sure to test the latest "bugfix" branch to see whether the issue is already addressed.
|
40
.github/lock.yml
vendored
Executable file
40
.github/lock.yml
vendored
Executable file
@@ -0,0 +1,40 @@
|
||||
#
|
||||
# Configuration for Lock Threads - https://github.com/dessant/lock-threads-app
|
||||
#
|
||||
|
||||
# Number of days of inactivity before a closed issue or pull request is locked
|
||||
daysUntilLock: 60
|
||||
|
||||
# Skip issues and pull requests created before a given timestamp. Timestamp must
|
||||
# follow ISO 8601 (`YYYY-MM-DD`). Set to `false` to disable
|
||||
skipCreatedBefore: false
|
||||
|
||||
# Issues and pull requests with these labels will be ignored. Set to `[]` to disable
|
||||
exemptLabels: [ 'no-locking' ]
|
||||
|
||||
# Label to add before locking, such as `outdated`. Set to `false` to disable
|
||||
lockLabel: false
|
||||
|
||||
# Comment to post before locking. Set to `false` to disable
|
||||
lockComment: >
|
||||
This thread has been automatically locked since there has not been
|
||||
any recent activity after it was closed. Please open a new issue for
|
||||
related bugs.
|
||||
|
||||
# Assign `resolved` as the reason for locking. Set to `false` to disable
|
||||
setLockReason: true
|
||||
|
||||
# Limit to only `issues` or `pulls`
|
||||
# only: issues
|
||||
|
||||
# Optionally, specify configuration settings just for `issues` or `pulls`
|
||||
# issues:
|
||||
# exemptLabels:
|
||||
# - help-wanted
|
||||
# lockLabel: outdated
|
||||
|
||||
# pulls:
|
||||
# daysUntilLock: 30
|
||||
|
||||
# Repository to extend settings from
|
||||
# _extends: repo
|
23
.github/pull_request_template.md
vendored
Executable file
23
.github/pull_request_template.md
vendored
Executable file
@@ -0,0 +1,23 @@
|
||||
### Requirements
|
||||
|
||||
* Filling out this template is required. Pull Requests without a clear description may be closed at the maintainers' discretion.
|
||||
|
||||
### Description
|
||||
|
||||
<!--
|
||||
|
||||
We must be able to understand your proposed change from this description. If we can't understand what the code will do from this description, the Pull Request may be closed at the maintainers' discretion. Keep in mind that the maintainer reviewing this PR may not be familiar with or have worked with the code recently, so please walk us through the concepts.
|
||||
|
||||
-->
|
||||
|
||||
### Benefits
|
||||
|
||||
<!-- What does this fix or improve? -->
|
||||
|
||||
### Configurations
|
||||
|
||||
<!-- Attach any Configuration.h, Configuration_adv.h, or platformio.ini files needed to compile/test your Pull Request. -->
|
||||
|
||||
### Related Issues
|
||||
|
||||
<!-- Whether this fixes a bug or fulfills a feature request, please list any related Issues here. -->
|
109
.github/workflows/build-all.yml
vendored
Executable file
109
.github/workflows/build-all.yml
vendored
Executable file
@@ -0,0 +1,109 @@
|
||||
name: Build All Firmware Variants
|
||||
|
||||
on:
|
||||
#pull_request:
|
||||
# branches:
|
||||
# - master
|
||||
# paths-ignore:
|
||||
# - config/**
|
||||
# - data/**
|
||||
# - docs/**
|
||||
# - '**/*.md'
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
paths-ignore:
|
||||
- config/**
|
||||
- data/**
|
||||
- docs/**
|
||||
- '**/*.md'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Build
|
||||
if: github.repository == 'knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S'
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
platform:
|
||||
# Knutwurst Base Environments
|
||||
- MEGA_1G
|
||||
- MEGA_1G_TMC
|
||||
- MEGA_1G_BLT_10
|
||||
- MEGA_1G_BLT_11
|
||||
- MEGA_1G_TMC_BLT_10
|
||||
- MEGA_1G_TMC_BLT_11
|
||||
- MEGA
|
||||
- MEGA_TMC
|
||||
- MEGA_BLT_10
|
||||
- MEGA_BLT_11
|
||||
- MEGA_TMC_BLT_10
|
||||
- MEGA_TMC_BLT_11
|
||||
- MEGA_S
|
||||
- MEGA_S_TMC
|
||||
- MEGA_S_BLT_10
|
||||
- MEGA_S_BLT_11
|
||||
- MEGA_S_TMC_BLT_10
|
||||
- MEGA_S_TMC_BLT_11
|
||||
- MEGA_S_DGUS
|
||||
- MEGA_S_DGUS_TMC
|
||||
- MEGA_S_DGUS_BLT_10
|
||||
- MEGA_S_DGUS_BLT_11
|
||||
- MEGA_S_DGUS_TMC_BLT_10
|
||||
- MEGA_S_DGUS_TMC_BLT_11
|
||||
- MEGA_X
|
||||
- MEGA_X_TMC
|
||||
- MEGA_X_BLT_10
|
||||
- MEGA_X_BLT_11
|
||||
- MEGA_X_TMC_BLT_10
|
||||
- MEGA_X_TMC_BLT_11
|
||||
- MEGA_P
|
||||
- MEGA_P_TMC
|
||||
- MEGA_P_BLT_10
|
||||
- MEGA_P_BLT_11
|
||||
- MEGA_P_TMC_BLT_10
|
||||
- MEGA_P_TMC_BLT_11
|
||||
|
||||
steps:
|
||||
|
||||
- name: Setup Python 3.7
|
||||
uses: actions/setup-python@v1
|
||||
with:
|
||||
python-version: '3.7' # Version range or exact version of a Python version to use, using semvers version range syntax.
|
||||
architecture: 'x64' # optional x64 or x86. Defaults to x64 if not specified
|
||||
|
||||
- name: Install PlatformIO
|
||||
run: |
|
||||
pip install -U https://github.com/platformio/platformio-core/archive/develop.zip
|
||||
platformio update
|
||||
|
||||
- name: Install PlatformIO dependencies
|
||||
run: |
|
||||
python -m pip install --upgrade pip
|
||||
pip install platformio
|
||||
|
||||
- uses: actions/checkout@master
|
||||
|
||||
- name: Compile Firmware with PlatformIO
|
||||
run: platformio run --environment ${{ matrix.platform }}
|
||||
|
||||
- name: Rename Output Files
|
||||
run: |
|
||||
CUSTOM_BUILD_VERSION=$(egrep -o "([0-9]{1,}\.)+[a-zA-Z0-9_.-]{1,}" Marlin/src/inc/Version.h -m2 | tail -n1) && \
|
||||
mv .pio/build/${{ matrix.platform }}/firmware.hex .pio/build/${{ matrix.platform }}/${{ matrix.platform }}_v$CUSTOM_BUILD_VERSION.hex
|
||||
|
||||
#- name: Archive artifacts into single Files
|
||||
# uses: actions/upload-artifact@master
|
||||
# with:
|
||||
# name: Knutwurst_${{ matrix.platform }}
|
||||
# path: |
|
||||
# .pio/build/${{ matrix.platform }}/${{ matrix.platform }}_v*.hex
|
||||
|
||||
- name: Archive all artifacts into one ZIP file
|
||||
uses: actions/upload-artifact@master
|
||||
with:
|
||||
name: Knuwurst-all-in-one-${{github.sha}}
|
||||
path: |
|
||||
.pio/build/${{ matrix.platform }}/${{ matrix.platform }}_v*.hex
|
39
.github/workflows/bump-date.yml
vendored
Executable file
39
.github/workflows/bump-date.yml
vendored
Executable file
@@ -0,0 +1,39 @@
|
||||
#
|
||||
# bump-date.yml
|
||||
# Bump the distribution date
|
||||
#
|
||||
|
||||
name: Bump Distribution Date
|
||||
|
||||
on:
|
||||
release:
|
||||
branches:
|
||||
- master
|
||||
paths-ignore:
|
||||
- config/**
|
||||
- data/**
|
||||
- docs/**
|
||||
- '**/*.md'
|
||||
#schedule:
|
||||
# - cron: '0 0 * * *'
|
||||
|
||||
jobs:
|
||||
bump_date:
|
||||
name: Bump Distribution Date
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
|
||||
- uses: actions/checkout@master
|
||||
|
||||
- name: Bump Distribution Date
|
||||
run: |
|
||||
# Inline Bump Script
|
||||
DIST=$( date +"%Y-%m-%d" )
|
||||
eval "sed -E -i 's/(#define +STRING_DISTRIBUTION_DATE) .*$/\1 \"$DIST\"/g' Marlin/src/inc/Version.h" && \
|
||||
git config user.name "${GITHUB_ACTOR}" && \
|
||||
git config user.email "${GITHUB_ACTOR}@users.noreply.github.com" && \
|
||||
git add . && \
|
||||
git commit -m "[cron] Bump distribution date ($DIST)" && \
|
||||
git push
|
31
.github/workflows/check-pr.yml
vendored
Executable file
31
.github/workflows/check-pr.yml
vendored
Executable file
@@ -0,0 +1,31 @@
|
||||
#
|
||||
# check-pr.yml
|
||||
# Close PRs directed at release branches
|
||||
#
|
||||
|
||||
name: PR Bad Target
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- 2.0.x
|
||||
|
||||
jobs:
|
||||
bad_target:
|
||||
name: PR Bad Target
|
||||
if: github.repository == 'knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S'
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: peter-evans/close-pull@v1
|
||||
with:
|
||||
delete-branch: false
|
||||
comment: >
|
||||
Thanks for your contribution! Unfortunately we can't accept PRs directed at release branches. We make patches to the bugfix branches and only later do we push them out as releases.
|
||||
|
||||
Please redo this PR starting with the `bugfix-2.0.x` branch and be careful to target `bugfix-2.0.x` when resubmitting the PR.
|
||||
|
||||
It may help to set your fork's default branch to `bugfix-2.0.x`.
|
||||
|
||||
See [this page](http://marlinfw.org/docs/development/getting_started_pull_requests.html) for full instructions.
|
27
.github/workflows/close-stale.yml
vendored
Executable file
27
.github/workflows/close-stale.yml
vendored
Executable file
@@ -0,0 +1,27 @@
|
||||
#
|
||||
# close-stale.yml
|
||||
# Close open issues after a period of inactivity
|
||||
#
|
||||
|
||||
name: Close Stale Issues
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: "22 1 * * *"
|
||||
|
||||
jobs:
|
||||
stale:
|
||||
name: Close Stale Issues
|
||||
if: github.repository == 'knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S'
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/stale@v3
|
||||
with:
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
stale-issue-message: 'This issue is stale because it has been open 30 days with no activity. Remove stale label / comment or this will be closed in 5 days.'
|
||||
days-before-stale: 30
|
||||
days-before-close: 5
|
||||
stale-issue-label: 'stale-closing-soon'
|
||||
exempt-issue-labels: 'T: Feature Request'
|
32
.github/workflows/lock-closed.yml
vendored
Executable file
32
.github/workflows/lock-closed.yml
vendored
Executable file
@@ -0,0 +1,32 @@
|
||||
#
|
||||
# lock-closed.yml
|
||||
# Lock closed issues after a period of inactivity
|
||||
#
|
||||
|
||||
name: Lock Closed Issues
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 1/13 * * *'
|
||||
|
||||
jobs:
|
||||
lock:
|
||||
name: Lock Closed Issues
|
||||
if: github.repository == 'knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S'
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: dessant/lock-threads@v2
|
||||
with:
|
||||
github-token: ${{ github.token }}
|
||||
process-only: 'issues'
|
||||
issue-lock-inactive-days: '60'
|
||||
issue-exclude-created-before: ''
|
||||
issue-exclude-labels: 'no-locking'
|
||||
issue-lock-labels: ''
|
||||
issue-lock-comment: >
|
||||
This issue has been automatically locked since there
|
||||
has not been any recent activity after it was closed.
|
||||
Please open a new issue for related bugs.
|
||||
issue-lock-reason: ''
|
22
.github/workflows/unlock-reopened.yml
vendored
Executable file
22
.github/workflows/unlock-reopened.yml
vendored
Executable file
@@ -0,0 +1,22 @@
|
||||
#
|
||||
# unlock-reopened.yml
|
||||
# Unlock an issue whenever it is re-opened
|
||||
#
|
||||
|
||||
name: "Unlock reopened issue"
|
||||
|
||||
on:
|
||||
issues:
|
||||
types: [reopened]
|
||||
|
||||
jobs:
|
||||
unlock:
|
||||
name: Unlock Reopened
|
||||
if: github.repository == 'knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S'
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: OSDKDev/unlock-issues@v1.1
|
||||
with:
|
||||
repo-token: "${{ secrets.GITHUB_TOKEN }}"
|
@@ -40,6 +40,8 @@
|
||||
|
||||
#define ANYCUBIC_TOUCHSCREEN
|
||||
#define ANYCUBIC_FILAMENT_RUNOUT_SENSOR
|
||||
#define KNUTWURST_SPECIAL_MENU
|
||||
#define KNUTWURST_SPECIAL_MENU_WO_SD
|
||||
//#define ANYCUBIC_TFT_DEBUG
|
||||
//#define POWER_OUTAGE_TEST
|
||||
|
||||
@@ -70,6 +72,7 @@
|
||||
* MEGA is the normal i3 Version without spool holder and the cassic extruder
|
||||
* MEGA_S is the S version with Titan clone extruder
|
||||
* MEGA_X is the big version with 310x310mm Bed
|
||||
* MEGA_P is the "Pro" Version with BMG Extruder, 2 TMC Steppers and Laser
|
||||
*
|
||||
* PLEASE READ THE WARNING ABOVE!
|
||||
*
|
||||
@@ -77,6 +80,21 @@
|
||||
//#define KNUTWURST_MEGA
|
||||
//#define KNUTWURST_MEGA_S
|
||||
//#define KNUTWURST_MEGA_X
|
||||
//#define KNUTWURST_MEGA_P
|
||||
|
||||
/*
|
||||
* If you own the first generation i3 Mega
|
||||
* with only one Z endstop, you need to activate
|
||||
* KNUTWURST_MEGA and also this to disable
|
||||
* the left endstop and switch the Z Motors.
|
||||
*
|
||||
* If the option is disabled, two Z endstops
|
||||
* are used by default.
|
||||
*
|
||||
* PLEASE READ THE WARNING ABOVE!
|
||||
*
|
||||
*/
|
||||
//#define KNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
/*
|
||||
* If you have defined the MEGA_X or if
|
||||
@@ -98,6 +116,17 @@
|
||||
*/
|
||||
//#define KNUTWURST_TMC
|
||||
|
||||
/*
|
||||
* Invert E0 Stepper driver for
|
||||
* Bondtech Mini Geared (BMG) Extruders
|
||||
*
|
||||
* This flag is mandatory if you own a
|
||||
* MEGA Pro, which has this Extruder by
|
||||
* default.
|
||||
*
|
||||
*/
|
||||
//#define KNUTWURST_BMG
|
||||
|
||||
/*
|
||||
* This enables the BLTouch Support and also
|
||||
* activates the BLTouch Menu item in the
|
||||
@@ -108,7 +137,7 @@
|
||||
* PLEASE READ THE WARNING ABOVE!
|
||||
*
|
||||
*/
|
||||
//#define KNUTWURST_BLTOUCH // see <https://github.com/DerDominik/Marlin-AnycubicI3Mega-BLTouch/wiki/Aufbauplan_BLTouch>
|
||||
//#define KNUTWURST_BLTOUCH
|
||||
|
||||
/*
|
||||
* This feature is for debugging purpose only.
|
||||
@@ -579,7 +608,7 @@
|
||||
// Above this temperature the heater will be switched off.
|
||||
// This can protect components from overheating, but NOT from shorts and failures.
|
||||
// (Use MINTEMP for thermistor short/failure protection.)
|
||||
#define HEATER_0_MAXTEMP 295
|
||||
#define HEATER_0_MAXTEMP 300
|
||||
#define HEATER_1_MAXTEMP 275
|
||||
#define HEATER_2_MAXTEMP 275
|
||||
#define HEATER_3_MAXTEMP 275
|
||||
@@ -748,7 +777,10 @@
|
||||
#define USE_XMIN_PLUG
|
||||
#define USE_YMIN_PLUG
|
||||
#define USE_ZMIN_PLUG
|
||||
#define USE_XMAX_PLUG
|
||||
|
||||
#if DISABLED(KNUTWURST_ONE_Z_ENDSTOP)
|
||||
#define USE_XMAX_PLUG
|
||||
#endif
|
||||
//#define USE_YMAX_PLUG
|
||||
//#define USE_ZMAX_PLUG
|
||||
|
||||
@@ -778,6 +810,17 @@
|
||||
//#define ENDSTOPPULLDOWN_ZMIN_PROBE
|
||||
#endif
|
||||
|
||||
#if ANY(KNUTWURST_MEGA, KNUTWURST_MEGA_S, KNUTWURST_MEGA_P)
|
||||
// Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup).
|
||||
#define X_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Y_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define X_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Y_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
//#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_MEGA_X)
|
||||
// Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup).
|
||||
#define X_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
@@ -789,16 +832,6 @@
|
||||
//#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#endif
|
||||
|
||||
#if EITHER(KNUTWURST_MEGA, KNUTWURST_MEGA_S)
|
||||
// Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup).
|
||||
#define X_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Y_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MIN_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define X_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Y_MAX_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
|
||||
//#define Z_MIN_PROBE_ENDSTOP_INVERTING true // set to true to invert the logic of the endstop.
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Stepper Drivers
|
||||
@@ -816,26 +849,6 @@
|
||||
* TMC5130, TMC5130_STANDALONE, TMC5160, TMC5160_STANDALONE
|
||||
* :['A4988', 'A5984', 'DRV8825', 'LV8729', 'L6470', 'L6474', 'POWERSTEP01', 'TB6560', 'TB6600', 'TMC2100', 'TMC2130', 'TMC2130_STANDALONE', 'TMC2160', 'TMC2160_STANDALONE', 'TMC2208', 'TMC2208_STANDALONE', 'TMC2209', 'TMC2209_STANDALONE', 'TMC26X', 'TMC26X_STANDALONE', 'TMC2660', 'TMC2660_STANDALONE', 'TMC5130', 'TMC5130_STANDALONE', 'TMC5160', 'TMC5160_STANDALONE']
|
||||
*/
|
||||
#if ENABLED(KNUTWURST_TMC)
|
||||
#define X_DRIVER_TYPE TMC2208_STANDALONE
|
||||
#define Y_DRIVER_TYPE TMC2208_STANDALONE
|
||||
#define Z_DRIVER_TYPE TMC2208_STANDALONE
|
||||
//#define X2_DRIVER_TYPE TMC2208_STANDALONE
|
||||
//#define Y2_DRIVER_TYPE TMC2208_STANDALONE
|
||||
//#define Z2_DRIVER_TYPE TMC2208_STANDALONE
|
||||
//#define Z3_DRIVER_TYPE TMC2208_STANDALONE
|
||||
//#define Z4_DRIVER_TYPE TMC2208_STANDALONE
|
||||
#define E0_DRIVER_TYPE TMC2208_STANDALONE
|
||||
#define E1_DRIVER_TYPE TMC2208_STANDALONE
|
||||
//#define E2_DRIVER_TYPE TMC2208_STANDALONE
|
||||
//#define E3_DRIVER_TYPE TMC2208_STANDALONE
|
||||
//#define E4_DRIVER_TYPE TMC2208_STANDALONE
|
||||
//#define E5_DRIVER_TYPE TMC2208_STANDALONE
|
||||
//#define E6_DRIVER_TYPE TMC2208_STANDALONE
|
||||
//#define E7_DRIVER_TYPE TMC2208_STANDALONE
|
||||
#endif
|
||||
|
||||
#if DISABLED(KNUTWURST_TMC)
|
||||
#define X_DRIVER_TYPE A4988
|
||||
#define Y_DRIVER_TYPE A4988
|
||||
#define Z_DRIVER_TYPE A4988
|
||||
@@ -852,7 +865,6 @@
|
||||
//#define E5_DRIVER_TYPE A4988
|
||||
//#define E6_DRIVER_TYPE A4988
|
||||
//#define E7_DRIVER_TYPE A4988
|
||||
#endif
|
||||
|
||||
// Enable this feature if all enabled endstop pins are interrupt-capable.
|
||||
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
|
||||
@@ -909,23 +921,40 @@
|
||||
#define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 800, 400 }
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_MEGA_P)
|
||||
#define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 415 }
|
||||
#endif
|
||||
|
||||
|
||||
/**
|
||||
* Default Max Feed Rate (mm/s)
|
||||
* Override with M203
|
||||
* X, Y, Z, E0 [, E1[, E2...]]
|
||||
*/
|
||||
#if ENABLED(KNUTWURST_MEGA)
|
||||
#define DEFAULT_MAX_FEEDRATE { 500, 500, 8, 60 }
|
||||
#if ENABLED(KNUTWURST_BMG)
|
||||
#define DEFAULT_MAX_FEEDRATE { 500, 500, 6, 30 }
|
||||
#else
|
||||
#define DEFAULT_MAX_FEEDRATE { 500, 500, 6, 60 }
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_MEGA_S)
|
||||
#define DEFAULT_MAX_FEEDRATE { 500, 500, 8, 30 }
|
||||
#define DEFAULT_MAX_FEEDRATE { 500, 500, 6, 30 } // same feedrate for BMG
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_MEGA_X)
|
||||
#define DEFAULT_MAX_FEEDRATE { 120, 120, 8, 80 } // { 120, 120, 20, 80 }
|
||||
#if ENABLED(KNUTWURST_BMG)
|
||||
#define DEFAULT_MAX_FEEDRATE { 120, 120, 18, 30 } // correct for BMG?
|
||||
#else
|
||||
#define DEFAULT_MAX_FEEDRATE { 120, 120, 18, 80 } // thanks to Simon Geis
|
||||
//#define DEFAULT_MAX_FEEDRATE { 400, 400, 18, 80 } // thanks to DanJunior78
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_MEGA_P)
|
||||
#define DEFAULT_MAX_FEEDRATE { 500, 500, 6, 30 }
|
||||
#endif
|
||||
|
||||
|
||||
//#define LIMITED_MAX_FR_EDITING // Limit edit via M203 or LCD to DEFAULT_MAX_FEEDRATE * 2
|
||||
@@ -939,12 +968,13 @@
|
||||
* Override with M201
|
||||
* X, Y, Z, E0 [, E1[, E2...]]
|
||||
*/
|
||||
#if EITHER(KNUTWURST_MEGA, KNUTWURST_MEGA_S)
|
||||
#if ANY(KNUTWURST_MEGA, KNUTWURST_MEGA_S, KNUTWURST_MEGA_P)
|
||||
#define DEFAULT_MAX_ACCELERATION { 3000, 2000, 60, 10000 }
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_MEGA_X)
|
||||
#define DEFAULT_MAX_ACCELERATION { 400, 400, 60, 10000 }
|
||||
#define DEFAULT_MAX_ACCELERATION { 400, 400, 60, 10000 } //Original Values
|
||||
//#define DEFAULT_MAX_ACCELERATION { 2000, 1500, 60, 10000 }
|
||||
#endif
|
||||
|
||||
|
||||
@@ -966,7 +996,12 @@
|
||||
|
||||
#if ENABLED(KNUTWURST_MEGA)
|
||||
#define DEFAULT_ACCELERATION 1600 // X, Y, Z and E acceleration for printing moves
|
||||
#define DEFAULT_RETRACT_ACCELERATION 3000 // E acceleration for retracts
|
||||
#if ENABLED(KNUTWURST_BMG)
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1500 // E acceleration for retracts
|
||||
#else
|
||||
#define DEFAULT_RETRACT_ACCELERATION 3000 // E acceleration for retracts
|
||||
#endif
|
||||
|
||||
#define DEFAULT_TRAVEL_ACCELERATION 3000 // X, Y, Z acceleration for travel (non printing) moves
|
||||
#endif
|
||||
|
||||
@@ -982,6 +1017,12 @@
|
||||
#define DEFAULT_TRAVEL_ACCELERATION 400 // X, Y, Z acceleration for travel (non printing) moves
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_MEGA_P)
|
||||
#define DEFAULT_ACCELERATION 1600 // X, Y, Z and E acceleration for printing moves
|
||||
#define DEFAULT_RETRACT_ACCELERATION 1500 // E acceleration for retracts
|
||||
#define DEFAULT_TRAVEL_ACCELERATION 3000 // X, Y, Z acceleration for travel (non printing) moves
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Default Jerk limits (mm/s)
|
||||
* Override with M205 X Y Z E
|
||||
@@ -990,22 +1031,20 @@
|
||||
* When changing speed and direction, if the difference is less than the
|
||||
* value set here, it may happen instantaneously.
|
||||
*/
|
||||
//#define CLASSIC_JERK
|
||||
|
||||
// I Know.. it's useless to put it here ;)
|
||||
#if EITHER(KNUTWURST_MEGA, KNUTWURST_MEGA_S)
|
||||
//#define CLASSIC_JERK
|
||||
#if ANY(KNUTWURST_MEGA, KNUTWURST_MEGA_S, KNUTWURST_MEGA_P)
|
||||
#define CLASSIC_JERK
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_MEGA_X)
|
||||
//#define CLASSIC_JERK
|
||||
#define CLASSIC_JERK
|
||||
#endif
|
||||
|
||||
#if ENABLED(CLASSIC_JERK)
|
||||
|
||||
#if EITHER(KNUTWURST_MEGA, KNUTWURST_MEGA_S)
|
||||
#define DEFAULT_XJERK 10.0
|
||||
#define DEFAULT_YJERK 10.0
|
||||
#if ANY(KNUTWURST_MEGA, KNUTWURST_MEGA_S, KNUTWURST_MEGA_P)
|
||||
#define DEFAULT_XJERK 8.0
|
||||
#define DEFAULT_YJERK 8.0
|
||||
#define DEFAULT_ZJERK 0.4
|
||||
#endif
|
||||
|
||||
@@ -1025,7 +1064,7 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if EITHER(KNUTWURST_MEGA, KNUTWURST_MEGA_S)
|
||||
#if ANY(KNUTWURST_MEGA, KNUTWURST_MEGA_S, KNUTWURST_MEGA_P)
|
||||
#define DEFAULT_EJERK 5.0 // May be used by Linear Advance
|
||||
#endif
|
||||
|
||||
@@ -1041,7 +1080,7 @@
|
||||
* http://blog.kyneticcnc.com/2018/10/computing-junction-deviation-for-marlin.html
|
||||
*/
|
||||
#if DISABLED(CLASSIC_JERK)
|
||||
#if EITHER(KNUTWURST_MEGA, KNUTWURST_MEGA_S)
|
||||
#if ANY(KNUTWURST_MEGA, KNUTWURST_MEGA_S, KNUTWURST_MEGA_P)
|
||||
#define JUNCTION_DEVIATION_MM 0.013 // (mm) Distance from real junction edge
|
||||
#endif
|
||||
|
||||
@@ -1093,7 +1132,7 @@
|
||||
*
|
||||
*/
|
||||
#if ENABLED(KNUTWURST_BLTOUCH)
|
||||
#define Z_MIN_PROBE_PIN 2 // Pin 32 is the RAMPS default
|
||||
#define Z_MIN_PROBE_PIN 2 // Pin 32 is the RAMPS default
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1136,7 +1175,7 @@
|
||||
* The BLTouch probe uses a Hall effect sensor and emulates a servo.
|
||||
*/
|
||||
#if ENABLED(KNUTWURST_BLTOUCH)
|
||||
#define BLTOUCH
|
||||
#define BLTOUCH
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1210,12 +1249,12 @@
|
||||
* Specify a Probe position as { X, Y, Z }
|
||||
*/
|
||||
#if ENABLED(KNUTWURST_BLTOUCH)
|
||||
#define NOZZLE_TO_PROBE_OFFSET { -2, -25, 0 } //https://www.thingiverse.com/thing:2824005
|
||||
//#define NOZZLE_TO_PROBE_OFFSET { 29, -15, 0 } //X-Carriage
|
||||
#define NOZZLE_TO_PROBE_OFFSET { -2, -25, 0 } //https://www.thingiverse.com/thing:2824005
|
||||
//#define NOZZLE_TO_PROBE_OFFSET { 29, -15, 0 } //X-Carriage
|
||||
#endif
|
||||
|
||||
#if DISABLED(KNUTWURST_BLTOUCH)
|
||||
#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
|
||||
#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 }
|
||||
#endif
|
||||
|
||||
// Most probes should stay away from the edges of the bed, but
|
||||
@@ -1263,11 +1302,11 @@
|
||||
//#define Z_AFTER_PROBING 5 // Z position after probing is done
|
||||
|
||||
#if ENABLED(KNUTWURST_BLTOUCH)
|
||||
#define Z_PROBE_LOW_POINT -5 // Farthest distance below the trigger-point to go before stopping
|
||||
#define Z_PROBE_LOW_POINT -10 // Farthest distance below the trigger-point to go before stopping
|
||||
#endif
|
||||
|
||||
#if DISABLED(KNUTWURST_BLTOUCH)
|
||||
#define Z_PROBE_LOW_POINT -2 // Farthest distance below the trigger-point to go before stopping
|
||||
#define Z_PROBE_LOW_POINT -2 // Farthest distance below the trigger-point to go before stopping
|
||||
#endif
|
||||
|
||||
|
||||
@@ -1277,7 +1316,7 @@
|
||||
|
||||
// Enable the M48 repeatability test to test probe accuracy
|
||||
#if ENABLED(KNUTWURST_BLTOUCH)
|
||||
#define Z_MIN_PROBE_REPEATABILITY_TEST
|
||||
#define Z_MIN_PROBE_REPEATABILITY_TEST
|
||||
#endif
|
||||
|
||||
// Before deploy/stow pause for user confirmation
|
||||
@@ -1324,42 +1363,100 @@
|
||||
|
||||
// @section machine
|
||||
|
||||
#if ENABLED(KNUTWURST_TMC)
|
||||
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
|
||||
#define INVERT_X_DIR false // set to true for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_Y_DIR true // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_Z_DIR true // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#if DISABLED(KNUTWURST_TMC)
|
||||
|
||||
// @section extruder
|
||||
#if ANY(KNUTWURST_MEGA, KNUTWURST_MEGA_S, KNUTWURST_MEGA_X)
|
||||
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
|
||||
#define INVERT_X_DIR true // set to true for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_Y_DIR false // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_Z_DIR false // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
|
||||
// For direct drive extruder v9 set to true, for geared extruder set to false.
|
||||
#define INVERT_E0_DIR true // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_E1_DIR true // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_E2_DIR false
|
||||
#define INVERT_E3_DIR false
|
||||
#define INVERT_E4_DIR false
|
||||
#define INVERT_E5_DIR false
|
||||
#define INVERT_E6_DIR false
|
||||
#define INVERT_E7_DIR false
|
||||
// @section extruder
|
||||
|
||||
// For direct drive extruder v9 set to true, for geared extruder set to false.
|
||||
#if ENABLED(KNUTWURST_BMG)
|
||||
#define INVERT_E0_DIR true // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#else
|
||||
#define INVERT_E0_DIR false // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#endif
|
||||
#define INVERT_E1_DIR false // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_E2_DIR false
|
||||
#define INVERT_E3_DIR false
|
||||
#define INVERT_E4_DIR false
|
||||
#define INVERT_E5_DIR false
|
||||
#define INVERT_E6_DIR false
|
||||
#define INVERT_E7_DIR false
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_MEGA_P)
|
||||
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
|
||||
#define INVERT_X_DIR false // set to true for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_Y_DIR true // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_Z_DIR false // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
|
||||
// @section extruder
|
||||
|
||||
// For direct drive extruder v9 set to true, for geared extruder set to false.
|
||||
#if ENABLED(KNUTWURST_BMG)
|
||||
#define INVERT_E0_DIR false // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#else
|
||||
#define INVERT_E0_DIR true // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#endif
|
||||
#define INVERT_E1_DIR false // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_E2_DIR false
|
||||
#define INVERT_E3_DIR false
|
||||
#define INVERT_E4_DIR false
|
||||
#define INVERT_E5_DIR false
|
||||
#define INVERT_E6_DIR false
|
||||
#define INVERT_E7_DIR false
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if DISABLED(KNUTWURST_TMC)
|
||||
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
|
||||
#define INVERT_X_DIR true // set to true for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_Y_DIR false // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_Z_DIR false // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#if ENABLED(KNUTWURST_TMC)
|
||||
#if ANY(KNUTWURST_MEGA, KNUTWURST_MEGA_S, KNUTWURST_MEGA_X)
|
||||
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
|
||||
#define INVERT_X_DIR false // set to true for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_Y_DIR true // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_Z_DIR true // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
|
||||
// @section extruder
|
||||
// @section extruder
|
||||
|
||||
// For direct drive extruder v9 set to true, for geared extruder set to false.
|
||||
#define INVERT_E0_DIR false // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_E1_DIR false // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_E2_DIR false
|
||||
#define INVERT_E3_DIR false
|
||||
#define INVERT_E4_DIR false
|
||||
#define INVERT_E5_DIR false
|
||||
#define INVERT_E6_DIR false
|
||||
#define INVERT_E7_DIR false
|
||||
// For direct drive extruder v9 set to true, for geared extruder set to false.
|
||||
#if ENABLED(KNUTWURST_BMG)
|
||||
#define INVERT_E0_DIR false // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#else
|
||||
#define INVERT_E0_DIR true // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#endif
|
||||
#define INVERT_E1_DIR true // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_E2_DIR false
|
||||
#define INVERT_E3_DIR false
|
||||
#define INVERT_E4_DIR false
|
||||
#define INVERT_E5_DIR false
|
||||
#define INVERT_E6_DIR false
|
||||
#define INVERT_E7_DIR false
|
||||
#endif
|
||||
#if ENABLED(KNUTWURST_MEGA_P)
|
||||
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
|
||||
#define INVERT_X_DIR false // set to true for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_Y_DIR true // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_Z_DIR true // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
|
||||
// @section extruder
|
||||
|
||||
// For direct drive extruder v9 set to true, for geared extruder set to false.
|
||||
#if ENABLED(KNUTWURST_BMG)
|
||||
#define INVERT_E0_DIR true // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#else
|
||||
#define INVERT_E0_DIR false // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#endif
|
||||
#define INVERT_E1_DIR true // set to false for stock drivers or TMC2208 with reversed connectors
|
||||
#define INVERT_E2_DIR false
|
||||
#define INVERT_E3_DIR false
|
||||
#define INVERT_E4_DIR false
|
||||
#define INVERT_E5_DIR false
|
||||
#define INVERT_E6_DIR false
|
||||
#define INVERT_E7_DIR false
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// @section homing
|
||||
@@ -1382,7 +1479,15 @@
|
||||
// @section machine
|
||||
|
||||
// The size of the print bed
|
||||
#if EITHER(KNUTWURST_MEGA, KNUTWURST_MEGA_S)
|
||||
/*
|
||||
#if ENABLED(KNUTWURST_MEGA)
|
||||
#define X_BED_SIZE 215
|
||||
#define Y_BED_SIZE 215
|
||||
#define Z_BED_HEIGHT 206
|
||||
#endif
|
||||
*/
|
||||
|
||||
#if ANY(KNUTWURST_MEGA, KNUTWURST_MEGA_S, KNUTWURST_MEGA_P)
|
||||
#define X_BED_SIZE 225
|
||||
#define Y_BED_SIZE 220
|
||||
#define Z_BED_HEIGHT 210
|
||||
@@ -1502,19 +1607,19 @@
|
||||
* With an LCD controller the process is guided step-by-step.
|
||||
*/
|
||||
#if ENABLED(KNUTWURST_BLTOUCH)
|
||||
//#define AUTO_BED_LEVELING_3POINT
|
||||
//#define AUTO_BED_LEVELING_LINEAR
|
||||
#define AUTO_BED_LEVELING_BILINEAR
|
||||
//#define AUTO_BED_LEVELING_UBL
|
||||
//#define MESH_BED_LEVELING
|
||||
//#define AUTO_BED_LEVELING_3POINT
|
||||
//#define AUTO_BED_LEVELING_LINEAR
|
||||
#define AUTO_BED_LEVELING_BILINEAR
|
||||
//#define AUTO_BED_LEVELING_UBL
|
||||
//#define MESH_BED_LEVELING
|
||||
#endif
|
||||
|
||||
#if DISABLED(KNUTWURST_BLTOUCH)
|
||||
//#define AUTO_BED_LEVELING_3POINT
|
||||
//#define AUTO_BED_LEVELING_LINEAR
|
||||
//#define AUTO_BED_LEVELING_BILINEAR
|
||||
//#define AUTO_BED_LEVELING_UBL
|
||||
#define MESH_BED_LEVELING
|
||||
//#define AUTO_BED_LEVELING_3POINT
|
||||
//#define AUTO_BED_LEVELING_LINEAR
|
||||
//#define AUTO_BED_LEVELING_BILINEAR
|
||||
//#define AUTO_BED_LEVELING_UBL
|
||||
#define MESH_BED_LEVELING
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -1674,10 +1779,10 @@
|
||||
#define Z_SAFE_HOMING_Y_POINT ((Y_BED_SIZE) / 2) // Y point for Z homing when homing all axes (G28).
|
||||
#endif
|
||||
|
||||
#if EITHER(KNUTWURST_MEGA, KNUTWURST_MEGA_S)
|
||||
#if ANY(KNUTWURST_MEGA, KNUTWURST_MEGA_S, KNUTWURST_MEGA_P)
|
||||
// Homing speeds (mm/m)
|
||||
#define HOMING_FEEDRATE_XY (50*60)
|
||||
#define HOMING_FEEDRATE_Z (5*60)
|
||||
#define HOMING_FEEDRATE_Z (4*60)
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_MEGA_X)
|
||||
|
@@ -152,7 +152,7 @@
|
||||
* THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
|
||||
*/
|
||||
#if ENABLED(THERMAL_PROTECTION_HOTENDS)
|
||||
#define THERMAL_PROTECTION_PERIOD 3 // Seconds
|
||||
#define THERMAL_PROTECTION_PERIOD 10 // Seconds
|
||||
#define THERMAL_PROTECTION_HYSTERESIS 15 // Degrees Celsius
|
||||
|
||||
//#define ADAPTIVE_FAN_SLOWING // Slow part cooling fan if temperature drops
|
||||
@@ -172,8 +172,8 @@
|
||||
* and/or decrease WATCH_TEMP_INCREASE. WATCH_TEMP_INCREASE should not be set
|
||||
* below 2.
|
||||
*/
|
||||
#define WATCH_TEMP_PERIOD 35 // Seconds
|
||||
#define WATCH_TEMP_INCREASE 5 // Degrees Celsius
|
||||
#define WATCH_TEMP_PERIOD 30 // Seconds
|
||||
#define WATCH_TEMP_INCREASE 3 // Degrees Celsius
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -537,19 +537,21 @@
|
||||
#define NUM_Z_STEPPER_DRIVERS 2 // (1-4) Z options change based on how many
|
||||
|
||||
#if NUM_Z_STEPPER_DRIVERS > 1
|
||||
#define Z_MULTI_ENDSTOPS
|
||||
#if ENABLED(Z_MULTI_ENDSTOPS)
|
||||
#define Z2_USE_ENDSTOP _XMAX_
|
||||
#define Z2_ENDSTOP_ADJUSTMENT 0
|
||||
#if NUM_Z_STEPPER_DRIVERS >= 3
|
||||
#define Z3_USE_ENDSTOP _YMAX_
|
||||
#define Z3_ENDSTOP_ADJUSTMENT 0
|
||||
#endif
|
||||
#if NUM_Z_STEPPER_DRIVERS >= 4
|
||||
#define Z4_USE_ENDSTOP _ZMAX_
|
||||
#define Z4_ENDSTOP_ADJUSTMENT 0
|
||||
#endif
|
||||
#if DISABLED(KNUTWURST_ONE_Z_ENDSTOP)
|
||||
#define Z_MULTI_ENDSTOPS
|
||||
#endif
|
||||
#if ENABLED(Z_MULTI_ENDSTOPS)
|
||||
#define Z2_USE_ENDSTOP _XMAX_
|
||||
#define Z2_ENDSTOP_ADJUSTMENT 0
|
||||
#if NUM_Z_STEPPER_DRIVERS >= 3
|
||||
#define Z3_USE_ENDSTOP _YMAX_
|
||||
#define Z3_ENDSTOP_ADJUSTMENT 0
|
||||
#endif
|
||||
#if NUM_Z_STEPPER_DRIVERS >= 4
|
||||
#define Z4_USE_ENDSTOP _ZMAX_
|
||||
#define Z4_ENDSTOP_ADJUSTMENT 0
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -681,7 +683,7 @@
|
||||
* This feature was designed for Delta's with very fast Z moves however higher speed cartesians may function
|
||||
* If the machine cannot raise the probe fast enough after a trigger, it may enter a fault state.
|
||||
*/
|
||||
#define BLTOUCH_HS_MODE
|
||||
//#define BLTOUCH_HS_MODE
|
||||
|
||||
// Safety: Enable voltage mode settings in the LCD menu.
|
||||
//#define BLTOUCH_LCD_VOLTAGE_MENU
|
||||
@@ -1486,7 +1488,7 @@
|
||||
* Warning: Does not respect endstops!
|
||||
*/
|
||||
#if ENABLED(KNUTWURST_BLTOUCH)
|
||||
#define BABYSTEPPING
|
||||
#define BABYSTEPPING
|
||||
#endif
|
||||
#if ENABLED(BABYSTEPPING)
|
||||
//#define INTEGRATED_BABYSTEPPING // EXPERIMENTAL integration of babystepping into the Stepper ISR
|
||||
@@ -1659,15 +1661,15 @@
|
||||
//
|
||||
// G2/G3 Arc Support
|
||||
//
|
||||
//#define ARC_SUPPORT // Disable this feature to save ~3226 bytes
|
||||
#define ARC_SUPPORT // Disable this feature to save ~3226 bytes
|
||||
#if ENABLED(ARC_SUPPORT)
|
||||
#define MM_PER_ARC_SEGMENT 1 // (mm) Length (or minimum length) of each arc segment
|
||||
#define MM_PER_ARC_SEGMENT 0 // (mm) Length (or minimum length) of each arc segment (default: 1)
|
||||
//#define ARC_SEGMENTS_PER_R 1 // Max segment length, MM_PER = Min
|
||||
#define MIN_ARC_SEGMENTS 24 // Minimum number of segments in a complete circle
|
||||
#define MIN_ARC_SEGMENTS 0 // Minimum number of segments in a complete circle (default: 24)
|
||||
//#define ARC_SEGMENTS_PER_SEC 50 // Use feedrate to choose segment length (with MM_PER_ARC_SEGMENT as the minimum)
|
||||
#define N_ARC_CORRECTION 25 // Number of interpolated segments between corrections
|
||||
//#define ARC_P_CIRCLES // Enable the 'P' parameter to specify complete circles
|
||||
//#define CNC_WORKSPACE_PLANES // Allow G2/G3 to operate in XY, ZX, or YZ planes
|
||||
//#define N_ARC_CORRECTION 25 // Number of interpolated segments between corrections
|
||||
#define ARC_P_CIRCLES // Enable the 'P' parameter to specify complete circles
|
||||
#define CNC_WORKSPACE_PLANES // Allow G2/G3 to operate in XY, ZX, or YZ planes
|
||||
#endif
|
||||
|
||||
// Support for G5 with XYZE destination and IJPQ offsets. Requires ~2666 bytes.
|
||||
@@ -1702,8 +1704,8 @@
|
||||
*
|
||||
* Override the default value based on the driver type set in Configuration.h.
|
||||
*/
|
||||
//#define MINIMUM_STEPPER_POST_DIR_DELAY 650
|
||||
//#define MINIMUM_STEPPER_PRE_DIR_DELAY 650
|
||||
#define MINIMUM_STEPPER_POST_DIR_DELAY 650
|
||||
#define MINIMUM_STEPPER_PRE_DIR_DELAY 650
|
||||
|
||||
/**
|
||||
* Minimum stepper driver pulse width (in µs)
|
||||
@@ -1716,7 +1718,7 @@
|
||||
*
|
||||
* Override the default value based on the driver type set in Configuration.h.
|
||||
*/
|
||||
//#define MINIMUM_STEPPER_PULSE 2
|
||||
#define MINIMUM_STEPPER_PULSE 2
|
||||
|
||||
/**
|
||||
* Maximum stepping rate (in Hz) the stepper driver allows
|
||||
@@ -1775,7 +1777,7 @@
|
||||
#if RX_BUFFER_SIZE >= 1024
|
||||
// Enable to have the controller send XON/XOFF control characters to
|
||||
// the host to signal the RX buffer is becoming full.
|
||||
//#define SERIAL_XON_XOFF
|
||||
#define SERIAL_XON_XOFF
|
||||
#endif
|
||||
|
||||
// Add M575 G-code to change the baud rate
|
||||
|
@@ -41,11 +41,10 @@
|
||||
* here we define this default string as the date where the latest release
|
||||
* version was tagged.
|
||||
*/
|
||||
#define CUSTOM_BUILD_VERSION "1.1.4"
|
||||
#define CUSTOM_BUILD_VERSION "1.1.7"
|
||||
|
||||
#ifndef STRING_DISTRIBUTION_DATE
|
||||
//#define STRING_DISTRIBUTION_DATE "2020-07-09"
|
||||
#define STRING_DISTRIBUTION_DATE "2020-08-24"
|
||||
#define STRING_DISTRIBUTION_DATE "2020-11-29"
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
@@ -24,21 +24,22 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "../MarlinCore.h"
|
||||
#include "../core/language.h"
|
||||
#include "../core/macros.h"
|
||||
#include "../core/serial.h"
|
||||
#include "../gcode/queue.h"
|
||||
#include "../feature/e_parser.h"
|
||||
#include "../feature/pause.h"
|
||||
#include "../inc/MarlinConfig.h"
|
||||
#include "../libs/buzzer.h"
|
||||
#include "../module/planner.h"
|
||||
#include "../module/printcounter.h"
|
||||
#include "../module/stepper.h"
|
||||
#include "../module/temperature.h"
|
||||
#include "../sd/cardreader.h"
|
||||
#include "../module/configuration_store.h"
|
||||
//#include "../MarlinCore.h"
|
||||
//#include "../core/language.h"
|
||||
//#include "../core/macros.h"
|
||||
//#include "../core/serial.h"
|
||||
//#include "../module/stepper.h"
|
||||
//#include "../inc/MarlinConfig.h"
|
||||
//#include "../module/configuration_store.h"
|
||||
|
||||
|
||||
#ifdef ANYCUBIC_TOUCHSCREEN
|
||||
#include "anycubic_touchscreen.h"
|
||||
@@ -121,10 +122,11 @@ void AnycubicTouchscreenClass::Setup()
|
||||
pinMode(SD_DETECT_PIN, INPUT);
|
||||
WRITE(SD_DETECT_PIN, HIGH);
|
||||
#endif
|
||||
pinMode(19, INPUT);
|
||||
WRITE(19, HIGH);
|
||||
pinMode(FILAMENT_RUNOUT_PIN, INPUT);
|
||||
WRITE(FILAMENT_RUNOUT_PIN, HIGH);
|
||||
|
||||
#if ENABLED(ANYCUBIC_FILAMENT_RUNOUT_SENSOR)
|
||||
if ((READ(19) == true) && FilamentSensorEnabled)
|
||||
if ((READ(FILAMENT_RUNOUT_PIN) == true) && FilamentSensorEnabled)
|
||||
{
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("J15"); //J15 FILAMENT LACK
|
||||
HARDWARE_SERIAL_ENTER();
|
||||
@@ -134,11 +136,16 @@ void AnycubicTouchscreenClass::Setup()
|
||||
}
|
||||
#endif
|
||||
|
||||
currentTouchscreenSelection[0] = '\0';
|
||||
currentTouchscreenSelection[0] = 0;
|
||||
currentFileOrDirectory[0] = '\0';
|
||||
SpecialMenu = false;
|
||||
MMLMenu = false;
|
||||
FlowMenu = false;
|
||||
LevelMenu = false;
|
||||
FilamentSensorEnabled = true;
|
||||
MyFileNrCnt = 0;
|
||||
currentFlowRate = 100;
|
||||
flowRateBuffer = SM_FLOW_DISP_L;
|
||||
|
||||
#ifdef STARTUP_CHIME
|
||||
buzzer.tone(100, 554);
|
||||
@@ -434,6 +441,7 @@ bool AnycubicTouchscreenClass::CodeSeen(char code)
|
||||
|
||||
void AnycubicTouchscreenClass::HandleSpecialMenu()
|
||||
{
|
||||
#if ENABLED(KNUTWURST_SPECIAL_MENU)
|
||||
#ifdef ANYCUBIC_TFT_DEBUG
|
||||
SERIAL_ECHOPAIR(" DEBUG: Special Menu Selection: ", currentTouchscreenSelection);
|
||||
SERIAL_EOL();
|
||||
@@ -447,17 +455,17 @@ void AnycubicTouchscreenClass::HandleSpecialMenu()
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_PID_HOTEND_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: PID Tune Hotend");
|
||||
queue.inject_P(PSTR("G28\nG90\nG1 Z20\nG1 X110 Y110 F4000\nG1 Z5\nM106 S172\nG4 P500\nM303 E0 S215 C15 U1\nG4 P500\nM107\nG28\nG1 Z10\nM84"));
|
||||
queue.inject_P(PSTR("G28\nG90\nG1 Z20\nG1 X110 Y110 F4000\nG1 Z5\nM106 S172\nG4 P500\nM303 E0 S215 C15 U1\nG4 P500\nM107\nG28\nG1 Z10\nM84\nM500\nM300 S440 P200\nM300 S660 P250\nM300 S880 P300"));
|
||||
buzzer.tone(200, 1108);
|
||||
buzzer.tone(200, 1661);
|
||||
buzzer.tone(200, 1108);
|
||||
buzzer.tone(600, 1661);
|
||||
buzzer.tone(600, 1661);
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_PID_BED_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_PID_BED_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: PID Tune Ultrabase");
|
||||
queue.inject_P(PSTR("M303 E-1 S60 C6 U1"));
|
||||
queue.inject_P(PSTR("M303 E-1 S60 C6 U1\nM500\nM300 S440 P200\nM300 S660 P250\nM300 S880 P300"));
|
||||
buzzer.tone(200, 1108);
|
||||
buzzer.tone(200, 1661);
|
||||
buzzer.tone(200, 1108);
|
||||
@@ -487,6 +495,11 @@ void AnycubicTouchscreenClass::HandleSpecialMenu()
|
||||
}
|
||||
|
||||
#if DISABLED(KNUTWURST_BLTOUCH)
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_MESH_MENU_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_MESH_MENU_S) != NULL))
|
||||
{
|
||||
MMLMenu = true;
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_MESH_START_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_MESH_START_S) != NULL))
|
||||
{
|
||||
@@ -527,14 +540,12 @@ void AnycubicTouchscreenClass::HandleSpecialMenu()
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_Z_UP_001_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: Z Up 0.01");
|
||||
//queue.inject_P(PSTR("G91\nG1 Z+0.01\nG90"));
|
||||
queue.inject_P(PSTR("G91\nG1 Z+0.03\nG4 P250\nG1 Z-0.02\nG90"));
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_Z_DN_001_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_Z_DN_001_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: Z Down 0.01");
|
||||
//queue.inject_P(PSTR("G91\nG1 Z-0.01\nG90"));
|
||||
queue.inject_P(PSTR("G91\nG1 Z+0.02\nG4 P250\nG1 Z-0.03\nG90"));
|
||||
}
|
||||
#endif
|
||||
@@ -545,6 +556,8 @@ void AnycubicTouchscreenClass::HandleSpecialMenu()
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: BLTouch Leveling");
|
||||
queue.inject_P(PSTR("G28\nG29\nM500\nG90\nG1 Z30 F4000\nG1 X0 F4000\nG91\nM84"));
|
||||
buzzer.tone(105, 1108);
|
||||
buzzer.tone(210, 1661);
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -582,18 +595,203 @@ void AnycubicTouchscreenClass::HandleSpecialMenu()
|
||||
{
|
||||
SpecialMenu = false;
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_BACK_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_BACK_S) != NULL))
|
||||
{
|
||||
MMLMenu = false;
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_FLOWMENU_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_FLOWMENU_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: Enter Flow Menu");
|
||||
FlowMenu = true;
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_FLOW_UP_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_FLOW_UP_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: Flow UP");
|
||||
currentFlowRate = currentFlowRate + 5;
|
||||
|
||||
if(currentFlowRate > 800)
|
||||
currentFlowRate = 800;
|
||||
|
||||
char value[30];
|
||||
sprintf_P(value, PSTR("M221 S%i"), currentFlowRate);
|
||||
queue.enqueue_one_now(value);
|
||||
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_FLOW_DN_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_FLOW_DN_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: Flow Down");
|
||||
currentFlowRate = currentFlowRate - 5;
|
||||
|
||||
if(currentFlowRate < 5)
|
||||
currentFlowRate = 5;
|
||||
|
||||
char value[30];
|
||||
sprintf_P(value, PSTR("M221 S%i"), currentFlowRate);
|
||||
queue.enqueue_one_now(value);
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_FLOW_EXIT_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_FLOW_EXIT_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: Exit Flow Menu");
|
||||
FlowMenu = false;
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_EZLVL_MENU_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_EZLVL_MENU_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: Enter Easy Level Menu");
|
||||
LevelMenu = true;
|
||||
queue.inject_P(PSTR("G28\nG90\nG1 Z5\nG1 X15 Y15 F4000\nG1 Z0"));
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_EZLVL_P1_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_EZLVL_P1_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: Easy Level POINT 1");
|
||||
queue.inject_P(PSTR("G90\nG1 Z5\nG1 X15 Y15 F4000\nG1 Z0"));
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_EZLVL_P2_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_EZLVL_P2_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: Easy Level POINT 2");
|
||||
#if ANY(KNUTWURST_MEGA, KNUTWURST_MEGA_S, KNUTWURST_MEGA_P)
|
||||
queue.inject_P(PSTR("G90\nG1 Z5\nG1 X205 Y15 F4000\nG1 Z0"));
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_MEGA_X)
|
||||
queue.inject_P(PSTR("G90\nG1 Z5\nG1 X295 Y15 F4000\nG1 Z0"));
|
||||
#endif
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_EZLVL_P3_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_EZLVL_P3_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: Easy Level POINT 3");
|
||||
#if ANY(KNUTWURST_MEGA, KNUTWURST_MEGA_S, KNUTWURST_MEGA_P)
|
||||
queue.inject_P(PSTR("G90\nG1 Z5\nG1 X205 Y200 F4000\nG1 Z0"));
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_MEGA_X)
|
||||
queue.inject_P(PSTR("G90\nG1 Z5\nG1 X295 Y295 F4000\nG1 Z0"));
|
||||
#endif
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_EZLVL_P4_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_EZLVL_P4_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: Easy Level POINT 4");
|
||||
#if ANY(KNUTWURST_MEGA, KNUTWURST_MEGA_S, KNUTWURST_MEGA_P)
|
||||
queue.inject_P(PSTR("G90\nG1 Z5\nG1 X15 Y200 F4000\nG1 Z0"));
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_MEGA_X)
|
||||
queue.inject_P(PSTR("G90\nG1 Z5\nG1 X15 Y295 F4000\nG1 Z0"));
|
||||
#endif
|
||||
}
|
||||
else if ((strcasestr(currentTouchscreenSelection, SM_EZLVL_EXIT_L) != NULL)
|
||||
|| (strcasestr(currentTouchscreenSelection, SM_EZLVL_EXIT_S) != NULL))
|
||||
{
|
||||
SERIAL_ECHOLNPGM("Special Menu: Exit Easy Level Menu");
|
||||
LevelMenu = false;
|
||||
queue.inject_P(PSTR("G90\nG1 Z10\nG1 X15 Y15 F4000"));
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
void AnycubicTouchscreenClass::PrintList()
|
||||
{
|
||||
if (SpecialMenu)
|
||||
#if ENABLED(KNUTWURST_SPECIAL_MENU)
|
||||
if(MMLMenu)
|
||||
{
|
||||
switch (filenumber)
|
||||
{
|
||||
case 0: // Page 1
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_START_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_START_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_01_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_01_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_01_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_01_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_002_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_002_L);
|
||||
break;
|
||||
|
||||
case 4: // Page 2
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_002_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_002_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_001_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_001_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_001_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_001_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_NEXT_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_NEXT_L);
|
||||
break;
|
||||
|
||||
case 8: // Page 2
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_SAVE_EEPROM_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_SAVE_EEPROM_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_BACK_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_BACK_L);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if(FlowMenu)
|
||||
{
|
||||
flowRateBuffer = SM_FLOW_DISP_L;
|
||||
flowRateBuffer.replace("XXX", String(currentFlowRate));
|
||||
|
||||
switch (filenumber)
|
||||
{
|
||||
case 0: // Page 1
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_FLOW_DISP_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLN(flowRateBuffer);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_FLOW_UP_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_FLOW_UP_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_FLOW_DN_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_FLOW_DN_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_FLOW_EXIT_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_FLOW_EXIT_L);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if(LevelMenu)
|
||||
{
|
||||
switch (filenumber)
|
||||
{
|
||||
case 0: // Page 1
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EZLVL_P1_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EZLVL_P1_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EZLVL_P2_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EZLVL_P2_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EZLVL_P3_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EZLVL_P3_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EZLVL_P4_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EZLVL_P4_L);
|
||||
break;
|
||||
|
||||
case 4: // Page 2
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EZLVL_EXIT_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EZLVL_EXIT_L);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if (SpecialMenu)
|
||||
{
|
||||
switch (filenumber)
|
||||
{
|
||||
case 0: // Page 1
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EXIT_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EXIT_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_FLOWMENU_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_FLOWMENU_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_PREHEAT_BED_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_PREHEAT_BED_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_PAUSE_S);
|
||||
@@ -604,77 +802,57 @@ void AnycubicTouchscreenClass::PrintList()
|
||||
|
||||
#if DISABLED(KNUTWURST_BLTOUCH)
|
||||
case 4: // Page 2
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_START_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_START_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_NEXT_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_NEXT_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_01_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_01_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_01_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_01_L);
|
||||
break;
|
||||
|
||||
case 8: // Page 3
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_002_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_002_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_002_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_002_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_001_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_UP_001_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_001_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_Z_DN_001_L);
|
||||
break;
|
||||
|
||||
case 12: // Page 4
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EZLVL_MENU_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EZLVL_MENU_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_MENU_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_MESH_MENU_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_PID_HOTEND_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_PID_HOTEND_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_PID_BED_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_PID_BED_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_SAVE_EEPROM_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_SAVE_EEPROM_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_LOAD_DEFAULTS_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_LOAD_DEFAULTS_L);
|
||||
break;
|
||||
|
||||
case 16: // Page 5
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_DIS_FILSENS_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_DIS_FILSENS_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EN_FILSENS_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EN_FILSENS_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EXIT_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EXIT_L);
|
||||
break;
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_BLTOUCH)
|
||||
case 4: // Page 2
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EZLVL_MENU_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EZLVL_MENU_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_BLTOUCH_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_BLTOUCH_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_PID_HOTEND_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_PID_HOTEND_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_PID_BED_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_PID_BED_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_DIS_FILSENS_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_DIS_FILSENS_L);
|
||||
break;
|
||||
#endif
|
||||
|
||||
case 8: // Page 3
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EN_FILSENS_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EN_FILSENS_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_SAVE_EEPROM_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_SAVE_EEPROM_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_LOAD_DEFAULTS_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_LOAD_DEFAULTS_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_SAVE_EEPROM_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_SAVE_EEPROM_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_DIS_FILSENS_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_DIS_FILSENS_L);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EN_FILSENS_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EN_FILSENS_L);
|
||||
break;
|
||||
|
||||
case 12: // Page 3
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EXIT_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_EXIT_L);
|
||||
break;
|
||||
#endif
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
#ifdef SDSUPPORT
|
||||
#if ENABLED(KNUTWURST_SPECIAL_MENU)
|
||||
else if (card.isMounted())
|
||||
#else
|
||||
if (card.isMounted())
|
||||
#endif
|
||||
{
|
||||
uint16_t count = filenumber;
|
||||
uint16_t max_files;
|
||||
@@ -790,8 +968,10 @@ void AnycubicTouchscreenClass::PrintList()
|
||||
#endif
|
||||
else
|
||||
{
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_SPECIAL_MENU_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_SPECIAL_MENU_L);
|
||||
#if ENABLED(KNUTWURST_SPECIAL_MENU_WO_SD)
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_SPECIAL_MENU_S);
|
||||
HARDWARE_SERIAL_PROTOCOLLNPGM(SM_SPECIAL_MENU_L);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -973,7 +1153,7 @@ void AnycubicTouchscreenClass::FilamentRunout()
|
||||
if (FilamentSensorEnabled == true)
|
||||
{
|
||||
#if ENABLED(ANYCUBIC_FILAMENT_RUNOUT_SENSOR)
|
||||
FilamentTestStatus = READ(19) & 0xff;
|
||||
FilamentTestStatus = READ(FILAMENT_RUNOUT_PIN) & 0xff;
|
||||
|
||||
if (FilamentTestStatus > FilamentTestLastStatus)
|
||||
{
|
||||
@@ -987,20 +1167,20 @@ void AnycubicTouchscreenClass::FilamentRunout()
|
||||
#ifdef ANYCUBIC_TFT_DEBUG
|
||||
SERIAL_ECHOLNPGM("DEBUG: Set filament trigger time");
|
||||
#endif
|
||||
// set the delayed timestamp to 3000ms later
|
||||
fil_delay = fil_ms + 3000UL;
|
||||
// set the delayed timestamp to 5000ms later
|
||||
fil_delay = fil_ms + 5000UL;
|
||||
// this doesn't need to run until the filament is recovered again
|
||||
FilamentSetMillis = false;
|
||||
}
|
||||
|
||||
// if three seconds passed and the sensor is still triggered,
|
||||
// if five seconds passed and the sensor is still triggered,
|
||||
// we trigger the filament runout status
|
||||
if ((FilamentTestStatus > FilamentTestLastStatus) && (ELAPSED(fil_ms, fil_delay)))
|
||||
{
|
||||
if (!IsParked)
|
||||
{
|
||||
#ifdef ANYCUBIC_TFT_DEBUG
|
||||
SERIAL_ECHOLNPGM("DEBUG: 3000ms delay done");
|
||||
SERIAL_ECHOLNPGM("DEBUG: 5000ms delay done");
|
||||
#endif
|
||||
if (card.isPrinting())
|
||||
{
|
||||
@@ -1049,69 +1229,58 @@ void AnycubicTouchscreenClass::GetCommandFromTFT()
|
||||
serial3_char = HardwareSerial.read();
|
||||
if(serial3_char == '\n' || serial3_char == '\r' || (serial3_char == ':' && TFTcomment_mode == false) || serial3_count >= (TFT_MAX_CMD_SIZE - 1) )
|
||||
{
|
||||
if(!serial3_count) { //if empty line
|
||||
TFTcomment_mode = false; //for new command
|
||||
return;
|
||||
}
|
||||
if(!serial3_count)
|
||||
{ //if empty line
|
||||
TFTcomment_mode = false; //for new command
|
||||
return;
|
||||
}
|
||||
|
||||
TFTcmdbuffer[TFTbufindw][serial3_count] = 0; //terminate string
|
||||
if(!TFTcomment_mode)
|
||||
{
|
||||
TFTcomment_mode = false; //for new command
|
||||
|
||||
//TFTfromsd[TFTbufindw] = false;
|
||||
|
||||
if(strchr(TFTcmdbuffer[TFTbufindw], 'N') != NULL)
|
||||
TFTcmdbuffer[TFTbufindw][serial3_count] = 0; //terminate string
|
||||
|
||||
if(!TFTcomment_mode)
|
||||
{
|
||||
/*
|
||||
TFTstrchr_pointer = strchr(TFTcmdbuffer[TFTbufindw], 'N');
|
||||
gcode_N = (strtol(&TFTcmdbuffer[TFTbufindw][TFTstrchr_pointer - TFTcmdbuffer[TFTbufindw] + 1], NULL, 10));
|
||||
if(gcode_N != gcode_LastN+1 && (strstr_P(TFTcmdbuffer[TFTbufindw], PSTR("M110")) == NULL) )
|
||||
{
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
NEWFlushSerialRequestResend();
|
||||
serial3_count = 0;
|
||||
return;
|
||||
// -------- START ERROR CORRECTION ----------
|
||||
TFTcomment_mode = false; //for new command
|
||||
|
||||
if(strchr(TFTcmdbuffer[TFTbufindw], 'N') != NULL)
|
||||
{
|
||||
if(strchr(TFTcmdbuffer[TFTbufindw], '*') != NULL)
|
||||
{
|
||||
byte checksum = 0;
|
||||
byte count = 0;
|
||||
while(TFTcmdbuffer[TFTbufindw][count] != '*') checksum = checksum^TFTcmdbuffer[TFTbufindw][count++];
|
||||
TFTstrchr_pointer = strchr(TFTcmdbuffer[TFTbufindw], '*');
|
||||
|
||||
if( (int)(strtod(&TFTcmdbuffer[TFTbufindw][TFTstrchr_pointer - TFTcmdbuffer[TFTbufindw] + 1], NULL)) != checksum)
|
||||
{
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
HardwareSerial.flush();
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
HardwareSerial.flush();
|
||||
serial3_count = 0;
|
||||
return;
|
||||
}
|
||||
//if no errors, continue parsing
|
||||
}
|
||||
else
|
||||
{
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
HardwareSerial.flush();
|
||||
serial3_count = 0;
|
||||
return;
|
||||
}
|
||||
//if no errors, continue parsing
|
||||
}
|
||||
*/
|
||||
|
||||
if(strchr(TFTcmdbuffer[TFTbufindw], '*') != NULL)
|
||||
{
|
||||
byte checksum = 0;
|
||||
byte count = 0;
|
||||
while(TFTcmdbuffer[TFTbufindw][count] != '*') checksum = checksum^TFTcmdbuffer[TFTbufindw][count++];
|
||||
TFTstrchr_pointer = strchr(TFTcmdbuffer[TFTbufindw], '*');
|
||||
|
||||
if( (int)(strtod(&TFTcmdbuffer[TFTbufindw][TFTstrchr_pointer - TFTcmdbuffer[TFTbufindw] + 1], NULL)) != checksum)
|
||||
else // if we don't receive 'N' but still see '*'
|
||||
{
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
HardwareSerial.flush();
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
HardwareSerial.flush();
|
||||
serial3_count = 0;
|
||||
return;
|
||||
if((strchr(TFTcmdbuffer[TFTbufindw], '*') != NULL))
|
||||
{
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
serial3_count = 0;
|
||||
return;
|
||||
}
|
||||
}
|
||||
//if no errors, continue parsing
|
||||
}
|
||||
else
|
||||
{
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
HardwareSerial.flush();
|
||||
serial3_count = 0;
|
||||
return;
|
||||
}
|
||||
//gcode_LastN = gcode_N;
|
||||
//if no errors, continue parsing
|
||||
}
|
||||
else // if we don't receive 'N' but still see '*'
|
||||
{
|
||||
if((strchr(TFTcmdbuffer[TFTbufindw], '*') != NULL))
|
||||
{
|
||||
HARDWARE_SERIAL_ERROR_START;
|
||||
serial3_count = 0;
|
||||
return;
|
||||
}
|
||||
}
|
||||
// -------- FINISH ERROR CORRECTION ----------
|
||||
|
||||
|
||||
if((strchr(TFTcmdbuffer[TFTbufindw], 'A') != NULL))
|
||||
@@ -1214,22 +1383,27 @@ void AnycubicTouchscreenClass::GetCommandFromTFT()
|
||||
}
|
||||
case 8: // A8 GET SD LIST
|
||||
#ifdef SDSUPPORT
|
||||
|
||||
currentTouchscreenSelection[0] = 0;
|
||||
#if ENABLED(KNUTWURST_SPECIAL_MENU_WO_SD)
|
||||
if (!IS_SD_INSERTED())
|
||||
{
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("J02"); // J02 SD Card initilized
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("J02");
|
||||
HARDWARE_SERIAL_ENTER();
|
||||
}
|
||||
|
||||
if (CodeSeen('S'))
|
||||
filenumber = CodeValue();
|
||||
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("FN "); // Filelist start
|
||||
HARDWARE_SERIAL_ENTER();
|
||||
PrintList();
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("END"); // Filelist stop
|
||||
HARDWARE_SERIAL_ENTER();
|
||||
|
||||
else
|
||||
#endif
|
||||
{
|
||||
if (CodeSeen('S'))
|
||||
filenumber = CodeValue();
|
||||
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("FN "); // Filelist start
|
||||
HARDWARE_SERIAL_ENTER();
|
||||
PrintList();
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("END"); // Filelist stop
|
||||
HARDWARE_SERIAL_ENTER();
|
||||
}
|
||||
|
||||
#endif
|
||||
break;
|
||||
case 9: // A9 pause sd print
|
||||
@@ -1274,7 +1448,7 @@ void AnycubicTouchscreenClass::GetCommandFromTFT()
|
||||
}
|
||||
else
|
||||
{
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("J16");
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("J16"); // J16 stop print
|
||||
HARDWARE_SERIAL_ENTER();
|
||||
TFTstate = ANYCUBIC_TFT_STATE_IDLE;
|
||||
ai3m_pause_state = 0;
|
||||
@@ -1619,15 +1793,6 @@ void AnycubicTouchscreenClass::GetCommandFromTFT()
|
||||
}
|
||||
|
||||
currentTouchscreenSelection[0] = 0;
|
||||
|
||||
if (!IS_SD_INSERTED())
|
||||
{
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("J02"); // J02 SD Card initilized
|
||||
HARDWARE_SERIAL_ENTER();
|
||||
#ifdef ANYCUBIC_TFT_DEBUG
|
||||
SERIAL_ECHOLNPGM("TFT Serial Debug: SD card initialized... J02");
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
break;
|
||||
#ifdef SERVO_ENDSTOPS
|
||||
@@ -1646,7 +1811,7 @@ void AnycubicTouchscreenClass::GetCommandFromTFT()
|
||||
case 33: // A33 get version info
|
||||
{
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("J33 ");
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("Knutwurst-");
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("KW-");
|
||||
HARDWARE_SERIAL_PROTOCOLPGM(MSG_MY_VERSION);
|
||||
HARDWARE_SERIAL_ENTER();
|
||||
}
|
||||
@@ -1727,6 +1892,15 @@ void AnycubicTouchscreenClass::BedHeatingDone()
|
||||
#ifdef ANYCUBIC_TFT_DEBUG
|
||||
SERIAL_ECHOLNPGM("TFT Serial Debug: Bed heating is done... J09");
|
||||
#endif
|
||||
|
||||
if (TFTstate == ANYCUBIC_TFT_STATE_SDPRINT)
|
||||
{
|
||||
HARDWARE_SERIAL_PROTOCOLPGM("J04"); // J04 printing from sd card
|
||||
HARDWARE_SERIAL_ENTER();
|
||||
#ifdef ANYCUBIC_TFT_DEBUG
|
||||
SERIAL_ECHOLNPGM("TFT Serial Debug: Continuing SD print after heating... J04");
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
void PowerKill()
|
||||
|
@@ -36,6 +36,8 @@ char *ftostr32(const float &);
|
||||
#define MSG_MY_VERSION CUSTOM_BUILD_VERSION
|
||||
#define MAX_PRINTABLE_FILENAME_LEN 30
|
||||
|
||||
#define FILAMENT_RUNOUT_PIN 19
|
||||
|
||||
#define ANYCUBIC_TFT_STATE_IDLE 0
|
||||
#define ANYCUBIC_TFT_STATE_SDPRINT 1
|
||||
#define ANYCUBIC_TFT_STATE_SDPAUSE 2
|
||||
@@ -59,6 +61,8 @@ char *ftostr32(const float &);
|
||||
#define SM_LOAD_DEFAULTS_S "<LDDEF>"
|
||||
#define SM_PREHEAT_BED_L "<Preheat Ultrabase>"
|
||||
#define SM_PREHEAT_BED_S "<PREHE>"
|
||||
#define SM_MESH_MENU_L "<Mesh Leveling>"
|
||||
#define SM_MESH_MENU_S "<MESHL>"
|
||||
#define SM_MESH_START_L "<Start Mesh Leveling>"
|
||||
#define SM_MESH_START_S "<SMESH>"
|
||||
#define SM_MESH_NEXT_L "<Next Mesh Point>"
|
||||
@@ -87,51 +91,108 @@ char *ftostr32(const float &);
|
||||
#define SM_EN_FILSENS_S "<ENSEN>"
|
||||
#define SM_EXIT_L "<Exit>"
|
||||
#define SM_EXIT_S "<EXIT>"
|
||||
|
||||
#define SM_BACK_L "<End Mesh Leveling>"
|
||||
#define SM_BACK_S "<BACK>"
|
||||
|
||||
#define SM_FLOWMENU_L "<Set Flowrate>"
|
||||
#define SM_FLOWMENU_S "<SETFLO>"
|
||||
#define SM_FLOW_DISP_L "<Flow is XXX>"
|
||||
#define SM_FLOW_DISP_S "<FLDISP>"
|
||||
#define SM_FLOW_UP_L "<Up>"
|
||||
#define SM_FLOW_UP_S "<UP>"
|
||||
#define SM_FLOW_DN_L "<Down>"
|
||||
#define SM_FLOW_DN_S "<DOWN>"
|
||||
#define SM_FLOW_EXIT_L "<End Flow Settings>"
|
||||
#define SM_FLOW_EXIT_S "<EXTFLW>"
|
||||
|
||||
#define SM_EZLVL_MENU_L "<Easy 4 Point Level>"
|
||||
#define SM_EZLVL_MENU_S "<EZLVLM>"
|
||||
#define SM_EZLVL_P1_L "<Point A>"
|
||||
#define SM_EZLVL_P1_S "<EZLPA>"
|
||||
#define SM_EZLVL_P2_L "<Point B>"
|
||||
#define SM_EZLVL_P2_S "<EZLPB>"
|
||||
#define SM_EZLVL_P3_L "<Point C>"
|
||||
#define SM_EZLVL_P3_S "<EZLPC>"
|
||||
#define SM_EZLVL_P4_L "<Point D>"
|
||||
#define SM_EZLVL_P4_S "<EZLPD>"
|
||||
#define SM_EZLVL_EXIT_L "<End Easy Leveling>"
|
||||
#define SM_EZLVL_EXIT_S "<EZLEXT>"
|
||||
|
||||
#endif
|
||||
|
||||
#if ENABLED(KNUTWURST_DGUS2_TFT)
|
||||
#define SM_DIR_UP_L "<<< BACK <<<.gcode"
|
||||
#define SM_DIR_UP_L "<<< BACK <<< .gcode"
|
||||
#define SM_DIR_UP_S "DIR_UP~1.GCO"
|
||||
#define SM_SPECIAL_MENU_L "<Special Menu>.gcode"
|
||||
#define SM_SPECIAL_MENU_L "<Special Menu> .gcode"
|
||||
#define SM_SPECIAL_MENU_S "<SPECI~1.GCO"
|
||||
#define SM_PID_HOTEND_L "<PID Tune Hotend>.gcode"
|
||||
#define SM_PID_HOTEND_L "<PID Tune Hotend> .gcode"
|
||||
#define SM_PID_HOTEND_S "<PIDTU~1.GCO"
|
||||
#define SM_PID_BED_L "<PID Tune Ultrabase>.gcode"
|
||||
#define SM_PID_BED_S "<PIDTU~2.GCO"
|
||||
#define SM_SAVE_EEPROM_L "<Save EEPROM>.gcode"
|
||||
#define SM_SAVE_EEPROM_L "<Save EEPROM> .gcode"
|
||||
#define SM_SAVE_EEPROM_S "<SAVEE~1.GCO"
|
||||
#define SM_LOAD_DEFAULTS_L "<Load FW Defaults>.gcode"
|
||||
#define SM_LOAD_DEFAULTS_L "<Load FW Defaults> .gcode"
|
||||
#define SM_LOAD_DEFAULTS_S "<LOADF~1.GCO"
|
||||
#define SM_PREHEAT_BED_L "<Preheat Ultrabase>.gcode"
|
||||
#define SM_PREHEAT_BED_L "<Preheat Ultrabase> .gcode"
|
||||
#define SM_PREHEAT_BED_S "<PREHE~1.GCO"
|
||||
#define SM_MESH_START_L "<Start Mesh Leveling>.gcode"
|
||||
#define SM_MESH_MENU_L "<Mesh Leveling> .gcode"
|
||||
#define SM_MESH_MENU_S "<MESHL~1.GCO"
|
||||
#define SM_MESH_START_L "<Start MeshLeveling>.gcode"
|
||||
#define SM_MESH_START_S "<START~1.GCO"
|
||||
#define SM_MESH_NEXT_L "<Next Mesh Point>.gcode"
|
||||
#define SM_MESH_NEXT_L "<Next Mesh Point> .gcode"
|
||||
#define SM_MESH_NEXT_S "<NEXTM~1.GCO"
|
||||
#define SM_Z_UP_01_L "<Z Up 0.1>.gcode"
|
||||
#define SM_Z_UP_01_L "<Z Up 0.1> .gcode"
|
||||
#define SM_Z_UP_01_S "<ZUP01~1.GCO"
|
||||
#define SM_Z_DN_01_L "<Z Down 0.1>.gcode"
|
||||
#define SM_Z_DN_01_L "<Z Down 0.1> .gcode"
|
||||
#define SM_Z_DN_01_S "<ZDOWN~1.GCO"
|
||||
#define SM_Z_UP_002_L "<Z Up 0.02>.gcode"
|
||||
#define SM_Z_UP_002_L "<Z Up 0.02> .gcode"
|
||||
#define SM_Z_UP_002_S "<ZUP00~1.GCO"
|
||||
#define SM_Z_DN_002_L "<Z Down 0.02>.gcode"
|
||||
#define SM_Z_DN_002_L "<Z Down 0.02> .gcode"
|
||||
#define SM_Z_DN_002_S "<ZDOWN~2.GCO"
|
||||
#define SM_Z_UP_001_L "<Z Up 0.01>.gcode"
|
||||
#define SM_Z_UP_001_L "<Z Up 0.01> .gcode"
|
||||
#define SM_Z_UP_001_S "<ZUP00~2.GCO"
|
||||
#define SM_Z_DN_001_L "<Z Down 0.01>.gcode"
|
||||
#define SM_Z_DN_001_L "<Z Down 0.01> .gcode"
|
||||
#define SM_Z_DN_001_S "<ZDOWN~3.GCO"
|
||||
#define SM_BLTOUCH_L "<BLTouch Leveling>.gcode"
|
||||
#define SM_BLTOUCH_L "<BLTouch Leveling> .gcode"
|
||||
#define SM_BLTOUCH_S "<BLTOU~1.GCO"
|
||||
#define SM_PAUSE_L "<Fil. Change Pause>.gcode"
|
||||
#define SM_PAUSE_L "<Fil. Change Pause> .gcode"
|
||||
#define SM_PAUSE_S "<FILCH~2.GCO"
|
||||
#define SM_RESUME_L "<Fil. Change Resume>.gcode"
|
||||
#define SM_RESUME_S "<FILCH~1.GCO"
|
||||
#define SM_DIS_FILSENS_L "<Disable Fil. Sensor>.gcode"
|
||||
#define SM_DIS_FILSENS_L "<Disable Fil.Sensor>.gcode"
|
||||
#define SM_DIS_FILSENS_S "<DISAB~1.GCO"
|
||||
#define SM_EN_FILSENS_L "<Enable Fil. Sensor>.gcode"
|
||||
#define SM_EN_FILSENS_S "<ENABL~1.GCO"
|
||||
#define SM_EXIT_L "<Exit>.gcode"
|
||||
#define SM_EXIT_L "<Exit> .gcode"
|
||||
#define SM_EXIT_S "<EXIT_~1.GCO"
|
||||
|
||||
#define SM_BACK_L "<End Mesh Leveling> .gcode"
|
||||
#define SM_BACK_S "<BACK_~1.GCO"
|
||||
|
||||
#define SM_FLOWMENU_L "<Set Flowrate> .gcode"
|
||||
#define SM_FLOWMENU_S "<SETFLO1.GCO"
|
||||
#define SM_FLOW_DISP_L "<Flow is XXX%> .gcode"
|
||||
#define SM_FLOW_DISP_S "<FLDISPL.GCO"
|
||||
#define SM_FLOW_UP_L "<Up> .gcode"
|
||||
#define SM_FLOW_UP_S "<UPFLOW1.GCO"
|
||||
#define SM_FLOW_DN_L "<Down> .gcode"
|
||||
#define SM_FLOW_DN_S "<DWNFLOW.GCO"
|
||||
#define SM_FLOW_EXIT_L "<End Flow Settings> .gcode"
|
||||
#define SM_FLOW_EXIT_S "<EXTFLW1.GCO"
|
||||
|
||||
#define SM_EZLVL_MENU_L "<Easy 4 Point Level>.gcode"
|
||||
#define SM_EZLVL_MENU_S "<EZLVLM1.GCO"
|
||||
#define SM_EZLVL_P1_L "<Point A> .gcode"
|
||||
#define SM_EZLVL_P1_S "<EZLPA01.GCO"
|
||||
#define SM_EZLVL_P2_L "<Point B> .gcode"
|
||||
#define SM_EZLVL_P2_S "<EZLPB01.GCO"
|
||||
#define SM_EZLVL_P3_L "<Point C> .gcode"
|
||||
#define SM_EZLVL_P3_S "<EZLPC01.GCO"
|
||||
#define SM_EZLVL_P4_L "<Point D> .gcode"
|
||||
#define SM_EZLVL_P4_S "<EZLPD01.GCO"
|
||||
#define SM_EZLVL_EXIT_L "<End Easy Leveling> .gcode"
|
||||
#define SM_EZLVL_EXIT_S "<EZLEXT1.GCO"
|
||||
#endif
|
||||
|
||||
|
||||
@@ -177,6 +238,7 @@ private:
|
||||
char LastSDstatus = 0;
|
||||
uint16_t HeaterCheckCount = 0;
|
||||
bool IsParked = false;
|
||||
int currentFlowRate = 0;
|
||||
|
||||
#if defined(POWER_OUTAGE_TEST)
|
||||
struct OutageDataStruct
|
||||
@@ -209,10 +271,14 @@ private:
|
||||
|
||||
char currentTouchscreenSelection[64];
|
||||
char currentFileOrDirectory[64];
|
||||
String flowRateBuffer;
|
||||
uint16_t MyFileNrCnt = 0;
|
||||
uint8_t SpecialMenu = false;
|
||||
uint8_t FilamentSensorEnabled = true;
|
||||
|
||||
|
||||
uint8_t SpecialMenu = false;
|
||||
uint8_t MMLMenu = false;
|
||||
uint8_t FlowMenu = false;
|
||||
uint8_t LevelMenu = false;
|
||||
|
||||
#if ENABLED(ANYCUBIC_FILAMENT_RUNOUT_SENSOR)
|
||||
char FilamentTestStatus = false;
|
||||
|
255
README.md
255
README.md
@@ -1,4 +1,4 @@
|
||||
# Knutwurst's i3 MEGA (M/S/X) Firmware <br>(based on Marlin 2.0.x)
|
||||
# Knutwurst's i3 MEGA (M/S/P/X) Firmware <br>(based on Marlin 2.0.x)
|
||||
|
||||
<span style="color: red;">(BITTE GENAU DURCHLESEN! / PLEASE READ CAREFULLY!)</span>
|
||||
|
||||
@@ -6,28 +6,24 @@
|
||||
<sub>*Es muss jetzt keine großzügige Spende sein. Ein paar Cent reichen um mir zu zeigen, wer überhaupt Interesse daran hat und wem die Weiterentwicklung wichtig ist. So bleibt die Motivation da und ich weiß einfach, dass ich nicht für die Tonne programmiere ;)<sub>
|
||||
|
||||
|
||||
### Wenn du Fragen hast, schaue gern in der offiziellen [Facebook-Gruppe](https://www.facebook.com/groups/3094090037303577/) vorbei.
|
||||
Wenn Du Fragen hast, schaue gern in der offiziellen [Facebook-Gruppe](https://www.facebook.com/groups/3094090037303577/) vorbei.
|
||||
|
||||
|
||||
# Inhaltsverzeichnis (Deutsch)
|
||||
<b>WARNUNG:</b> Der Mega Pro / Mega P Support befindet sich noch in der Entwicklung. Aktuell wird der Laser noch nicht unterstützt, ebensowenig wie das Piezo-Leveling!
|
||||
|
||||
- [Funktionen](#funktionen)
|
||||
- [Was ist besser?](#besser-im-vergleich-zu-anderen-firmwares-bugfixes)
|
||||
- [Häufig gestellte Fragen (FAQ)](#häufig-gesellte-fragen-faq)
|
||||
- [Fotos / Bilder](#bilder)
|
||||
- [Spezial Menü](#spezial-menü)
|
||||
- [Manual Mesh Beld Leveling](#manuelles-leveln)
|
||||
- [BLTouch Beld Leveling](#automatisches-bltouch-leveln)
|
||||
- [Häufig gestellte Fragen (FAQ)](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/FAQ-(deutsch))
|
||||
- [Fotos / Bilder](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Pictures)
|
||||
- [Downloads](#downloads)
|
||||
|
||||
|
||||
# Table of Contets (english)
|
||||
<b>WARNING:</b> The Mega Pro / Mega P support is still under development. The laser is currently not supported, nor is piezo leveling!
|
||||
|
||||
- [Features](#features)
|
||||
- [What's better?](#whats-better-in-coparison-to-other-firmwares-bug-fixes)
|
||||
- [Frequently asked questions (FAQ)](#faq)
|
||||
- [Photos / Pictures](#pictures)
|
||||
- [Special Menü](#special-menu)
|
||||
- [Manual Mesh Beld Leveling](#manual-mesh-beld-leveling)
|
||||
- [BLTouch Beld Leveling](#bltouch-beld-leveling)
|
||||
- [Frequently asked questions (FAQ)](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/FAQ-(english))
|
||||
- [Photos / Pictures](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Pictures)
|
||||
- [Download](#download)
|
||||
|
||||
|
||||
@@ -35,15 +31,14 @@
|
||||
|
||||
## Funktionen
|
||||
|
||||
* 4-Punkt Leveling-Hilfe "Easy Leveling"
|
||||
* Mesh-Bed Kalibrierung / Autokalibrierung mit [BLTouch (Installations-Anleitung)](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/BLTouch-Installation-(deutsch))
|
||||
* S-Kurven Beschleunigung
|
||||
* "Juction Deviation" statt des klassischen "Jerk"
|
||||
* "Linear Pressure Control v1.5" aktiviert (kann mit M900 konfiguriert werden)
|
||||
* Babystepping während des Druckvorgangs
|
||||
* Bilinear Bed Leveling (BBL)
|
||||
* Manuelles Editieren der Messpunkte
|
||||
* Volle Anycubic Touchscreen Unterstützung
|
||||
* Unterstützung des neuen Anycubic Touchscreens (DGUS II)
|
||||
* Volle Unterstützung aller [Anycubic Touchscreens](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Types-of-Anycubic-Touchscreens)
|
||||
* Bauteilkühler läuft nun auf 100% statt maximal 70%
|
||||
* Pause & Filamentwechselfunktion
|
||||
* Automatische EEPROM Initialisierung
|
||||
@@ -52,126 +47,30 @@
|
||||
* [Druckbettgröße erweitert auf 225 x 220 x 210 mm](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Set-new-print-bed-size)
|
||||
* Automatischer 'Slowdown', falls Daten nicht schnell genug fließen
|
||||
* Vollautomatisches Hotend und Ultrabase PID Tuning
|
||||
* Optimierungen für [Trinamic TMC Schrittmotortreiber](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Schrittmotortreiber-gegen-TMC2xxx-tauschen)
|
||||
|
||||
|
||||
## Besser im Vergleich zu anderen Firmwares (Bugfixes):
|
||||
* Aufgeräumtes Special-Menü
|
||||
* Drucker hängt sich nicht auf, wenn man Dateien mit Sonderzeichen (Umlaute, Chinesisch etc.) auf der SD Karte hat
|
||||
* Kein dummes "wackeln" der Düse nach Stoppen eines Druckvorgangs
|
||||
* Kein Abstürzen bei zu vielen Dateien auf der SD Karte
|
||||
* Kein Abstürzen bei SD-Karten über 16 GB
|
||||
* Fehler "Melodie" bei Thermal Runaway Protection
|
||||
* Kein Aufhängen, wenn SD Karte + USB gleichzeitig genutzt wird
|
||||
* Kein Aufhängen wenn man Pause drückt
|
||||
* Kein Aufhängen, wenn das Filament leer ist
|
||||
* Keine "spezielle" BLTouch Firmware nötig. Hier ist alles drin
|
||||
* Konfiguration ganz einfach über Feature-Toggles
|
||||
* Man muss keine Grundkonfiguration per GCODE machen.
|
||||
* Man muss kein Werksreset durchführen
|
||||
|
||||
---
|
||||
|
||||
# Häufig gesellte Fragen (FAQ):
|
||||
|
||||
>Knutwurst, wieso machst du auch noch so eine Firmware? Es gibt doch schon so viele?
|
||||
|
||||
Weil ich bisher keine gesehen habe, die nicht die blöden Bugs enthält, wie z.B. dass sie abstürzt, wenn man Dateien mit Sonderzeichen auf der SD Karte hat.
|
||||
|
||||
>Ist es richtig, dass du mehr Wert auf den Druck von SD-Karte legst und andere eher auf USB?
|
||||
|
||||
ich lege nicht "mehr Wert auf SD", sondern habe einfach die zahlreichen Bugs dahingehend gefixed. Die kleinen Anpassungen mit dem USB Puffer etc sind sowieso drin. Die sind aber in meinen Augen so uninteressant, dass ich es nicht erwähne, denn das wirklich komplizierte ist es, das proprietäre Display und den Cardreader korrekt anzusteuern. Alles andere ist Pillepalle.
|
||||
|
||||
>Was ist dieser "Slowdown"?
|
||||
|
||||
Der automatische Slowdown wird aktiv, falls der Drucker nicht schnell genug Daten bekommt. Dann fährt er automatisch mit der Geschwindigkeit auf 50% runter, satt unbehelligt weiterzumachen und dann zu ruckeln und Blobs zu verursachen.
|
||||
|
||||
>Wieso ist mein Drucker plötzlich lauter als vorher?
|
||||
|
||||
Dein Bauteillüfter läuft jetzt mit voller Drehzahl, was er vorher nicht tat. Stelle im Slicer (z.B. Cura) die Geschwindigkeit einfach auf 70% und schon hast du die alte Lautstärke wieder. Diese Modifikation ist notwendig, falls man den Lüfter tauschen möchte und viele Lüfter mit den originalen 8V nicht oder nur unzureichend laufen.
|
||||
|
||||
>Ist deine Firmware besser als andere?
|
||||
|
||||
Nein. Aber sicher auch nicht schlechter.
|
||||
|
||||
>Wo sind die Downloads?
|
||||
|
||||
Weiter unten.
|
||||
|
||||
>Muss ich bei TMC Treibern die Stecker drehen?
|
||||
|
||||
Nö. Lade dir einfach die korrekte Version herunter.
|
||||
|
||||
>Welche TMC2208 Motortreiber sollte ich kaufen? Lieber die V2 oder die Bigtreetech V3?
|
||||
|
||||
Weder noch! Es gibt keine "V2" oder "V3". Die offizielle letzte Version von Trinamic ist v1.2 und die beiden großen primären Hersteller für die echten SilentStepSticks sind FYSETC und WATTERROTT. Lass bloß die Finger von Bigtreetech.
|
||||
|
||||
>Ich habe die Stecker bei meinen Motoren schon gedreht, als ich die TMC Treiber eingebaut habe. Muss ich jetzt trotzdem die TMC Version flashen?
|
||||
|
||||
Nein. Benutze einfach die Nicht-TMC Version, da sonst die Motoren wieder in die falsche Richtung laufen.
|
||||
|
||||
>Als ich die Treiber eingebaut habe, qualmte mein Mainboard in der Mitte rechts. Ist das normal?
|
||||
|
||||
Nein. Du hast die Treiber falsch herum eingebaut. Jetzt ist die Z-Diode (733A) verbrannt. Tausche sie aus und alles funktioniert wieder. Deine falsch gesteckten Treiber kannst du aber vermutlich wegschmeißen.
|
||||
|
||||
>Muss ich wie bei anderen Firmwares noch die E-Steps einstellen, wenn ich einen Mega S besitze?
|
||||
|
||||
Nein, lade dir einfach die korrekte Version herunter. Trotzdem solltest du die Steps noch kalibrieren.
|
||||
|
||||
>Wieso zeigt das Display keine Fehlermeldungen an und wieso sieht es noch genau so aus wie vorher?
|
||||
|
||||
Dein Mainboard (Trigorilla) kann nur Grafikdisplays wie das 2004 oder 12864 ansteuern. Auf denen würdest du auch exakt das sehen, was in der Firmware wirklich passiert - eben weil diese das anzeigen, was die Firmware sagt. Texte, Fehlermeldungen etc...
|
||||
|
||||
Bei deinem (und auch allen anderen) Touchdisplay sieht das anders aus. Das Touch-Display ist nur eine hübsche Aufmachung und übersetzt intern die eigentlichen Befehle in etwas, was das Mainboard versteht. Es ist bloß eine "Maske" für die eigentliche Firmware.
|
||||
|
||||
Es besteht ein 1-zu-1 Mapping zwischen den Befehlen, die das Mainboard umsetzen kann (Setze Temperatur auf Wert x, Bewege Motor um 10 mm nach rechts etc). Stellst du die Temperatur im Display auf 200°C ein, schickst du eigentlich nur einen Gcode wie z.B. "M104 T1 S200", was schon im Display vorhanden sein muss.
|
||||
|
||||
Bei diesem Mapping ist man eben darauf angewiesen, dass die Funktionen, die man nutzen will, auch im Display vorhanden sind. Und leider ist nicht viel drin. Die Dateiliste ist das einzige(!) über das man einigermaßen die Kontrolle hat, da sie dynamisch angezeigt wird. Leider muss man deswegen leider auch diese dämlichen Eigenarten in Kauf nehmen, wie die Tatsache, dass nach einem Bestätigen/Aktualisieren die Liste neu aufgebaut wird und somit oben beginnt.
|
||||
|
||||
---
|
||||
|
||||
# Bilder
|
||||
## Spezial Menü
|
||||
|
||||

|
||||

|
||||
|
||||
## Manuelles Leveln
|
||||
|
||||

|
||||

|
||||
|
||||

|
||||

|
||||
|
||||

|
||||

|
||||
|
||||

|
||||

|
||||
|
||||
## Automatisches BLTouch Leveln
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
---
|
||||
|
||||
# Downloads
|
||||
|
||||
Du kannst die fertigen Binärdateien hier herunterladen: https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/releases. Natürlich kannst du die Firmware mit PlatformIO oder der Arduino IDE auch selbst kompilieren.
|
||||
Du kannst die fertigen Binärdateien hier herunterladen: https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/releases. Natürlich kannst du die Firmware mit PlatformIO auch [selbst kompilieren](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Howto:-Compile-Firmware-with-PlatformIO).
|
||||
|
||||
Um es übersichtlich zu gestalten, beinhalten die Dateinamen die einzelnen Features.
|
||||
|
||||
`_1G` steht für die erste Generation des i3 Mega mit nur einem Z Endstop. Diese Firmware ist nicht für den normalen i3 Mega geeignet!
|
||||
|
||||
`_S` steht für den Mega S mit dem Titan Extruder.
|
||||
|
||||
`_P` steht für den Mega P mit dem BMG Extruder.
|
||||
|
||||
`_X` steht für den Mega X.
|
||||
|
||||
`_TMC` steht für Trinamic TMC Motortreiber. Hierbei wird auch die Drehrichtung der Motoren invertiert.
|
||||
|
||||
`_DGUS` steht für das "neue" blau/gelbe DGUS II Display, welches sonst kein Special-Menü anzeigen kann.
|
||||
|
||||
`_BLTOUCH` steht für die BL-Touch Version mit Autoleveling-Sensor. Das manuelle Mesh-Leveling ist hier deaktiviert.
|
||||
`_BLT` steht für die BL-Touch Version mit Autoleveling-Sensor. Das manuelle Mesh-Leveling ist hier deaktiviert.
|
||||
|
||||
`_10` steht für das Trigorilla_14 v1.0 Mainboard, welches normalerweise der Standard sein sollte.
|
||||
|
||||
@@ -189,15 +88,14 @@ Für (fast) jede Kombination gibt es eine passende Firmware im Download-Bereich.
|
||||
|
||||
## Features:
|
||||
|
||||
* 4-Point Leveling-Assistant "Easy Leveling"
|
||||
* Mesh bed calibration / Auto calibration with [BLTouch (Installation Manual)](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/BLTouch-Installation-(english))
|
||||
* S-curve acceleration
|
||||
* "Juction Deviation" instead of the classic "Jerk"
|
||||
* "Linear Pressure Control v1.5" activated (can be configured with M900)
|
||||
* Baby stepping during the printing process
|
||||
* Bilinear Bed Leveling (BBL)
|
||||
* Manual editing of the measuring points
|
||||
* Full Anycubic touchscreen support
|
||||
* Support for the new Anycubic Touchscreen (DGUS II)
|
||||
* Full Support for all [Anycubic Touchscreens](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Types-of-Anycubic-Touchscreens)
|
||||
* Part cooling fan now runs at 100% instead of 70%
|
||||
* Pause & filament change function
|
||||
* Automatic EEPROM initialization
|
||||
@@ -206,124 +104,29 @@ Für (fast) jede Kombination gibt es eine passende Firmware im Download-Bereich.
|
||||
* [Print bed size enlarged to 225 x 220 x 210 mm](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Set-new-print-bed-size)
|
||||
* Automatic 'slowdown' if data does not flow fast enough
|
||||
* Fully automatic hotend and ultrabase PID tuning
|
||||
|
||||
### What's better in coparison to other firmwares (bug fixes):
|
||||
* Tidy special menu
|
||||
* Printer does not freeze if you have files with special characters (umlauts, Chinese..) on your SD card
|
||||
* No stupid "wobble" of the nozzle after stopping printing
|
||||
* No firmware crash when there are too many files on the SD card
|
||||
* No crash with SD cards over 16 GB
|
||||
* Acoustic alarm in case of a thermal runaway
|
||||
* No freezing when SD card + USB is used at the same time
|
||||
* No freezing when you press pause and try to resume
|
||||
* No freezing when the filament is empty
|
||||
* No need for a "special" BLTouch firmware. In this firmware is everything included
|
||||
* Configuration made easy via feature toggles
|
||||
|
||||
---
|
||||
|
||||
# FAQ:
|
||||
|
||||
> Knutwurst, why are you still doing such a firmware? Aren't there already so many?
|
||||
|
||||
Because I've never seen one that doesn't contain the stupid bugs like the crashes when you have files with special characters on the SD card.
|
||||
|
||||
> Is it correct that you put more emphasis on printing from SD card and others more on USB?
|
||||
|
||||
I don't put "more emphasis on SD", but just fixed the numerous bugs. The small adjustments with the USB buffer etc are included anyway. But they are so uninteresting in my eyes that I don't mention it, because the really complicated thing is to control the proprietary display and the card reader correctly. Everything else is easy-peasy.
|
||||
|
||||
> What is this "slowdown"?
|
||||
|
||||
The automatic slowdown is activated if the printer does not receive data quickly enough (e.g. via USB). Then it automatically goes down to 50%. This prevents stuttering and eliminated blobs.
|
||||
|
||||
>Why is my printer so much louder than before?
|
||||
|
||||
Your component fan is now running at full speed, which it did no before. Simply set the speed to 70% in the slicer (e.g. Cura) and you will have the old speed again. This modification is necessary if you want to replace the fan. Many aftermarket fans do not run properly or at all with the original 8V.
|
||||
|
||||
> Is your firmware better than others?
|
||||
|
||||
No. But certainly not worse either.
|
||||
|
||||
> Where are the downloads?
|
||||
|
||||
Further down.
|
||||
|
||||
> Do I have to turn the plugs for TMC drivers?
|
||||
|
||||
Nope, just download the correct version.
|
||||
|
||||
> Which TMC2208 motor drivers should I buy? The V2 or the Bigtreetech V3?
|
||||
|
||||
Neither! There is no "V2" or "V3". The official last version of Trinamic is v1.2 and the two major primary manufacturers for the real SilentStepSticks are FYSETC and WATTERROTT. Just stay away from Bigtreetech.
|
||||
|
||||
> I already turned the plugs on my motors when I installed the TMC drivers. Do I still have to flash the TMC version?
|
||||
|
||||
No. Just use the non-TMC version, otherwise the motors will turn in the wrong direction again.
|
||||
|
||||
> When I installed the drivers, my mainboard gave me the "magic smoke". Is that normal?
|
||||
|
||||
No. You installed the drivers the wrong way round. Now the Zener diode (733A) is burned. Exchange it and everything works again. You can probably throw away your wrongly inserted drivers.
|
||||
|
||||
> As with other firmwares, do I still have to set the E-Steps if I have a Mega S?
|
||||
|
||||
No, just download the correct version. Nevertheless, you should still calibrate the e-steps.
|
||||
|
||||
> Why doesn't the display show any error messages and why does it still look exactly as before?
|
||||
|
||||
Your mainboard (Trigorilla) can only control graphic displays like the 2004 or 12864. On them you would also see exactly what really happens in the firmware - to be precise, they show what the firmware says. Texts, error messages etc.
|
||||
|
||||
With your (and all other) touch displays, things look different. The touch display is just a pretty presentation and internally translates the actual commands into something that the motherboard understands. It is just a "mask" for the actual firmware.
|
||||
|
||||
There is a 1-to-1 mapping between the commands that the mainboard has implemented (set temperature to value x, move motor by 10 mm to the right, etc.). If you set the temperature in the display to 200°C, you actually only send a Gcode such as "M104 T1 S200", which must already be on the display firmware.
|
||||
|
||||
With this mapping, you have to rely on the fact that the functions you want to use are also available on the display. And unfortunately there is not much in it. The file list is the only thing(!) over which you have some control because it is displayed dynamically. Unfortunately, you have to accept these stupid idiosyncrasies, such as the fact that after confirming/updating the list is rebuilt and thus starts at the top.
|
||||
|
||||
---
|
||||
|
||||
# Pictures
|
||||
## Special Menu
|
||||
|
||||

|
||||

|
||||
|
||||
## Manual Mesh Beld Leveling
|
||||
|
||||

|
||||

|
||||
|
||||

|
||||

|
||||
|
||||

|
||||

|
||||
|
||||

|
||||

|
||||
|
||||
## BLTouch Beld Leveling
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
* Optimizations for [Trinamic TMC Stepper drivers](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Swap-stepper-motor-driver-for-TMC2xxx)
|
||||
|
||||
---
|
||||
|
||||
# Download
|
||||
|
||||
You can download the precompiled binary files from here: https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/releases. Of course you can also compile the firmware yourself with PlatformIO or the Arduino IDE.
|
||||
You can download the precompiled binary files from here: https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/releases. Of course you can also [compile the firmware yourself](https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/wiki/Howto:-Compile-Firmware-with-PlatformIO) with PlatformIO.
|
||||
|
||||
In order to make it clear, the file names contain the individual features.
|
||||
|
||||
`_1G` stands for the firt generation i3 Mega with only one Z endstop. Do NOT use this Firmware on the regular i3 Mega!
|
||||
|
||||
`_S` stands for the Mega S with the titan extruder.
|
||||
|
||||
`_P` stands for the Mega P with the BMG extruder.
|
||||
|
||||
`_X` stands for the Mega X.
|
||||
|
||||
`_TMC` stands for Trinamic TMC motor driver. The direction of rotation of the motors is also inverted.
|
||||
|
||||
`_DGUS` stands for the "new" blue / yellow DGUS II display, which otherwise cannot show a special menu.
|
||||
|
||||
`_BLTOUCH` stands for the BL-Touch version with auto-leveling sensor. Manual mesh leveling is deactivated here.
|
||||
`_BLT` stands for the BL-Touch version with auto-leveling sensor. Manual mesh leveling is deactivated here.
|
||||
|
||||
`_10` stands for the Trigorilla_14 v1.0 mainboard, which should normally be the standard.
|
||||
|
||||
@@ -333,3 +136,5 @@ In order to make it clear, the file names contain the individual features.
|
||||
For (almost) every combination there is a suitable firmware in the download area. ;)
|
||||
|
||||
|
||||
### If you like what I do you can buy me a coffee: [](https://paypal.me/oliverkoester)
|
||||
<sub>*It doesn't have to be a generous donation. A few cents are enough to show me who is interested in further development. So the motivation stays and I just know that I am not programming for the bin ;)<sub>
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,23 +1,27 @@
|
||||
#!/bin/bash
|
||||
|
||||
VERSION_FILE="/Users/OKoester/Documents/Arduino/Marlin-2-0-x-Anycubic-i3-MEGA-S-Master/Marlin/src/inc/Version.h"
|
||||
FIRMWARE_FOLDER="/Users/OKoester/Documents/Arduino/Marlin-2-0-x-Anycubic-i3-MEGA-S-Master/.pio/build/"
|
||||
OUTPUT_FOLDER="/Users/OKoester/Desktop/i3_FIRMWARE"
|
||||
BASE_PATH="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
||||
CURRENT_USER="$(whoami)"
|
||||
|
||||
CUSTOM_BUILD_VERSION=$(egrep -o "([0-9]{1,}\.)+[0-9]{1,}" $VERSION_FILE -m2 | tail -n1)
|
||||
VERSION_FILE="$BASE_PATH/Marlin/src/inc/Version.h"
|
||||
FIRMWARE_FOLDER="$BASE_PATH/.pio/build/"
|
||||
OUTPUT_FOLDER="/Users/$CURRENT_USER/Desktop/i3_FIRMWARE"
|
||||
|
||||
CUSTOM_BUILD_VERSION=$(egrep -o "([0-9]{1,}\.)+[a-zA-Z0-9_.-]{1,}" $VERSION_FILE -m2 | tail -n1)
|
||||
|
||||
if [ -d "$$OUTPUT_FOLDER/v$CUSTOM_BUILD_VERSION" ]; then
|
||||
echo "$$OUTPUT_FOLDER/$CUSTOM_BUILD_VERSION already exists."
|
||||
else
|
||||
mkdir $OUTPUT_FOLDER/$CUSTOM_BUILD_VERSION
|
||||
mkdir -p $OUTPUT_FOLDER/$CUSTOM_BUILD_VERSION
|
||||
fi
|
||||
|
||||
echo "Knutwurst's Mega Firmware Version: $CUSTOM_BUILD_VERSION"
|
||||
|
||||
cd $FIRMWARE_FOLDER
|
||||
for dir in $FIRMWARE_FOLDER/*/
|
||||
do
|
||||
dir=${dir%*/}
|
||||
echo ${dir##*/}
|
||||
cp ${dir##*/}/firmware.hex /$OUTPUT_FOLDER/$CUSTOM_BUILD_VERSION/${dir##*/}_v$CUSTOM_BUILD_VERSION.hex
|
||||
done
|
||||
pushd $FIRMWARE_FOLDER
|
||||
for dir in $FIRMWARE_FOLDER/*/
|
||||
do
|
||||
dir=${dir%*/}
|
||||
echo ${dir##*/}
|
||||
cp ${dir##*/}/firmware.hex /$OUTPUT_FOLDER/$CUSTOM_BUILD_VERSION/${dir##*/}_v$CUSTOM_BUILD_VERSION.hex
|
||||
done
|
||||
popd
|
||||
|
517
i3_mega_envs.ini
517
i3_mega_envs.ini
@@ -1,13 +1,73 @@
|
||||
###########################################################
|
||||
# #
|
||||
# Manual Leveling Configurations #
|
||||
# #
|
||||
###########################################################
|
||||
#
|
||||
# i3 Mega (First generation with only one endstop)
|
||||
#
|
||||
|
||||
[env:MEGA_1G]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
|
||||
[env:MEGA_1G_TMC]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA -DKNUTWURST_TMC -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_BLTOUCH
|
||||
|
||||
[env:MEGA_1G_BLT_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA -DKNUTWURST_BLTOUCH -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC
|
||||
|
||||
[env:MEGA_1G_BLT_11]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14_11 -DKNUTWURST_MEGA -DKNUTWURST_BLTOUCH -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC
|
||||
|
||||
[env:MEGA_1G_TMC_BLT_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT
|
||||
|
||||
[env:MEGA_1G_TMC_BLT_11]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14_11 -DKNUTWURST_MEGA -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT
|
||||
|
||||
|
||||
#
|
||||
# i3 Mega (normal Version)
|
||||
#
|
||||
[env:i3_MEGA]
|
||||
|
||||
[env:MEGA]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
@@ -15,11 +75,9 @@ lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
|
||||
|
||||
[env:i3_MEGA_TMC]
|
||||
[env:MEGA_TMC]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
@@ -27,94 +85,9 @@ lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA -DKNUTWURST_TMC
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_DGUS2_TFT -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_BLTOUCH -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
|
||||
#
|
||||
# i3 Mega S
|
||||
#
|
||||
[env:i3_MEGA_S]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
|
||||
|
||||
|
||||
[env:i3_MEGA_S_DGUS]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S -DKNUTWURST_DGUS2_TFT
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
|
||||
|
||||
|
||||
[env:i3_MEGA_S_DGUS_TMC]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_BLTOUCH
|
||||
|
||||
|
||||
|
||||
[env:i3_MEGA_S_TMC]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S -DKNUTWURST_TMC
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_DGUS2_TFT -DKNUTWURST_BLTOUCH
|
||||
|
||||
|
||||
#
|
||||
# i3 Mega X
|
||||
#
|
||||
[env:i3_MEGA_X]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_X
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH -DKNUTWURST_DGUS2_TFT
|
||||
|
||||
|
||||
|
||||
[env:i3_MEGA_X_TMC]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_X -DKNUTWURST_TMC
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_BLTOUCH -DKNUTWURST_DGUS2_TFT
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
###########################################################
|
||||
# #
|
||||
# BL Touch Configurations ( TRIGORILLA_14 ) #
|
||||
# #
|
||||
###########################################################
|
||||
[env:i3_MEGA_BLTOUCH_10]
|
||||
[env:MEGA_BLT_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
@@ -122,100 +95,9 @@ lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
|
||||
[env:i3_MEGA_TMC_BLTOUCH_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_DGUS2_TFT
|
||||
|
||||
|
||||
[env:i3_MEGA_S_BLTOUCH_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC
|
||||
|
||||
|
||||
|
||||
[env:i3_MEGA_S_DGUS_BLTOUCH_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S -DKNUTWURST_DGUS2_TFT -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_TMC
|
||||
|
||||
|
||||
|
||||
[env:i3_MEGA_S_DGUS_TMC_BLTOUCH_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X
|
||||
|
||||
|
||||
|
||||
[env:i3_MEGA_S_TMC_BLTOUCH_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_DGUS2_TFT
|
||||
|
||||
|
||||
[env:i3_MEGA_X_BLTOUCH_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_X -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_TMC -DKNUTWURST_DGUS2_TFT
|
||||
|
||||
|
||||
|
||||
[env:i3_MEGA_X_TMC_BLTOUCH_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_X -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_DGUS2_TFT
|
||||
|
||||
|
||||
###########################################################
|
||||
# #
|
||||
# BL Touch Configurations ( TRIGORILLA_14_11 ) #
|
||||
# #
|
||||
###########################################################
|
||||
|
||||
#
|
||||
# i3 Mega (normal Version)
|
||||
#
|
||||
[env:i3_MEGA_BLTOUCH_11]
|
||||
[env:MEGA_BLT_11]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
@@ -223,10 +105,19 @@ lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14_11 -DKNUTWURST_MEGA -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_TMC_BLT_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:i3_MEGA_TMC_BLTOUCH_11]
|
||||
[env:MEGA_TMC_BLT_11]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
@@ -234,13 +125,44 @@ lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14_11 -DKNUTWURST_MEGA -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_DGUS2_TFT
|
||||
build_unflags = -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
|
||||
|
||||
#
|
||||
# i3 Mega S
|
||||
#
|
||||
[env:i3_MEGA_S_BLTOUCH_11]
|
||||
[env:MEGA_S]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_S_TMC]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S -DKNUTWURST_TMC
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_BLTOUCH -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_S_BLT_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_S_BLT_11]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
@@ -248,35 +170,19 @@ lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14_11 -DKNUTWURST_MEGA_S -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
|
||||
|
||||
[env:i3_MEGA_S_DGUS_BLTOUCH_11]
|
||||
[env:MEGA_S_TMC_BLT_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14_11 -DKNUTWURST_MEGA_S -DKNUTWURST_DGUS2_TFT -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_TMC
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
|
||||
|
||||
[env:i3_MEGA_S_DGUS_TMC_BLTOUCH_11]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14_11 -DKNUTWURST_MEGA_S -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X
|
||||
|
||||
|
||||
|
||||
[env:i3_MEGA_S_TMC_BLTOUCH_11]
|
||||
[env:MEGA_S_TMC_BLT_11]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
@@ -284,13 +190,109 @@ lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14_11 -DKNUTWURST_MEGA_S -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_DGUS2_TFT
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
|
||||
|
||||
#
|
||||
# i3 Mega S (new TFT)
|
||||
#
|
||||
[env:MEGA_S_DGUS]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S -DKNUTWURST_DGUS2_TFT
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_S_DGUS_TMC]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_BLTOUCH -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_S_DGUS_BLT_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S -DKNUTWURST_DGUS2_TFT -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_TMC -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_S_DGUS_BLT_11]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14_11 -DKNUTWURST_MEGA_S -DKNUTWURST_DGUS2_TFT -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_TMC -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_S_DGUS_TMC_BLT_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_S -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_S_DGUS_TMC_BLT_11]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14_11 -DKNUTWURST_MEGA_S -DKNUTWURST_DGUS2_TFT -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_X -DKNUTWURST_MEGA_P -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
|
||||
|
||||
#
|
||||
# i3 Mega X
|
||||
#
|
||||
[env:i3_MEGA_X_BLTOUCH_11]
|
||||
[env:MEGA_X]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_X
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_P -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH -DKNUTWURST_DGUS2_TFT -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_X_TMC]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_X -DKNUTWURST_TMC
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_P -DKNUTWURST_BLTOUCH -DKNUTWURST_DGUS2_TFT -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_X_BLT_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_X -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_P -DKNUTWURST_TMC -DKNUTWURST_DGUS2_TFT -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_X_BLT_11]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
@@ -298,11 +300,19 @@ lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14_11 -DKNUTWURST_MEGA_X -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_TMC -DKNUTWURST_DGUS2_TFT
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_P -DKNUTWURST_TMC -DKNUTWURST_DGUS2_TFT -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_X_TMC_BLT_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_X -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
|
||||
[env:i3_MEGA_X_TMC_BLTOUCH_11]
|
||||
[env:MEGA_X_TMC_BLT_11]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
@@ -310,4 +320,69 @@ lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14_11 -DKNUTWURST_MEGA_X -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_DGUS2_TFT
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_P -DKNUTWURST_DGUS2_TFT -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
|
||||
|
||||
#
|
||||
# i3 Mega P
|
||||
#
|
||||
[env:MEGA_P]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_P -DKNUTWURST_BMG -DKNUTWURST_DGUS2_TFT
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_P_TMC]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_P -DKNUTWURST_TMC -DKNUTWURST_BMG -DKNUTWURST_DGUS2_TFT
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_BLTOUCH -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_P_BLT_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_P -DKNUTWURST_BMG -DKNUTWURST_BLTOUCH -DKNUTWURST_DGUS2_TFT
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_TMC -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_P_BLT_11]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14_11 -DKNUTWURST_MEGA_P -DKNUTWURST_BMG -DKNUTWURST_BLTOUCH -DKNUTWURST_DGUS2_TFT
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_TMC -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_P_TMC_BLT_10]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14 -DKNUTWURST_MEGA_P -DKNUTWURST_BMG -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH -DKNUTWURST_DGUS2_TFT
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_ONE_Z_ENDSTOP
|
||||
|
||||
[env:MEGA_P_TMC_BLT_11]
|
||||
platform = atmelavr
|
||||
board = megaatmega2560
|
||||
board_build.f_cpu = 16000000L
|
||||
lib_deps = ${common.lib_deps}
|
||||
TMC26XStepper=https://github.com/trinamic/TMC26XStepper/archive/master.zip
|
||||
src_filter = ${common.default_src_filter} +<src/HAL/AVR>
|
||||
build_flags = ${common.build_flags} -DMOTHERBOARD=BOARD_TRIGORILLA_14_11 -DKNUTWURST_MEGA_P -DKNUTWURST_BMG -DKNUTWURST_TMC -DKNUTWURST_BLTOUCH -DKNUTWURST_DGUS2_TFT
|
||||
build_unflags = -DKNUTWURST_MEGA -DKNUTWURST_MEGA_S -DKNUTWURST_MEGA_X -DKNUTWURST_ONE_Z_ENDSTOP
|
BIN
images/anycubic_touchscreen_back.jpg
Normal file
BIN
images/anycubic_touchscreen_back.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.1 MiB |
BIN
images/anycubic_touchscreen_front.jpg
Normal file
BIN
images/anycubic_touchscreen_front.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 857 KiB |
BIN
images/howto_build.jpg
Normal file
BIN
images/howto_build.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 834 KiB |
BIN
images/max_resolution_cura.jpg
Normal file
BIN
images/max_resolution_cura.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 66 KiB |
@@ -31,7 +31,43 @@ src_dir = Marlin
|
||||
boards_dir = buildroot/share/PlatformIO/boards
|
||||
#default_envs = mega2560
|
||||
extra_configs = i3_mega_envs.ini
|
||||
default_envs = i3_MEGA, i3_MEGA_TMC, i3_MEGA_S, i3_MEGA_S_DGUS, i3_MEGA_S_DGUS_TMC, i3_MEGA_S_TMC, i3_MEGA_X, i3_MEGA_X_TMC, i3_MEGA_BLTOUCH_10, i3_MEGA_TMC_BLTOUCH_10, i3_MEGA_S_BLTOUCH_10, i3_MEGA_S_DGUS_BLTOUCH_10, i3_MEGA_S_DGUS_TMC_BLTOUCH_10, i3_MEGA_S_TMC_BLTOUCH_10, i3_MEGA_X_BLTOUCH_10, i3_MEGA_X_TMC_BLTOUCH_10, i3_MEGA_BLTOUCH_11, i3_MEGA_TMC_BLTOUCH_11, i3_MEGA_S_BLTOUCH_11, i3_MEGA_S_DGUS_BLTOUCH_11, i3_MEGA_S_DGUS_TMC_BLTOUCH_11, i3_MEGA_S_TMC_BLTOUCH_11, i3_MEGA_X_BLTOUCH_11, i3_MEGA_X_TMC_BLTOUCH_11
|
||||
default_envs =
|
||||
MEGA_1G
|
||||
MEGA_1G_TMC
|
||||
MEGA_1G_BLT_10
|
||||
MEGA_1G_BLT_11
|
||||
MEGA_1G_TMC_BLT_10
|
||||
MEGA_1G_TMC_BLT_11
|
||||
MEGA
|
||||
MEGA_TMC
|
||||
MEGA_BLT_10
|
||||
MEGA_BLT_11
|
||||
MEGA_TMC_BLT_10
|
||||
MEGA_TMC_BLT_11
|
||||
MEGA_S
|
||||
MEGA_S_TMC
|
||||
MEGA_S_BLT_10
|
||||
MEGA_S_BLT_11
|
||||
MEGA_S_TMC_BLT_10
|
||||
MEGA_S_TMC_BLT_11
|
||||
MEGA_S_DGUS
|
||||
MEGA_S_DGUS_TMC
|
||||
MEGA_S_DGUS_BLT_10
|
||||
MEGA_S_DGUS_BLT_11
|
||||
MEGA_S_DGUS_TMC_BLT_10
|
||||
MEGA_S_DGUS_TMC_BLT_11
|
||||
MEGA_X
|
||||
MEGA_X_TMC
|
||||
MEGA_X_BLT_10
|
||||
MEGA_X_BLT_11
|
||||
MEGA_X_TMC_BLT_10
|
||||
MEGA_X_TMC_BLT_11
|
||||
MEGA_P
|
||||
MEGA_P_TMC
|
||||
MEGA_P_BLT_10
|
||||
MEGA_P_BLT_11
|
||||
MEGA_P_TMC_BLT_10
|
||||
MEGA_P_TMC_BLT_11
|
||||
|
||||
# *******************************************************************************************
|
||||
# ** **
|
||||
|
Reference in New Issue
Block a user